OLD | NEW |
1 // Copyright (c) 2013, the Dart project authors. Please see the AUTHORS d.file | 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 | 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 | 4 |
5 library pub_tests; | 5 library pub_tests; |
6 | 6 |
7 import '../descriptor.dart' as d; | 7 import '../descriptor.dart' as d; |
8 import '../test_pub.dart'; | 8 import '../test_pub.dart'; |
9 import '../serve/utils.dart'; | 9 import '../serve/utils.dart'; |
10 | 10 |
11 final transformer = """ | 11 final transformer = """ |
12 import 'dart:async'; | 12 import 'dart:async'; |
13 | 13 |
14 import 'package:barback/barback.dart'; | 14 import 'package:barback/barback.dart'; |
15 | 15 |
16 class RewriteTransformer extends Transformer { | 16 class RewriteTransformer extends Transformer { |
17 RewriteTransformer.asPlugin(); | 17 RewriteTransformer.asPlugin(); |
18 | 18 |
19 String get allowedExtensions => '.txt'; | 19 String get allowedExtensions => '.txt'; |
20 } | 20 } |
21 """; | 21 """; |
22 | 22 |
23 main() { | 23 main() { |
24 initConfig(); | 24 initConfig(); |
25 withBarbackVersions("any", () { | 25 withBarbackVersions("any", () { |
26 integration("prints a transform interface error", () { | 26 integration("prints a transform interface error", () { |
27 d.dir(appPath, [ | 27 d.dir(appPath, [d.pubspec({ |
28 d.pubspec({ | |
29 "name": "myapp", | 28 "name": "myapp", |
30 "transformers": ["myapp/src/transformer"] | 29 "transformers": ["myapp/src/transformer"] |
31 }), | 30 }), |
32 d.dir("lib", [d.dir("src", [ | 31 d.dir("lib", [d.dir("src", [d.file("transformer.dart", transformer)]
)]), |
33 d.file("transformer.dart", transformer) | 32 d.dir("web", [d.file("foo.txt", "foo")])]).create(); |
34 ])]), | |
35 d.dir("web", [ | |
36 d.file("foo.txt", "foo") | |
37 ]) | |
38 ]).create(); | |
39 | 33 |
40 createLockFile('myapp', pkg: ['barback']); | 34 createLockFile('myapp', pkg: ['barback']); |
41 | 35 |
42 var server = pubServe(); | 36 var server = pubServe(); |
43 server.stderr.expect(emitsLines( | 37 server.stderr.expect( |
44 "Build error:\n" | 38 emitsLines( |
45 "Transform Rewrite on myapp|web/foo.txt threw error: Class " | 39 "Build error:\n" "Transform Rewrite on myapp|web/foo.txt threw err
or: Class " |
46 "'RewriteTransformer' has no instance method 'apply'.")); | 40 "'RewriteTransformer' has no instance method 'apply'.")); |
47 endPubServe(); | 41 endPubServe(); |
48 }); | 42 }); |
49 }); | 43 }); |
50 } | 44 } |
OLD | NEW |