annotate node_modules/xmlhttprequest/tests/test-events.js @ 101:52e44ee1c791 tip master

enabled all scores in autostart script
author Rob Canning <rc@kiben.net>
date Tue, 21 Apr 2015 16:20:57 +0100
parents cd921abc8887
children
rev   line source
rob@77 1 var sys = require("util")
rob@77 2 , assert = require("assert")
rob@77 3 , http = require("http")
rob@77 4 , XMLHttpRequest = require("../lib/XMLHttpRequest").XMLHttpRequest
rob@77 5 , xhr;
rob@77 6
rob@77 7 // Test server
rob@77 8 var server = http.createServer(function (req, res) {
rob@77 9 var body = (req.method != "HEAD" ? "Hello World" : "");
rob@77 10
rob@77 11 res.writeHead(200, {
rob@77 12 "Content-Type": "text/plain",
rob@77 13 "Content-Length": Buffer.byteLength(body)
rob@77 14 });
rob@77 15 // HEAD has no body
rob@77 16 if (req.method != "HEAD") {
rob@77 17 res.write(body);
rob@77 18 }
rob@77 19 res.end();
rob@77 20 assert.equal(onreadystatechange, true);
rob@77 21 assert.equal(readystatechange, true);
rob@77 22 assert.equal(removed, true);
rob@77 23 sys.puts("done");
rob@77 24 this.close();
rob@77 25 }).listen(8000);
rob@77 26
rob@77 27 xhr = new XMLHttpRequest();
rob@77 28
rob@77 29 // Track event calls
rob@77 30 var onreadystatechange = false;
rob@77 31 var readystatechange = false;
rob@77 32 var removed = true;
rob@77 33 var removedEvent = function() {
rob@77 34 removed = false;
rob@77 35 };
rob@77 36
rob@77 37 xhr.onreadystatechange = function() {
rob@77 38 onreadystatechange = true;
rob@77 39 };
rob@77 40
rob@77 41 xhr.addEventListener("readystatechange", function() {
rob@77 42 readystatechange = true;
rob@77 43 });
rob@77 44
rob@77 45 // This isn't perfect, won't guarantee it was added in the first place
rob@77 46 xhr.addEventListener("readystatechange", removedEvent);
rob@77 47 xhr.removeEventListener("readystatechange", removedEvent);
rob@77 48
rob@77 49 xhr.open("GET", "http://localhost:8000");
rob@77 50 xhr.send();