| 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 initConfig(); | 13 initConfig(); |
| 14 | 14 |
| 15 setUp(() { | 15 setUp(() { |
| 16 d.dir(appPath, [ | 16 d.dir( |
| 17 d.appPubspec(), | 17 appPath, |
| 18 d.dir("web", [ | 18 [ |
| 19 d.dir("one", [ | 19 d.appPubspec(), |
| 20 d.dir("inner", [d.file("file.txt", "one")]) | 20 d.dir( |
| 21 ]), | 21 "web", |
| 22 d.dir("two", [ | 22 [ |
| 23 d.dir("inner", [d.file("file.txt", "two")]) | 23 d.dir("one", [d.dir("inner", [d.file("file.txt", "one")])]), |
| 24 ]), | 24 d.dir("two", [d.dir("inner", [d.file("file.txt", "two")])]), |
| 25 d.dir("nope", [ | 25 d.dir("nope", [d.dir("inner", [d.file("file.txt", "nope")])]
)])]).create(); |
| 26 d.dir("inner", [d.file("file.txt", "nope")]) | |
| 27 ]) | |
| 28 ]) | |
| 29 ]).create(); | |
| 30 }); | 26 }); |
| 31 | 27 |
| 32 var webOne = p.join("web", "one"); | 28 var webOne = p.join("web", "one"); |
| 33 var webTwoInner = p.join("web", "two", "inner"); | 29 var webTwoInner = p.join("web", "two", "inner"); |
| 34 | 30 |
| 35 integration("builds subdirectories", () { | 31 integration("builds subdirectories", () { |
| 36 schedulePub(args: ["build", webOne, webTwoInner], | 32 schedulePub( |
| 33 args: ["build", webOne, webTwoInner], |
| 37 output: new RegExp(r'Built 2 files to "build".')); | 34 output: new RegExp(r'Built 2 files to "build".')); |
| 38 | 35 |
| 39 d.dir(appPath, [ | 36 d.dir( |
| 40 d.dir("build", [ | 37 appPath, |
| 41 d.dir("web", [ | 38 [ |
| 42 d.dir("one", [ | 39 d.dir( |
| 43 d.dir("inner", [d.file("file.txt", "one")]) | 40 "build", |
| 44 ]), | 41 [ |
| 45 d.dir("two", [ | 42 d.dir( |
| 46 d.dir("inner", [d.file("file.txt", "two")]) | 43 "web", |
| 47 ]), | 44 [ |
| 48 d.nothing("nope") | 45 d.dir("one", [d.dir("inner", [d.file("file.txt", "on
e")])]), |
| 49 ]) | 46 d.dir("two", [d.dir("inner", [d.file("file.txt", "tw
o")])]), |
| 50 ]) | 47 d.nothing("nope")])])]).validate(); |
| 51 ]).validate(); | |
| 52 }); | 48 }); |
| 53 | 49 |
| 54 integration("serves subdirectories", () { | 50 integration("serves subdirectories", () { |
| 55 pubServe(args: [webOne, webTwoInner]); | 51 pubServe(args: [webOne, webTwoInner]); |
| 56 | 52 |
| 57 requestShouldSucceed("inner/file.txt", "one", root: webOne); | 53 requestShouldSucceed("inner/file.txt", "one", root: webOne); |
| 58 requestShouldSucceed("file.txt", "two", root: webTwoInner); | 54 requestShouldSucceed("file.txt", "two", root: webTwoInner); |
| 59 expectNotServed("web"); | 55 expectNotServed("web"); |
| 60 expectNotServed(p.join("web", "three")); | 56 expectNotServed(p.join("web", "three")); |
| 61 | 57 |
| 62 endPubServe(); | 58 endPubServe(); |
| 63 }); | 59 }); |
| 64 } | 60 } |
| OLD | NEW |