summaryrefslogtreecommitdiffstats
path: root/netwerk/test/mochitests/test_accept_header.sjs
diff options
context:
space:
mode:
authorMoonchild <mcwerewolf@wolfbeast.com>2019-03-12 18:29:14 +0100
committerGitHub <noreply@github.com>2019-03-12 18:29:14 +0100
commit709bc24e9110eba12f94cfcb8db00a8338ac4098 (patch)
tree8218d4f60d9eccacbf42df8cb88094a082d401b4 /netwerk/test/mochitests/test_accept_header.sjs
parent6b4d81521f0c7bef48a1e8c3e9254a81df27a9d2 (diff)
parent367d77ee9a6df15cacaf1a1f4032f834e972b335 (diff)
downloadUXP-709bc24e9110eba12f94cfcb8db00a8338ac4098.tar
UXP-709bc24e9110eba12f94cfcb8db00a8338ac4098.tar.gz
UXP-709bc24e9110eba12f94cfcb8db00a8338ac4098.tar.lz
UXP-709bc24e9110eba12f94cfcb8db00a8338ac4098.tar.xz
UXP-709bc24e9110eba12f94cfcb8db00a8338ac4098.zip
Merge pull request #995 from MoonchildProductions/httpaccept-work
Change the way http Accept: headers are used.
Diffstat (limited to 'netwerk/test/mochitests/test_accept_header.sjs')
-rw-r--r--netwerk/test/mochitests/test_accept_header.sjs48
1 files changed, 48 insertions, 0 deletions
diff --git a/netwerk/test/mochitests/test_accept_header.sjs b/netwerk/test/mochitests/test_accept_header.sjs
new file mode 100644
index 000000000..035c886aa
--- /dev/null
+++ b/netwerk/test/mochitests/test_accept_header.sjs
@@ -0,0 +1,48 @@
+function handleRequest(request, response) {
+ response.setStatusLine(request.httpVersion, "200", "OK");
+
+ if (request.queryString == "worker") {
+ response.setHeader("Content-Type", "application/json", false);
+ response.write("postMessage(42)");
+
+ setState("data", JSON.stringify({type: "worker", accept: request.getHeader("Accept") }));
+ return;
+ }
+
+ if (request.queryString == "image") {
+ // A 1x1 PNG image.
+ // Source: https://commons.wikimedia.org/wiki/File:1x1.png (Public Domain)
+ const IMAGE = atob("iVBORw0KGgoAAAANSUhEUgAAAAEAAAABAQMAAAAl21bKAAAAA1BMVEUAA" +
+ "ACnej3aAAAAAXRSTlMAQObYZgAAAApJREFUCNdjYAAAAAIAAeIhvDMAAAAASUVORK5CYII=");
+
+ response.setHeader("Content-Type", "image/png", false);
+ response.write(IMAGE);
+
+ setState("data", JSON.stringify({type: "image", accept: request.getHeader("Accept") }));
+ return;
+ }
+
+ if (request.queryString == "style") {
+ response.setHeader("Content-Type", "text/css", false);
+ response.write("");
+
+ setState("data", JSON.stringify({type: "style", accept: request.getHeader("Accept") }));
+ return;
+ }
+
+ if (request.queryString == "iframe") {
+ response.setHeader("Content-Type", "text/html", false);
+ response.write("<h1>Hello world!</h1>");
+
+ setState("data", JSON.stringify({type: "iframe", accept: request.getHeader("Accept") }));
+ return;
+ }
+
+ if (request.queryString == "get") {
+ response.setHeader("Content-Type", "text/javascript", false);
+ response.write(getState("data"));
+
+ setState("data", "");
+ return;
+ }
+}