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

Side by Side Diff: mojo/public/dart/tests/bindings_generation_test.dart

Issue 674383002: Initial work on Dart bindings for Mojo. (Closed) Base URL: https://github.com/domokit/mojo.git@master
Patch Set: Merge. Work on templates. Created 6 years, 1 month 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
OLDNEW
(Empty)
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
3 // found in the LICENSE file.
4
5 import 'dart:async';
6 import 'dart:isolate';
7 import 'dart:typed_data';
8
9 import 'package:mojo/public/dart/utils/lib/expect.dart';
10 import 'package:mojo/public/dart/bindings/lib/bindings.dart' as bindings;
11 import 'package:mojo/public/dart/system/lib/core.dart' as core;
12 import 'package:mojo/public/dart/system/lib/embedder.dart' as embedder;
13
14 import 'package:mojo/public/interfaces/bindings/tests/sample_interfaces.mojom.da rt' as sample;
15
16
17 class ProviderInterfaceImpl extends sample.ProviderInterface {
18 ProviderInterfaceImpl(core.MojoMessagePipeEndpoint endpoint) : super(endpoint) ;
19
20 Future echoString(Object params) {
21 Expect.isTrue(params is sample.Provider_EchoString_Params);
22 var response = new sample.Provider_EchoString_ResponseParams();
23 response.a = params.a;
24 return new Future.value(response);
25 }
26
27 Future echoStrings(Object params) {
28 Expect.isTrue(params is sample.Provider_EchoStrings_Params);
29 var response = new sample.Provider_EchoStrings_ResponseParams();
30 response.a = params.a;
31 response.b = params.b;
32 return new Future.value(response);
33 }
34
35 Future echoMessagePipeHandle(Object params) {
36 Expect.isTrue(params is sample.Provider_EchoMessagePipeHandle_Params);
37 var response = new sample.Provider_EchoMessagePipeHandle_ResponseParams();
38 response.a = params.a;
39 return new Future.value(response);
40 }
41
42 Future echoEnum(Object params) {
43 var response = new sample.Provider_EchoEnum_ResponseParams();
44 response.a = params.a;
45 return new Future.value(response);
46 }
47 }
48
49
50 void providerIsolate(core.MojoMessagePipeEndpoint endpoint) {
51 var provider = new ProviderInterfaceImpl(endpoint);
52 }
53
54
55 main() {
56 embedder.mojoEmbedderInit().then((status) {
57 var pipe = new core.MojoMessagePipe();
58 var client = new sample.ProviderClient(pipe.endpoints[0]);
59 Isolate.spawn(providerIsolate, pipe.endpoints[1]).then((_) {
60 client.echoString("hello!").then((response) {
61 Expect.equals("hello!", response.a);
62 client.close();
63 });
64 });
65 });
66 }
OLDNEW
« no previous file with comments | « mojo/public/dart/system/tests/event_handler_test.dart ('k') | mojo/public/dart/tests/echo_test.dart » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698