OLD | NEW |
1 // Copyright (c) 2014, the Dart project authors. Please see the AUTHORS file | 1 // Copyright (c) 2014, 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 | 4 |
5 import 'package:path/path.dart' as p; | 5 import 'package:path/path.dart' as p; |
6 import 'package:scheduled_test/scheduled_test.dart'; | 6 import 'package:scheduled_test/scheduled_test.dart'; |
7 | 7 |
8 import '../descriptor.dart' as d; | 8 import '../descriptor.dart' as d; |
9 import '../serve/utils.dart'; | 9 import '../serve/utils.dart'; |
10 import '../test_pub.dart'; | 10 import '../test_pub.dart'; |
11 | 11 |
12 main() { | 12 main() { |
13 setUp(() { | 13 setUp(() { |
14 d.dir(appPath, [ | 14 d.dir(appPath, [ |
15 d.appPubspec(), | 15 d.appPubspec(), |
16 d.dir("web", [ | 16 d.dir("web", [ |
17 d.dir("one", [ | 17 d.dir("one", [ |
18 d.dir("inner", [d.file("file.txt", "one")]) | 18 d.dir("inner", [d.file("file.txt", "one")]) |
19 ]), | 19 ]), |
20 d.dir("two", [ | 20 d.dir("two", [ |
21 d.dir("inner", [d.file("file.txt", "two")]) | 21 d.dir("inner", [d.file("file.txt", "two")]) |
22 ]), | 22 ]), |
23 d.dir("nope", [ | 23 d.dir("nope", [ |
24 d.dir("inner", [d.file("file.txt", "nope")]) | 24 d.dir("inner", [d.file("file.txt", "nope")]) |
25 ]) | 25 ]) |
26 ]) | 26 ]) |
27 ]).create(); | 27 ]).create(); |
| 28 |
| 29 pubGet(); |
28 }); | 30 }); |
29 | 31 |
30 var webOne = p.join("web", "one"); | 32 var webOne = p.join("web", "one"); |
31 var webTwoInner = p.join("web", "two", "inner"); | 33 var webTwoInner = p.join("web", "two", "inner"); |
32 | 34 |
33 integration("builds subdirectories", () { | 35 integration("builds subdirectories", () { |
34 schedulePub(args: ["build", webOne, webTwoInner], | 36 schedulePub(args: ["build", webOne, webTwoInner], |
35 output: new RegExp(r'Built 2 files to "build".')); | 37 output: new RegExp(r'Built 2 files to "build".')); |
36 | 38 |
37 d.dir(appPath, [ | 39 d.dir(appPath, [ |
38 d.dir("build", [ | 40 d.dir("build", [ |
39 d.dir("web", [ | 41 d.dir("web", [ |
40 d.dir("one", [ | 42 d.dir("one", [ |
41 d.dir("inner", [d.file("file.txt", "one")]) | 43 d.dir("inner", [d.file("file.txt", "one")]) |
42 ]), | 44 ]), |
43 d.dir("two", [ | 45 d.dir("two", [ |
44 d.dir("inner", [d.file("file.txt", "two")]) | 46 d.dir("inner", [d.file("file.txt", "two")]) |
45 ]), | 47 ]), |
46 d.nothing("nope") | 48 d.nothing("nope") |
47 ]) | 49 ]) |
48 ]) | 50 ]) |
49 ]).validate(); | 51 ]).validate(); |
50 }); | 52 }); |
51 | 53 |
52 integration("serves subdirectories", () { | 54 integration("serves subdirectories", () { |
53 pubServe(args: [webOne, webTwoInner], shouldGetFirst: true); | 55 pubServe(args: [webOne, webTwoInner]); |
54 | 56 |
55 requestShouldSucceed("inner/file.txt", "one", root: webOne); | 57 requestShouldSucceed("inner/file.txt", "one", root: webOne); |
56 requestShouldSucceed("file.txt", "two", root: webTwoInner); | 58 requestShouldSucceed("file.txt", "two", root: webTwoInner); |
57 expectNotServed("web"); | 59 expectNotServed("web"); |
58 expectNotServed(p.join("web", "three")); | 60 expectNotServed(p.join("web", "three")); |
59 | 61 |
60 endPubServe(); | 62 endPubServe(); |
61 }); | 63 }); |
62 } | 64 } |
OLD | NEW |