Skip to content

Commit

Permalink
Merge pull request #91 from tmpsantos/new_xhr_tests
Browse files Browse the repository at this point in the history
Adding Intel XHR timeout tests.
  • Loading branch information
Hallvord R. M. Steen committed May 21, 2013
2 parents 82f4d31 + 7e13f14 commit 4ee5b70
Show file tree
Hide file tree
Showing 24 changed files with 676 additions and 0 deletions.
23 changes: 23 additions & 0 deletions XMLHttpRequest/MANIFEST
Original file line number Diff line number Diff line change
@@ -1,3 +1,13 @@
support xmlhttprequest-timeout-aborted.js
support xmlhttprequest-timeout-abortedonmain.js
support xmlhttprequest-timeout-overrides.js
support xmlhttprequest-timeout-overridesexpires.js
support xmlhttprequest-timeout-runner.js
support xmlhttprequest-timeout-simple.js
support xmlhttprequest-timeout-synconmain.js
support xmlhttprequest-timeout-synconworker.js
support xmlhttprequest-timeout-twice.js
support xmlhttprequest-timeout.js
abort-after-send.htm
abort-during-done.htm
abort-during-open.htm
Expand Down Expand Up @@ -80,4 +90,17 @@ xmlhttprequest-basic.htm
xmlhttprequest-eventtarget.htm
xmlhttprequest-network-error-sync.htm
xmlhttprequest-network-error.htm
xmlhttprequest-timeout-aborted.html
xmlhttprequest-timeout-abortedonmain.html
xmlhttprequest-timeout-overrides.html
xmlhttprequest-timeout-overridesexpires.html
xmlhttprequest-timeout-simple.html
xmlhttprequest-timeout-synconmain.html
xmlhttprequest-timeout-twice.html
xmlhttprequest-timeout-worker-aborted.html
xmlhttprequest-timeout-worker-overrides.html
xmlhttprequest-timeout-worker-overridesexpires.html
xmlhttprequest-timeout-worker-simple.html
xmlhttprequest-timeout-worker-synconworker.html
xmlhttprequest-timeout-worker-twice.html
xmlhttprequest-unsent.htm
19 changes: 19 additions & 0 deletions XMLHttpRequest/xmlhttprequest-timeout-aborted.html
Original file line number Diff line number Diff line change
@@ -0,0 +1,19 @@
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8" />
<title>XHR2 Timeout Property Tests</title>
<link rel="help" href="http://www.w3.org/TR/XMLHttpRequest/#timeout-error" />
<link rel="stylesheet" href="/resources/testharness.css" />
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
<script src="xmlhttprequest-timeout.js"></script>
<script src="xmlhttprequest-timeout-runner.js"></script>
</head>
<body>
<h1>Description</h1>
<p>This test validates that the XHR2 timeout property behaves as expected in async cases in document (i.e. non-worker) context.</p>
<div id="log"></div>
<script src="xmlhttprequest-timeout-aborted.js" type="text/javascript"></script>
</body>
</html>
6 changes: 6 additions & 0 deletions XMLHttpRequest/xmlhttprequest-timeout-aborted.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
if (this.document === undefined)
importScripts("xmlhttprequest-timeout.js");

runTestRequests([ new AbortedRequest(false),
new AbortedRequest(true, -1),
new AbortedRequest(true, TIME_NORMAL_LOAD) ]);
20 changes: 20 additions & 0 deletions XMLHttpRequest/xmlhttprequest-timeout-abortedonmain.html
Original file line number Diff line number Diff line change
@@ -0,0 +1,20 @@
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8" />
<title>XHR2 Timeout Property Tests</title>
<link rel="help" href="http://www.w3.org/TR/XMLHttpRequest/#timeout-error" />
<link rel="stylesheet" href="/resources/testharness.css" />
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
<script src="xmlhttprequest-timeout.js"></script>
<script src="xmlhttprequest-timeout-runner.js"></script>
</head>
<body>
<h1>Description</h1>
<p>This test validates that the XHR2 timeout property behaves as expected in async cases in document (i.e. non-worker) context.</p>
<div id="log"></div>
<script src="xmlhttprequest-timeout-abortedonmain.js" type="text/javascript"></script>
</body>
</html>

2 changes: 2 additions & 0 deletions XMLHttpRequest/xmlhttprequest-timeout-abortedonmain.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
runTestRequests([ new AbortedRequest(true, 0),
new AbortedRequest(true, TIME_DELAY) ]);
20 changes: 20 additions & 0 deletions XMLHttpRequest/xmlhttprequest-timeout-overrides.html
Original file line number Diff line number Diff line change
@@ -0,0 +1,20 @@
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8" />
<title>XHR2 Timeout Property Tests</title>
<link rel="help" href="http://www.w3.org/TR/XMLHttpRequest/#timeout-error" />
<link rel="stylesheet" href="/resources/testharness.css" />
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
<script src="xmlhttprequest-timeout.js"></script>
<script src="xmlhttprequest-timeout-runner.js"></script>
</head>
<body>
<h1>Description</h1>
<p>This test validates that the XHR2 timeout property behaves as expected in async cases in document (i.e. non-worker) context.</p>
<div id="log"></div>
<script src="xmlhttprequest-timeout-overrides.js"></script>
</body>
</html>

6 changes: 6 additions & 0 deletions XMLHttpRequest/xmlhttprequest-timeout-overrides.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
if (this.document === undefined)
importScripts("xmlhttprequest-timeout.js");

runTestRequests([ new RequestTracker(true, "timeout disabled after initially set", TIME_NORMAL_LOAD, TIME_REGULAR_TIMEOUT, 0),
new RequestTracker(true, "timeout overrides load after a delay", TIME_NORMAL_LOAD, TIME_DELAY, TIME_REGULAR_TIMEOUT),
new RequestTracker(true, "timeout enabled after initially disabled", 0, TIME_REGULAR_TIMEOUT, TIME_NORMAL_LOAD) ]);
19 changes: 19 additions & 0 deletions XMLHttpRequest/xmlhttprequest-timeout-overridesexpires.html
Original file line number Diff line number Diff line change
@@ -0,0 +1,19 @@
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8" />
<title>XHR2 Timeout Property Tests</title>
<link rel="help" href="http://www.w3.org/TR/XMLHttpRequest/#timeout-error" />
<link rel="stylesheet" href="/resources/testharness.css" />
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
<script src="xmlhttprequest-timeout.js"></script>
<script src="xmlhttprequest-timeout-runner.js"></script>
</head>
<body>
<h1>Description</h1>
<p>This test validates that the XHR2 timeout property behaves as expected in async cases in document (i.e. non-worker) context.</p>
<div id="log"></div>
<script src="xmlhttprequest-timeout-overridesexpires.js" type="text/javascript"></script>
</body>
</html>
6 changes: 6 additions & 0 deletions XMLHttpRequest/xmlhttprequest-timeout-overridesexpires.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
if (this.document === undefined)
importScripts("xmlhttprequest-timeout.js");

runTestRequests([ new RequestTracker(true, "timeout set to expiring value after load fires", TIME_NORMAL_LOAD, TIME_LATE_TIMEOUT, TIME_DELAY),
new RequestTracker(true, "timeout set to expired value before load fires", TIME_NORMAL_LOAD, TIME_REGULAR_TIMEOUT, TIME_DELAY),
new RequestTracker(true, "timeout set to non-expiring value after timeout fires", TIME_DELAY, TIME_REGULAR_TIMEOUT, TIME_NORMAL_LOAD) ]);
25 changes: 25 additions & 0 deletions XMLHttpRequest/xmlhttprequest-timeout-runner.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,25 @@
function testResultCallbackHandler(event) {
if (event.data == "done") {
done();
return;
}
if (event.data.type == "is") {
test(function() { assert_equals(event.data.got, event.data.expected, event.data.msg); });
return;
}
if (event.data.type == "ok") {
test(function() { assert_true(event.data.bool, event.data.msg); });
return;
}
}

window.addEventListener("message", testResultCallbackHandler);

// Setting up testharness.js
setup({ explicit_done: true, timeout: 30 * 1000 });

// Abort test execution if an individual test case fails.
add_result_callback(function (t) {
if (t.status == t.FAIL)
done();
});
20 changes: 20 additions & 0 deletions XMLHttpRequest/xmlhttprequest-timeout-simple.html
Original file line number Diff line number Diff line change
@@ -0,0 +1,20 @@
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8" />
<title>XHR2 Timeout Property Tests</title>
<link rel="help" href="http://www.w3.org/TR/XMLHttpRequest/#timeout-error" />
<link rel="stylesheet" href="/resources/testharness.css" />
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
<script src="xmlhttprequest-timeout.js"></script>
<script src="xmlhttprequest-timeout-runner.js"></script>
</head>
<body>
<h1>Description</h1>
<p>This test validates that the XHR2 timeout property behaves as expected in async cases in document (i.e. non-worker) context.</p>
<div id="log"></div>
<script src="xmlhttprequest-timeout-simple.js"></script>
</body>
</html>

6 changes: 6 additions & 0 deletions XMLHttpRequest/xmlhttprequest-timeout-simple.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
if (this.document === undefined)
importScripts("xmlhttprequest-timeout.js");

runTestRequests([ new RequestTracker(true, "no time out scheduled, load fires normally", 0),
new RequestTracker(true, "load fires normally", TIME_NORMAL_LOAD),
new RequestTracker(true, "timeout hit before load", TIME_REGULAR_TIMEOUT) ]);
20 changes: 20 additions & 0 deletions XMLHttpRequest/xmlhttprequest-timeout-synconmain.html
Original file line number Diff line number Diff line change
@@ -0,0 +1,20 @@
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8" />
<title>XHR2 Timeout Property Tests</title>
<link rel="help" href="http://www.w3.org/TR/XMLHttpRequest/#timeout-error" />
<link rel="stylesheet" href="/resources/testharness.css" />
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
<script src="xmlhttprequest-timeout.js"></script>
<script src="xmlhttprequest-timeout-runner.js"></script>
</head>
<body>
<h1>Description</h1>
<p>This test validates that the XHR2 timeout property behaves as expected in async cases in document (i.e. non-worker) context.</p>
<div id="log"></div>
<script src="xmlhttprequest-timeout-synconmain.js" type="text/javascript"></script>
</body>
</html>

2 changes: 2 additions & 0 deletions XMLHttpRequest/xmlhttprequest-timeout-synconmain.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
runTestRequests([ SyncRequestSettingTimeoutAfterOpen,
SyncRequestSettingTimeoutBeforeOpen ]);
6 changes: 6 additions & 0 deletions XMLHttpRequest/xmlhttprequest-timeout-synconworker.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
if (this.document === undefined)
importScripts("xmlhttprequest-timeout.js");

runTestRequests([ new RequestTracker(false, "no time out scheduled, load fires normally", 0),
new RequestTracker(false, "load fires normally", TIME_NORMAL_LOAD),
new RequestTracker(false, "timeout hit before load", TIME_REGULAR_TIMEOUT) ]);
20 changes: 20 additions & 0 deletions XMLHttpRequest/xmlhttprequest-timeout-twice.html
Original file line number Diff line number Diff line change
@@ -0,0 +1,20 @@
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8" />
<title>XHR2 Timeout Property Tests</title>
<link rel="help" href="http://www.w3.org/TR/XMLHttpRequest/#timeout-error" />
<link rel="stylesheet" href="/resources/testharness.css" />
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
<script src="xmlhttprequest-timeout.js"></script>
<script src="xmlhttprequest-timeout-runner.js"></script>
</head>
<body>
<h1>Description</h1>
<p>This test validates that the XHR2 timeout property behaves as expected in async cases in document (i.e. non-worker) context.</p>
<div id="log"></div>
<script src="xmlhttprequest-timeout-twice.js" type="text/javascript"></script>
</body>
</html>

6 changes: 6 additions & 0 deletions XMLHttpRequest/xmlhttprequest-timeout-twice.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
if (this.document === undefined)
importScripts("xmlhttprequest-timeout.js");

runTestRequests([ new RequestTracker(true, "load fires normally with no timeout set, twice", 0, TIME_REGULAR_TIMEOUT, 0),
new RequestTracker(true, "load fires normally with same timeout set twice", TIME_NORMAL_LOAD, TIME_REGULAR_TIMEOUT, TIME_NORMAL_LOAD),
new RequestTracker(true, "timeout fires normally with same timeout set twice", TIME_REGULAR_TIMEOUT, TIME_DELAY, TIME_REGULAR_TIMEOUT) ]);
21 changes: 21 additions & 0 deletions XMLHttpRequest/xmlhttprequest-timeout-worker-aborted.html
Original file line number Diff line number Diff line change
@@ -0,0 +1,21 @@
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8" />
<title>XHR2 Timeout Property Tests in Worker</title>
<link rel="help" href="http://www.w3.org/TR/XMLHttpRequest/#timeout-error" />
<link rel="stylesheet" href="/resources/testharness.css" />
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
<script src="xmlhttprequest-timeout-runner.js"></script>
</head>
<body>
<h1>Description</h1>
<p>This test validates that the XHR2 timeout property behaves as expected in in a worker context.</p>
<div id="log"></div>
<script type="text/javascript">
var worker = new Worker("xmlhttprequest-timeout-aborted.js");
worker.addEventListener("message", testResultCallbackHandler);
</script>
</body>
</html>
21 changes: 21 additions & 0 deletions XMLHttpRequest/xmlhttprequest-timeout-worker-overrides.html
Original file line number Diff line number Diff line change
@@ -0,0 +1,21 @@
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8" />
<title>XHR2 Timeout Property Tests in Worker</title>
<link rel="help" href="http://www.w3.org/TR/XMLHttpRequest/#timeout-error" />
<link rel="stylesheet" href="/resources/testharness.css" />
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
<script src="xmlhttprequest-timeout-runner.js"></script>
</head>
<body>
<h1>Description</h1>
<p>This test validates that the XHR2 timeout property behaves as expected in in a worker context.</p>
<div id="log"></div>
<script type="text/javascript">
var worker = new Worker("xmlhttprequest-timeout-overrides.js");
worker.addEventListener("message", testResultCallbackHandler);
</script>
</body>
</html>
21 changes: 21 additions & 0 deletions XMLHttpRequest/xmlhttprequest-timeout-worker-overridesexpires.html
Original file line number Diff line number Diff line change
@@ -0,0 +1,21 @@
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8" />
<title>XHR2 Timeout Property Tests in Worker</title>
<link rel="help" href="http://www.w3.org/TR/XMLHttpRequest/#timeout-error" />
<link rel="stylesheet" href="/resources/testharness.css" />
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
<script src="xmlhttprequest-timeout-runner.js"></script>
</head>
<body>
<h1>Description</h1>
<p>This test validates that the XHR2 timeout property behaves as expected in in a worker context.</p>
<div id="log"></div>
<script type="text/javascript">
var worker = new Worker("xmlhttprequest-timeout-overridesexpires.js");
worker.addEventListener("message", testResultCallbackHandler);
</script>
</body>
</html>
22 changes: 22 additions & 0 deletions XMLHttpRequest/xmlhttprequest-timeout-worker-simple.html
Original file line number Diff line number Diff line change
@@ -0,0 +1,22 @@
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8" />
<title>XHR2 Timeout Property Tests in Worker</title>
<link rel="help" href="http://www.w3.org/TR/XMLHttpRequest/#timeout-error" />
<link rel="stylesheet" href="/resources/testharness.css" />
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
<script src="xmlhttprequest-timeout-runner.js"></script>
</head>
<body>
<h1>Description</h1>
<p>This test validates that the XHR2 timeout property behaves as expected in in a worker context.</p>
<div id="log"></div>
<script type="text/javascript">
var worker = new Worker("xmlhttprequest-timeout-simple.js");
worker.onmessage = testResultCallbackHandler;
</script>
</body>
</html>

21 changes: 21 additions & 0 deletions XMLHttpRequest/xmlhttprequest-timeout-worker-synconworker.html
Original file line number Diff line number Diff line change
@@ -0,0 +1,21 @@
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8" />
<title>XHR2 Timeout Property Tests in Worker</title>
<link rel="help" href="http://www.w3.org/TR/XMLHttpRequest/#timeout-error" />
<link rel="stylesheet" href="/resources/testharness.css" />
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
<script src="xmlhttprequest-timeout-runner.js"></script>
</head>
<body>
<h1>Description</h1>
<p>This test validates that the XHR2 timeout property behaves as expected in in a worker context.</p>
<div id="log"></div>
<script type="text/javascript">
var worker = new Worker("xmlhttprequest-timeout-synconworker.js");
worker.addEventListener("message", testResultCallbackHandler);
</script>
</body>
</html>
22 changes: 22 additions & 0 deletions XMLHttpRequest/xmlhttprequest-timeout-worker-twice.html
Original file line number Diff line number Diff line change
@@ -0,0 +1,22 @@
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8" />
<title>XHR2 Timeout Property Tests in Worker</title>
<link rel="help" href="http://www.w3.org/TR/XMLHttpRequest/#timeout-error" />
<link rel="stylesheet" href="/resources/testharness.css" />
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
<script src="xmlhttprequest-timeout-runner.js"></script>
</head>
<body>
<h1>Description</h1>
<p>This test validates that the XHR2 timeout property behaves as expected in in a worker context.</p>
<div id="log"></div>
<script type="text/javascript">
var worker = new Worker("xmlhttprequest-timeout-twice.js");
worker.addEventListener("message", testResultCallbackHandler);
</script>
</body>
</html>

Loading

0 comments on commit 4ee5b70

Please sign in to comment.