additional test coverage for atomics.wait + removing old tests which have been replaced + test cleanup and renaming test files for consistency

This commit is contained in:
Amal Hussein 2018-03-19 10:22:13 -04:00 committed by Rick Waldron
parent 9f57733ed9
commit 0059b4783d
6 changed files with 17 additions and 13 deletions

View File

@ -24,10 +24,10 @@ $262.agent.receiveBroadcast(function (sab, id) {
var ia = new Int32Array(new SharedArrayBuffer(Int32Array.BYTES_PER_ELEMENT));
$262.agent.broadcast(ia.buffer);
assert.sameValue(getReport(), "timed-out");
assert.sameValue((getReport() | 0) >= 500 - $ATOMICS_MAX_TIME_EPSILON, true);
function getReport() {
var r;
while ((r = $262.agent.getReport()) == null)

View File

@ -28,3 +28,5 @@ function getReport() {
$262.agent.sleep(100);
return r;
}
assert.sameValue(Atomics.wake(ia, 0), 0);

View File

@ -31,21 +31,20 @@ function getReport() {
$262.agent.start(
`
$262.agent.receiveBroadcast(function (sab) {
var int32Array = new Int32Array(sab);
var int32Array = new Int32Array(sab);
var poisoned = {
valueOf: false,
toString: false
};
var err;
try {
Atomics.wait(int32Array, 0, 0, poisoned);
} catch(e) {
err = e.name;
$262.agent.report(e.name);
}
$262.agent.report(err);
$262.agent.leaving();
})
`);
@ -55,6 +54,8 @@ var int32Array = new Int32Array(sab);
$262.agent.broadcast(int32Array.buffer);
$262.agent.sleep(150);
assert.sameValue(getReport(), 'TypeError');
assert.sameValue(Atomics.wake(int32Array, 0), 0);

View File

@ -27,15 +27,13 @@ $262.agent.start(
$262.agent.receiveBroadcast(function (sab) {
var int32Array = new Int32Array(sab);
var err;
try {
Atomics.wait(int32Array, 0, 0, Symbol('foo'));
} catch(e) {
err = e.name;
$262.agent.report(e.name);
}
$262.agent.report(err);
$262.agent.leaving();
})
`);
@ -45,4 +43,8 @@ var int32Array = new Int32Array(sab);
$262.agent.broadcast(int32Array.buffer);
$262.agent.sleep(150);
assert.sameValue(getReport(), 'TypeError');
assert.sameValue(Atomics.wake(int32Array, 0), 0);

View File

@ -38,7 +38,7 @@ var int32Array = new Int32Array(new SharedArrayBuffer(Int32Array.BYTES_PER_ELEME
$262.agent.broadcast(int32Array.buffer);
$262.agent.sleep(2);
$262.agent.sleep(150);
var r1 = getReport();
var r2 = getReport();

View File

@ -17,9 +17,8 @@ features: [ Atomics, SharedArrayBuffer, TypedArray ]
function getReport() {
var r;
while ((r = $262.agent.getReport()) == null) {
while ((r = $262.agent.getReport()) == null)
$262.agent.sleep(100);
}
return r;
}