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

Unified Diff: LayoutTests/http/tests/eventsource/script-tests/eventsource-cors-basic.js

Issue 345813005: Rework EventSource CORS tests to be usable from Workers. (Closed) Base URL: https://chromium.googlesource.com/chromium/blink.git@master
Patch Set: Generalize redirect.php?cors_enabled to cors_allow_origin Created 6 years, 6 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: LayoutTests/http/tests/eventsource/script-tests/eventsource-cors-basic.js
diff --git a/LayoutTests/http/tests/eventsource/script-tests/eventsource-cors-basic.js b/LayoutTests/http/tests/eventsource/script-tests/eventsource-cors-basic.js
new file mode 100644
index 0000000000000000000000000000000000000000..5f916e0609a1a1b26a717d66a58781b660b4e2a4
--- /dev/null
+++ b/LayoutTests/http/tests/eventsource/script-tests/eventsource-cors-basic.js
@@ -0,0 +1,39 @@
+if (self.importScripts)
+ importScripts("/js-test-resources/js-test.js");
+
+description("Test that basic EventSource cross-origin requests fail until they are allowed by the Access-Control-Allow-Origin header.");
+
+self.jsTestIsAsync = true;
+
+var count = 1;
+var es, evt;
+
+function runTest() {
+ shouldNotThrow("es = new EventSource(\"http://127.0.0.1:8080/eventsource/resources/es-cors-basic.php?count=" + count + "\")");
+ shouldBeFalse("es.withCredentials");
+ es.onerror = function () {
+ if (es.readyState == es.CLOSED) {
+ shouldBe("es.readyState", "es.CLOSED");
+ shouldBeTrue("count != 3 && count != 4");
+ count++;
+ setTimeout(runTest);
+ return;
+ }
+ shouldBe("count", "4");
+ };
+ es.onmessage = function (arg) {
+ evt = arg;
+ shouldBeTrue("evt.origin.indexOf('http://127.0.0.1:8080') === 0");
+ if (count == 3) {
+ shouldBeTrue("evt.data == 'DATA1' && evt.lastEventId == '77'");
+ count++;
+ return;
+ }
+ shouldBe("count", "4");
+ shouldBeEqualToString("evt.data", "DATA2");
+ debug("DONE");
+ es.close();
+ finishJSTest();
+ };
+}
+runTest();

Powered by Google App Engine
This is Rietveld 408576698