summaryrefslogtreecommitdiffstats
path: root/dom/tests/mochitest/bugs/bug289714.sjs
diff options
context:
space:
mode:
Diffstat (limited to 'dom/tests/mochitest/bugs/bug289714.sjs')
-rw-r--r--dom/tests/mochitest/bugs/bug289714.sjs16
1 files changed, 16 insertions, 0 deletions
diff --git a/dom/tests/mochitest/bugs/bug289714.sjs b/dom/tests/mochitest/bugs/bug289714.sjs
new file mode 100644
index 000000000..aae8247ae
--- /dev/null
+++ b/dom/tests/mochitest/bugs/bug289714.sjs
@@ -0,0 +1,16 @@
+// Send a payload that's over 32k in size, which for a plain response should be
+// large enough to ensure that OnDataAvailable is called more than once (and so
+// the XHR will be triggered to send more than one "loading" event if desired).
+
+function handleRequest(request, response)
+{
+ // Send 81920 bytes of こんにちは in Shift-JIS encoding, framed in XML.
+ let data = "<?xml version='1.0' encoding='shift-jis'?><xml>" +
+ (new Array(1 << 13)).join("\x82\xb1\x82\xf1\x82\xc9\x82\xbf\x82\xcd") +
+ "</xml>";
+ response.processAsync();
+ response.setHeader("Content-Type", "text/xml", false);
+ response.setHeader("Content-Length", "" + data.length, false);
+ response.write(data, data.length);
+ response.finish();
+}