mirror of https://github.com/tc39/test262.git
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:
parent
9f57733ed9
commit
0059b4783d
|
@ -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)
|
||||
|
|
|
@ -28,3 +28,5 @@ function getReport() {
|
|||
$262.agent.sleep(100);
|
||||
return r;
|
||||
}
|
||||
|
||||
assert.sameValue(Atomics.wake(ia, 0), 0);
|
||||
|
|
|
@ -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);
|
||||
|
|
|
@ -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);
|
||||
|
|
|
@ -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();
|
||||
|
|
|
@ -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;
|
||||
}
|
||||
|
||||
|
|
Loading…
Reference in New Issue