Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(497)

Side by Side Diff: mojo/dart/test/bindings_generation_test.dart

Issue 996923003: Dart: Better handle leak checks. close() is async. (Closed) Base URL: git@github.com:domokit/mojo.git@master
Patch Set: Merge Created 5 years, 9 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
« no previous file with comments | « mojo/dart/embedder/test/validation_unittest.cc ('k') | mojo/dart/test/interface_test.dart » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 // Copyright 2014 The Chromium Authors. All rights reserved. 1 // Copyright 2014 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 import 'dart:async'; 5 import 'dart:async';
6 import 'dart:isolate'; 6 import 'dart:isolate';
7 import 'dart:typed_data'; 7 import 'dart:typed_data';
8 import 'dart:mojo.bindings' as bindings; 8 import 'dart:mojo.bindings' as bindings;
9 import 'dart:mojo.core' as core; 9 import 'dart:mojo.core' as core;
10 10
(...skipping 95 matching lines...) Expand 10 before | Expand all | Expand 10 after
106 Expect.listEquals(arrayValues.f3, arrayValues2.f3); 106 Expect.listEquals(arrayValues.f3, arrayValues2.f3);
107 Expect.listEquals(arrayValues.f4, arrayValues2.f4); 107 Expect.listEquals(arrayValues.f4, arrayValues2.f4);
108 Expect.listEquals(arrayValues.f5, arrayValues2.f5); 108 Expect.listEquals(arrayValues.f5, arrayValues2.f5);
109 } 109 }
110 110
111 testSerializeStructs() { 111 testSerializeStructs() {
112 testSerializeNamedRegion(); 112 testSerializeNamedRegion();
113 testSerializeArrayValueTypes(); 113 testSerializeArrayValueTypes();
114 } 114 }
115 115
116 void closingProviderIsolate(core.MojoMessagePipeEndpoint endpoint) {
117 var provider = new ProviderImpl(endpoint);
118 provider._stub.close();
119 }
120
121 Future<bool> runOnClosedTest() {
122 var testCompleter = new Completer();
123 var pipe = new core.MojoMessagePipe();
124 var proxy = new sample.ProviderProxy.fromEndpoint(pipe.endpoints[0]);
125 proxy.impl.onError = () => testCompleter.complete(true);
126 Isolate.spawn(closingProviderIsolate, pipe.endpoints[1]);
127 return testCompleter.future.then((b) {
128 Expect.isTrue(b);
129 });
130 }
131
116 main() async { 132 main() async {
117 testSerializeStructs(); 133 testSerializeStructs();
118 await testCallResponse(); 134 await testCallResponse();
119 await testAwaitCallResponse(); 135 await testAwaitCallResponse();
136 await runOnClosedTest();
120 } 137 }
OLDNEW
« no previous file with comments | « mojo/dart/embedder/test/validation_unittest.cc ('k') | mojo/dart/test/interface_test.dart » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698