Index: sdk/lib/_internal/pub/test/serve/web_socket/url_to_asset_id_test.dart |
diff --git a/sdk/lib/_internal/pub/test/serve/web_socket/url_to_asset_id_test.dart b/sdk/lib/_internal/pub/test/serve/web_socket/url_to_asset_id_test.dart |
new file mode 100644 |
index 0000000000000000000000000000000000000000..74726bf10daeafe948a81b5b4c01fc7c23d34929 |
--- /dev/null |
+++ b/sdk/lib/_internal/pub/test/serve/web_socket/url_to_asset_id_test.dart |
@@ -0,0 +1,122 @@ |
+// Copyright (c) 2014, the Dart project authors. Please see the AUTHORS d.file |
+// for details. All rights reserved. Use of this source code is governed by a |
+// BSD-style license that can be found in the LICENSE file. |
+ |
+library pub_tests; |
+ |
+import 'package:scheduled_test/scheduled_test.dart'; |
+import '../../descriptor.dart' as d; |
+import '../../test_pub.dart'; |
+import '../utils.dart'; |
+ |
+main() { |
+ // TODO(rnystrom): Split into independent tests. |
+ initConfig(); |
+ setUp(() { |
+ d.dir("foo", [ |
+ d.libPubspec("foo", "0.0.1"), |
+ d.dir("asset", [ |
+ d.file("foo.txt", "foo"), |
+ d.dir("sub", [ |
+ d.file("bar.txt", "bar"), |
+ ]) |
+ ]), |
+ d.dir("lib", [ |
+ d.file("foo.dart", "foo") |
+ ]) |
+ ]).create(); |
+ |
+ d.dir(appPath, [ |
+ d.appPubspec({ |
+ "foo": {"path": "../foo"} |
+ }), |
+ d.dir("lib", [ |
+ d.file("myapp.dart", "myapp"), |
+ ]), |
+ d.dir("test", [ |
+ d.file("index.html", "<body>"), |
+ d.dir("sub", [ |
+ d.file("bar.html", "bar"), |
+ ]) |
+ ]), |
+ d.dir("web", [ |
+ d.file("index.html", "<body>"), |
+ d.dir("sub", [ |
+ d.file("bar.html", "bar"), |
+ ]) |
+ ]) |
+ ]).create(); |
+ }); |
+ |
+ integration("converts URLs to matching asset ids in web/", () { |
+ pubServe(shouldGetFirst: true); |
+ expectWebSocketResult("urlToAssetId", { |
+ "url": getServerUrl("web", "index.html") |
+ }, {"package": "myapp", "path": "web/index.html"}); |
+ endPubServe(); |
+ }); |
+ |
+ integration("converts URLs to matching asset ids in subdirectories of web/", |
+ () { |
+ pubServe(shouldGetFirst: true); |
+ expectWebSocketResult("urlToAssetId", { |
+ "url": getServerUrl("web", "sub/bar.html") |
+ }, {"package": "myapp", "path": "web/sub/bar.html"}); |
+ endPubServe(); |
+ }); |
+ |
+ integration("converts URLs to matching asset ids in test/", () { |
+ pubServe(shouldGetFirst: true); |
+ expectWebSocketResult("urlToAssetId", { |
+ "url": getServerUrl("test", "index.html") |
+ }, {"package": "myapp", "path": "test/index.html"}); |
+ endPubServe(); |
+ }); |
+ |
+ integration("converts URLs to matching asset ids in subdirectories of test/", |
+ () { |
+ pubServe(shouldGetFirst: true); |
+ expectWebSocketResult("urlToAssetId", { |
+ "url": getServerUrl("test", "sub/bar.html") |
+ }, {"package": "myapp", "path": "test/sub/bar.html"}); |
+ endPubServe(); |
+ }); |
+ |
+ integration("converts URLs to matching asset ids in the entrypoint's lib/", |
+ () { |
+ // Path in root package's lib/. |
+ pubServe(shouldGetFirst: true); |
+ expectWebSocketResult("urlToAssetId", { |
+ "url": getServerUrl("web", "packages/myapp/myapp.dart") |
+ }, {"package": "myapp", "path": "lib/myapp.dart"}); |
+ endPubServe(); |
+ }); |
+ |
+ integration("converts URLs to matching asset ids in a dependency's lib/", () { |
+ // Path in lib/. |
+ pubServe(shouldGetFirst: true); |
+ expectWebSocketResult("urlToAssetId", { |
+ "url": getServerUrl("web", "packages/foo/foo.dart") |
+ }, {"package": "foo", "path": "lib/foo.dart"}); |
+ endPubServe(); |
+ }); |
+ |
+ integration("converts URLs to matching asset ids in the entrypoint's asset/", |
+ () { |
+ // Paths in asset/. |
+ pubServe(shouldGetFirst: true); |
+ expectWebSocketResult("urlToAssetId", { |
+ "url": getServerUrl("web", "assets/foo/foo.txt") |
+ }, {"package": "foo", "path": "asset/foo.txt"}); |
+ endPubServe(); |
+ }); |
+ |
+ integration("converts URLs to matching asset ids in a dependency's of asset/", |
+ () { |
+ pubServe(shouldGetFirst: true); |
+ expectWebSocketResult("urlToAssetId", { |
+ "url": getServerUrl("web", "assets/foo/sub/bar.txt") |
+ }, {"package": "foo", "path": "asset/sub/bar.txt"}); |
+ endPubServe(); |
+ }); |
+} |