OLD | NEW |
---|---|
1 // Copyright (c) 2013, the Dart project authors. Please see the AUTHORS file | 1 // Copyright (c) 2013, the Dart project authors. Please see the AUTHORS file |
2 // for details. All rights reserved. Use of this source code is governed by a | 2 // for details. All rights reserved. Use of this source code is governed by a |
3 // BSD-style license that can be found in the LICENSE file. | 3 // BSD-style license that can be found in the LICENSE file. |
4 @TestOn('vm') | 4 @TestOn('vm') |
5 import 'dart:async'; | 5 import 'dart:async'; |
6 import 'package:barback/barback.dart'; | 6 import 'package:barback/barback.dart'; |
7 import 'package:observe/transformer.dart'; | 7 import 'package:observe/transformer.dart'; |
8 import 'package:stack_trace/stack_trace.dart'; | 8 import 'package:stack_trace/stack_trace.dart'; |
9 import 'package:test/test.dart'; | 9 import 'package:test/test.dart'; |
10 | 10 |
(...skipping 108 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
119 var begin = output.indexOf(constructor) + constructor.length - 1; | 119 var begin = output.indexOf(constructor) + constructor.length - 1; |
120 var end = output.indexOf(';', begin); | 120 var end = output.indexOf(';', begin); |
121 if (end == -1) end = output.length; | 121 if (end == -1) end = output.length; |
122 var init = output.substring(begin, end).trim().replaceAll(' ', ' '); | 122 var init = output.substring(begin, end).trim().replaceAll(' ', ' '); |
123 expect(init, expected); | 123 expect(init, expected); |
124 }); | 124 }); |
125 }); | 125 }); |
126 } | 126 } |
127 | 127 |
128 /// Helper that applies the transform by creating mock assets. | 128 /// Helper that applies the transform by creating mock assets. |
129 Future<String> _transform(String code) { | 129 Future _transform(String code) { |
Siggi Cherem (dart-lang)
2016/03/25 17:36:29
Doesn't matter here, but would we be able to keep
Jennifer Messerly
2016/03/25 18:23:23
already filed https://github.com/dart-lang/stack_t
| |
130 return Chain.capture(() { | 130 return Chain.capture(() async { |
131 var id = new AssetId('foo', 'a/b/c.dart'); | 131 var id = new AssetId('foo', 'a/b/c.dart'); |
132 var asset = new Asset.fromString(id, code); | 132 var asset = new Asset.fromString(id, code); |
133 var transformer = new ObservableTransformer(); | 133 var transformer = new ObservableTransformer(); |
134 return transformer.isPrimary(asset).then((isPrimary) { | 134 bool isPrimary = await transformer.isPrimary(asset); |
135 expect(isPrimary, isTrue); | 135 expect(isPrimary, isTrue); |
136 var transform = new _MockTransform(asset); | 136 var transform = new _MockTransform(asset); |
137 return transformer.apply(transform).then((_) { | 137 await transformer.apply(transform); |
Siggi Cherem (dart-lang)
2016/03/25 17:36:29
is the change to use await necessary for now?
I m
Jennifer Messerly
2016/03/25 18:23:23
yes it is necessary & that is the reason.
FWIW --
| |
138 expect(transform.outs, hasLength(2)); | 138 |
139 expect(transform.outs[0].id, id); | 139 expect(transform.outs, hasLength(2)); |
140 expect(transform.outs[1].id, id.addExtension('._buildLogs.1')); | 140 expect(transform.outs[0].id, id); |
141 return transform.outs.first.readAsString(); | 141 expect(transform.outs[1].id, id.addExtension('._buildLogs.1')); |
142 }); | 142 return transform.outs.first.readAsString(); |
143 }); | |
144 }); | 143 }); |
145 } | 144 } |
146 | 145 |
147 class _MockTransform implements Transform { | 146 class _MockTransform implements Transform { |
148 bool shouldConsumePrimary = false; | 147 bool shouldConsumePrimary = false; |
149 List<Asset> outs = []; | 148 List<Asset> outs = []; |
150 Asset _asset; | 149 Asset _asset; |
151 TransformLogger logger = new TransformLogger(_mockLogFn); | 150 TransformLogger logger = new TransformLogger(_mockLogFn); |
152 Asset get primaryInput => _asset; | 151 Asset get primaryInput => _asset; |
153 | 152 |
(...skipping 64 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
218 " Foo\n" | 217 " Foo\n" |
219 " get foo => __\$foo; Foo __\$foo/*D*/= 1; " | 218 " get foo => __\$foo; Foo __\$foo/*D*/= 1; " |
220 "${_makeSetter('Foo', 'foo')} " | 219 "${_makeSetter('Foo', 'foo')} " |
221 "@reflectable @$meta @otherMetadata Foo get bar => __\$bar; " | 220 "@reflectable @$meta @otherMetadata Foo get bar => __\$bar; " |
222 "Foo __\$bar =/*A*/2/*B*/; ${_makeSetter('Foo', 'bar')}\n" | 221 "Foo __\$bar =/*A*/2/*B*/; ${_makeSetter('Foo', 'bar')}\n" |
223 " @reflectable @$meta @otherMetadata Foo get quux => __\$quux; " | 222 " @reflectable @$meta @otherMetadata Foo get quux => __\$quux; " |
224 "Foo __\$quux/*C*/; ${_makeSetter('Foo', 'quux')}\n\n" | 223 "Foo __\$quux/*C*/; ${_makeSetter('Foo', 'quux')}\n\n" |
225 " @reflectable @$meta dynamic get baz => __\$baz; dynamic __\$baz; " | 224 " @reflectable @$meta dynamic get baz => __\$baz; dynamic __\$baz; " |
226 "${_makeSetter('dynamic', 'baz')}\n" | 225 "${_makeSetter('dynamic', 'baz')}\n" |
227 "}\n"; | 226 "}\n"; |
OLD | NEW |