Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(88)

Unified Diff: sdk/lib/_internal/pub/test/serve/web_socket/serve_directory_and_immediately_serve_again_test.dart

Issue 221173007: Properly handle web socket requests to half-initialized servers. (Closed) Base URL: https://dart.googlecode.com/svn/branches/bleeding_edge/dart
Patch Set: code review Created 6 years, 9 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: sdk/lib/_internal/pub/test/serve/web_socket/serve_directory_and_immediately_serve_again_test.dart
diff --git a/sdk/lib/_internal/pub/test/serve/web_socket/serve_directory_test.dart b/sdk/lib/_internal/pub/test/serve/web_socket/serve_directory_and_immediately_serve_again_test.dart
similarity index 51%
copy from sdk/lib/_internal/pub/test/serve/web_socket/serve_directory_test.dart
copy to sdk/lib/_internal/pub/test/serve/web_socket/serve_directory_and_immediately_serve_again_test.dart
index a3de26affa8fb1b21fe32cf613b26e547aad7f27..dc7f3e326c58f2d487ee23d316874a0e7ecdd4e5 100644
--- a/sdk/lib/_internal/pub/test/serve/web_socket/serve_directory_test.dart
+++ b/sdk/lib/_internal/pub/test/serve/web_socket/serve_directory_and_immediately_serve_again_test.dart
@@ -4,6 +4,8 @@
library pub_tests;
+import 'dart:async';
+
import 'package:scheduled_test/scheduled_test.dart';
import '../../descriptor.dart' as d;
@@ -12,7 +14,8 @@ import '../utils.dart';
main() {
initConfig();
- integration("binds a directory to a new port", () {
+ integration("binds a directory to a new port and immediately binds that "
+ "directory again", () {
d.dir(appPath, [
d.appPubspec(),
d.dir("test", [
@@ -25,27 +28,17 @@ main() {
pubServe(args: ["web"]);
- // Bind the new directory.
- expectWebSocketResult("serveDirectory", {"path": "test"}, {
- "url": matches(r"http://127\.0\.0\.1:\d+")
- }).then((response) {
- var url = Uri.parse(response["url"]);
- registerServerPort("test", url.port);
+ schedule(() {
+ return Future.wait([
+ webSocketRequest("serveDirectory", {"path": "test"}),
+ webSocketRequest("serveDirectory", {"path": "test"})
+ ]).then((results) {
+ expect(results[0], contains("result"));
+ expect(results[1], contains("result"));
+ expect(results[0]["result"], equals(results[1]["result"]));
+ });
});
- // It should be served now.
- requestShouldSucceed("index.html", "<test body>", root: "test");
-
- // And watched.
- d.dir(appPath, [
- d.dir("test", [
- d.file("index.html", "after")
- ])
- ]).create();
-
- waitForBuildSuccess();
- requestShouldSucceed("index.html", "after", root: "test");
-
endPubServe();
});
}

Powered by Google App Engine
This is Rietveld 408576698