OLD | NEW |
| (Empty) |
1 // Copyright (c) 2013, the Dart project authors. Please see the AUTHORS d.file | |
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. | |
4 | |
5 import '../descriptor.dart' as d; | |
6 import '../test_pub.dart'; | |
7 import '../serve/utils.dart'; | |
8 | |
9 /// The code for a transformer that renames ".js" files to ".out". | |
10 const JS_REWRITE_TRANSFORMER = """ | |
11 import 'dart:async'; | |
12 | |
13 import 'package:barback/barback.dart'; | |
14 | |
15 class RewriteTransformer extends Transformer { | |
16 RewriteTransformer.asPlugin(); | |
17 | |
18 String get allowedExtensions => '.js'; | |
19 | |
20 Future apply(Transform transform) { | |
21 return transform.primaryInput.readAsString().then((contents) { | |
22 var id = transform.primaryInput.id.changeExtension(".out"); | |
23 transform.addOutput(new Asset.fromString(id, contents)); | |
24 }); | |
25 } | |
26 } | |
27 """; | |
28 | |
29 main() { | |
30 initConfig(); | |
31 withBarbackVersions("any", () { | |
32 integration("output can be consumed by successive phases", () { | |
33 d.dir(appPath, [d.pubspec({ | |
34 "name": "myapp", | |
35 "transformers": ["\$dart2js", "myapp/src/transformer"] | |
36 }), | |
37 d.dir( | |
38 "lib", | |
39 [d.dir("src", [d.file("transformer.dart", JS_REWRITE_TRANSFORMER
)])]), | |
40 d.dir("web", [d.file("main.dart", "void main() {}")])]).create(); | |
41 | |
42 createLockFile('myapp', pkg: ['barback']); | |
43 | |
44 pubServe(); | |
45 requestShouldSucceed("main.dart.out", isUnminifiedDart2JSOutput); | |
46 endPubServe(); | |
47 }); | |
48 }); | |
49 } | |
OLD | NEW |