diff --git a/test/built-ins/Array/15.4.5.1-3.d-1.js b/test/built-ins/Array/15.4.5.1-3.d-1.js index 936331009cbfbb6ac7f3edb10238bb72b8b3ec9b..7e771af03732cf2415eadb36f68742d298fecb9c 100644 --- a/test/built-ins/Array/15.4.5.1-3.d-1.js +++ b/test/built-ins/Array/15.4.5.1-3.d-1.js @@ -6,14 +6,9 @@ es5id: 15.4.5.1-3.d-1 description: > Throw RangeError if attempt to set array length property to 4294967296 (2**32) -includes: [runTestCase.js] ---*/ -function testcase() { - try { + +assert.throws(RangeError, function() { [].length = 4294967296 ; - } catch (e) { - if (e instanceof RangeError) return true; - } - } -runTestCase(testcase); +}); diff --git a/test/built-ins/Array/15.4.5.1-3.d-2.js b/test/built-ins/Array/15.4.5.1-3.d-2.js index eacc1b709c625edef4f884330155abf214ae5920..e5ecd52d042e13d5d2944dba0d634343fae293bc 100644 --- a/test/built-ins/Array/15.4.5.1-3.d-2.js +++ b/test/built-ins/Array/15.4.5.1-3.d-2.js @@ -6,14 +6,9 @@ es5id: 15.4.5.1-3.d-2 description: > Throw RangeError if attempt to set array length property to 4294967297 (1+2**32) -includes: [runTestCase.js] ---*/ -function testcase() { - try { + +assert.throws(RangeError, function() { [].length = 4294967297 ; - } catch (e) { - if (e instanceof RangeError) return true; - } - } -runTestCase(testcase); +}); diff --git a/test/built-ins/Array/prototype/every/15.4.4.16-1-1.js b/test/built-ins/Array/prototype/every/15.4.4.16-1-1.js index f4c9bfe4e57e96211664a965a551867d9a1377cc..f6250b0af232777e23efafb79f520d8783795864 100644 --- a/test/built-ins/Array/prototype/every/15.4.4.16-1-1.js +++ b/test/built-ins/Array/prototype/every/15.4.4.16-1-1.js @@ -4,15 +4,9 @@ /*--- es5id: 15.4.4.16-1-1 description: Array.prototype.every applied to undefined throws a TypeError -includes: [runTestCase.js] ---*/ -function testcase() { - try { + +assert.throws(TypeError, function() { Array.prototype.every.call(undefined); // TypeError is thrown if value is undefined - return false; - } catch (e) { - return (e instanceof TypeError); - } - } -runTestCase(testcase); +}); diff --git a/test/built-ins/Array/prototype/every/15.4.4.16-1-2.js b/test/built-ins/Array/prototype/every/15.4.4.16-1-2.js index 27bb16bf60cab7184b862f2ab94b39377a6aadb1..8e9c44e1cc6a94950050f8b3218954d801c02d35 100644 --- a/test/built-ins/Array/prototype/every/15.4.4.16-1-2.js +++ b/test/built-ins/Array/prototype/every/15.4.4.16-1-2.js @@ -4,15 +4,9 @@ /*--- es5id: 15.4.4.16-1-2 description: Array.prototype.every applied to null throws a TypeError -includes: [runTestCase.js] ---*/ -function testcase() { - try { + +assert.throws(TypeError, function() { Array.prototype.every.call(null); // TypeError is thrown if value is null - return false; - } catch (e) { - return (e instanceof TypeError); - } - } -runTestCase(testcase); +}); diff --git a/test/built-ins/Array/prototype/every/15.4.4.16-3-22.js b/test/built-ins/Array/prototype/every/15.4.4.16-3-22.js index c6740303f46004348145dea36d57459898388330..0925479b4ea932ad12a1b3bb468c4e5b6bfb3ad3 100644 --- a/test/built-ins/Array/prototype/every/15.4.4.16-3-22.js +++ b/test/built-ins/Array/prototype/every/15.4.4.16-3-22.js @@ -7,11 +7,8 @@ description: > Array.prototype.every throws TypeError exception when 'length' is an object with toString and valueOf methods that don�t return primitive values -includes: [runTestCase.js] ---*/ -function testcase() { - var callbackfnAccessed = false; var toStringAccessed = false; var valueOfAccessed = false; @@ -36,12 +33,9 @@ function testcase() { } } }; - - try { +assert.throws(TypeError, function() { Array.prototype.every.call(obj, callbackfn); - return false; - } catch (ex) { - return (ex instanceof TypeError) && toStringAccessed && valueOfAccessed && !callbackfnAccessed; - } - } -runTestCase(testcase); +}); +assert(toStringAccessed, 'toStringAccessed !== true'); +assert(valueOfAccessed, 'valueOfAccessed !== true'); +assert.sameValue(callbackfnAccessed, false, 'callbackfnAccessed'); diff --git a/test/built-ins/Array/prototype/every/15.4.4.16-4-1.js b/test/built-ins/Array/prototype/every/15.4.4.16-4-1.js index e6a44deb9e048bb20ebb4534d14860b41fbbfdb8..7c41da2ceb1ae40f3e3f845423257badaa0ecaca 100644 --- a/test/built-ins/Array/prototype/every/15.4.4.16-4-1.js +++ b/test/built-ins/Array/prototype/every/15.4.4.16-4-1.js @@ -4,19 +4,9 @@ /*--- es5id: 15.4.4.16-4-1 description: Array.prototype.every throws TypeError if callbackfn is undefined -includes: [runTestCase.js] ---*/ -function testcase() { - var arr = new Array(10); - try { - arr.every(); - } - catch(e) { - if(e instanceof TypeError) - return true; - } - - } -runTestCase(testcase); +assert.throws(TypeError, function() { + arr.every(); +}); diff --git a/test/built-ins/Array/prototype/every/15.4.4.16-4-15.js b/test/built-ins/Array/prototype/every/15.4.4.16-4-15.js index ebc4e74909b168582e094e2a298c8859dee78cf6..5c7b02fa469136082361ea6a39d855186ef5baec 100644 --- a/test/built-ins/Array/prototype/every/15.4.4.16-4-15.js +++ b/test/built-ins/Array/prototype/every/15.4.4.16-4-15.js @@ -6,10 +6,8 @@ es5id: 15.4.4.16-4-15 description: > Array.prototype.every - calling with no callbackfn is the same as passing undefined for callbackfn -includes: [runTestCase.js] ---*/ -function testcase() { var obj = { 10: 10 }; var lengthAccessed = false; var loopAccessed = false; @@ -29,12 +27,8 @@ function testcase() { }, configurable: true }); - - try { +assert.throws(TypeError, function() { Array.prototype.every.call(obj); - return false; - } catch (ex) { - return (ex instanceof TypeError) && lengthAccessed && !loopAccessed; - } - } -runTestCase(testcase); +}); +assert(lengthAccessed, 'lengthAccessed !== true'); +assert.sameValue(loopAccessed, false, 'loopAccessed'); diff --git a/test/built-ins/Array/prototype/every/15.4.4.16-4-3.js b/test/built-ins/Array/prototype/every/15.4.4.16-4-3.js index 1cc880e8aaa091fee3bd365b695fb50026670804..75e038a10398e2c9c939e00ce7389f93ae690c16 100644 --- a/test/built-ins/Array/prototype/every/15.4.4.16-4-3.js +++ b/test/built-ins/Array/prototype/every/15.4.4.16-4-3.js @@ -4,19 +4,9 @@ /*--- es5id: 15.4.4.16-4-3 description: Array.prototype.every throws TypeError if callbackfn is null -includes: [runTestCase.js] ---*/ -function testcase() { - var arr = new Array(10); - try { - arr.every(null); - } - catch(e) { - if(e instanceof TypeError) - return true; - } - - } -runTestCase(testcase); +assert.throws(TypeError, function() { + arr.every(null); +}); diff --git a/test/built-ins/Array/prototype/every/15.4.4.16-4-4.js b/test/built-ins/Array/prototype/every/15.4.4.16-4-4.js index 4087cbdc639164114c84b8f64edf685c04e3e48f..9da632a37fc5956910b750ff383b74d2200230dc 100644 --- a/test/built-ins/Array/prototype/every/15.4.4.16-4-4.js +++ b/test/built-ins/Array/prototype/every/15.4.4.16-4-4.js @@ -4,19 +4,9 @@ /*--- es5id: 15.4.4.16-4-4 description: Array.prototype.every throws TypeError if callbackfn is boolean -includes: [runTestCase.js] ---*/ -function testcase() { - var arr = new Array(10); - try { - arr.every(true); - } - catch(e) { - if(e instanceof TypeError) - return true; - } - - } -runTestCase(testcase); +assert.throws(TypeError, function() { + arr.every(true); +}); diff --git a/test/built-ins/Array/prototype/every/15.4.4.16-4-5.js b/test/built-ins/Array/prototype/every/15.4.4.16-4-5.js index 169f53a57a227e49ae628dccfb2acba1c61a6093..503ec7d8989fb1ea3d55f03fcf1e38c64cc55e44 100644 --- a/test/built-ins/Array/prototype/every/15.4.4.16-4-5.js +++ b/test/built-ins/Array/prototype/every/15.4.4.16-4-5.js @@ -4,19 +4,9 @@ /*--- es5id: 15.4.4.16-4-5 description: Array.prototype.every throws TypeError if callbackfn is number -includes: [runTestCase.js] ---*/ -function testcase() { - var arr = new Array(10); - try { - arr.every(5); - } - catch(e) { - if(e instanceof TypeError) - return true; - } - - } -runTestCase(testcase); +assert.throws(TypeError, function() { + arr.every(5); +}); diff --git a/test/built-ins/Array/prototype/every/15.4.4.16-4-6.js b/test/built-ins/Array/prototype/every/15.4.4.16-4-6.js index 563af42bd6f097d26b895dc8e8fc723b2c56f2d9..789674836b46bddfc65781253f8ece371d83ebc7 100644 --- a/test/built-ins/Array/prototype/every/15.4.4.16-4-6.js +++ b/test/built-ins/Array/prototype/every/15.4.4.16-4-6.js @@ -4,19 +4,9 @@ /*--- es5id: 15.4.4.16-4-6 description: Array.prototype.every throws TypeError if callbackfn is string -includes: [runTestCase.js] ---*/ -function testcase() { - var arr = new Array(10); - try { - arr.every("abc"); - } - catch(e) { - if(e instanceof TypeError) - return true; - } - - } -runTestCase(testcase); +assert.throws(TypeError, function() { + arr.every("abc"); +}); diff --git a/test/built-ins/Array/prototype/every/15.4.4.16-4-7.js b/test/built-ins/Array/prototype/every/15.4.4.16-4-7.js index 9bad6bede84d2e1e5d76819381e7145020521735..5d6bbc1a5930e593c8911d10609f16f522695c02 100644 --- a/test/built-ins/Array/prototype/every/15.4.4.16-4-7.js +++ b/test/built-ins/Array/prototype/every/15.4.4.16-4-7.js @@ -6,19 +6,9 @@ es5id: 15.4.4.16-4-7 description: > Array.prototype.every throws TypeError if callbackfn is Object without a Call internal method -includes: [runTestCase.js] ---*/ -function testcase() { - var arr = new Array(10); - try { - arr.every( {} ); - } - catch(e) { - if(e instanceof TypeError) - return true; - } - - } -runTestCase(testcase); +assert.throws(TypeError, function() { + arr.every( {} ); +}); diff --git a/test/built-ins/Array/prototype/every/15.4.4.16-4-8.js b/test/built-ins/Array/prototype/every/15.4.4.16-4-8.js index 3112aead035884d4fd14dca2e10a8d50d3be60fb..e274820717b694352949cc49dd89464eae04fce2 100644 --- a/test/built-ins/Array/prototype/every/15.4.4.16-4-8.js +++ b/test/built-ins/Array/prototype/every/15.4.4.16-4-8.js @@ -6,11 +6,8 @@ es5id: 15.4.4.16-4-8 description: > Array.prototype.every - side effects produced by step 2 are visible when an exception occurs -includes: [runTestCase.js] ---*/ -function testcase() { - var obj = { 0: 11, 1: 12 }; var accessed = false; @@ -22,12 +19,7 @@ function testcase() { }, configurable: true }); - - try { +assert.throws(TypeError, function() { Array.prototype.every.call(obj, null); - return false; - } catch (ex) { - return ex instanceof TypeError && accessed; - } - } -runTestCase(testcase); +}); +assert(accessed, 'accessed !== true'); diff --git a/test/built-ins/Array/prototype/every/15.4.4.16-4-9.js b/test/built-ins/Array/prototype/every/15.4.4.16-4-9.js index 1471ee503ae9fa1c7adafab07187bf6976b499e1..1eac00d46851954fecb4843bd5df558e226becd1 100644 --- a/test/built-ins/Array/prototype/every/15.4.4.16-4-9.js +++ b/test/built-ins/Array/prototype/every/15.4.4.16-4-9.js @@ -6,11 +6,8 @@ es5id: 15.4.4.16-4-9 description: > Array.prototype.every - side effects produced by step 3 are visible when an exception occurs -includes: [runTestCase.js] ---*/ -function testcase() { - var obj = { 0: 11, 1: 12 }; var accessed = false; @@ -26,12 +23,7 @@ function testcase() { }, configurable: true }); - - try { +assert.throws(TypeError, function() { Array.prototype.every.call(obj, null); - return false; - } catch (ex) { - return ex instanceof TypeError && accessed; - } - } -runTestCase(testcase); +}); +assert(accessed, 'accessed !== true'); diff --git a/test/built-ins/Array/prototype/every/15.4.4.16-7-c-i-30.js b/test/built-ins/Array/prototype/every/15.4.4.16-7-c-i-30.js index de3ad30b792f58bb97076a80644aec9c61b7f43d..dbf50bc00843dfd56b75847335936ebe2d1a0af9 100644 --- a/test/built-ins/Array/prototype/every/15.4.4.16-7-c-i-30.js +++ b/test/built-ins/Array/prototype/every/15.4.4.16-7-c-i-30.js @@ -6,11 +6,8 @@ es5id: 15.4.4.16-7-c-i-30 description: > Array.prototype.every - unnhandled exceptions happened in getter terminate iteration on an Array-like object -includes: [runTestCase.js] ---*/ -function testcase() { - var accessed = false; function callbackfn(val, idx, obj) { if (idx > 1) { @@ -26,12 +23,7 @@ function testcase() { }, configurable: true }); - - try { +assert.throws(RangeError, function() { Array.prototype.every.call(obj, callbackfn); - return false; - } catch (ex) { - return (ex instanceof RangeError) && !accessed; - } - } -runTestCase(testcase); +}); +assert.sameValue(accessed, false, 'accessed'); diff --git a/test/built-ins/Array/prototype/every/15.4.4.16-7-c-i-31.js b/test/built-ins/Array/prototype/every/15.4.4.16-7-c-i-31.js index 6be105291d4738b4b12bb7f3251ec611eb7a8d4a..00acee89953856cb36512ba773b3bd56754d20bd 100644 --- a/test/built-ins/Array/prototype/every/15.4.4.16-7-c-i-31.js +++ b/test/built-ins/Array/prototype/every/15.4.4.16-7-c-i-31.js @@ -6,11 +6,8 @@ es5id: 15.4.4.16-7-c-i-31 description: > Array.prototype.every - unhandled exceptions happened in getter terminate iteration on an Array -includes: [runTestCase.js] ---*/ -function testcase() { - var accessed = false; function callbackfn(val, idx, obj) { if (idx > 1) { @@ -29,12 +26,7 @@ function testcase() { }, configurable: true }); - - try { +assert.throws(RangeError, function() { arr.every(callbackfn); - return false; - } catch (ex) { - return (ex instanceof RangeError) && !accessed; - } - } -runTestCase(testcase); +}); +assert.sameValue(accessed, false, 'accessed'); diff --git a/test/built-ins/Array/prototype/filter/15.4.4.20-1-1.js b/test/built-ins/Array/prototype/filter/15.4.4.20-1-1.js index 770768432f399fd27f8e241749bb020f5741f907..749b48d8a2adf1f1735dd613395b8faa8f1cef6f 100644 --- a/test/built-ins/Array/prototype/filter/15.4.4.20-1-1.js +++ b/test/built-ins/Array/prototype/filter/15.4.4.20-1-1.js @@ -4,15 +4,9 @@ /*--- es5id: 15.4.4.20-1-1 description: Array.prototype.filter applied to undefined throws a TypeError -includes: [runTestCase.js] ---*/ -function testcase() { - try { + +assert.throws(TypeError, function() { Array.prototype.filter.call(undefined); // TypeError is thrown if value is undefined - return false; - } catch (ex) { - return ex instanceof TypeError; - } - } -runTestCase(testcase); +}); diff --git a/test/built-ins/Array/prototype/filter/15.4.4.20-1-2.js b/test/built-ins/Array/prototype/filter/15.4.4.20-1-2.js index 67b1857304577f8b439db5537c55518d076cda37..e744128c6efbe319ec299db4b7864e270b18ea4f 100644 --- a/test/built-ins/Array/prototype/filter/15.4.4.20-1-2.js +++ b/test/built-ins/Array/prototype/filter/15.4.4.20-1-2.js @@ -4,15 +4,9 @@ /*--- es5id: 15.4.4.20-1-2 description: Array.prototype.filter applied to null throws a TypeError -includes: [runTestCase.js] ---*/ -function testcase() { - try { + +assert.throws(TypeError, function() { Array.prototype.filter.call(null); - return false; - } catch (ex) { - return ex instanceof TypeError; - } - } -runTestCase(testcase); +}); diff --git a/test/built-ins/Array/prototype/filter/15.4.4.20-3-22.js b/test/built-ins/Array/prototype/filter/15.4.4.20-3-22.js index c9df0158fcdf8fb80e876771ccf840cfabade3f8..e72f4aab49abfce5d398813e3e4e405e0e86b0ce 100644 --- a/test/built-ins/Array/prototype/filter/15.4.4.20-3-22.js +++ b/test/built-ins/Array/prototype/filter/15.4.4.20-3-22.js @@ -7,11 +7,8 @@ description: > Array.prototype.filter throws TypeError exception when 'length' is an object with toString and valueOf methods that don�t return primitive values -includes: [runTestCase.js] ---*/ -function testcase() { - var accessed = false; var firstStepOccured = false; var secondStepOccured = false; @@ -36,12 +33,9 @@ function testcase() { } } }; - - try { +assert.throws(TypeError, function() { Array.prototype.filter.call(obj, callbackfn); - return false; - } catch (ex) { - return (ex instanceof TypeError) && !accessed && firstStepOccured && secondStepOccured; - } - } -runTestCase(testcase); +}); +assert.sameValue(accessed, false, 'accessed'); +assert(firstStepOccured, 'firstStepOccured !== true'); +assert(secondStepOccured, 'secondStepOccured !== true'); diff --git a/test/built-ins/Array/prototype/filter/15.4.4.20-4-1.js b/test/built-ins/Array/prototype/filter/15.4.4.20-4-1.js index f8254ae83a563d7c3473d31947c6b972b0923204..438a810dac7a5803b240059db5c1de8d76f5df19 100644 --- a/test/built-ins/Array/prototype/filter/15.4.4.20-4-1.js +++ b/test/built-ins/Array/prototype/filter/15.4.4.20-4-1.js @@ -4,19 +4,9 @@ /*--- es5id: 15.4.4.20-4-1 description: Array.prototype.filter throws TypeError if callbackfn is undefined -includes: [runTestCase.js] ---*/ -function testcase() { - var arr = new Array(10); - try { - arr.filter(); - } - catch(e) { - if(e instanceof TypeError) - return true; - } - - } -runTestCase(testcase); +assert.throws(TypeError, function() { + arr.filter(); +}); diff --git a/test/built-ins/Array/prototype/filter/15.4.4.20-4-15.js b/test/built-ins/Array/prototype/filter/15.4.4.20-4-15.js index eb24bf97d00791f20c6cbc2ff5df7c7a61825e0e..2bf2e8a962d78c91a86a11137cdb44553f90e6c1 100644 --- a/test/built-ins/Array/prototype/filter/15.4.4.20-4-15.js +++ b/test/built-ins/Array/prototype/filter/15.4.4.20-4-15.js @@ -6,10 +6,8 @@ es5id: 15.4.4.20-4-15 description: > Array.prototype.filter - calling with no callbackfn is the same as passing undefined for callbackfn -includes: [runTestCase.js] ---*/ -function testcase() { var obj = { 10: 10 }; var lengthAccessed = false; var loopAccessed = false; @@ -27,12 +25,8 @@ function testcase() { }, configurable: true }); - - try { +assert.throws(TypeError, function() { Array.prototype.filter.call(obj); - return false; - } catch (ex) { - return (ex instanceof TypeError) && lengthAccessed && !loopAccessed; - } - } -runTestCase(testcase); +}); +assert(lengthAccessed, 'lengthAccessed !== true'); +assert.sameValue(loopAccessed, false, 'loopAccessed'); diff --git a/test/built-ins/Array/prototype/filter/15.4.4.20-4-2.js b/test/built-ins/Array/prototype/filter/15.4.4.20-4-2.js index fa8b81de4c5a82cc36c2fe577c3e6f529bd1fffe..69579f172c2083ff841f5c204e371cfa29be55f2 100644 --- a/test/built-ins/Array/prototype/filter/15.4.4.20-4-2.js +++ b/test/built-ins/Array/prototype/filter/15.4.4.20-4-2.js @@ -6,19 +6,9 @@ es5id: 15.4.4.20-4-2 description: > Array.prototype.filter throws ReferenceError if callbackfn is unreferenced -includes: [runTestCase.js] ---*/ -function testcase() { - var arr = new Array(10); - try { - arr.filter(foo); - } - catch(e) { - if(e instanceof ReferenceError) - return true; - } - - } -runTestCase(testcase); +assert.throws(ReferenceError, function() { + arr.filter(foo); +}); diff --git a/test/built-ins/Array/prototype/filter/15.4.4.20-4-3.js b/test/built-ins/Array/prototype/filter/15.4.4.20-4-3.js index 37808a987380123791a8e535ab042ab5ad3211a1..3a9417fafc7f36350fee81e1c6caee59c9b7770a 100644 --- a/test/built-ins/Array/prototype/filter/15.4.4.20-4-3.js +++ b/test/built-ins/Array/prototype/filter/15.4.4.20-4-3.js @@ -4,19 +4,9 @@ /*--- es5id: 15.4.4.20-4-3 description: Array.prototype.filter throws TypeError if callbackfn is null -includes: [runTestCase.js] ---*/ -function testcase() { - var arr = new Array(10); - try { - arr.filter(null); - } - catch(e) { - if(e instanceof TypeError) - return true; - } - - } -runTestCase(testcase); +assert.throws(TypeError, function() { + arr.filter(null); +}); diff --git a/test/built-ins/Array/prototype/filter/15.4.4.20-4-4.js b/test/built-ins/Array/prototype/filter/15.4.4.20-4-4.js index c09bf01f3319a8668fd73ffa229eb1986a9e8c82..2f6e67726028be12ffb71282c864a60a5e1b2bf6 100644 --- a/test/built-ins/Array/prototype/filter/15.4.4.20-4-4.js +++ b/test/built-ins/Array/prototype/filter/15.4.4.20-4-4.js @@ -4,19 +4,9 @@ /*--- es5id: 15.4.4.20-4-4 description: Array.prototype.filter throws TypeError if callbackfn is boolean -includes: [runTestCase.js] ---*/ -function testcase() { - var arr = new Array(10); - try { - arr.filter(true); - } - catch(e) { - if(e instanceof TypeError) - return true; - } - - } -runTestCase(testcase); +assert.throws(TypeError, function() { + arr.filter(true); +}); diff --git a/test/built-ins/Array/prototype/filter/15.4.4.20-4-5.js b/test/built-ins/Array/prototype/filter/15.4.4.20-4-5.js index 4d49906ec032b341412709d358e52619824420d3..62e94d2a31ffbf1319188a1e5fdb0abe88b6fabd 100644 --- a/test/built-ins/Array/prototype/filter/15.4.4.20-4-5.js +++ b/test/built-ins/Array/prototype/filter/15.4.4.20-4-5.js @@ -4,19 +4,9 @@ /*--- es5id: 15.4.4.20-4-5 description: Array.prototype.filter throws TypeError if callbackfn is number -includes: [runTestCase.js] ---*/ -function testcase() { - var arr = new Array(10); - try { - arr.filter(5); - } - catch(e) { - if(e instanceof TypeError) - return true; - } - - } -runTestCase(testcase); +assert.throws(TypeError, function() { + arr.filter(5); +}); diff --git a/test/built-ins/Array/prototype/filter/15.4.4.20-4-6.js b/test/built-ins/Array/prototype/filter/15.4.4.20-4-6.js index 543dd3adcb72ed96922a7eccb32f945b91eb7280..964c3d340a139d569abe28c8ce3b9bbc203aa76c 100644 --- a/test/built-ins/Array/prototype/filter/15.4.4.20-4-6.js +++ b/test/built-ins/Array/prototype/filter/15.4.4.20-4-6.js @@ -4,19 +4,9 @@ /*--- es5id: 15.4.4.20-4-6 description: Array.prototype.filter throws TypeError if callbackfn is string -includes: [runTestCase.js] ---*/ -function testcase() { - var arr = new Array(10); - try { - arr.filter("abc"); - } - catch(e) { - if(e instanceof TypeError) - return true; - } - - } -runTestCase(testcase); +assert.throws(TypeError, function() { + arr.filter("abc"); +}); diff --git a/test/built-ins/Array/prototype/filter/15.4.4.20-4-7.js b/test/built-ins/Array/prototype/filter/15.4.4.20-4-7.js index d80cb49a0a7df53d3fdf09c8236704c1c763cd2d..11a9fc5b0796706ceddef358908b1f8df452d6ae 100644 --- a/test/built-ins/Array/prototype/filter/15.4.4.20-4-7.js +++ b/test/built-ins/Array/prototype/filter/15.4.4.20-4-7.js @@ -6,19 +6,9 @@ es5id: 15.4.4.20-4-7 description: > Array.prototype.filter throws TypeError if callbackfn is Object without [[Call]] internal method -includes: [runTestCase.js] ---*/ -function testcase() { - var arr = new Array(10); - try { - arr.filter(new Object()); - } - catch(e) { - if(e instanceof TypeError) - return true; - } - - } -runTestCase(testcase); +assert.throws(TypeError, function() { + arr.filter(new Object()); +}); diff --git a/test/built-ins/Array/prototype/filter/15.4.4.20-4-8.js b/test/built-ins/Array/prototype/filter/15.4.4.20-4-8.js index b643d08ff166c7a65a85a179bde9f73995831996..2941ac08cd54a0d289ac77791c94bb18127b8dac 100644 --- a/test/built-ins/Array/prototype/filter/15.4.4.20-4-8.js +++ b/test/built-ins/Array/prototype/filter/15.4.4.20-4-8.js @@ -6,11 +6,8 @@ es5id: 15.4.4.20-4-8 description: > Array.prototype.filter - side effects produced by step 2 are visible when an exception occurs -includes: [runTestCase.js] ---*/ -function testcase() { - var obj = { 0: 11, 1: 12 }; var accessed = false; @@ -22,12 +19,7 @@ function testcase() { }, configurable: true }); - - try { +assert.throws(TypeError, function() { Array.prototype.filter.call(obj, null); - return false; - } catch (ex) { - return ex instanceof TypeError && accessed; - } - } -runTestCase(testcase); +}); +assert(accessed, 'accessed !== true'); diff --git a/test/built-ins/Array/prototype/filter/15.4.4.20-4-9.js b/test/built-ins/Array/prototype/filter/15.4.4.20-4-9.js index 813de76f6e47c3fb80db332e46d24b78b3e635e7..566e97f529af5f80a2dec500d91b51cbe11740ce 100644 --- a/test/built-ins/Array/prototype/filter/15.4.4.20-4-9.js +++ b/test/built-ins/Array/prototype/filter/15.4.4.20-4-9.js @@ -6,11 +6,8 @@ es5id: 15.4.4.20-4-9 description: > Array.prototype.filter - side effects produced by step 3 are visible when an exception occurs -includes: [runTestCase.js] ---*/ -function testcase() { - var obj = { 0: 11, 1: 12 }; var accessed = false; @@ -26,12 +23,7 @@ function testcase() { }, configurable: true }); - - try { +assert.throws(TypeError, function() { Array.prototype.filter.call(obj, null); - return false; - } catch (ex) { - return ex instanceof TypeError && accessed; - } - } -runTestCase(testcase); +}); +assert(accessed, 'accessed !== true'); diff --git a/test/built-ins/Array/prototype/filter/15.4.4.20-9-c-i-30.js b/test/built-ins/Array/prototype/filter/15.4.4.20-9-c-i-30.js index 7851756f51547d1b90105287800b61838eb81412..e0381e7cdbceed48845a02a59a20530d86bca1e5 100644 --- a/test/built-ins/Array/prototype/filter/15.4.4.20-9-c-i-30.js +++ b/test/built-ins/Array/prototype/filter/15.4.4.20-9-c-i-30.js @@ -6,11 +6,8 @@ es5id: 15.4.4.20-9-c-i-30 description: > Array.prototype.filter - unnhandled exceptions happened in getter terminate iteration on an Array-like object -includes: [runTestCase.js] ---*/ -function testcase() { - var accessed = false; function callbackfn(val, idx, obj) { if (idx > 1) { @@ -26,12 +23,7 @@ function testcase() { }, configurable: true }); - - try { +assert.throws(RangeError, function() { Array.prototype.filter.call(obj, callbackfn); - return false; - } catch (ex) { - return (ex instanceof RangeError) && !accessed; - } - } -runTestCase(testcase); +}); +assert.sameValue(accessed, false, 'accessed'); diff --git a/test/built-ins/Array/prototype/filter/15.4.4.20-9-c-i-31.js b/test/built-ins/Array/prototype/filter/15.4.4.20-9-c-i-31.js index 844231c32dcaaf5f5b40a5d564106794a36e5c80..63d371c18065fae63cc505c1109d3898c2f5da12 100644 --- a/test/built-ins/Array/prototype/filter/15.4.4.20-9-c-i-31.js +++ b/test/built-ins/Array/prototype/filter/15.4.4.20-9-c-i-31.js @@ -6,11 +6,8 @@ es5id: 15.4.4.20-9-c-i-31 description: > Array.prototype.filter - unnhandled exceptions happened in getter terminate iteration on an Array -includes: [runTestCase.js] ---*/ -function testcase() { - var accessed = false; function callbackfn(val, idx, obj) { if (idx > 1) { @@ -29,12 +26,7 @@ function testcase() { }, configurable: true }); - - try { +assert.throws(RangeError, function() { arr.filter(callbackfn); - return false; - } catch (ex) { - return (ex instanceof RangeError) && !accessed; - } - } -runTestCase(testcase); +}); +assert.sameValue(accessed, false, 'accessed'); diff --git a/test/built-ins/Array/prototype/filter/15.4.4.20-9-c-ii-7.js b/test/built-ins/Array/prototype/filter/15.4.4.20-9-c-ii-7.js index 55a30af64e76d8f9b2a2a9db3602ae4fc1b2b372..cc1b9ba757d720062468d15f72a045a9e126527b 100644 --- a/test/built-ins/Array/prototype/filter/15.4.4.20-9-c-ii-7.js +++ b/test/built-ins/Array/prototype/filter/15.4.4.20-9-c-ii-7.js @@ -6,11 +6,8 @@ es5id: 15.4.4.20-9-c-ii-7 description: > Array.prototype.filter - unhandled exceptions happened in callbackfn terminate iteration -includes: [runTestCase.js] ---*/ -function testcase() { - var called = 0; function callbackfn(val, idx, obj) { @@ -22,12 +19,7 @@ function testcase() { } var obj = { 0: 11, 4: 10, 10: 8, length: 20 }; - - try { +assert.throws(Error, function() { Array.prototype.filter.call(obj, callbackfn); - return false; - } catch (ex) { - return 1 === called && ex instanceof Error; - } - } -runTestCase(testcase); +}); +assert.sameValue(called, 1, 'called'); diff --git a/test/built-ins/Array/prototype/forEach/15.4.4.18-1-1.js b/test/built-ins/Array/prototype/forEach/15.4.4.18-1-1.js index 35bc0912017d0046400c6015f073fd4e182f28af..5df4d453a8ef7edeb4d485003ca85ff14abf1c73 100644 --- a/test/built-ins/Array/prototype/forEach/15.4.4.18-1-1.js +++ b/test/built-ins/Array/prototype/forEach/15.4.4.18-1-1.js @@ -4,15 +4,9 @@ /*--- es5id: 15.4.4.18-1-1 description: Array.prototype.forEach applied to undefined -includes: [runTestCase.js] ---*/ -function testcase() { - try { + +assert.throws(TypeError, function() { Array.prototype.forEach.call(undefined); // TypeError is thrown if value is undefined - return false; - } catch (e) { - return (e instanceof TypeError); - } - } -runTestCase(testcase); +}); diff --git a/test/built-ins/Array/prototype/forEach/15.4.4.18-1-2.js b/test/built-ins/Array/prototype/forEach/15.4.4.18-1-2.js index 1264199ae3d27be74dbbcd29afd9134b7c3eacc6..4f0d6c81dc206376671fb5819106e59ee46d36f8 100644 --- a/test/built-ins/Array/prototype/forEach/15.4.4.18-1-2.js +++ b/test/built-ins/Array/prototype/forEach/15.4.4.18-1-2.js @@ -4,15 +4,9 @@ /*--- es5id: 15.4.4.18-1-2 description: Array.prototype.forEach applied to null -includes: [runTestCase.js] ---*/ -function testcase() { - try { + +assert.throws(TypeError, function() { Array.prototype.forEach.call(null); // TypeError is thrown if value is null - return false; - } catch (e) { - return (e instanceof TypeError); - } - } -runTestCase(testcase); +}); diff --git a/test/built-ins/Array/prototype/forEach/15.4.4.18-3-22.js b/test/built-ins/Array/prototype/forEach/15.4.4.18-3-22.js index 1ee562c5a5cee3c1dd775412e507d00a605c032f..e9f68c7d5db67176ee573d3a04b25b736f346dd9 100644 --- a/test/built-ins/Array/prototype/forEach/15.4.4.18-3-22.js +++ b/test/built-ins/Array/prototype/forEach/15.4.4.18-3-22.js @@ -7,11 +7,8 @@ description: > Array.prototype.forEach throws TypeError exception when 'length' is an object with toString and valueOf methods that don�t return primitive values -includes: [runTestCase.js] ---*/ -function testcase() { - var accessed = false; var firstStepOccured = false; var secondStepOccured = false; @@ -35,12 +32,7 @@ function testcase() { } } }; - - try { +assert.throws(TypeError, function() { Array.prototype.forEach.call(obj, callbackfn); - return false; - } catch (ex) { - return ex instanceof TypeError && !accessed; - } - } -runTestCase(testcase); +}); +assert.sameValue(accessed, false, 'accessed'); diff --git a/test/built-ins/Array/prototype/forEach/15.4.4.18-4-1.js b/test/built-ins/Array/prototype/forEach/15.4.4.18-4-1.js index e8d0a85c2c1641ef34becdcca91c5a0e626ca295..34eba32d8f1075d6f5559b05e014852ac4f286a9 100644 --- a/test/built-ins/Array/prototype/forEach/15.4.4.18-4-1.js +++ b/test/built-ins/Array/prototype/forEach/15.4.4.18-4-1.js @@ -4,19 +4,9 @@ /*--- es5id: 15.4.4.18-4-1 description: Array.prototype.forEach throws TypeError if callbackfn is undefined -includes: [runTestCase.js] ---*/ -function testcase() { - var arr = new Array(10); - try { - arr.forEach(); - } - catch(e) { - if(e instanceof TypeError) - return true; - } - - } -runTestCase(testcase); +assert.throws(TypeError, function() { + arr.forEach(); +}); diff --git a/test/built-ins/Array/prototype/forEach/15.4.4.18-4-15.js b/test/built-ins/Array/prototype/forEach/15.4.4.18-4-15.js index fcb6aa5566104a589e277377b37136a4196dc79f..c3a2599bf8c879658db676dfe5f8eade61801162 100644 --- a/test/built-ins/Array/prototype/forEach/15.4.4.18-4-15.js +++ b/test/built-ins/Array/prototype/forEach/15.4.4.18-4-15.js @@ -6,11 +6,8 @@ es5id: 15.4.4.18-4-15 description: > Array.prototype.forEach - calling with no callbackfn is the same as passing undefined for callbackfn -includes: [runTestCase.js] ---*/ -function testcase() { - var obj = { 10: 10 }; var lengthAccessed = false; var loopAccessed = false; @@ -30,12 +27,8 @@ function testcase() { }, configurable: true }); - - try { +assert.throws(TypeError, function() { Array.prototype.forEach.call(obj); - return false; - } catch (ex) { - return (ex instanceof TypeError) && lengthAccessed && !loopAccessed; - } - } -runTestCase(testcase); +}); +assert(lengthAccessed, 'lengthAccessed !== true'); +assert.sameValue(loopAccessed, false, 'loopAccessed'); diff --git a/test/built-ins/Array/prototype/forEach/15.4.4.18-4-2.js b/test/built-ins/Array/prototype/forEach/15.4.4.18-4-2.js index ecf45aba3898c05950b9d917d867347c9cceeb45..08363293d4071e6f598ac17c1cfadb0194d2dae9 100644 --- a/test/built-ins/Array/prototype/forEach/15.4.4.18-4-2.js +++ b/test/built-ins/Array/prototype/forEach/15.4.4.18-4-2.js @@ -6,19 +6,9 @@ es5id: 15.4.4.18-4-2 description: > Array.prototype.forEach throws ReferenceError if callbackfn is unreferenced -includes: [runTestCase.js] ---*/ -function testcase() { - var arr = new Array(10); - try { - arr.forEach(foo); - } - catch(e) { - if(e instanceof ReferenceError) - return true; - } - - } -runTestCase(testcase); +assert.throws(ReferenceError, function() { + arr.forEach(foo); +}); diff --git a/test/built-ins/Array/prototype/forEach/15.4.4.18-4-3.js b/test/built-ins/Array/prototype/forEach/15.4.4.18-4-3.js index 6abd385a3503c7912a9e5e70dc1ebde0e7a2c991..8268cbf669e4428dd4bc08138a7befc0a7bcc4d0 100644 --- a/test/built-ins/Array/prototype/forEach/15.4.4.18-4-3.js +++ b/test/built-ins/Array/prototype/forEach/15.4.4.18-4-3.js @@ -4,19 +4,9 @@ /*--- es5id: 15.4.4.18-4-3 description: Array.prototype.forEach throws TypeError if callbackfn is null -includes: [runTestCase.js] ---*/ -function testcase() { - var arr = new Array(10); - try { - arr.forEach(null); - } - catch(e) { - if(e instanceof TypeError) - return true; - } - - } -runTestCase(testcase); +assert.throws(TypeError, function() { + arr.forEach(null); +}); diff --git a/test/built-ins/Array/prototype/forEach/15.4.4.18-4-4.js b/test/built-ins/Array/prototype/forEach/15.4.4.18-4-4.js index 749e4d3a6c2237315fcffc5fec8523b47d9b9bf4..6fe301dab0283bd86c5a72d7921a75b6ee9fb0fa 100644 --- a/test/built-ins/Array/prototype/forEach/15.4.4.18-4-4.js +++ b/test/built-ins/Array/prototype/forEach/15.4.4.18-4-4.js @@ -4,19 +4,9 @@ /*--- es5id: 15.4.4.18-4-4 description: Array.prototype.forEach throws TypeError if callbackfn is boolean -includes: [runTestCase.js] ---*/ -function testcase() { - var arr = new Array(10); - try { - arr.forEach(true); - } - catch(e) { - if(e instanceof TypeError) - return true; - } - - } -runTestCase(testcase); +assert.throws(TypeError, function() { + arr.forEach(true); +}); diff --git a/test/built-ins/Array/prototype/forEach/15.4.4.18-4-5.js b/test/built-ins/Array/prototype/forEach/15.4.4.18-4-5.js index c0cd39e86d5a9153bc187d36a457d8b2d6e17cfc..4485c4606209a886b8dbae6e448386ac07dc0b98 100644 --- a/test/built-ins/Array/prototype/forEach/15.4.4.18-4-5.js +++ b/test/built-ins/Array/prototype/forEach/15.4.4.18-4-5.js @@ -4,19 +4,9 @@ /*--- es5id: 15.4.4.18-4-5 description: Array.prototype.forEach throws TypeError if callbackfn is number -includes: [runTestCase.js] ---*/ -function testcase() { - var arr = new Array(10); - try { - arr.forEach(5); - } - catch(e) { - if(e instanceof TypeError) - return true; - } - - } -runTestCase(testcase); +assert.throws(TypeError, function() { + arr.forEach(5); +}); diff --git a/test/built-ins/Array/prototype/forEach/15.4.4.18-4-6.js b/test/built-ins/Array/prototype/forEach/15.4.4.18-4-6.js index 60888e0007402ff108e4ef8098f098a1c0f20023..84e29d51d5ab92a8414b65da02269d45c01faf24 100644 --- a/test/built-ins/Array/prototype/forEach/15.4.4.18-4-6.js +++ b/test/built-ins/Array/prototype/forEach/15.4.4.18-4-6.js @@ -4,19 +4,9 @@ /*--- es5id: 15.4.4.18-4-6 description: Array.prototype.forEach throws TypeError if callbackfn is string -includes: [runTestCase.js] ---*/ -function testcase() { - var arr = new Array(10); - try { - arr.forEach("abc"); - } - catch(e) { - if(e instanceof TypeError) - return true; - } - - } -runTestCase(testcase); +assert.throws(TypeError, function() { + arr.forEach("abc"); +}); diff --git a/test/built-ins/Array/prototype/forEach/15.4.4.18-4-7.js b/test/built-ins/Array/prototype/forEach/15.4.4.18-4-7.js index c397eff4e87da462f090ea49579eb10eecbcf2f4..d7ed337aef8b14b94554e4d91fe8dfbd87f09a87 100644 --- a/test/built-ins/Array/prototype/forEach/15.4.4.18-4-7.js +++ b/test/built-ins/Array/prototype/forEach/15.4.4.18-4-7.js @@ -6,19 +6,9 @@ es5id: 15.4.4.18-4-7 description: > Array.prototype.forEach throws TypeError if callbackfn is Object without Call internal method -includes: [runTestCase.js] ---*/ -function testcase() { - var arr = new Array(10); - try { - arr.forEach(new Object()); - } - catch(e) { - if(e instanceof TypeError) - return true; - } - - } -runTestCase(testcase); +assert.throws(TypeError, function() { + arr.forEach(new Object()); +}); diff --git a/test/built-ins/Array/prototype/forEach/15.4.4.18-4-8.js b/test/built-ins/Array/prototype/forEach/15.4.4.18-4-8.js index a6ba2a75ecbb991d53b398deb984c8f10565a054..033029fa12c94c49a75b29c65c7d0bca69d71b82 100644 --- a/test/built-ins/Array/prototype/forEach/15.4.4.18-4-8.js +++ b/test/built-ins/Array/prototype/forEach/15.4.4.18-4-8.js @@ -6,11 +6,8 @@ es5id: 15.4.4.18-4-8 description: > Array.prototype.forEach - side effects produced by step 2 are visible when an exception occurs -includes: [runTestCase.js] ---*/ -function testcase() { - var obj = { 0: 11, 1: 12 }; var accessed = false; @@ -22,12 +19,7 @@ function testcase() { }, configurable: true }); - - try { +assert.throws(TypeError, function() { Array.prototype.forEach.call(obj, null); - return false; - } catch (ex) { - return ex instanceof TypeError && accessed; - } - } -runTestCase(testcase); +}); +assert(accessed, 'accessed !== true'); diff --git a/test/built-ins/Array/prototype/forEach/15.4.4.18-4-9.js b/test/built-ins/Array/prototype/forEach/15.4.4.18-4-9.js index bcdf91fb1eeb996545bbdb527b29176faa5e67da..1cccf2166e15fc8f17c2edb9e72b877c7bb92015 100644 --- a/test/built-ins/Array/prototype/forEach/15.4.4.18-4-9.js +++ b/test/built-ins/Array/prototype/forEach/15.4.4.18-4-9.js @@ -6,11 +6,8 @@ es5id: 15.4.4.18-4-9 description: > Array.prototype.forEach - side effects produced by step 3 are visible when an exception occurs -includes: [runTestCase.js] ---*/ -function testcase() { - var obj = { 0: 11, 1: 12 }; var accessed = false; @@ -26,12 +23,7 @@ function testcase() { }, configurable: true }); - - try { +assert.throws(TypeError, function() { Array.prototype.forEach.call(obj, null); - return false; - } catch (ex) { - return ex instanceof TypeError && accessed; - } - } -runTestCase(testcase); +}); +assert(accessed, 'accessed !== true'); diff --git a/test/built-ins/Array/prototype/forEach/15.4.4.18-7-c-i-30.js b/test/built-ins/Array/prototype/forEach/15.4.4.18-7-c-i-30.js index b438b56450e7193c4a781a35aa3f4bdb60a54ba7..f02c6bf67bd0f9f12c440aafd1554082e5acecfe 100644 --- a/test/built-ins/Array/prototype/forEach/15.4.4.18-7-c-i-30.js +++ b/test/built-ins/Array/prototype/forEach/15.4.4.18-7-c-i-30.js @@ -6,11 +6,8 @@ es5id: 15.4.4.18-7-c-i-30 description: > Array.prototype.forEach - unnhandled exceptions happened in getter terminate iteration on an Array-like object -includes: [runTestCase.js] ---*/ -function testcase() { - var obj = { 0: 11, 5: 10, 10: 8, length: 20 }; var accessed = false; @@ -34,12 +31,7 @@ function testcase() { }, configurable: true }); - - try { +assert.throws(RangeError, function() { Array.prototype.forEach.call(obj, callbackfn); - return false; - } catch (ex) { - return (ex instanceof RangeError) && !accessed; - } - } -runTestCase(testcase); +}); +assert.sameValue(accessed, false, 'accessed'); diff --git a/test/built-ins/Array/prototype/forEach/15.4.4.18-7-c-i-31.js b/test/built-ins/Array/prototype/forEach/15.4.4.18-7-c-i-31.js index b32a0eb15e403a6f9e224c06d1bdfd76efe9c905..1a84121fd9ca07aa22373ca8eaf0ce4b27f5abd9 100644 --- a/test/built-ins/Array/prototype/forEach/15.4.4.18-7-c-i-31.js +++ b/test/built-ins/Array/prototype/forEach/15.4.4.18-7-c-i-31.js @@ -6,11 +6,8 @@ es5id: 15.4.4.18-7-c-i-31 description: > Array.prototype.forEach - unnhandled exceptions happened in getter terminate iteration on an Array-like object -includes: [runTestCase.js] ---*/ -function testcase() { - var accessed = false; function callbackfn(val, idx, obj) { @@ -37,12 +34,7 @@ function testcase() { }, configurable: true }); - - try { +assert.throws(RangeError, function() { arr.forEach(callbackfn); - return false; - } catch (ex) { - return (ex instanceof RangeError) && !accessed; - } - } -runTestCase(testcase); +}); +assert.sameValue(accessed, false, 'accessed'); diff --git a/test/built-ins/Array/prototype/forEach/15.4.4.18-7-c-ii-7.js b/test/built-ins/Array/prototype/forEach/15.4.4.18-7-c-ii-7.js index b56b2333eb892ea9f077222041b15ebef96df801..a7b0680c1df1edd232458b9404daaf6797eed899 100644 --- a/test/built-ins/Array/prototype/forEach/15.4.4.18-7-c-ii-7.js +++ b/test/built-ins/Array/prototype/forEach/15.4.4.18-7-c-ii-7.js @@ -6,11 +6,8 @@ es5id: 15.4.4.18-7-c-ii-7 description: > Array.prototype.forEach - unhandled exceptions happened in callbackfn terminate iteration -includes: [runTestCase.js] ---*/ -function testcase() { - var accessed = false; function callbackfn(val, idx, obj) { @@ -23,12 +20,7 @@ function testcase() { } var obj = { 0: 11, 4: 10, 10: 8, length: 20 }; - - try { +assert.throws(Error, function() { Array.prototype.forEach.call(obj, callbackfn); - return false; - } catch (ex) { - return ex instanceof Error && !accessed; - } - } -runTestCase(testcase); +}); +assert.sameValue(accessed, false, 'accessed'); diff --git a/test/built-ins/Array/prototype/indexOf/15.4.4.14-1-1.js b/test/built-ins/Array/prototype/indexOf/15.4.4.14-1-1.js index e91bf82c8bd32661f73ef0c9922d471c699db477..fbffd031cc8dda0f31b433e32ec990f8b10a6355 100644 --- a/test/built-ins/Array/prototype/indexOf/15.4.4.14-1-1.js +++ b/test/built-ins/Array/prototype/indexOf/15.4.4.14-1-1.js @@ -4,16 +4,9 @@ /*--- es5id: 15.4.4.14-1-1 description: Array.prototype.indexOf applied to undefined throws a TypeError -includes: [runTestCase.js] ---*/ -function testcase() { - try { + +assert.throws(TypeError, function() { Array.prototype.indexOf.call(undefined); - return false; - } - catch (e) { - return e instanceof TypeError; - } - } -runTestCase(testcase); +}); diff --git a/test/built-ins/Array/prototype/indexOf/15.4.4.14-1-2.js b/test/built-ins/Array/prototype/indexOf/15.4.4.14-1-2.js index ed94cac5c0a45b7570aa25c4a8339140de0c3043..c1685fcb016cf6694523946cc389895affa0d119 100644 --- a/test/built-ins/Array/prototype/indexOf/15.4.4.14-1-2.js +++ b/test/built-ins/Array/prototype/indexOf/15.4.4.14-1-2.js @@ -4,16 +4,9 @@ /*--- es5id: 15.4.4.14-1-2 description: Array.prototype.indexOf applied to null throws a TypeError -includes: [runTestCase.js] ---*/ -function testcase() { - try { + +assert.throws(TypeError, function() { Array.prototype.indexOf.call(null); - return false; - } - catch (e) { - return e instanceof TypeError; - } - } -runTestCase(testcase); +}); diff --git a/test/built-ins/Array/prototype/indexOf/15.4.4.14-5-28.js b/test/built-ins/Array/prototype/indexOf/15.4.4.14-5-28.js index b96dc3b460cba1e42b3f33ca61c8c13efb6d3c9f..3a9538711c20b19b87e85de9ceed90da70bde5d0 100644 --- a/test/built-ins/Array/prototype/indexOf/15.4.4.14-5-28.js +++ b/test/built-ins/Array/prototype/indexOf/15.4.4.14-5-28.js @@ -6,11 +6,8 @@ es5id: 15.4.4.14-5-28 description: > Array.prototype.indexOf - side effects produced by step 1 are visible when an exception occurs -includes: [runTestCase.js] ---*/ -function testcase() { - var stepFiveOccurs = false; var fromIndex = { valueOf: function () { @@ -18,12 +15,7 @@ function testcase() { return 0; } }; - - try { +assert.throws(TypeError, function() { Array.prototype.indexOf.call(undefined, undefined, fromIndex); - return false; - } catch (e) { - return (e instanceof TypeError) && !stepFiveOccurs; - } - } -runTestCase(testcase); +}); +assert.sameValue(stepFiveOccurs, false, 'stepFiveOccurs'); diff --git a/test/built-ins/Array/prototype/indexOf/15.4.4.14-5-29.js b/test/built-ins/Array/prototype/indexOf/15.4.4.14-5-29.js index 60c52cb088ba4d3cc034505dc0281a5e767f4443..6c4c3d7691a65431a14a6cc5a1b9819514350d77 100644 --- a/test/built-ins/Array/prototype/indexOf/15.4.4.14-5-29.js +++ b/test/built-ins/Array/prototype/indexOf/15.4.4.14-5-29.js @@ -6,11 +6,8 @@ es5id: 15.4.4.14-5-29 description: > Array.prototype.indexOf - side effects produced by step 2 are visible when an exception occurs -includes: [runTestCase.js] ---*/ -function testcase() { - var stepFiveOccurs = false; var obj = {}; @@ -27,12 +24,7 @@ function testcase() { return 0; } }; - - try { +assert.throws(RangeError, function() { Array.prototype.indexOf.call(obj, undefined, fromIndex); - return false; - } catch (e) { - return (e instanceof RangeError) && !stepFiveOccurs; - } - } -runTestCase(testcase); +}); +assert.sameValue(stepFiveOccurs, false, 'stepFiveOccurs'); diff --git a/test/built-ins/Array/prototype/indexOf/15.4.4.14-5-30.js b/test/built-ins/Array/prototype/indexOf/15.4.4.14-5-30.js index 3766f2ab9f0fc75e4aa57275dff6e5133effc809..7fdd12722e75e78bbcef89939fd92abc11f80202 100644 --- a/test/built-ins/Array/prototype/indexOf/15.4.4.14-5-30.js +++ b/test/built-ins/Array/prototype/indexOf/15.4.4.14-5-30.js @@ -6,11 +6,8 @@ es5id: 15.4.4.14-5-30 description: > Array.prototype.indexOf - side effects produced by step 3 are visible when an exception occurs -includes: [runTestCase.js] ---*/ -function testcase() { - var stepFiveOccurs = false; var obj = {}; @@ -31,12 +28,7 @@ function testcase() { return 0; } }; - - try { +assert.throws(TypeError, function() { Array.prototype.indexOf.call(obj, undefined, fromIndex); - return false; - } catch (e) { - return (e instanceof TypeError) && !stepFiveOccurs; - } - } -runTestCase(testcase); +}); +assert.sameValue(stepFiveOccurs, false, 'stepFiveOccurs'); diff --git a/test/built-ins/Array/prototype/indexOf/15.4.4.14-9-b-i-30.js b/test/built-ins/Array/prototype/indexOf/15.4.4.14-9-b-i-30.js index 00da4236642ccdc90e093d09fca78e0b86dabf3d..5d6195afbbf820b62baf1f68d54e1c38d3ed40f3 100644 --- a/test/built-ins/Array/prototype/indexOf/15.4.4.14-9-b-i-30.js +++ b/test/built-ins/Array/prototype/indexOf/15.4.4.14-9-b-i-30.js @@ -6,11 +6,8 @@ es5id: 15.4.4.14-9-b-i-30 description: > Array.prototype.indexOf - terminates iteration on unhandled exception on an Array -includes: [runTestCase.js] ---*/ -function testcase() { - var accessed = false; var arr = []; @@ -28,12 +25,7 @@ function testcase() { }, configurable: true }); - - try { +assert.throws(TypeError, function() { arr.indexOf(true); - return false; - } catch (e) { - return (e instanceof TypeError) && !accessed; - } - } -runTestCase(testcase); +}); +assert.sameValue(accessed, false, 'accessed'); diff --git a/test/built-ins/Array/prototype/indexOf/15.4.4.14-9-b-i-31.js b/test/built-ins/Array/prototype/indexOf/15.4.4.14-9-b-i-31.js index 98556ba4bd6946cd4e5ef60f97da2e5e33640481..caf9f52867df9976ec9ddcf1f5ea661b73baa744 100644 --- a/test/built-ins/Array/prototype/indexOf/15.4.4.14-9-b-i-31.js +++ b/test/built-ins/Array/prototype/indexOf/15.4.4.14-9-b-i-31.js @@ -6,11 +6,8 @@ es5id: 15.4.4.14-9-b-i-31 description: > Array.prototype.indexOf - terminates iteration on unhandled exception on an Array-like object -includes: [runTestCase.js] ---*/ -function testcase() { - var accessed = false; var obj = { length: 2 }; @@ -28,13 +25,7 @@ function testcase() { }, configurable: true }); - - try { +assert.throws(TypeError, function() { Array.prototype.indexOf.call(obj, true); - return false; - } catch (e) { - return (e instanceof TypeError) && !accessed; - } - - } -runTestCase(testcase); +}); +assert.sameValue(accessed, false, 'accessed'); diff --git a/test/built-ins/Array/prototype/lastIndexOf/15.4.4.15-1-1.js b/test/built-ins/Array/prototype/lastIndexOf/15.4.4.15-1-1.js index 1a3f3404e192a5bcf672ddd10da6534b7c926d42..93d2ea6e0ba0ef1e7601a628fec0d898af6950da 100644 --- a/test/built-ins/Array/prototype/lastIndexOf/15.4.4.15-1-1.js +++ b/test/built-ins/Array/prototype/lastIndexOf/15.4.4.15-1-1.js @@ -4,18 +4,9 @@ /*--- es5id: 15.4.4.15-1-1 description: Array.prototype.lastIndexOf applied to undefined throws a TypeError -includes: [runTestCase.js] ---*/ -function testcase() { - try { +assert.throws(TypeError, function() { Array.prototype.lastIndexOf.call(undefined); - return false; - } catch (e) { - if (e instanceof TypeError) { - return true; - } - } - } -runTestCase(testcase); +}); diff --git a/test/built-ins/Array/prototype/lastIndexOf/15.4.4.15-1-2.js b/test/built-ins/Array/prototype/lastIndexOf/15.4.4.15-1-2.js index 9df9406663cb1bcd020efea4929527b51a716bb0..4412bdcb621d32909dbf0d9ce6f217def575f911 100644 --- a/test/built-ins/Array/prototype/lastIndexOf/15.4.4.15-1-2.js +++ b/test/built-ins/Array/prototype/lastIndexOf/15.4.4.15-1-2.js @@ -4,18 +4,9 @@ /*--- es5id: 15.4.4.15-1-2 description: Array.prototype.lastIndexOf applied to null throws a TypeError -includes: [runTestCase.js] ---*/ -function testcase() { - try { +assert.throws(TypeError, function() { Array.prototype.lastIndexOf.call(null); - return false; - } catch (e) { - if (e instanceof TypeError) { - return true; - } - } - } -runTestCase(testcase); +}); diff --git a/test/built-ins/Array/prototype/lastIndexOf/15.4.4.15-5-28.js b/test/built-ins/Array/prototype/lastIndexOf/15.4.4.15-5-28.js index e7d3c3b17e22655d88c2e4173bb4e60bf5e944c0..8ea3d806382b35103b13567c65c3157d9694a0eb 100644 --- a/test/built-ins/Array/prototype/lastIndexOf/15.4.4.15-5-28.js +++ b/test/built-ins/Array/prototype/lastIndexOf/15.4.4.15-5-28.js @@ -6,11 +6,8 @@ es5id: 15.4.4.15-5-28 description: > Array.prototype.lastIndexOf - side effects produced by step 1 are visible when an exception occurs -includes: [runTestCase.js] ---*/ -function testcase() { - var stepFiveOccurs = false; var fromIndex = { valueOf: function () { @@ -18,12 +15,7 @@ function testcase() { return 0; } }; - - try { +assert.throws(TypeError, function() { Array.prototype.lastIndexOf.call(undefined, undefined, fromIndex); - return false; - } catch (e) { - return (e instanceof TypeError) && !stepFiveOccurs; - } - } -runTestCase(testcase); +}); +assert.sameValue(stepFiveOccurs, false, 'stepFiveOccurs'); diff --git a/test/built-ins/Array/prototype/lastIndexOf/15.4.4.15-5-29.js b/test/built-ins/Array/prototype/lastIndexOf/15.4.4.15-5-29.js index 4da7075f424f14dea75eafdbbaecf762e9df7f65..a5f477b4745d5de9ab522ff50d896666e3d2fc6e 100644 --- a/test/built-ins/Array/prototype/lastIndexOf/15.4.4.15-5-29.js +++ b/test/built-ins/Array/prototype/lastIndexOf/15.4.4.15-5-29.js @@ -6,11 +6,8 @@ es5id: 15.4.4.15-5-29 description: > Array.prototype.lastIndexOf - side effects produced by step 2 are visible when an exception occurs -includes: [runTestCase.js] ---*/ -function testcase() { - var stepFiveOccurs = false; var obj = {}; @@ -27,12 +24,7 @@ function testcase() { return 0; } }; - - try { +assert.throws(RangeError, function() { Array.prototype.lastIndexOf.call(obj, undefined, fromIndex); - return false; - } catch (e) { - return (e instanceof RangeError) && !stepFiveOccurs; - } - } -runTestCase(testcase); +}); +assert.sameValue(stepFiveOccurs, false, 'stepFiveOccurs'); diff --git a/test/built-ins/Array/prototype/lastIndexOf/15.4.4.15-5-30.js b/test/built-ins/Array/prototype/lastIndexOf/15.4.4.15-5-30.js index 44e7ce2fdb732b4c94285788168acd13d60c6d73..b462cde0978258cce9f3b868960ed53a58799b66 100644 --- a/test/built-ins/Array/prototype/lastIndexOf/15.4.4.15-5-30.js +++ b/test/built-ins/Array/prototype/lastIndexOf/15.4.4.15-5-30.js @@ -6,11 +6,8 @@ es5id: 15.4.4.15-5-30 description: > Array.prototype.lastIndexOf - side effects produced by step 3 are visible when an exception occurs -includes: [runTestCase.js] ---*/ -function testcase() { - var stepFiveOccurs = false; var obj = {}; @@ -31,12 +28,7 @@ function testcase() { return 0; } }; - - try { +assert.throws(TypeError, function() { Array.prototype.lastIndexOf.call(obj, undefined, fromIndex); - return false; - } catch (e) { - return (e instanceof TypeError) && !stepFiveOccurs; - } - } -runTestCase(testcase); +}); +assert.sameValue(stepFiveOccurs, false, 'stepFiveOccurs'); diff --git a/test/built-ins/Array/prototype/lastIndexOf/15.4.4.15-8-b-i-30.js b/test/built-ins/Array/prototype/lastIndexOf/15.4.4.15-8-b-i-30.js index fb4bf57019d6e6d959fa1f819dee8196f2106404..9e85224f09ee9f5046be136a6aa7d36d96439341 100644 --- a/test/built-ins/Array/prototype/lastIndexOf/15.4.4.15-8-b-i-30.js +++ b/test/built-ins/Array/prototype/lastIndexOf/15.4.4.15-8-b-i-30.js @@ -6,11 +6,8 @@ es5id: 15.4.4.15-8-b-i-30 description: > Array.prototype.lastIndexOf terminates iteration on unhandled exception on an Array -includes: [runTestCase.js] ---*/ -function testcase() { - var accessed = false; var arr = []; @@ -28,13 +25,7 @@ function testcase() { }, configurable: true }); - - try { +assert.throws(TypeError, function() { arr.lastIndexOf(true); - return false; - } catch (e) { - return (e instanceof TypeError) && !accessed; - } - - } -runTestCase(testcase); +}); +assert.sameValue(accessed, false, 'accessed'); diff --git a/test/built-ins/Array/prototype/lastIndexOf/15.4.4.15-8-b-i-31.js b/test/built-ins/Array/prototype/lastIndexOf/15.4.4.15-8-b-i-31.js index e06ce36e03d934eb290de4d1ace8894f489d6225..755d7de15fd9dca55910aa84996b0b8f5585af1e 100644 --- a/test/built-ins/Array/prototype/lastIndexOf/15.4.4.15-8-b-i-31.js +++ b/test/built-ins/Array/prototype/lastIndexOf/15.4.4.15-8-b-i-31.js @@ -6,11 +6,8 @@ es5id: 15.4.4.15-8-b-i-31 description: > Array.prototype.lastIndexOf terminates iteration on unhandled exception on an Array-like object -includes: [runTestCase.js] ---*/ -function testcase() { - var accessed = false; var obj = { length: 3 }; @@ -28,13 +25,7 @@ function testcase() { }, configurable: true }); - - try { +assert.throws(TypeError, function() { Array.prototype.lastIndexOf.call(obj, true); - return false; - } catch (e) { - return (e instanceof TypeError) && !accessed; - } - - } -runTestCase(testcase); +}); +assert.sameValue(accessed, false, 'accessed'); diff --git a/test/built-ins/Array/prototype/map/15.4.4.19-1-1.js b/test/built-ins/Array/prototype/map/15.4.4.19-1-1.js index ec66e5a6657c7546c06a300f1db93355f09b0ece..c06be0e03f13f9c7d31f910209b412488da2897b 100644 --- a/test/built-ins/Array/prototype/map/15.4.4.19-1-1.js +++ b/test/built-ins/Array/prototype/map/15.4.4.19-1-1.js @@ -4,15 +4,9 @@ /*--- es5id: 15.4.4.19-1-1 description: Array.prototype.map - applied to undefined -includes: [runTestCase.js] ---*/ -function testcase() { - try { + +assert.throws(TypeError, function() { Array.prototype.map.call(undefined); // TypeError is thrown if value is undefined - return false; - } catch (e) { - return (e instanceof TypeError); - } - } -runTestCase(testcase); +}); diff --git a/test/built-ins/Array/prototype/map/15.4.4.19-1-2.js b/test/built-ins/Array/prototype/map/15.4.4.19-1-2.js index eb819c4dbacae6721da7ea6f516a7ae5f1451db8..4d946c98bcd172fd7f51b1a6629d9b2b0bd7bbb8 100644 --- a/test/built-ins/Array/prototype/map/15.4.4.19-1-2.js +++ b/test/built-ins/Array/prototype/map/15.4.4.19-1-2.js @@ -4,15 +4,9 @@ /*--- es5id: 15.4.4.19-1-2 description: Array.prototype.map - applied to null -includes: [runTestCase.js] ---*/ -function testcase() { - try { + +assert.throws(TypeError, function() { Array.prototype.map.call(null); // TypeError is thrown if value is null - return false; - } catch (e) { - return (e instanceof TypeError); - } - } -runTestCase(testcase); +}); diff --git a/test/built-ins/Array/prototype/map/15.4.4.19-3-14.js b/test/built-ins/Array/prototype/map/15.4.4.19-3-14.js index 0e10ba1e1e2dbb0176be07f20ebad5941671190f..de00b86d0e9dda604ba3a6bcbaccbca78206bd3b 100644 --- a/test/built-ins/Array/prototype/map/15.4.4.19-3-14.js +++ b/test/built-ins/Array/prototype/map/15.4.4.19-3-14.js @@ -4,22 +4,13 @@ /*--- es5id: 15.4.4.19-3-14 description: Array.prototype.map - 'length' is a string containing Infinity -includes: [runTestCase.js] ---*/ -function testcase() { function callbackfn(val, idx, obj) { return val < 10; } var obj = { 0: 9, length: "Infinity" }; - - try { +assert.throws(RangeError, function() { Array.prototype.map.call(obj, callbackfn); - } catch (e) { - if (e instanceof RangeError) { - return true; - } - } - } -runTestCase(testcase); +}); diff --git a/test/built-ins/Array/prototype/map/15.4.4.19-3-22.js b/test/built-ins/Array/prototype/map/15.4.4.19-3-22.js index 06b009cf2335a36d3f8b8f6f842c70c658c428e0..7dcdcc31e7de71ce48c7175274e3e43fe61fd8d9 100644 --- a/test/built-ins/Array/prototype/map/15.4.4.19-3-22.js +++ b/test/built-ins/Array/prototype/map/15.4.4.19-3-22.js @@ -7,11 +7,8 @@ description: > Array.prototype.map throws TypeError exception when 'length' is an object with toString and valueOf methods that don�t return primitive values -includes: [runTestCase.js] ---*/ -function testcase() { - function callbackfn(val, idx, obj) { return val > 10; } @@ -29,12 +26,6 @@ function testcase() { } } }; - - try { +assert.throws(TypeError, function() { Array.prototype.map.call(obj, callbackfn); - return false; - } catch (ex) { - return ex instanceof TypeError; - } - } -runTestCase(testcase); +}); diff --git a/test/built-ins/Array/prototype/map/15.4.4.19-3-28.js b/test/built-ins/Array/prototype/map/15.4.4.19-3-28.js index 7fe0d865f409bde3e4b97118f19a52a4f2b1ce67..25f868e3e8a976a00254c7d7cefc0dc83ccefe34 100644 --- a/test/built-ins/Array/prototype/map/15.4.4.19-3-28.js +++ b/test/built-ins/Array/prototype/map/15.4.4.19-3-28.js @@ -4,11 +4,8 @@ /*--- es5id: 15.4.4.19-3-28 description: Array.prototype.map - value of 'length' is boundary value (2^32) -includes: [runTestCase.js] ---*/ -function testcase() { - function callbackfn(val, idx, obj) { return val > 10; } @@ -17,13 +14,6 @@ function testcase() { 0: 12, length: 4294967296 }; - - try { +assert.throws(RangeError, function() { var newArr = Array.prototype.map.call(obj, callbackfn); - } catch (e) { - if (e instanceof RangeError) { - return true; - } - } - } -runTestCase(testcase); +}); diff --git a/test/built-ins/Array/prototype/map/15.4.4.19-3-29.js b/test/built-ins/Array/prototype/map/15.4.4.19-3-29.js index 8e4d501067dff49d22010e6c600da52204ac6397..45b72bbe1490b1d2445ca4191a1fed9b230e5364 100644 --- a/test/built-ins/Array/prototype/map/15.4.4.19-3-29.js +++ b/test/built-ins/Array/prototype/map/15.4.4.19-3-29.js @@ -6,11 +6,8 @@ es5id: 15.4.4.19-3-29 description: > Array.prototype.map - value of 'length' is boundary value (2^32 + 1) -includes: [runTestCase.js] ---*/ -function testcase() { - function callbackfn(val, idx, obj) { return val > 10; } @@ -20,13 +17,6 @@ function testcase() { 1: 9, length: 4294967297 }; - - try { +assert.throws(RangeError, function() { var newArr = Array.prototype.map.call(obj, callbackfn); - } catch (e) { - if (e instanceof RangeError) { - return true; - } - } - } -runTestCase(testcase); +}); diff --git a/test/built-ins/Array/prototype/map/15.4.4.19-3-8.js b/test/built-ins/Array/prototype/map/15.4.4.19-3-8.js index f4ee0e4258392c629bea535a2a7d5c4d54b42577..5129e06e2cb8d7577eba40a2e673b1e299466db4 100644 --- a/test/built-ins/Array/prototype/map/15.4.4.19-3-8.js +++ b/test/built-ins/Array/prototype/map/15.4.4.19-3-8.js @@ -6,22 +6,13 @@ es5id: 15.4.4.19-3-8 description: > Array.prototype.map - value of 'length' is a number (value is Infinity) -includes: [runTestCase.js] ---*/ -function testcase() { function callbackfn(val, idx, obj) { return val < 10; } var obj = { 0: 9, length: Infinity }; - - try { +assert.throws(RangeError, function() { Array.prototype.map.call(obj, callbackfn); - } catch (e) { - if (e instanceof RangeError) { - return true; - } - } - } -runTestCase(testcase); +}); diff --git a/test/built-ins/Array/prototype/map/15.4.4.19-4-1.js b/test/built-ins/Array/prototype/map/15.4.4.19-4-1.js index 27a87abfe536777bf1b5a62a8294ce5bd1e65aac..e1bbc378dcd287bce28dd6e8fd04dead6a0a6335 100644 --- a/test/built-ins/Array/prototype/map/15.4.4.19-4-1.js +++ b/test/built-ins/Array/prototype/map/15.4.4.19-4-1.js @@ -4,19 +4,9 @@ /*--- es5id: 15.4.4.19-4-1 description: Array.prototype.map throws TypeError if callbackfn is undefined -includes: [runTestCase.js] ---*/ -function testcase() { - var arr = new Array(10); - try { - arr.map(); - } - catch(e) { - if(e instanceof TypeError) - return true; - } - - } -runTestCase(testcase); +assert.throws(TypeError, function() { + arr.map(); +}); diff --git a/test/built-ins/Array/prototype/map/15.4.4.19-4-15.js b/test/built-ins/Array/prototype/map/15.4.4.19-4-15.js index 8f7efc8390dde4b06e538e70559fb8b7c7d81b20..cba95c17c13d5ded85807f27402297d21ae18948 100644 --- a/test/built-ins/Array/prototype/map/15.4.4.19-4-15.js +++ b/test/built-ins/Array/prototype/map/15.4.4.19-4-15.js @@ -6,11 +6,8 @@ es5id: 15.4.4.19-4-15 description: > Array.prototype.map - calling with no callbackfn is the same as passing undefined for callbackfn -includes: [runTestCase.js] ---*/ -function testcase() { - var obj = { 10: 10 }; var lengthAccessed = false; var loopAccessed = false; @@ -29,12 +26,8 @@ function testcase() { }, configurable: true }); - - try { +assert.throws(TypeError, function() { Array.prototype.map.call(obj); - return false; - } catch (e) { - return e instanceof TypeError && lengthAccessed && !loopAccessed; - } - } -runTestCase(testcase); +}); +assert(lengthAccessed, 'lengthAccessed !== true'); +assert.sameValue(loopAccessed, false, 'loopAccessed'); diff --git a/test/built-ins/Array/prototype/map/15.4.4.19-4-2.js b/test/built-ins/Array/prototype/map/15.4.4.19-4-2.js index 24fe85ead0ed08cbf7c57aade537cb8f10ca4e08..0b0b2becfe78cdeb4d721001218f1d9b0b2b2e3d 100644 --- a/test/built-ins/Array/prototype/map/15.4.4.19-4-2.js +++ b/test/built-ins/Array/prototype/map/15.4.4.19-4-2.js @@ -6,19 +6,9 @@ es5id: 15.4.4.19-4-2 description: > Array.prototype.map throws ReferenceError if callbackfn is unreferenced -includes: [runTestCase.js] ---*/ -function testcase() { - var arr = new Array(10); - try { - arr.map(foo); - } - catch(e) { - if(e instanceof ReferenceError) - return true; - } - - } -runTestCase(testcase); +assert.throws(ReferenceError, function() { + arr.map(foo); +}); diff --git a/test/built-ins/Array/prototype/map/15.4.4.19-4-3.js b/test/built-ins/Array/prototype/map/15.4.4.19-4-3.js index ff3ead687b9a01ee574f53d3dfbdc245f9dc1b4e..0cb7b7c31ba4a80971a814da690f128c51f449c2 100644 --- a/test/built-ins/Array/prototype/map/15.4.4.19-4-3.js +++ b/test/built-ins/Array/prototype/map/15.4.4.19-4-3.js @@ -4,19 +4,9 @@ /*--- es5id: 15.4.4.19-4-3 description: Array.prototype.map throws TypeError if callbackfn is null -includes: [runTestCase.js] ---*/ -function testcase() { - var arr = new Array(10); - try { - arr.map(null); - } - catch(e) { - if(e instanceof TypeError) - return true; - } - - } -runTestCase(testcase); +assert.throws(TypeError, function() { + arr.map(null); +}); diff --git a/test/built-ins/Array/prototype/map/15.4.4.19-4-4.js b/test/built-ins/Array/prototype/map/15.4.4.19-4-4.js index 7d88c6569208dfd2484f36a93a9222a43f2d6ea7..ed53e5efae9f2026b875606853877e1c0e87391e 100644 --- a/test/built-ins/Array/prototype/map/15.4.4.19-4-4.js +++ b/test/built-ins/Array/prototype/map/15.4.4.19-4-4.js @@ -4,19 +4,9 @@ /*--- es5id: 15.4.4.19-4-4 description: Array.prototype.map throws TypeError if callbackfn is boolean -includes: [runTestCase.js] ---*/ -function testcase() { - var arr = new Array(10); - try { - arr.map(true); - } - catch(e) { - if(e instanceof TypeError) - return true; - } - - } -runTestCase(testcase); +assert.throws(TypeError, function() { + arr.map(true); +}); diff --git a/test/built-ins/Array/prototype/map/15.4.4.19-4-5.js b/test/built-ins/Array/prototype/map/15.4.4.19-4-5.js index 9b0359ac7a43654d440dcd1fd01c43bd0db6a267..fbbbb83a610351bb89e4829e7da2671d2f9ccaa2 100644 --- a/test/built-ins/Array/prototype/map/15.4.4.19-4-5.js +++ b/test/built-ins/Array/prototype/map/15.4.4.19-4-5.js @@ -4,19 +4,9 @@ /*--- es5id: 15.4.4.19-4-5 description: Array.prototype.map throws TypeError if callbackfn is number -includes: [runTestCase.js] ---*/ -function testcase() { - var arr = new Array(10); - try { - arr.map(5); - } - catch(e) { - if(e instanceof TypeError) - return true; - } - - } -runTestCase(testcase); +assert.throws(TypeError, function() { + arr.map(5); +}); diff --git a/test/built-ins/Array/prototype/map/15.4.4.19-4-6.js b/test/built-ins/Array/prototype/map/15.4.4.19-4-6.js index 122f87774de48e987d0c71d3a70528231e7756f0..ac6eea9241420555ef44b9234e02c18128296631 100644 --- a/test/built-ins/Array/prototype/map/15.4.4.19-4-6.js +++ b/test/built-ins/Array/prototype/map/15.4.4.19-4-6.js @@ -4,19 +4,9 @@ /*--- es5id: 15.4.4.19-4-6 description: Array.prototype.map throws TypeError if callbackfn is string -includes: [runTestCase.js] ---*/ -function testcase() { - var arr = new Array(10); - try { - arr.map("abc"); - } - catch(e) { - if(e instanceof TypeError) - return true; - } - - } -runTestCase(testcase); +assert.throws(TypeError, function() { + arr.map("abc"); +}); diff --git a/test/built-ins/Array/prototype/map/15.4.4.19-4-7.js b/test/built-ins/Array/prototype/map/15.4.4.19-4-7.js index 14b11b713590d174554b82c2baf99822a7dafdf5..172a1905e0b3d2b92dbdb58ce46f875576c4a2ce 100644 --- a/test/built-ins/Array/prototype/map/15.4.4.19-4-7.js +++ b/test/built-ins/Array/prototype/map/15.4.4.19-4-7.js @@ -6,19 +6,9 @@ es5id: 15.4.4.19-4-7 description: > Array.prototype.map throws TypeError if callbackfn is Object without Call internal method -includes: [runTestCase.js] ---*/ -function testcase() { - var arr = new Array(10); - try { - arr.map(new Object()); - } - catch(e) { - if(e instanceof TypeError) - return true; - } - - } -runTestCase(testcase); +assert.throws(TypeError, function() { + arr.map(new Object()); +}); diff --git a/test/built-ins/Array/prototype/map/15.4.4.19-4-8.js b/test/built-ins/Array/prototype/map/15.4.4.19-4-8.js index ace649ef6bc14167715cd7107ce44212c0bde524..de3eaa35341fee501c32e75cf26a92cff74c9e90 100644 --- a/test/built-ins/Array/prototype/map/15.4.4.19-4-8.js +++ b/test/built-ins/Array/prototype/map/15.4.4.19-4-8.js @@ -6,11 +6,8 @@ es5id: 15.4.4.19-4-8 description: > Array.prototype.map - Side effects produced by step 2 are visible when an exception occurs -includes: [runTestCase.js] ---*/ -function testcase() { - var obj = { 0: 11, 1: 12 }; var accessed = false; @@ -22,12 +19,7 @@ function testcase() { }, configurable: true }); - - try { +assert.throws(TypeError, function() { Array.prototype.map.call(obj, null); - return false; - } catch (ex) { - return ex instanceof TypeError && accessed; - } - } -runTestCase(testcase); +}); +assert(accessed, 'accessed !== true'); diff --git a/test/built-ins/Array/prototype/map/15.4.4.19-4-9.js b/test/built-ins/Array/prototype/map/15.4.4.19-4-9.js index 4c025972f59c29aa9cc4231ec7322fdc850116f0..89358e9134664ea781ca9e8d90269b9b0f3c30b4 100644 --- a/test/built-ins/Array/prototype/map/15.4.4.19-4-9.js +++ b/test/built-ins/Array/prototype/map/15.4.4.19-4-9.js @@ -6,11 +6,8 @@ es5id: 15.4.4.19-4-9 description: > Array.prototype.map - Side effects produced by step 3 are visible when an exception occurs -includes: [runTestCase.js] ---*/ -function testcase() { - var obj = { 0: 11, 1: 12 }; var accessed = false; @@ -26,12 +23,7 @@ function testcase() { }, configurable: true }); - - try { +assert.throws(TypeError, function() { Array.prototype.map.call(obj, null); - return false; - } catch (ex) { - return ex instanceof TypeError && accessed; - } - } -runTestCase(testcase); +}); +assert(accessed, 'accessed !== true'); diff --git a/test/built-ins/Array/prototype/map/15.4.4.19-8-c-i-30.js b/test/built-ins/Array/prototype/map/15.4.4.19-8-c-i-30.js index 064f3db60bd351b4e261cb41918750ae737bd834..195ddd7868638a696826737e5d16b923a2b9fa5f 100644 --- a/test/built-ins/Array/prototype/map/15.4.4.19-8-c-i-30.js +++ b/test/built-ins/Array/prototype/map/15.4.4.19-8-c-i-30.js @@ -6,11 +6,8 @@ es5id: 15.4.4.19-8-c-i-30 description: > Array.prototype.map - unhandled exceptions happened in getter terminate iteration on an Array-like object -includes: [runTestCase.js] ---*/ -function testcase() { - var obj = { 0: 11, 5: 10, 10: 8, length: 20 }; var accessed = false; @@ -34,12 +31,7 @@ function testcase() { }, configurable: true }); - - try { +assert.throws(RangeError, function() { Array.prototype.map.call(obj, callbackfn); - return false; - } catch (ex) { - return (ex instanceof RangeError) && !accessed; - } - } -runTestCase(testcase); +}); +assert.sameValue(accessed, false, 'accessed'); diff --git a/test/built-ins/Array/prototype/map/15.4.4.19-8-c-i-31.js b/test/built-ins/Array/prototype/map/15.4.4.19-8-c-i-31.js index 04798223e6ebe33a939402fce54be843b8950378..b96cb232ecf0ec1df36071bd74b7468b10ea471f 100644 --- a/test/built-ins/Array/prototype/map/15.4.4.19-8-c-i-31.js +++ b/test/built-ins/Array/prototype/map/15.4.4.19-8-c-i-31.js @@ -6,11 +6,8 @@ es5id: 15.4.4.19-8-c-i-31 description: > Array.prototype.map - unhandled exceptions happened in getter terminate iteration on an Array -includes: [runTestCase.js] ---*/ -function testcase() { - var accessed = false; function callbackfn(val, idx, obj) { @@ -37,12 +34,7 @@ function testcase() { }, configurable: true }); - - try { +assert.throws(RangeError, function() { arr.map(callbackfn); - return false; - } catch (ex) { - return (ex instanceof RangeError) && !accessed; - } - } -runTestCase(testcase); +}); +assert.sameValue(accessed, false, 'accessed'); diff --git a/test/built-ins/Array/prototype/map/15.4.4.19-8-c-ii-7.js b/test/built-ins/Array/prototype/map/15.4.4.19-8-c-ii-7.js index 8045f4f6f205034992fc6f1e96cfa1efb83a3a0e..a31f9e41d4164c40f6c5d66e54dc0d082c0747fc 100644 --- a/test/built-ins/Array/prototype/map/15.4.4.19-8-c-ii-7.js +++ b/test/built-ins/Array/prototype/map/15.4.4.19-8-c-ii-7.js @@ -6,11 +6,8 @@ es5id: 15.4.4.19-8-c-ii-7 description: > Array.prototype.map - unhandled exceptions happened in callbackfn terminate iteration -includes: [runTestCase.js] ---*/ -function testcase() { - var accessed = false; function callbackfn(val, idx, obj) { @@ -23,12 +20,7 @@ function testcase() { } var obj = { 0: 11, 4: 10, 10: 8, length: 20 }; - - try { +assert.throws(Error, function() { Array.prototype.map.call(obj, callbackfn); - return false; - } catch (ex) { - return ex instanceof Error && !accessed; - } - } -runTestCase(testcase); +}); +assert.sameValue(accessed, false, 'accessed'); diff --git a/test/built-ins/Array/prototype/reduce/15.4.4.21-1-1.js b/test/built-ins/Array/prototype/reduce/15.4.4.21-1-1.js index 40c2913349e358f7931b09c6ba9fee6531480c0e..04fd4e8970034ab19bcdf69c0f690e04a529ce6b 100644 --- a/test/built-ins/Array/prototype/reduce/15.4.4.21-1-1.js +++ b/test/built-ins/Array/prototype/reduce/15.4.4.21-1-1.js @@ -4,15 +4,9 @@ /*--- es5id: 15.4.4.21-1-1 description: Array.prototype.reduce applied to undefined -includes: [runTestCase.js] ---*/ -function testcase() { - try { - Array.prototype.reduce.call(undefined); - return false; - } catch (e) { - return (e instanceof TypeError); - } - } -runTestCase(testcase); + +assert.throws(TypeError, function() { + Array.prototype.reduce.call(undefined); +}); diff --git a/test/built-ins/Array/prototype/reduce/15.4.4.21-1-2.js b/test/built-ins/Array/prototype/reduce/15.4.4.21-1-2.js index ace5be9614663da7626c9365400d4da9d2d74ce9..96adb146d8a16703e6d4ccaed077bed467cef2ca 100644 --- a/test/built-ins/Array/prototype/reduce/15.4.4.21-1-2.js +++ b/test/built-ins/Array/prototype/reduce/15.4.4.21-1-2.js @@ -4,15 +4,9 @@ /*--- es5id: 15.4.4.21-1-2 description: Array.prototype.reduce applied to null -includes: [runTestCase.js] ---*/ -function testcase() { - try { + +assert.throws(TypeError, function() { Array.prototype.reduce.call(null); - return false; - } catch (e) { - return (e instanceof TypeError); - } - } -runTestCase(testcase); +}); diff --git a/test/built-ins/Array/prototype/reduce/15.4.4.21-3-22.js b/test/built-ins/Array/prototype/reduce/15.4.4.21-3-22.js index bcfe3363515ab8d9f7a3af3a0185504ea616f689..9b18e0cfd68cb571bbb89f16a70710e49b823010 100644 --- a/test/built-ins/Array/prototype/reduce/15.4.4.21-3-22.js +++ b/test/built-ins/Array/prototype/reduce/15.4.4.21-3-22.js @@ -7,11 +7,8 @@ description: > Array.prototype.reduce throws TypeError exception - 'length' is an object with toString and valueOf methods that don�t return primitive values -includes: [runTestCase.js] ---*/ -function testcase() { - var accessed = false; var valueOfAccessed = false; var toStringAccessed = false; @@ -36,12 +33,9 @@ function testcase() { } } }; - - try { +assert.throws(TypeError, function() { Array.prototype.reduce.call(obj, callbackfn, 1); - return false; - } catch (ex) { - return (ex instanceof TypeError) && !accessed && toStringAccessed && valueOfAccessed; - } - } -runTestCase(testcase); +}); +assert.sameValue(accessed, false, 'accessed'); +assert(toStringAccessed, 'toStringAccessed !== true'); +assert(valueOfAccessed, 'valueOfAccessed !== true'); diff --git a/test/built-ins/Array/prototype/reduce/15.4.4.21-4-1.js b/test/built-ins/Array/prototype/reduce/15.4.4.21-4-1.js index b099fcc0d686906360a004701dee04ce741003df..897c504d24b4a0afadf4e60b9015e40191b7cfc5 100644 --- a/test/built-ins/Array/prototype/reduce/15.4.4.21-4-1.js +++ b/test/built-ins/Array/prototype/reduce/15.4.4.21-4-1.js @@ -4,19 +4,9 @@ /*--- es5id: 15.4.4.21-4-1 description: Array.prototype.reduce throws TypeError if callbackfn is undefined -includes: [runTestCase.js] ---*/ -function testcase() { - var arr = new Array(10); - try { - arr.reduce(); - } - catch(e) { - if(e instanceof TypeError) - return true; - } - - } -runTestCase(testcase); +assert.throws(TypeError, function() { + arr.reduce(); +}); diff --git a/test/built-ins/Array/prototype/reduce/15.4.4.21-4-15.js b/test/built-ins/Array/prototype/reduce/15.4.4.21-4-15.js index 5c7136a4b4fe0afdf301974ca3da917122b95274..c62a892d146a4d0159dbf6163b66b844376e0fb9 100644 --- a/test/built-ins/Array/prototype/reduce/15.4.4.21-4-15.js +++ b/test/built-ins/Array/prototype/reduce/15.4.4.21-4-15.js @@ -6,10 +6,8 @@ es5id: 15.4.4.21-4-15 description: > Array.prototype.reduce - calling with no callbackfn is the same as passing undefined for callbackfn -includes: [runTestCase.js] ---*/ -function testcase() { var obj = { 10: 10 }; var lengthAccessed = false; var loopAccessed = false; @@ -29,12 +27,8 @@ function testcase() { }, configurable: true }); - - try { +assert.throws(TypeError, function() { Array.prototype.reduce.call(obj); - return false; - } catch (ex) { - return (ex instanceof TypeError) && lengthAccessed && !loopAccessed; - } - } -runTestCase(testcase); +}); +assert(lengthAccessed, 'lengthAccessed !== true'); +assert.sameValue(loopAccessed, false, 'loopAccessed'); diff --git a/test/built-ins/Array/prototype/reduce/15.4.4.21-4-2.js b/test/built-ins/Array/prototype/reduce/15.4.4.21-4-2.js index 6c08442d56a7b9809c575e43d07615d66e11e77c..53acc464e5def61cfbfc2f67a8f73cca96959646 100644 --- a/test/built-ins/Array/prototype/reduce/15.4.4.21-4-2.js +++ b/test/built-ins/Array/prototype/reduce/15.4.4.21-4-2.js @@ -6,19 +6,9 @@ es5id: 15.4.4.21-4-2 description: > Array.prototype.reduce throws ReferenceError if callbackfn is unreferenced -includes: [runTestCase.js] ---*/ -function testcase() { - var arr = new Array(10); - try { - arr.reduce(foo); - } - catch(e) { - if(e instanceof ReferenceError) - return true; - } - - } -runTestCase(testcase); +assert.throws(ReferenceError, function() { + arr.reduce(foo); +}); diff --git a/test/built-ins/Array/prototype/reduce/15.4.4.21-4-3.js b/test/built-ins/Array/prototype/reduce/15.4.4.21-4-3.js index f3c7794fb28bfe4091986e6c6cfcc05b9c373a09..342be4a5f9b10fdc57108fe92d52cedb34e3503b 100644 --- a/test/built-ins/Array/prototype/reduce/15.4.4.21-4-3.js +++ b/test/built-ins/Array/prototype/reduce/15.4.4.21-4-3.js @@ -4,19 +4,9 @@ /*--- es5id: 15.4.4.21-4-3 description: Array.prototype.reduce throws TypeError if callbackfn is null -includes: [runTestCase.js] ---*/ -function testcase() { - var arr = new Array(10); - try { - arr.reduce(null); - } - catch(e) { - if(e instanceof TypeError) - return true; - } - - } -runTestCase(testcase); +assert.throws(TypeError, function() { + arr.reduce(null); +}); diff --git a/test/built-ins/Array/prototype/reduce/15.4.4.21-4-4.js b/test/built-ins/Array/prototype/reduce/15.4.4.21-4-4.js index 749e752030ce9df8593dbd7974a1b5d79ee25674..d5777b17d2a3f4c5ec4cae357b00af257624ab9c 100644 --- a/test/built-ins/Array/prototype/reduce/15.4.4.21-4-4.js +++ b/test/built-ins/Array/prototype/reduce/15.4.4.21-4-4.js @@ -4,19 +4,9 @@ /*--- es5id: 15.4.4.21-4-4 description: Array.prototype.reduce throws TypeError if callbackfn is boolean -includes: [runTestCase.js] ---*/ -function testcase() { - var arr = new Array(10); - try { - arr.reduce(true); - } - catch(e) { - if(e instanceof TypeError) - return true; - } - - } -runTestCase(testcase); +assert.throws(TypeError, function() { + arr.reduce(true); +}); diff --git a/test/built-ins/Array/prototype/reduce/15.4.4.21-4-5.js b/test/built-ins/Array/prototype/reduce/15.4.4.21-4-5.js index 76dd875b8c036508c8ae4f0b1cef244233e53e1f..cb4a091174aef47581974b3ad7fe1652b186bb4f 100644 --- a/test/built-ins/Array/prototype/reduce/15.4.4.21-4-5.js +++ b/test/built-ins/Array/prototype/reduce/15.4.4.21-4-5.js @@ -4,19 +4,9 @@ /*--- es5id: 15.4.4.21-4-5 description: Array.prototype.reduce throws TypeError if callbackfn is number -includes: [runTestCase.js] ---*/ -function testcase() { - var arr = new Array(10); - try { - arr.reduce(5); - } - catch(e) { - if(e instanceof TypeError) - return true; - } - - } -runTestCase(testcase); +assert.throws(TypeError, function() { + arr.reduce(5); +}); diff --git a/test/built-ins/Array/prototype/reduce/15.4.4.21-4-6.js b/test/built-ins/Array/prototype/reduce/15.4.4.21-4-6.js index 957fe82de1b75b584a7cf19e886e03293177e02b..42faa62ecd4fbfb840cbdc884d6fa9b6c42a620a 100644 --- a/test/built-ins/Array/prototype/reduce/15.4.4.21-4-6.js +++ b/test/built-ins/Array/prototype/reduce/15.4.4.21-4-6.js @@ -4,19 +4,9 @@ /*--- es5id: 15.4.4.21-4-6 description: Array.prototype.reduce throws TypeError if callbackfn is string -includes: [runTestCase.js] ---*/ -function testcase() { - var arr = new Array(10); - try { - arr.reduce("abc"); - } - catch(e) { - if(e instanceof TypeError) - return true; - } - - } -runTestCase(testcase); +assert.throws(TypeError, function() { + arr.reduce("abc"); +}); diff --git a/test/built-ins/Array/prototype/reduce/15.4.4.21-4-7.js b/test/built-ins/Array/prototype/reduce/15.4.4.21-4-7.js index 0743e19b56a990a6a345cbf7aa9d44687d4ea913..5d08f90adf8c7e514bfd6bba7da32fa8636f6308 100644 --- a/test/built-ins/Array/prototype/reduce/15.4.4.21-4-7.js +++ b/test/built-ins/Array/prototype/reduce/15.4.4.21-4-7.js @@ -6,19 +6,9 @@ es5id: 15.4.4.21-4-7 description: > Array.prototype.reduce throws TypeError if callbackfn is Object without [[Call]] internal method -includes: [runTestCase.js] ---*/ -function testcase() { - var arr = new Array(10); - try { - arr.reduce(new Object()); - } - catch(e) { - if(e instanceof TypeError) - return true; - } - - } -runTestCase(testcase); +assert.throws(TypeError, function() { + arr.reduce(new Object()); +}); diff --git a/test/built-ins/Array/prototype/reduce/15.4.4.21-4-8.js b/test/built-ins/Array/prototype/reduce/15.4.4.21-4-8.js index f545412dcaa90b9ecffb44fdaadbc12d4bbf0a86..df7a1112c312924b4bb3e85ce8c63584b3a2a769 100644 --- a/test/built-ins/Array/prototype/reduce/15.4.4.21-4-8.js +++ b/test/built-ins/Array/prototype/reduce/15.4.4.21-4-8.js @@ -6,11 +6,8 @@ es5id: 15.4.4.21-4-8 description: > Array.prototype.reduce - side effects produced by step 2 are visible when an exception occurs -includes: [runTestCase.js] ---*/ -function testcase() { - var obj = { 0: 11, 1: 12 }; var accessed = false; @@ -22,12 +19,7 @@ function testcase() { }, configurable: true }); - - try { +assert.throws(TypeError, function() { Array.prototype.reduce.call(obj, null); - return false; - } catch (ex) { - return ex instanceof TypeError && accessed; - } - } -runTestCase(testcase); +}); +assert(accessed, 'accessed !== true'); diff --git a/test/built-ins/Array/prototype/reduce/15.4.4.21-4-9.js b/test/built-ins/Array/prototype/reduce/15.4.4.21-4-9.js index bbed561102f55facbea78135287e179b6d082e23..ea580455ea5ab0540ba4588cfb066dc2fde30d7b 100644 --- a/test/built-ins/Array/prototype/reduce/15.4.4.21-4-9.js +++ b/test/built-ins/Array/prototype/reduce/15.4.4.21-4-9.js @@ -6,11 +6,8 @@ es5id: 15.4.4.21-4-9 description: > Array.prototype.reduce - side effects produced by step 3 are visible when an exception occurs -includes: [runTestCase.js] ---*/ -function testcase() { - var obj = { 0: 11, 1: 12 }; var accessed = false; @@ -26,12 +23,7 @@ function testcase() { }, configurable: true }); - - try { +assert.throws(TypeError, function() { Array.prototype.reduce.call(obj, null); - return false; - } catch (ex) { - return ex instanceof TypeError && accessed; - } - } -runTestCase(testcase); +}); +assert(accessed, 'accessed !== true'); diff --git a/test/built-ins/Array/prototype/reduce/15.4.4.21-5-1.js b/test/built-ins/Array/prototype/reduce/15.4.4.21-5-1.js index 6b7844e29d36119523d600620e2b31b94afb1282..a225b4dedd119841641090d724edb41e7ece18a5 100644 --- a/test/built-ins/Array/prototype/reduce/15.4.4.21-5-1.js +++ b/test/built-ins/Array/prototype/reduce/15.4.4.21-5-1.js @@ -6,19 +6,9 @@ es5id: 15.4.4.21-5-1 description: > Array.prototype.reduce throws TypeError if 'length' is 0 (empty array), no initVal -includes: [runTestCase.js] ---*/ -function testcase() { function cb(){} - - try { +assert.throws(TypeError, function() { [].reduce(cb); - } - catch (e) { - if (e instanceof TypeError) { - return true; - } - } - } -runTestCase(testcase); +}); diff --git a/test/built-ins/Array/prototype/reduce/15.4.4.21-5-10.js b/test/built-ins/Array/prototype/reduce/15.4.4.21-5-10.js index 7344df34c77c768b8d8695d0741b0e81c6de93f0..8f5cb86b87a7e2094165b9d2c7e68840d54f44da 100644 --- a/test/built-ins/Array/prototype/reduce/15.4.4.21-5-10.js +++ b/test/built-ins/Array/prototype/reduce/15.4.4.21-5-10.js @@ -6,11 +6,8 @@ es5id: 15.4.4.21-5-10 description: > Array.prototype.reduce - if exception occurs, it occurs after any side-effects that might be produced by step 2 -includes: [runTestCase.js] ---*/ -function testcase() { - function callbackfn(prevVal, curVal, idx, obj) { return (curVal > 10); } @@ -26,12 +23,7 @@ function testcase() { }, configurable: true }); - - try { +assert.throws(TypeError, function() { Array.prototype.reduce.call(obj, callbackfn); - return false; - } catch (ex) { - return (ex instanceof TypeError) && accessed; - } - } -runTestCase(testcase); +}); +assert(accessed, 'accessed !== true'); diff --git a/test/built-ins/Array/prototype/reduce/15.4.4.21-5-11.js b/test/built-ins/Array/prototype/reduce/15.4.4.21-5-11.js index 3291875d4b02becb6f995d6b65a61e3b8ad9d660..e7d20c8f465fa5ead02c18c4296689de6bc67a72 100644 --- a/test/built-ins/Array/prototype/reduce/15.4.4.21-5-11.js +++ b/test/built-ins/Array/prototype/reduce/15.4.4.21-5-11.js @@ -6,11 +6,8 @@ es5id: 15.4.4.21-5-11 description: > Array.prototype.reduce - if the exception occurs, it occurs after any side-effects that might be produced by step 3 -includes: [runTestCase.js] ---*/ -function testcase() { - function callbackfn(prevVal, curVal, idx, obj) { return (curVal > 10); } @@ -30,12 +27,7 @@ function testcase() { }, configurable: true }); - - try { +assert.throws(TypeError, function() { Array.prototype.reduce.call(obj, callbackfn); - return false; - } catch (ex) { - return (ex instanceof TypeError) && accessed; - } - } -runTestCase(testcase); +}); +assert(accessed, 'accessed !== true'); diff --git a/test/built-ins/Array/prototype/reduce/15.4.4.21-5-2.js b/test/built-ins/Array/prototype/reduce/15.4.4.21-5-2.js index e8b316cced9214f571d6ede23b5feaac1eb8faae..bd1728cbdbc015eff3db98c91c18af736c6ec7d5 100644 --- a/test/built-ins/Array/prototype/reduce/15.4.4.21-5-2.js +++ b/test/built-ins/Array/prototype/reduce/15.4.4.21-5-2.js @@ -7,23 +7,14 @@ description: > Array.prototype.reduce throws TypeError if 'length' is 0 (subclassed Array, length overridden to null (type conversion)), no initVal -includes: [runTestCase.js] ---*/ -function testcase() { foo.prototype = new Array(1, 2, 3); function foo() {} var f = new foo(); f.length = null; function cb(){} - try { +assert.throws(TypeError, function() { f.reduce(cb); - } - catch (e) { - if (e instanceof TypeError) { - return true; - } - } - } -runTestCase(testcase); +}); diff --git a/test/built-ins/Array/prototype/reduce/15.4.4.21-5-3.js b/test/built-ins/Array/prototype/reduce/15.4.4.21-5-3.js index 1aedd2b36ed0e80739e94078f6a4c01dc9fe48dd..66ca0f4f066f879a778d034bb4a6b81eb8e037bc 100644 --- a/test/built-ins/Array/prototype/reduce/15.4.4.21-5-3.js +++ b/test/built-ins/Array/prototype/reduce/15.4.4.21-5-3.js @@ -7,23 +7,14 @@ description: > Array.prototype.reduce throws TypeError if 'length' is 0 (subclassed Array, length overridden to false (type conversion)), no initVal -includes: [runTestCase.js] ---*/ -function testcase() { foo.prototype = new Array(1, 2, 3); function foo() {} var f = new foo(); f.length = false; function cb(){} - try { +assert.throws(TypeError, function() { f.reduce(cb); - } - catch (e) { - if (e instanceof TypeError) { - return true; - } - } - } -runTestCase(testcase); +}); diff --git a/test/built-ins/Array/prototype/reduce/15.4.4.21-5-4.js b/test/built-ins/Array/prototype/reduce/15.4.4.21-5-4.js index af9efc8875eecadf517cc9f44e12a71e5d87a5cf..345b5f8d02062c678581ecaebce61e9fc3701e77 100644 --- a/test/built-ins/Array/prototype/reduce/15.4.4.21-5-4.js +++ b/test/built-ins/Array/prototype/reduce/15.4.4.21-5-4.js @@ -7,23 +7,14 @@ description: > Array.prototype.reduce throws TypeError if 'length' is 0 (subclassed Array, length overridden to 0 (type conversion)), no initVal -includes: [runTestCase.js] ---*/ -function testcase() { foo.prototype = new Array(1, 2, 3); function foo() {} var f = new foo(); f.length = 0; function cb(){} - try { +assert.throws(TypeError, function() { f.reduce(cb); - } - catch (e) { - if (e instanceof TypeError) { - return true; - } - } - } -runTestCase(testcase); +}); diff --git a/test/built-ins/Array/prototype/reduce/15.4.4.21-5-5.js b/test/built-ins/Array/prototype/reduce/15.4.4.21-5-5.js index 0a62ef2310adc4bd65e7bef2a802aa655f168840..18531bd0f9d35d4bb4eba0ed4cc4d494ea6a8b6b 100644 --- a/test/built-ins/Array/prototype/reduce/15.4.4.21-5-5.js +++ b/test/built-ins/Array/prototype/reduce/15.4.4.21-5-5.js @@ -7,23 +7,14 @@ description: > Array.prototype.reduce throws TypeError if 'length' is 0 (subclassed Array, length overridden to '0' (type conversion)), no initVal -includes: [runTestCase.js] ---*/ -function testcase() { foo.prototype = new Array(1, 2, 3); function foo() {} var f = new foo(); f.length = '0'; function cb(){} - try { +assert.throws(TypeError, function() { f.reduce(cb); - } - catch (e) { - if (e instanceof TypeError) { - return true; - } - } - } -runTestCase(testcase); +}); diff --git a/test/built-ins/Array/prototype/reduce/15.4.4.21-5-6.js b/test/built-ins/Array/prototype/reduce/15.4.4.21-5-6.js index 2aeb7827a85283a0cfc6a20ed03b01a505003a29..b59332ca54f1ac159bf8d18dc7990679c0c4e2bf 100644 --- a/test/built-ins/Array/prototype/reduce/15.4.4.21-5-6.js +++ b/test/built-ins/Array/prototype/reduce/15.4.4.21-5-6.js @@ -7,10 +7,8 @@ description: > Array.prototype.reduce throws TypeError if 'length' is 0 (subclassed Array, length overridden with obj with valueOf), no initVal -includes: [runTestCase.js] ---*/ -function testcase() { foo.prototype = new Array(1, 2, 3); function foo() {} var f = new foo(); @@ -19,13 +17,6 @@ function testcase() { f.length = o; function cb(){} - try { +assert.throws(TypeError, function() { f.reduce(cb); - } - catch (e) { - if (e instanceof TypeError) { - return true; - } - } - } -runTestCase(testcase); +}); diff --git a/test/built-ins/Array/prototype/reduce/15.4.4.21-5-7.js b/test/built-ins/Array/prototype/reduce/15.4.4.21-5-7.js index 04abec388346c104c6b47b644db2fb0b283aca1e..e2819a73efa7ca83f23f4d8aaf5a402496ca5b5f 100644 --- a/test/built-ins/Array/prototype/reduce/15.4.4.21-5-7.js +++ b/test/built-ins/Array/prototype/reduce/15.4.4.21-5-7.js @@ -7,10 +7,8 @@ description: > Array.prototype.reduce throws TypeError if 'length' is 0 (subclassed Array, length overridden with obj w/o valueOf (toString)), no initVal -includes: [runTestCase.js] ---*/ -function testcase() { foo.prototype = new Array(1, 2, 3); function foo() {} var f = new foo(); @@ -25,13 +23,6 @@ function testcase() { // resulting string to a number. function cb(){} - try { +assert.throws(TypeError, function() { f.reduce(cb); - } - catch (e) { - if (e instanceof TypeError) { - return true; - } - } - } -runTestCase(testcase); +}); diff --git a/test/built-ins/Array/prototype/reduce/15.4.4.21-5-8.js b/test/built-ins/Array/prototype/reduce/15.4.4.21-5-8.js index 989d4001317caad6e07bda09f139e87187e59bf8..ef30e6bb8d100c9f5706699939cf83dbe92bdda9 100644 --- a/test/built-ins/Array/prototype/reduce/15.4.4.21-5-8.js +++ b/test/built-ins/Array/prototype/reduce/15.4.4.21-5-8.js @@ -6,10 +6,8 @@ es5id: 15.4.4.21-5-8 description: > Array.prototype.reduce throws TypeError if 'length' is 0 (subclassed Array, length overridden with []), no initVal -includes: [runTestCase.js] ---*/ -function testcase() { foo.prototype = new Array(1, 2, 3); function foo() {} var f = new foo(); @@ -31,13 +29,6 @@ function testcase() { // or if its one element is not a number, the array converts to NaN. function cb(){} - try { +assert.throws(TypeError, function() { f.reduce(cb); - } - catch (e) { - if (e instanceof TypeError) { - return true; - } - } - } -runTestCase(testcase); +}); diff --git a/test/built-ins/Array/prototype/reduce/15.4.4.21-8-b-iii-1-32.js b/test/built-ins/Array/prototype/reduce/15.4.4.21-8-b-iii-1-32.js index fd139b89d5b1a102377cd8797675a44f400a2d0c..3cc60dd9662b5f049c62b60fc3e3f74dd14e7287 100644 --- a/test/built-ins/Array/prototype/reduce/15.4.4.21-8-b-iii-1-32.js +++ b/test/built-ins/Array/prototype/reduce/15.4.4.21-8-b-iii-1-32.js @@ -6,11 +6,8 @@ es5id: 15.4.4.21-8-b-iii-1-32 description: > Array.prototype.reduce - exception in getter terminates iteration on an Array-like object -includes: [runTestCase.js] ---*/ -function testcase() { - var accessed = false; var testResult = false; function callbackfn(prevVal, curVal, idx, obj) { @@ -27,12 +24,8 @@ function testcase() { }, configurable: true }); - - try { +assert.throws(RangeError, function() { Array.prototype.reduce.call(obj, callbackfn); - return false; - } catch (ex) { - return (ex instanceof RangeError) && !accessed && !testResult; - } - } -runTestCase(testcase); +}); +assert.sameValue(accessed, false, 'accessed'); +assert.sameValue(testResult, false, 'testResult'); diff --git a/test/built-ins/Array/prototype/reduce/15.4.4.21-8-b-iii-1-33.js b/test/built-ins/Array/prototype/reduce/15.4.4.21-8-b-iii-1-33.js index c56d04a1383a9f118a5ff8017d7d6fa746a30e26..7895d2c6c1f6c552a7829c6954c4079c0acb89f7 100644 --- a/test/built-ins/Array/prototype/reduce/15.4.4.21-8-b-iii-1-33.js +++ b/test/built-ins/Array/prototype/reduce/15.4.4.21-8-b-iii-1-33.js @@ -6,11 +6,8 @@ es5id: 15.4.4.21-8-b-iii-1-33 description: > Array.prototype.reduce - exception in getter terminates iteration on an Array -includes: [runTestCase.js] ---*/ -function testcase() { - var accessed = false; var testResult = false; function callbackfn(prevVal, curVal, idx, obj) { @@ -28,12 +25,8 @@ function testcase() { }, configurable: true }); - - try { +assert.throws(RangeError, function() { arr.reduce(callbackfn); - return false; - } catch (ex) { - return (ex instanceof RangeError) && !accessed && !testResult; - } - } -runTestCase(testcase); +}); +assert.sameValue(accessed, false, 'accessed'); +assert.sameValue(testResult, false, 'testResult'); diff --git a/test/built-ins/Array/prototype/reduce/15.4.4.21-8-c-1.js b/test/built-ins/Array/prototype/reduce/15.4.4.21-8-c-1.js index ed1114228f34867255a09f211ab534ca1e2a1bd1..4584c5c90ca410545f4ae29ca5c94bfc9099749e 100644 --- a/test/built-ins/Array/prototype/reduce/15.4.4.21-8-c-1.js +++ b/test/built-ins/Array/prototype/reduce/15.4.4.21-8-c-1.js @@ -6,22 +6,13 @@ es5id: 15.4.4.21-8-c-1 description: > Array.prototype.reduce throws TypeError when Array is empty and initialValue is not present -includes: [runTestCase.js] ---*/ -function testcase() { - function callbackfn(prevVal, curVal, idx, obj) { } var arr = new Array(10); - try { +assert.throws(TypeError, function() { arr.reduce(callbackfn); - } - catch(e) { - if(e instanceof TypeError) - return true; - } - } -runTestCase(testcase); +}); diff --git a/test/built-ins/Array/prototype/reduce/15.4.4.21-8-c-2.js b/test/built-ins/Array/prototype/reduce/15.4.4.21-8-c-2.js index 5e71bc183e5e2ef298093978f3ab286ca461feaa..7f7a22647346403737ce639578299977a763cee8 100644 --- a/test/built-ins/Array/prototype/reduce/15.4.4.21-8-c-2.js +++ b/test/built-ins/Array/prototype/reduce/15.4.4.21-8-c-2.js @@ -7,11 +7,8 @@ description: > Array.prototype.reduce throws TypeError when elements assigned values are deleted by reducing array length and initialValue is not present -includes: [runTestCase.js] ---*/ -function testcase() { - function callbackfn(prevVal, curVal, idx, obj) { } @@ -19,12 +16,6 @@ function testcase() { var arr = new Array(10); arr[9] = 1; arr.length = 5; - try { +assert.throws(TypeError, function() { arr.reduce(callbackfn); - } - catch(e) { - if(e instanceof TypeError) - return true; - } - } -runTestCase(testcase); +}); diff --git a/test/built-ins/Array/prototype/reduce/15.4.4.21-8-c-3.js b/test/built-ins/Array/prototype/reduce/15.4.4.21-8-c-3.js index e9cee5f628cc2423f1b88a88edfdd440d7e1eb13..200edf42e7c765dc92488b14fcddaee1a6122946 100644 --- a/test/built-ins/Array/prototype/reduce/15.4.4.21-8-c-3.js +++ b/test/built-ins/Array/prototype/reduce/15.4.4.21-8-c-3.js @@ -6,11 +6,8 @@ es5id: 15.4.4.21-8-c-3 description: > Array.prototype.reduce throws TypeError when elements assigned values are deleted and initialValue is not present -includes: [runTestCase.js] ---*/ -function testcase() { - function callbackfn(prevVal, curVal, idx, obj) { } @@ -21,12 +18,6 @@ function testcase() { delete arr[2]; delete arr[3]; delete arr[4]; - try { +assert.throws(TypeError, function() { arr.reduce(callbackfn); - } - catch(e) { - if(e instanceof TypeError) - return true; - } - } -runTestCase(testcase); +}); diff --git a/test/built-ins/Array/prototype/reduce/15.4.4.21-8-c-5.js b/test/built-ins/Array/prototype/reduce/15.4.4.21-8-c-5.js index 91c8258f8b5d1d9f1dd1358ea59b0f2c6dec0819..159c6eeb2f215a44e0225c48e7e509f8bf7cbf8b 100644 --- a/test/built-ins/Array/prototype/reduce/15.4.4.21-8-c-5.js +++ b/test/built-ins/Array/prototype/reduce/15.4.4.21-8-c-5.js @@ -6,11 +6,8 @@ es5id: 15.4.4.21-8-c-5 description: > Array.prototype.reduce - if exception occurs, it occurs after any side-effects that might be produced by step 2 -includes: [runTestCase.js] ---*/ -function testcase() { - var obj = { }; var accessed = false; @@ -22,12 +19,7 @@ function testcase() { }, configurable: true }); - - try { +assert.throws(TypeError, function() { Array.prototype.reduce.call(obj, function () { }); - return false; - } catch (ex) { - return (ex instanceof TypeError) && accessed; - } - } -runTestCase(testcase); +}); +assert(accessed, 'accessed !== true'); diff --git a/test/built-ins/Array/prototype/reduce/15.4.4.21-8-c-6.js b/test/built-ins/Array/prototype/reduce/15.4.4.21-8-c-6.js index 1d2a6bc3a098a532e00d6cf510c7c14c715e9b8d..428ef5a9dd84d16d06fbc7462d84d8cd5ce48364 100644 --- a/test/built-ins/Array/prototype/reduce/15.4.4.21-8-c-6.js +++ b/test/built-ins/Array/prototype/reduce/15.4.4.21-8-c-6.js @@ -6,11 +6,8 @@ es5id: 15.4.4.21-8-c-6 description: > Array.prototype.reduce - if exception occurs, it occurs after any side-effects that might be produced by step 3 -includes: [runTestCase.js] ---*/ -function testcase() { - var obj = {}; var accessed = false; @@ -26,12 +23,7 @@ function testcase() { }, configurable: true }); - - try { +assert.throws(TypeError, function() { Array.prototype.reduce.call(obj, function () { }); - return false; - } catch (ex) { - return (ex instanceof TypeError) && accessed; - } - } -runTestCase(testcase); +}); +assert(accessed, 'accessed !== true'); diff --git a/test/built-ins/Array/prototype/reduce/15.4.4.21-9-c-i-32.js b/test/built-ins/Array/prototype/reduce/15.4.4.21-9-c-i-32.js index 3fd275289ab6d0216004d206ba5e29ab008f5183..64efa4e1a210ec4d7371d70ba374a8d18dd000f8 100644 --- a/test/built-ins/Array/prototype/reduce/15.4.4.21-9-c-i-32.js +++ b/test/built-ins/Array/prototype/reduce/15.4.4.21-9-c-i-32.js @@ -6,11 +6,8 @@ es5id: 15.4.4.21-9-c-i-32 description: > Array.prototype.reduce - unnhandled exceptions happened in getter terminate iteration on an Array-like object -includes: [runTestCase.js] ---*/ -function testcase() { - var accessed = false; var testResult = false; var initialValue = 0; @@ -28,12 +25,8 @@ function testcase() { }, configurable: true }); - - try { +assert.throws(RangeError, function() { Array.prototype.reduce.call(obj, callbackfn, initialValue); - return false; - } catch (ex) { - return (ex instanceof RangeError) && !accessed && !testResult; - } - } -runTestCase(testcase); +}); +assert.sameValue(accessed, false, 'accessed'); +assert.sameValue(testResult, false, 'testResult'); diff --git a/test/built-ins/Array/prototype/reduce/15.4.4.21-9-c-i-33.js b/test/built-ins/Array/prototype/reduce/15.4.4.21-9-c-i-33.js index f6e29e85ec5e7eac591f2c61e8138fd19a14b5b0..8fe9d99a49ebada60ea0a66b65431129444a2891 100644 --- a/test/built-ins/Array/prototype/reduce/15.4.4.21-9-c-i-33.js +++ b/test/built-ins/Array/prototype/reduce/15.4.4.21-9-c-i-33.js @@ -6,11 +6,8 @@ es5id: 15.4.4.21-9-c-i-33 description: > Array.prototype.reduce - unnhandled exceptions happened in getter terminate iteration on an Array -includes: [runTestCase.js] ---*/ -function testcase() { - var accessed = false; var testResult = false; var initialValue = 0; @@ -29,12 +26,8 @@ function testcase() { }, configurable: true }); - - try { +assert.throws(RangeError, function() { arr.reduce(callbackfn, initialValue); - return false; - } catch (ex) { - return (ex instanceof RangeError) && !accessed && !testResult; - } - } -runTestCase(testcase); +}); +assert.sameValue(accessed, false, 'accessed'); +assert.sameValue(testResult, false, 'testResult'); diff --git a/test/built-ins/Array/prototype/reduce/15.4.4.21-9-c-ii-7.js b/test/built-ins/Array/prototype/reduce/15.4.4.21-9-c-ii-7.js index 41b136b6f847988ce9db5bd7b357eb0ab11acd94..1fb2015bb9030e60a9b1534fce38d3acff2e1a82 100644 --- a/test/built-ins/Array/prototype/reduce/15.4.4.21-9-c-ii-7.js +++ b/test/built-ins/Array/prototype/reduce/15.4.4.21-9-c-ii-7.js @@ -6,11 +6,8 @@ es5id: 15.4.4.21-9-c-ii-7 description: > Array.prototype.reduce - unhandled exceptions happened in callbackfn terminate iteration -includes: [runTestCase.js] ---*/ -function testcase() { - var accessed = false; function callbackfn(prevVal, curVal, idx, obj) { @@ -23,12 +20,7 @@ function testcase() { } var obj = { 0: 11, 4: 10, 10: 8, length: 20 }; - - try { +assert.throws(Error, function() { Array.prototype.reduce.call(obj, callbackfn, 1); - return false; - } catch (ex) { - return (ex instanceof Error) && !accessed; - } - } -runTestCase(testcase); +}); +assert.sameValue(accessed, false, 'accessed'); diff --git a/test/built-ins/Array/prototype/reduceRight/15.4.4.22-1-1.js b/test/built-ins/Array/prototype/reduceRight/15.4.4.22-1-1.js index da9fe53abf932cb842cf47e31fd4b09d9abe9242..d1758340ce56a0e2b85af27c71987366ffd503ba 100644 --- a/test/built-ins/Array/prototype/reduceRight/15.4.4.22-1-1.js +++ b/test/built-ins/Array/prototype/reduceRight/15.4.4.22-1-1.js @@ -4,15 +4,9 @@ /*--- es5id: 15.4.4.22-1-1 description: Array.prototype.reduceRight applied to undefined throws a TypeError -includes: [runTestCase.js] ---*/ -function testcase() { - try { - Array.prototype.reduceRight.call(undefined); - return false; - } catch (e) { - return (e instanceof TypeError); - } - } -runTestCase(testcase); + +assert.throws(TypeError, function() { + Array.prototype.reduceRight.call(undefined); +}); diff --git a/test/built-ins/Array/prototype/reduceRight/15.4.4.22-1-2.js b/test/built-ins/Array/prototype/reduceRight/15.4.4.22-1-2.js index 7ab29703b2187f69115182f4abf9c2b24f13eed8..dc4b68dc02adae7e34dc3c1286c20052c0f14b4a 100644 --- a/test/built-ins/Array/prototype/reduceRight/15.4.4.22-1-2.js +++ b/test/built-ins/Array/prototype/reduceRight/15.4.4.22-1-2.js @@ -4,15 +4,9 @@ /*--- es5id: 15.4.4.22-1-2 description: Array.prototype.reduceRight applied to null throws a TypeError -includes: [runTestCase.js] ---*/ -function testcase() { - try { + +assert.throws(TypeError, function() { Array.prototype.reduceRight.call(null); - return false; - } catch (e) { - return (e instanceof TypeError); - } - } -runTestCase(testcase); +}); diff --git a/test/built-ins/Array/prototype/reduceRight/15.4.4.22-3-22.js b/test/built-ins/Array/prototype/reduceRight/15.4.4.22-3-22.js index 90da420a017bff4e33c9774e0b9e4d9cf69f6f7d..099ba3179f8bd90d7f73631a7d5e523f9de33df8 100644 --- a/test/built-ins/Array/prototype/reduceRight/15.4.4.22-3-22.js +++ b/test/built-ins/Array/prototype/reduceRight/15.4.4.22-3-22.js @@ -7,11 +7,8 @@ description: > Array.prototype.reduceRight throws TypeError exception when 'length' is an object with toString and valueOf methods that don�t return primitive values -includes: [runTestCase.js] ---*/ -function testcase() { - var accessed = false; var toStringAccessed = false; var valueOfAccessed = false; @@ -35,12 +32,9 @@ function testcase() { } } }; - - try { +assert.throws(TypeError, function() { Array.prototype.reduceRight.call(obj, callbackfn, 1); - return false; - } catch (ex) { - return (ex instanceof TypeError) && toStringAccessed && valueOfAccessed && !accessed; - } - } -runTestCase(testcase); +}); +assert(toStringAccessed, 'toStringAccessed !== true'); +assert(valueOfAccessed, 'valueOfAccessed !== true'); +assert.sameValue(accessed, false, 'accessed'); diff --git a/test/built-ins/Array/prototype/reduceRight/15.4.4.22-4-1.js b/test/built-ins/Array/prototype/reduceRight/15.4.4.22-4-1.js index 19549a18b27a6ea2e8ff368b75790f3eb3af5e7b..24c12f6b25ef82e88f16c8975e9168628d7c9252 100644 --- a/test/built-ins/Array/prototype/reduceRight/15.4.4.22-4-1.js +++ b/test/built-ins/Array/prototype/reduceRight/15.4.4.22-4-1.js @@ -6,19 +6,9 @@ es5id: 15.4.4.22-4-1 description: > Array.prototype.reduceRight throws TypeError if callbackfn is undefined -includes: [runTestCase.js] ---*/ -function testcase() { - var arr = new Array(10); - try { - arr.reduceRight(); - } - catch(e) { - if(e instanceof TypeError) - return true; - } - - } -runTestCase(testcase); +assert.throws(TypeError, function() { + arr.reduceRight(); +}); diff --git a/test/built-ins/Array/prototype/reduceRight/15.4.4.22-4-15.js b/test/built-ins/Array/prototype/reduceRight/15.4.4.22-4-15.js index ca9408b6566d86d94e0ff111fea082879670ed82..8b1d2258e3f29d2230b0a1bd3c7d971361fe615d 100644 --- a/test/built-ins/Array/prototype/reduceRight/15.4.4.22-4-15.js +++ b/test/built-ins/Array/prototype/reduceRight/15.4.4.22-4-15.js @@ -6,10 +6,8 @@ es5id: 15.4.4.22-4-15 description: > Array.prototype.reduceRight - calling with no callbackfn is the same as passing undefined for callbackfn -includes: [runTestCase.js] ---*/ -function testcase() { var obj = { 10: 10 }; var lengthAccessed = false; var loopAccessed = false; @@ -28,12 +26,8 @@ function testcase() { }, configurable: true }); - - try { +assert.throws(TypeError, function() { Array.prototype.reduceRight.call(obj, undefined); - return false; - } catch (ex) { - return (ex instanceof TypeError) && lengthAccessed && !loopAccessed; - } - } -runTestCase(testcase); +}); +assert(lengthAccessed, 'lengthAccessed !== true'); +assert.sameValue(loopAccessed, false, 'loopAccessed'); diff --git a/test/built-ins/Array/prototype/reduceRight/15.4.4.22-4-2.js b/test/built-ins/Array/prototype/reduceRight/15.4.4.22-4-2.js index 1df28dfc2560c0a58a5ae5e04bb20bbcdfafe00f..122b79f2feeb9ae90c364f816564f163948f175a 100644 --- a/test/built-ins/Array/prototype/reduceRight/15.4.4.22-4-2.js +++ b/test/built-ins/Array/prototype/reduceRight/15.4.4.22-4-2.js @@ -6,19 +6,9 @@ es5id: 15.4.4.22-4-2 description: > Array.prototype.reduceRight throws ReferenceError if callbackfn is unreferenced -includes: [runTestCase.js] ---*/ -function testcase() { - var arr = new Array(10); - try { - arr.reduceRight(foo); - } - catch(e) { - if(e instanceof ReferenceError) - return true; - } - - } -runTestCase(testcase); +assert.throws(ReferenceError, function() { + arr.reduceRight(foo); +}); diff --git a/test/built-ins/Array/prototype/reduceRight/15.4.4.22-4-3.js b/test/built-ins/Array/prototype/reduceRight/15.4.4.22-4-3.js index dbc1b245f1f1daa9d386b972a770d3f158c4bc00..fc052eeff2d394ef3b68c57dd054559574065fab 100644 --- a/test/built-ins/Array/prototype/reduceRight/15.4.4.22-4-3.js +++ b/test/built-ins/Array/prototype/reduceRight/15.4.4.22-4-3.js @@ -4,19 +4,9 @@ /*--- es5id: 15.4.4.22-4-3 description: Array.prototype.reduceRight throws TypeError if callbackfn is null -includes: [runTestCase.js] ---*/ -function testcase() { - var arr = new Array(10); - try { - arr.reduceRight(null); - } - catch(e) { - if(e instanceof TypeError) - return true; - } - - } -runTestCase(testcase); +assert.throws(TypeError, function() { + arr.reduceRight(null); +}); diff --git a/test/built-ins/Array/prototype/reduceRight/15.4.4.22-4-4.js b/test/built-ins/Array/prototype/reduceRight/15.4.4.22-4-4.js index bce7673863509bbacf00ef0fb3c1739f20572cfc..400b1818bbb64d9c444991937000409b5642fab1 100644 --- a/test/built-ins/Array/prototype/reduceRight/15.4.4.22-4-4.js +++ b/test/built-ins/Array/prototype/reduceRight/15.4.4.22-4-4.js @@ -6,19 +6,9 @@ es5id: 15.4.4.22-4-4 description: > Array.prototype.reduceRight throws TypeError if callbackfn is boolean -includes: [runTestCase.js] ---*/ -function testcase() { - var arr = new Array(10); - try { - arr.reduceRight(true); - } - catch(e) { - if(e instanceof TypeError) - return true; - } - - } -runTestCase(testcase); +assert.throws(TypeError, function() { + arr.reduceRight(true); +}); diff --git a/test/built-ins/Array/prototype/reduceRight/15.4.4.22-4-5.js b/test/built-ins/Array/prototype/reduceRight/15.4.4.22-4-5.js index 98b3424c6c76ed104cba1a889eb1f4dda6fd1677..faef31545059068e27c46e145f1260bbb175eb48 100644 --- a/test/built-ins/Array/prototype/reduceRight/15.4.4.22-4-5.js +++ b/test/built-ins/Array/prototype/reduceRight/15.4.4.22-4-5.js @@ -6,19 +6,9 @@ es5id: 15.4.4.22-4-5 description: > Array.prototype.reduceRight throws TypeError if callbackfn is number -includes: [runTestCase.js] ---*/ -function testcase() { - var arr = new Array(10); - try { - arr.reduceRight(5); - } - catch(e) { - if(e instanceof TypeError) - return true; - } - - } -runTestCase(testcase); +assert.throws(TypeError, function() { + arr.reduceRight(5); +}); diff --git a/test/built-ins/Array/prototype/reduceRight/15.4.4.22-4-6.js b/test/built-ins/Array/prototype/reduceRight/15.4.4.22-4-6.js index e84b73a338ef041e23b129bfaaec3bcf9e0b2644..47db3f93c12aad1b95556e4974622e104a053abe 100644 --- a/test/built-ins/Array/prototype/reduceRight/15.4.4.22-4-6.js +++ b/test/built-ins/Array/prototype/reduceRight/15.4.4.22-4-6.js @@ -6,19 +6,9 @@ es5id: 15.4.4.22-4-6 description: > Array.prototype.reduceRight throws TypeError if callbackfn is string -includes: [runTestCase.js] ---*/ -function testcase() { - var arr = new Array(10); - try { - arr.reduceRight("abc"); - } - catch(e) { - if(e instanceof TypeError) - return true; - } - - } -runTestCase(testcase); +assert.throws(TypeError, function() { + arr.reduceRight("abc"); +}); diff --git a/test/built-ins/Array/prototype/reduceRight/15.4.4.22-4-7.js b/test/built-ins/Array/prototype/reduceRight/15.4.4.22-4-7.js index 9d50aec4f3845abf3477ce5c51572e0b9dbc4daf..20e82d8e3148d313578b559eda19f3c77c46c2d3 100644 --- a/test/built-ins/Array/prototype/reduceRight/15.4.4.22-4-7.js +++ b/test/built-ins/Array/prototype/reduceRight/15.4.4.22-4-7.js @@ -6,19 +6,9 @@ es5id: 15.4.4.22-4-7 description: > Array.prototype.reduceRight throws TypeError if callbackfn is Object without [[Call]] internal method -includes: [runTestCase.js] ---*/ -function testcase() { - var arr = new Array(10); - try { - arr.reduceRight(new Object()); - } - catch(e) { - if(e instanceof TypeError) - return true; - } - - } -runTestCase(testcase); +assert.throws(TypeError, function() { + arr.reduceRight(new Object()); +}); diff --git a/test/built-ins/Array/prototype/reduceRight/15.4.4.22-4-8.js b/test/built-ins/Array/prototype/reduceRight/15.4.4.22-4-8.js index 91998eb295ed779e9c27b95c041553dd4c2fc735..f75b594b7ee7d0ce85da4f5ae790aec261f44d8e 100644 --- a/test/built-ins/Array/prototype/reduceRight/15.4.4.22-4-8.js +++ b/test/built-ins/Array/prototype/reduceRight/15.4.4.22-4-8.js @@ -6,11 +6,8 @@ es5id: 15.4.4.22-4-8 description: > Array.prototype.reduceRight - side effects produced by step 2 are visible when an exception occurs -includes: [runTestCase.js] ---*/ -function testcase() { - var obj = { 0: 11, 1: 12 }; var accessed = false; @@ -22,12 +19,7 @@ function testcase() { }, configurable: true }); - - try { +assert.throws(TypeError, function() { Array.prototype.reduceRight.call(obj, null); - return false; - } catch (ex) { - return ex instanceof TypeError && accessed; - } - } -runTestCase(testcase); +}); +assert(accessed, 'accessed !== true'); diff --git a/test/built-ins/Array/prototype/reduceRight/15.4.4.22-4-9.js b/test/built-ins/Array/prototype/reduceRight/15.4.4.22-4-9.js index 61dd66012b0362445aa936369c082836c74e3065..888955880c81f65e40f04a5f486801661bfa8a07 100644 --- a/test/built-ins/Array/prototype/reduceRight/15.4.4.22-4-9.js +++ b/test/built-ins/Array/prototype/reduceRight/15.4.4.22-4-9.js @@ -6,11 +6,8 @@ es5id: 15.4.4.22-4-9 description: > Array.prototype.reduceRight - side effects produced by step 3 are visible when an exception occurs -includes: [runTestCase.js] ---*/ -function testcase() { - var obj = { 0: 11, 1: 12 }; var accessed = false; @@ -26,12 +23,7 @@ function testcase() { }, configurable: true }); - - try { +assert.throws(TypeError, function() { Array.prototype.reduceRight.call(obj, null); - return false; - } catch (ex) { - return ex instanceof TypeError && accessed; - } - } -runTestCase(testcase); +}); +assert(accessed, 'accessed !== true'); diff --git a/test/built-ins/Array/prototype/reduceRight/15.4.4.22-5-1.js b/test/built-ins/Array/prototype/reduceRight/15.4.4.22-5-1.js index 0a780ca053e4523ad53eb52d257e9008da0d6a26..ca0e2cb24db4803cfb0301df41780299a309b19b 100644 --- a/test/built-ins/Array/prototype/reduceRight/15.4.4.22-5-1.js +++ b/test/built-ins/Array/prototype/reduceRight/15.4.4.22-5-1.js @@ -6,19 +6,9 @@ es5id: 15.4.4.22-5-1 description: > Array.prototype.reduceRight throws TypeError if 'length' is 0 (empty array), no initVal -includes: [runTestCase.js] ---*/ -function testcase() { function cb(){} - - try { +assert.throws(TypeError, function() { [].reduceRight(cb); - } - catch (e) { - if (e instanceof TypeError) { - return true; - } - } - } -runTestCase(testcase); +}); diff --git a/test/built-ins/Array/prototype/reduceRight/15.4.4.22-5-10.js b/test/built-ins/Array/prototype/reduceRight/15.4.4.22-5-10.js index 16796f441c2343c8934f4ef7033865967aa77e98..a82ade379b356dd7dc40911c7f902cb0189a665d 100644 --- a/test/built-ins/Array/prototype/reduceRight/15.4.4.22-5-10.js +++ b/test/built-ins/Array/prototype/reduceRight/15.4.4.22-5-10.js @@ -6,11 +6,8 @@ es5id: 15.4.4.22-5-10 description: > Array.prototype.reduceRight - side-effects produced by step 2 when an exception occurs -includes: [runTestCase.js] ---*/ -function testcase() { - var obj = { 0: 11, 1: 12 }; var accessed = false; @@ -22,12 +19,7 @@ function testcase() { }, configurable: true }); - - try { +assert.throws(TypeError, function() { Array.prototype.reduceRight.call(obj, function () { }); - return false; - } catch (ex) { - return (ex instanceof TypeError) && accessed; - } - } -runTestCase(testcase); +}); +assert(accessed, 'accessed !== true'); diff --git a/test/built-ins/Array/prototype/reduceRight/15.4.4.22-5-11.js b/test/built-ins/Array/prototype/reduceRight/15.4.4.22-5-11.js index 6f02fd445cb5a62743e8837fede983bbed81cbcd..14c8e99a0fbac6d4bd369bedb2b056c58f75d08f 100644 --- a/test/built-ins/Array/prototype/reduceRight/15.4.4.22-5-11.js +++ b/test/built-ins/Array/prototype/reduceRight/15.4.4.22-5-11.js @@ -6,11 +6,8 @@ es5id: 15.4.4.22-5-11 description: > Array.prototype.reduceRight - side-effects produced by step 3 when an exception occurs -includes: [runTestCase.js] ---*/ -function testcase() { - var obj = { 0: 11, 1: 12 }; var accessed = false; @@ -26,12 +23,7 @@ function testcase() { }, configurable: true }); - - try { +assert.throws(TypeError, function() { Array.prototype.reduceRight.call(obj, function () { }); - return false; - } catch (ex) { - return (ex instanceof TypeError) && accessed; - } - } -runTestCase(testcase); +}); +assert(accessed, 'accessed !== true'); diff --git a/test/built-ins/Array/prototype/reduceRight/15.4.4.22-5-2.js b/test/built-ins/Array/prototype/reduceRight/15.4.4.22-5-2.js index ba4e1a403fcaa4f4507e0d110bfbdf5f5fd9e989..b930b7a4c0f712f09e3393efecdc0b5491054ba6 100644 --- a/test/built-ins/Array/prototype/reduceRight/15.4.4.22-5-2.js +++ b/test/built-ins/Array/prototype/reduceRight/15.4.4.22-5-2.js @@ -7,23 +7,14 @@ description: > Array.prototype.reduceRight throws TypeError if 'length' is 0 (subclassed Array, length overridden to null (type conversion)), no initVal -includes: [runTestCase.js] ---*/ -function testcase() { foo.prototype = new Array(1, 2, 3); function foo() {} var f = new foo(); f.length = null; function cb(){} - try { +assert.throws(TypeError, function() { f.reduceRight(cb); - } - catch (e) { - if (e instanceof TypeError) { - return true; - } - } - } -runTestCase(testcase); +}); diff --git a/test/built-ins/Array/prototype/reduceRight/15.4.4.22-5-3.js b/test/built-ins/Array/prototype/reduceRight/15.4.4.22-5-3.js index b80ff5dc72f76f22643172e5e970a0e37f8704bd..c04b1ae4f4bc7817ea7c062e5c338d41b33bf87d 100644 --- a/test/built-ins/Array/prototype/reduceRight/15.4.4.22-5-3.js +++ b/test/built-ins/Array/prototype/reduceRight/15.4.4.22-5-3.js @@ -7,23 +7,14 @@ description: > Array.prototype.reduceRight throws TypeError if 'length' is 0 (subclassed Array, length overridden to false (type conversion)), no initVal -includes: [runTestCase.js] ---*/ -function testcase() { foo.prototype = new Array(1, 2, 3); function foo() {} var f = new foo(); f.length = false; function cb(){} - try { +assert.throws(TypeError, function() { f.reduceRight(cb); - } - catch (e) { - if (e instanceof TypeError) { - return true; - } - } - } -runTestCase(testcase); +}); diff --git a/test/built-ins/Array/prototype/reduceRight/15.4.4.22-5-4.js b/test/built-ins/Array/prototype/reduceRight/15.4.4.22-5-4.js index 444232ec5dece33dbcefe04cff42058bf2fcbdb8..1f9553b7a6494ffecc63c9b20f78e7f216cb4c9c 100644 --- a/test/built-ins/Array/prototype/reduceRight/15.4.4.22-5-4.js +++ b/test/built-ins/Array/prototype/reduceRight/15.4.4.22-5-4.js @@ -7,23 +7,14 @@ description: > Array.prototype.reduceRight throws TypeError if 'length' is 0 (subclassed Array, length overridden to 0 (type conversion)), no initVal -includes: [runTestCase.js] ---*/ -function testcase() { foo.prototype = new Array(1, 2, 3); function foo() {} var f = new foo(); f.length = 0; function cb(){} - try { +assert.throws(TypeError, function() { f.reduceRight(cb); - } - catch (e) { - if (e instanceof TypeError) { - return true; - } - } - } -runTestCase(testcase); +}); diff --git a/test/built-ins/Array/prototype/reduceRight/15.4.4.22-5-5.js b/test/built-ins/Array/prototype/reduceRight/15.4.4.22-5-5.js index 72f23a1d18ffd1f2da3a9efa57db060d68af6fb6..d0e54cdb75e48ea9926687f9e43d6526a0697561 100644 --- a/test/built-ins/Array/prototype/reduceRight/15.4.4.22-5-5.js +++ b/test/built-ins/Array/prototype/reduceRight/15.4.4.22-5-5.js @@ -7,23 +7,14 @@ description: > Array.prototype.reduceRight throws TypeError if 'length' is 0 (subclassed Array, length overridden to '0' (type conversion)), no initVal -includes: [runTestCase.js] ---*/ -function testcase() { foo.prototype = new Array(1, 2, 3); function foo() {} var f = new foo(); f.length = '0'; function cb(){} - try { +assert.throws(TypeError, function() { f.reduceRight(cb); - } - catch (e) { - if (e instanceof TypeError) { - return true; - } - } - } -runTestCase(testcase); +}); diff --git a/test/built-ins/Array/prototype/reduceRight/15.4.4.22-5-6.js b/test/built-ins/Array/prototype/reduceRight/15.4.4.22-5-6.js index 632c94811ebbfec8e4251ac18fd7f5ffdf5add93..d4a6221a26422d965e8261d685e0e954ce7c52c1 100644 --- a/test/built-ins/Array/prototype/reduceRight/15.4.4.22-5-6.js +++ b/test/built-ins/Array/prototype/reduceRight/15.4.4.22-5-6.js @@ -7,10 +7,8 @@ description: > Array.prototype.reduceRight throws TypeError if 'length' is 0 (subclassed Array, length overridden with obj with valueOf), no initVal -includes: [runTestCase.js] ---*/ -function testcase() { foo.prototype = new Array(1, 2, 3); function foo() {} var f = new foo(); @@ -19,13 +17,6 @@ function testcase() { f.length = o; function cb(){} - try { +assert.throws(TypeError, function() { f.reduceRight(cb); - } - catch (e) { - if (e instanceof TypeError) { - return true; - } - } - } -runTestCase(testcase); +}); diff --git a/test/built-ins/Array/prototype/reduceRight/15.4.4.22-5-7.js b/test/built-ins/Array/prototype/reduceRight/15.4.4.22-5-7.js index 3a386138572658c8f99bd32f1a13ea8538b8ba6b..e9a8a2a2435a9a01212e92b3e90c7aeb55ed1801 100644 --- a/test/built-ins/Array/prototype/reduceRight/15.4.4.22-5-7.js +++ b/test/built-ins/Array/prototype/reduceRight/15.4.4.22-5-7.js @@ -7,10 +7,8 @@ description: > Array.prototype.reduceRight throws TypeError if 'length' is 0 (subclassed Array, length overridden with obj w/o valueOf (toString)), no initVal -includes: [runTestCase.js] ---*/ -function testcase() { foo.prototype = new Array(1, 2, 3); function foo() {} var f = new foo(); @@ -25,13 +23,6 @@ function testcase() { // resulting string to a number. function cb(){} - try { +assert.throws(TypeError, function() { f.reduceRight(cb); - } - catch (e) { - if (e instanceof TypeError) { - return true; - } - } - } -runTestCase(testcase); +}); diff --git a/test/built-ins/Array/prototype/reduceRight/15.4.4.22-5-8.js b/test/built-ins/Array/prototype/reduceRight/15.4.4.22-5-8.js index 63788afc0f7a69e6cddcce87bb519619876a84f0..425a7c6a61bba15b254e95394c349d2eaee5b6be 100644 --- a/test/built-ins/Array/prototype/reduceRight/15.4.4.22-5-8.js +++ b/test/built-ins/Array/prototype/reduceRight/15.4.4.22-5-8.js @@ -6,10 +6,8 @@ es5id: 15.4.4.22-5-8 description: > Array.prototype.reduceRight throws TypeError if 'length' is 0 (subclassed Array, length overridden with []), no initVal -includes: [runTestCase.js] ---*/ -function testcase() { foo.prototype = new Array(1, 2, 3); function foo() {} var f = new foo(); @@ -31,13 +29,6 @@ function testcase() { // or if its one element is not a number, the array converts to NaN. function cb(){} - try { +assert.throws(TypeError, function() { f.reduceRight(cb); - } - catch (e) { - if (e instanceof TypeError) { - return true; - } - } - } -runTestCase(testcase); +}); diff --git a/test/built-ins/Array/prototype/reduceRight/15.4.4.22-8-b-iii-1-32.js b/test/built-ins/Array/prototype/reduceRight/15.4.4.22-8-b-iii-1-32.js index 950fba740f4030e3504187495e255232387d25aa..3c359614c0e680bd6fb01522f9a772fc3a6c413b 100644 --- a/test/built-ins/Array/prototype/reduceRight/15.4.4.22-8-b-iii-1-32.js +++ b/test/built-ins/Array/prototype/reduceRight/15.4.4.22-8-b-iii-1-32.js @@ -6,11 +6,8 @@ es5id: 15.4.4.22-8-b-iii-1-32 description: > Array.prototype.reduceRight - Exception in getter terminate iteration on an Array-like object -includes: [runTestCase.js] ---*/ -function testcase() { - var accessed = false; function callbackfn(prevVal, curVal, idx, obj) { if (idx <= 1) { @@ -25,12 +22,7 @@ function testcase() { }, configurable: true }); - - try { +assert.throws(RangeError, function() { Array.prototype.reduceRight.call(obj, callbackfn); - return false; - } catch (ex) { - return (ex instanceof RangeError) && !accessed; - } - } -runTestCase(testcase); +}); +assert.sameValue(accessed, false, 'accessed'); diff --git a/test/built-ins/Array/prototype/reduceRight/15.4.4.22-8-b-iii-1-33.js b/test/built-ins/Array/prototype/reduceRight/15.4.4.22-8-b-iii-1-33.js index 43ed6583d3d3a4edd7629d6d0341fc8ee89d941b..1ed58b73fc4ea4f3b19d7d0ac1914b0b6bae188d 100644 --- a/test/built-ins/Array/prototype/reduceRight/15.4.4.22-8-b-iii-1-33.js +++ b/test/built-ins/Array/prototype/reduceRight/15.4.4.22-8-b-iii-1-33.js @@ -6,11 +6,8 @@ es5id: 15.4.4.22-8-b-iii-1-33 description: > Array.prototype.reduceRight - Exception in getter terminate iteration on an Array -includes: [runTestCase.js] ---*/ -function testcase() { - var accessed = false; function callbackfn(prevVal, curVal, idx, obj) { if (idx <= 1) { @@ -26,12 +23,7 @@ function testcase() { }, configurable: true }); - - try { +assert.throws(RangeError, function() { arr.reduceRight(callbackfn); - return false; - } catch (ex) { - return (ex instanceof RangeError) && !accessed; - } - } -runTestCase(testcase); +}); +assert.sameValue(accessed, false, 'accessed'); diff --git a/test/built-ins/Array/prototype/reduceRight/15.4.4.22-8-c-1.js b/test/built-ins/Array/prototype/reduceRight/15.4.4.22-8-c-1.js index 59f95a6c408693b2b9a6b357627fb6dee3efc94f..c13b610d77e5af548370587b8da56fd572fd3c33 100644 --- a/test/built-ins/Array/prototype/reduceRight/15.4.4.22-8-c-1.js +++ b/test/built-ins/Array/prototype/reduceRight/15.4.4.22-8-c-1.js @@ -6,22 +6,13 @@ es5id: 15.4.4.22-8-c-1 description: > Array.prototype.reduceRight throws TypeError when Array is empty and initialValue is not present -includes: [runTestCase.js] ---*/ -function testcase() { - function callbackfn(prevVal, curVal, idx, obj) { } var arr = new Array(10); - try { +assert.throws(TypeError, function() { arr.reduceRight(callbackfn); - } - catch(e) { - if(e instanceof TypeError) - return true; - } - } -runTestCase(testcase); +}); diff --git a/test/built-ins/Array/prototype/reduceRight/15.4.4.22-8-c-2.js b/test/built-ins/Array/prototype/reduceRight/15.4.4.22-8-c-2.js index eb6917ccde265f3e2db952f0ebe17b7336a412d0..8863b6b38dddbc992285ca4bbf00860fee71976c 100644 --- a/test/built-ins/Array/prototype/reduceRight/15.4.4.22-8-c-2.js +++ b/test/built-ins/Array/prototype/reduceRight/15.4.4.22-8-c-2.js @@ -7,11 +7,8 @@ description: > Array.prototype.reduceRight throws TypeError when elements assigned values are deleted by reducign array length and initialValue is not present -includes: [runTestCase.js] ---*/ -function testcase() { - function callbackfn(prevVal, curVal, idx, obj) { } @@ -19,12 +16,6 @@ function testcase() { var arr = new Array(10); arr[9] = 1; arr.length = 5; - try { +assert.throws(TypeError, function() { arr.reduceRight(callbackfn); - } - catch(e) { - if(e instanceof TypeError) - return true; - } - } -runTestCase(testcase); +}); diff --git a/test/built-ins/Array/prototype/reduceRight/15.4.4.22-8-c-3.js b/test/built-ins/Array/prototype/reduceRight/15.4.4.22-8-c-3.js index efe0973272484c312bb334b8158d1adb3a11fc00..96d73e6002e2b6d565d46181ff5598fe3968ec0d 100644 --- a/test/built-ins/Array/prototype/reduceRight/15.4.4.22-8-c-3.js +++ b/test/built-ins/Array/prototype/reduceRight/15.4.4.22-8-c-3.js @@ -6,11 +6,8 @@ es5id: 15.4.4.22-8-c-3 description: > Array.prototype.reduceRight throws TypeError when elements assigned values are deleted and initialValue is not present -includes: [runTestCase.js] ---*/ -function testcase() { - function callbackfn(prevVal, curVal, idx, obj) { } @@ -21,12 +18,6 @@ function testcase() { delete arr[2]; delete arr[3]; delete arr[4]; - try { +assert.throws(TypeError, function() { arr.reduceRight(callbackfn); - } - catch(e) { - if(e instanceof TypeError) - return true; - } - } -runTestCase(testcase); +}); diff --git a/test/built-ins/Array/prototype/reduceRight/15.4.4.22-8-c-5.js b/test/built-ins/Array/prototype/reduceRight/15.4.4.22-8-c-5.js index 43f3b465f76dda91589f0eb46ddd880b9d5546fd..e59c25c52f879cc8a16a7e6fc67b0488025b9f60 100644 --- a/test/built-ins/Array/prototype/reduceRight/15.4.4.22-8-c-5.js +++ b/test/built-ins/Array/prototype/reduceRight/15.4.4.22-8-c-5.js @@ -6,11 +6,8 @@ es5id: 15.4.4.22-8-c-5 description: > Array.prototype.reduceRight - side effects produced by step 2 are visible when an exception occurs -includes: [runTestCase.js] ---*/ -function testcase() { - var obj = { }; var accessed = false; @@ -22,12 +19,7 @@ function testcase() { }, configurable: true }); - - try { +assert.throws(TypeError, function() { Array.prototype.reduceRight.call(obj, function () { }); - return false; - } catch (ex) { - return (ex instanceof TypeError) && accessed; - } - } -runTestCase(testcase); +}); +assert(accessed, 'accessed !== true'); diff --git a/test/built-ins/Array/prototype/reduceRight/15.4.4.22-8-c-6.js b/test/built-ins/Array/prototype/reduceRight/15.4.4.22-8-c-6.js index 459118f3c53b79f173a67f5b9db72998d8026b99..7dce7319b7dc6d2d092c3f28b745dfb8b851fa49 100644 --- a/test/built-ins/Array/prototype/reduceRight/15.4.4.22-8-c-6.js +++ b/test/built-ins/Array/prototype/reduceRight/15.4.4.22-8-c-6.js @@ -6,11 +6,8 @@ es5id: 15.4.4.22-8-c-6 description: > Array.prototype.reduceRight - side effects produced by step 3 are visible when an exception occurs -includes: [runTestCase.js] ---*/ -function testcase() { - var obj = {}; var accessed = false; @@ -26,12 +23,7 @@ function testcase() { }, configurable: true }); - - try { +assert.throws(TypeError, function() { Array.prototype.reduceRight.call(obj, function () { }); - return false; - } catch (ex) { - return (ex instanceof TypeError) && accessed; - } - } -runTestCase(testcase); +}); +assert(accessed, 'accessed !== true'); diff --git a/test/built-ins/Array/prototype/reduceRight/15.4.4.22-9-c-i-32.js b/test/built-ins/Array/prototype/reduceRight/15.4.4.22-9-c-i-32.js index dc514733768454d37d7d959c0d2138aae0d20c27..415294f82058ba60650dcb56a55bbc917e963b30 100644 --- a/test/built-ins/Array/prototype/reduceRight/15.4.4.22-9-c-i-32.js +++ b/test/built-ins/Array/prototype/reduceRight/15.4.4.22-9-c-i-32.js @@ -6,11 +6,8 @@ es5id: 15.4.4.22-9-c-i-32 description: > Array.prototype.reduceRight - unnhandled exceptions happened in getter terminate iteration on an Array-like object -includes: [runTestCase.js] ---*/ -function testcase() { - var accessed = false; function callbackfn(prevVal, curVal, idx, obj) { if (idx <= 1) { @@ -26,12 +23,7 @@ function testcase() { }, configurable: true }); - - try { +assert.throws(RangeError, function() { Array.prototype.reduceRight.call(obj, callbackfn, "initialValue"); - return false; - } catch (ex) { - return (ex instanceof RangeError) && !accessed; - } - } -runTestCase(testcase); +}); +assert.sameValue(accessed, false, 'accessed'); diff --git a/test/built-ins/Array/prototype/some/15.4.4.17-1-1.js b/test/built-ins/Array/prototype/some/15.4.4.17-1-1.js index 3edbd680b4cb59440f86e65de33b06a54c93aaaf..f6ef912cf104bda68b689f74e56f553cc8f5b34a 100644 --- a/test/built-ins/Array/prototype/some/15.4.4.17-1-1.js +++ b/test/built-ins/Array/prototype/some/15.4.4.17-1-1.js @@ -4,15 +4,9 @@ /*--- es5id: 15.4.4.17-1-1 description: Array.prototype.some applied to undefined throws a TypeError -includes: [runTestCase.js] ---*/ -function testcase() { - try { + +assert.throws(TypeError, function() { Array.prototype.some.call(undefined); - return false; - } catch (e) { - return (e instanceof TypeError); - } - } -runTestCase(testcase); +}); diff --git a/test/built-ins/Array/prototype/some/15.4.4.17-1-2.js b/test/built-ins/Array/prototype/some/15.4.4.17-1-2.js index e7af4d96ccaf571591f3860e88f18613653871bf..1908d748769a8727f1ec8bc82122a6c0fddbeef1 100644 --- a/test/built-ins/Array/prototype/some/15.4.4.17-1-2.js +++ b/test/built-ins/Array/prototype/some/15.4.4.17-1-2.js @@ -4,15 +4,9 @@ /*--- es5id: 15.4.4.17-1-2 description: Array.prototype.some applied to null throws a TypeError -includes: [runTestCase.js] ---*/ -function testcase() { - try { + +assert.throws(TypeError, function() { Array.prototype.some.call(null); - return false; - } catch (e) { - return (e instanceof TypeError); - } - } -runTestCase(testcase); +}); diff --git a/test/built-ins/Array/prototype/some/15.4.4.17-3-22.js b/test/built-ins/Array/prototype/some/15.4.4.17-3-22.js index fa51c0e25b50301f7fd090aac5747b66b064d91f..8795d9a056ad59af0e61791aabbfc64fcda73fe9 100644 --- a/test/built-ins/Array/prototype/some/15.4.4.17-3-22.js +++ b/test/built-ins/Array/prototype/some/15.4.4.17-3-22.js @@ -7,11 +7,8 @@ description: > Array.prototype.some throws TypeError exception when 'length' is an object with toString and valueOf methods that don�t return primitive values -includes: [runTestCase.js] ---*/ -function testcase() { - var callbackfnAccessed = false; var toStringAccessed = false; var valueOfAccessed = false; @@ -36,12 +33,9 @@ function testcase() { } } }; - - try { +assert.throws(TypeError, function() { Array.prototype.some.call(obj, callbackfn); - return false; - } catch (ex) { - return (ex instanceof TypeError) && toStringAccessed && valueOfAccessed && !callbackfnAccessed; - } - } -runTestCase(testcase); +}); +assert(toStringAccessed, 'toStringAccessed !== true'); +assert(valueOfAccessed, 'valueOfAccessed !== true'); +assert.sameValue(callbackfnAccessed, false, 'callbackfnAccessed'); diff --git a/test/built-ins/Array/prototype/some/15.4.4.17-4-1.js b/test/built-ins/Array/prototype/some/15.4.4.17-4-1.js index 234cd7593eb274aa3d5926df214d6eb256c7ee4c..f6f66c910977845c0ddc5750465de4ad67e4793c 100644 --- a/test/built-ins/Array/prototype/some/15.4.4.17-4-1.js +++ b/test/built-ins/Array/prototype/some/15.4.4.17-4-1.js @@ -4,19 +4,9 @@ /*--- es5id: 15.4.4.17-4-1 description: Array.prototype.some throws TypeError if callbackfn is undefined -includes: [runTestCase.js] ---*/ -function testcase() { - var arr = new Array(10); - try { - arr.some(); - } - catch(e) { - if(e instanceof TypeError) - return true; - } - - } -runTestCase(testcase); +assert.throws(TypeError, function() { + arr.some(); +}); diff --git a/test/built-ins/Array/prototype/some/15.4.4.17-4-15.js b/test/built-ins/Array/prototype/some/15.4.4.17-4-15.js index a2e39d124a1f83fa20c71e551bcbdc7d3a609165..546f4c0c708a89d263844f5334ca1d49f6ae4792 100644 --- a/test/built-ins/Array/prototype/some/15.4.4.17-4-15.js +++ b/test/built-ins/Array/prototype/some/15.4.4.17-4-15.js @@ -6,10 +6,8 @@ es5id: 15.4.4.17-4-15 description: > Array.prototype.some - calling with no callbackfn is the same as passing undefined for callbackfn -includes: [runTestCase.js] ---*/ -function testcase() { var obj = { }; var lengthAccessed = false; var loopAccessed = false; @@ -28,12 +26,8 @@ function testcase() { }, configurable: true }); - - try { +assert.throws(TypeError, function() { Array.prototype.some.call(obj); - return false; - } catch (ex) { - return (ex instanceof TypeError) && lengthAccessed && !loopAccessed; - } - } -runTestCase(testcase); +}); +assert(lengthAccessed, 'lengthAccessed !== true'); +assert.sameValue(loopAccessed, false, 'loopAccessed'); diff --git a/test/built-ins/Array/prototype/some/15.4.4.17-4-2.js b/test/built-ins/Array/prototype/some/15.4.4.17-4-2.js index f0344bb26ec40c7fe2374db671006ca99556e078..503aea9b4be3c0d59c9840ce0e5f8d5d4a67ca48 100644 --- a/test/built-ins/Array/prototype/some/15.4.4.17-4-2.js +++ b/test/built-ins/Array/prototype/some/15.4.4.17-4-2.js @@ -6,19 +6,9 @@ es5id: 15.4.4.17-4-2 description: > Array.prototype.some throws ReferenceError if callbackfn is unreferenced -includes: [runTestCase.js] ---*/ -function testcase() { - var arr = new Array(10); - try { - arr.some(foo); - } - catch(e) { - if(e instanceof ReferenceError) - return true; - } - - } -runTestCase(testcase); +assert.throws(ReferenceError, function() { + arr.some(foo); +}); diff --git a/test/built-ins/Array/prototype/some/15.4.4.17-4-3.js b/test/built-ins/Array/prototype/some/15.4.4.17-4-3.js index 0cd339f8a44c405b82edbf31126fc37de7b07262..89efdb1acd82d1e0ae7238cc49fa7e3dde601ee6 100644 --- a/test/built-ins/Array/prototype/some/15.4.4.17-4-3.js +++ b/test/built-ins/Array/prototype/some/15.4.4.17-4-3.js @@ -4,19 +4,9 @@ /*--- es5id: 15.4.4.17-4-3 description: Array.prototype.some throws TypeError if callbackfn is null -includes: [runTestCase.js] ---*/ -function testcase() { - var arr = new Array(10); - try { - arr.some(null); - } - catch(e) { - if(e instanceof TypeError) - return true; - } - - } -runTestCase(testcase); +assert.throws(TypeError, function() { + arr.some(null); +}); diff --git a/test/built-ins/Array/prototype/some/15.4.4.17-4-4.js b/test/built-ins/Array/prototype/some/15.4.4.17-4-4.js index e66e09dd6b5d6c35ab7f3ad8eb5e3b08d8055794..d6a7dcaceba13b6c333bc244e446224658e280c2 100644 --- a/test/built-ins/Array/prototype/some/15.4.4.17-4-4.js +++ b/test/built-ins/Array/prototype/some/15.4.4.17-4-4.js @@ -4,19 +4,9 @@ /*--- es5id: 15.4.4.17-4-4 description: Array.prototype.some throws TypeError if callbackfn is boolean -includes: [runTestCase.js] ---*/ -function testcase() { - var arr = new Array(10); - try { - arr.some(true); - } - catch(e) { - if(e instanceof TypeError) - return true; - } - - } -runTestCase(testcase); +assert.throws(TypeError, function() { + arr.some(true); +}); diff --git a/test/built-ins/Array/prototype/some/15.4.4.17-4-5.js b/test/built-ins/Array/prototype/some/15.4.4.17-4-5.js index baa73b9a7e1bc541345dc3505137f44c8a0a93f8..5bfa34ff07579859a289a5e7ad78aa5eb02bae88 100644 --- a/test/built-ins/Array/prototype/some/15.4.4.17-4-5.js +++ b/test/built-ins/Array/prototype/some/15.4.4.17-4-5.js @@ -4,19 +4,9 @@ /*--- es5id: 15.4.4.17-4-5 description: Array.prototype.some throws TypeError if callbackfn is number -includes: [runTestCase.js] ---*/ -function testcase() { - var arr = new Array(10); - try { - arr.some(5); - } - catch(e) { - if(e instanceof TypeError) - return true; - } - - } -runTestCase(testcase); +assert.throws(TypeError, function() { + arr.some(5); +}); diff --git a/test/built-ins/Array/prototype/some/15.4.4.17-4-6.js b/test/built-ins/Array/prototype/some/15.4.4.17-4-6.js index 6635c18cc1aca52191c998372826a14f2b2fb6c1..12ac7b3d8107b2724dfe1141687063ae7fd8f7c1 100644 --- a/test/built-ins/Array/prototype/some/15.4.4.17-4-6.js +++ b/test/built-ins/Array/prototype/some/15.4.4.17-4-6.js @@ -4,19 +4,9 @@ /*--- es5id: 15.4.4.17-4-6 description: Array.prototype.some throws TypeError if callbackfn is string -includes: [runTestCase.js] ---*/ -function testcase() { - var arr = new Array(10); - try { - arr.some("abc"); - } - catch(e) { - if(e instanceof TypeError) - return true; - } - - } -runTestCase(testcase); +assert.throws(TypeError, function() { + arr.some("abc"); +}); diff --git a/test/built-ins/Array/prototype/some/15.4.4.17-4-7.js b/test/built-ins/Array/prototype/some/15.4.4.17-4-7.js index 0e49f17e97b6e5f2b96e7a95b77dd0c14c844b47..f0ab45b37acfa8d0c8464e8d1df747af2490e34e 100644 --- a/test/built-ins/Array/prototype/some/15.4.4.17-4-7.js +++ b/test/built-ins/Array/prototype/some/15.4.4.17-4-7.js @@ -6,19 +6,9 @@ es5id: 15.4.4.17-4-7 description: > Array.prototype.some throws TypeError if callbackfn is Object without a Call internal method -includes: [runTestCase.js] ---*/ -function testcase() { - var arr = new Array(10); - try { - arr.some(new Object()); - } - catch(e) { - if(e instanceof TypeError) - return true; - } - - } -runTestCase(testcase); +assert.throws(TypeError, function() { + arr.some(new Object()); +}); diff --git a/test/built-ins/Array/prototype/some/15.4.4.17-4-8.js b/test/built-ins/Array/prototype/some/15.4.4.17-4-8.js index 53cc873524c4fa6692ff0d00551159f87ed61239..ea13a559b15e09cb3fd7e09cb4b58c637cd8d4ff 100644 --- a/test/built-ins/Array/prototype/some/15.4.4.17-4-8.js +++ b/test/built-ins/Array/prototype/some/15.4.4.17-4-8.js @@ -6,11 +6,8 @@ es5id: 15.4.4.17-4-8 description: > Array.prototype.some - side effects produced by step 2 are visible when an exception occurs -includes: [runTestCase.js] ---*/ -function testcase() { - var obj = { 0: 11, 1: 12 }; var accessed = false; @@ -22,12 +19,7 @@ function testcase() { }, configurable: true }); - - try { +assert.throws(TypeError, function() { Array.prototype.some.call(obj, null); - return false; - } catch (ex) { - return ex instanceof TypeError && accessed; - } - } -runTestCase(testcase); +}); +assert(accessed, 'accessed !== true'); diff --git a/test/built-ins/Array/prototype/some/15.4.4.17-4-9.js b/test/built-ins/Array/prototype/some/15.4.4.17-4-9.js index beac8d856ca640a25f83effa6db7322370568f75..8e30688b972eefb925389c533556973a9c6751f2 100644 --- a/test/built-ins/Array/prototype/some/15.4.4.17-4-9.js +++ b/test/built-ins/Array/prototype/some/15.4.4.17-4-9.js @@ -6,11 +6,8 @@ es5id: 15.4.4.17-4-9 description: > Array.prototype.some - side effects produced by step 3 are visible when an exception occurs -includes: [runTestCase.js] ---*/ -function testcase() { - var obj = { 0: 11, 1: 12 }; var accessed = false; @@ -26,12 +23,7 @@ function testcase() { }, configurable: true }); - - try { +assert.throws(TypeError, function() { Array.prototype.some.call(obj, null); - return false; - } catch (ex) { - return ex instanceof TypeError && accessed; - } - } -runTestCase(testcase); +}); +assert(accessed, 'accessed !== true'); diff --git a/test/built-ins/Array/prototype/some/15.4.4.17-7-c-i-30.js b/test/built-ins/Array/prototype/some/15.4.4.17-7-c-i-30.js index 56f598f9dcb26c43330a84bb35722f586244c0bd..6b83b9533da49ddf8838b034cdaf43f68aa75a8f 100644 --- a/test/built-ins/Array/prototype/some/15.4.4.17-7-c-i-30.js +++ b/test/built-ins/Array/prototype/some/15.4.4.17-7-c-i-30.js @@ -6,11 +6,8 @@ es5id: 15.4.4.17-7-c-i-30 description: > Array.prototype.some - unhandled exceptions happened in getter terminate iteration on an Array-like object -includes: [runTestCase.js] ---*/ -function testcase() { - var accessed = false; function callbackfn(val, idx, obj) { if (idx > 1) { @@ -26,12 +23,7 @@ function testcase() { }, configurable: true }); - - try { +assert.throws(RangeError, function() { Array.prototype.some.call(obj, callbackfn); - return false; - } catch (ex) { - return ex instanceof RangeError && !accessed; - } - } -runTestCase(testcase); +}); +assert.sameValue(accessed, false, 'accessed'); diff --git a/test/built-ins/Array/prototype/some/15.4.4.17-7-c-i-31.js b/test/built-ins/Array/prototype/some/15.4.4.17-7-c-i-31.js index 770bab3432a0976451e9429344a1801b19f1056e..8b753da1bc2a4326a3e7dcdfdbf42c2d00b85e95 100644 --- a/test/built-ins/Array/prototype/some/15.4.4.17-7-c-i-31.js +++ b/test/built-ins/Array/prototype/some/15.4.4.17-7-c-i-31.js @@ -6,11 +6,8 @@ es5id: 15.4.4.17-7-c-i-31 description: > Array.prototype.some - unhandled exceptions happened in getter terminate iteration on an Array -includes: [runTestCase.js] ---*/ -function testcase() { - var accessed = false; function callbackfn(val, idx, obj) { if (idx > 0) { @@ -27,12 +24,7 @@ function testcase() { }, configurable: true }); - - try { +assert.throws(RangeError, function() { arr.some(callbackfn); - return false; - } catch (ex) { - return ex instanceof RangeError && !accessed; - } - } -runTestCase(testcase); +}); +assert.sameValue(accessed, false, 'accessed'); diff --git a/test/built-ins/Array/prototype/some/15.4.4.17-7-c-ii-7.js b/test/built-ins/Array/prototype/some/15.4.4.17-7-c-ii-7.js index f81a458863ee7414c735e93b53143823f8876618..cd488bd7e84075b8208cce2356925070972fcf20 100644 --- a/test/built-ins/Array/prototype/some/15.4.4.17-7-c-ii-7.js +++ b/test/built-ins/Array/prototype/some/15.4.4.17-7-c-ii-7.js @@ -6,11 +6,8 @@ es5id: 15.4.4.17-7-c-ii-7 description: > Array.prototype.some - unhandled exceptions happened in callbackfn terminate iteration -includes: [runTestCase.js] ---*/ -function testcase() { - var accessed = false; function callbackfn(val, idx, obj) { @@ -24,12 +21,7 @@ function testcase() { } var obj = { 0: 9, 1: 100, 10: 11, length: 20 }; - - try { +assert.throws(Error, function() { Array.prototype.some.call(obj, callbackfn); - return false; - } catch (ex) { - return ex instanceof Error && !accessed; - } - } -runTestCase(testcase); +}); +assert.sameValue(accessed, false, 'accessed'); diff --git a/test/built-ins/Date/prototype/setFullYear/15.9.5.40_1.js b/test/built-ins/Date/prototype/setFullYear/15.9.5.40_1.js index e59716558180caa0d8d6edf0b02bace9c19852e2..12f5f6ca03c543e8c09049a342f0840c2ffad982 100644 --- a/test/built-ins/Date/prototype/setFullYear/15.9.5.40_1.js +++ b/test/built-ins/Date/prototype/setFullYear/15.9.5.40_1.js @@ -6,17 +6,9 @@ es5id: 15.9.5.40_1 description: > Date.prototype.setFullYear - Date.prototype is itself not an instance of Date -includes: [runTestCase.js] ---*/ -function testcase() { - try { + +assert.throws(TypeError, function() { Date.prototype.setFullYear(2012); - } catch (e) { - if (e instanceof TypeError) { - return true; - } - } - return false; -} -runTestCase(testcase); +}); diff --git a/test/built-ins/Date/prototype/toISOString/15.9.5.43-0-14.js b/test/built-ins/Date/prototype/toISOString/15.9.5.43-0-14.js index 994077732b898ed54a81229552d4c0c50c172196..15456f9e8919cf931dd9ce42302b88372695776a 100644 --- a/test/built-ins/Date/prototype/toISOString/15.9.5.43-0-14.js +++ b/test/built-ins/Date/prototype/toISOString/15.9.5.43-0-14.js @@ -6,16 +6,9 @@ es5id: 15.9.5.43-0-14 description: > Date.prototype.toISOString - when value of year is -Infinity Date.prototype.toISOString throw the RangeError -includes: [runTestCase.js] ---*/ -function testcase() { var date = new Date(-Infinity, 1, 70, 0, 0, 0); - - try { +assert.throws(RangeError, function() { date.toISOString(); - } catch (ex) { - return ex instanceof RangeError; - } - } -runTestCase(testcase); +}); diff --git a/test/built-ins/Date/prototype/toISOString/15.9.5.43-0-15.js b/test/built-ins/Date/prototype/toISOString/15.9.5.43-0-15.js index 6ee03b89688d6af63d554eb57895a098a8902410..05354da62eafbd579fb1cf92a27e597af2845a89 100644 --- a/test/built-ins/Date/prototype/toISOString/15.9.5.43-0-15.js +++ b/test/built-ins/Date/prototype/toISOString/15.9.5.43-0-15.js @@ -6,16 +6,9 @@ es5id: 15.9.5.43-0-15 description: > Date.prototype.toISOString - value of year is Infinity Date.prototype.toISOString throw the RangeError -includes: [runTestCase.js] ---*/ -function testcase() { var date = new Date(Infinity, 1, 70, 0, 0, 0); - - try { +assert.throws(RangeError, function() { date.toISOString(); - } catch (ex) { - return ex instanceof RangeError; - } - } -runTestCase(testcase); +}); diff --git a/test/built-ins/Date/prototype/toISOString/15.9.5.43-0-16.js b/test/built-ins/Date/prototype/toISOString/15.9.5.43-0-16.js index d2617ef3304d8fbdeb43654e360ae08d72d24a6f..702a62b345c577eac238a357ca6b94fe4eb199fa 100644 --- a/test/built-ins/Date/prototype/toISOString/15.9.5.43-0-16.js +++ b/test/built-ins/Date/prototype/toISOString/15.9.5.43-0-16.js @@ -7,17 +7,9 @@ description: > Date.prototype.toISOString - when this is a String object that value format is 'YYYY-MM-DDTHH:mm:ss.sssZ' Date.prototype.toISOString throw the TypeError -includes: [runTestCase.js] ---*/ -function testcase() { var date = new String("1970-01-00000:00:00.000Z"); - - try { +assert.throws(TypeError, function() { Date.prototype.toISOString.call(date); - return false; - } catch (ex) { - return ex instanceof TypeError; - } - } -runTestCase(testcase); +}); diff --git a/test/built-ins/Date/prototype/toISOString/15.9.5.43-0-6.js b/test/built-ins/Date/prototype/toISOString/15.9.5.43-0-6.js index a7bb22a7d111ba766aa4c777aa8c131933470bf6..1e9ff353ecc875a2fd0b60f002f2ba8f0d9b1e38 100644 --- a/test/built-ins/Date/prototype/toISOString/15.9.5.43-0-6.js +++ b/test/built-ins/Date/prototype/toISOString/15.9.5.43-0-6.js @@ -6,16 +6,9 @@ es5id: 15.9.5.43-0-6 description: > Date.prototype.toISOString - TypeError is thrown when this is any other objects instead of Date object -includes: [runTestCase.js] ---*/ -function testcase() { - try { +assert.throws(TypeError, function() { Date.prototype.toISOString.call([]); - return false; - } catch (ex) { - return ex instanceof TypeError; - } - } -runTestCase(testcase); +}); diff --git a/test/built-ins/Date/prototype/toISOString/15.9.5.43-0-7.js b/test/built-ins/Date/prototype/toISOString/15.9.5.43-0-7.js index ba755534fccb5b4b1b1e9f3a2b301702223ad6e2..e823181cdf4ee513e71fc46bb3345966bced7ba6 100644 --- a/test/built-ins/Date/prototype/toISOString/15.9.5.43-0-7.js +++ b/test/built-ins/Date/prototype/toISOString/15.9.5.43-0-7.js @@ -6,16 +6,9 @@ es5id: 15.9.5.43-0-7 description: > Date.prototype.toISOString - TypeError is thrown when this is any primitive values -includes: [runTestCase.js] ---*/ -function testcase() { - try { +assert.throws(TypeError, function() { Date.prototype.toISOString.call(15); - return false; - } catch (ex) { - return ex instanceof TypeError; - } - } -runTestCase(testcase); +}); diff --git a/test/built-ins/Date/prototype/toISOString/15.9.5.43-0-8.js b/test/built-ins/Date/prototype/toISOString/15.9.5.43-0-8.js index 454d97a480c304c08918b70fc6c5774d20fafa09..f4bd717fc93398c1d014c7bb133eee201bac4cf6 100644 --- a/test/built-ins/Date/prototype/toISOString/15.9.5.43-0-8.js +++ b/test/built-ins/Date/prototype/toISOString/15.9.5.43-0-8.js @@ -7,13 +7,11 @@ description: > Date.prototype.toISOString - RangeError is thrown when value of date is Date(1970, 0, -99999999, 0, 0, 0, -1), the time zone is UTC(0) -includes: [runTestCase.js] ---*/ -function testcase() { var timeZoneMinutes = new Date().getTimezoneOffset() * (-1); var date, dateStr; - try { +assert.throws(RangeError, function() { if (timeZoneMinutes > 0) { date = new Date(1970, 0, -99999999, 0, 0, 0, -1); } else { @@ -21,10 +19,4 @@ function testcase() { } dateStr = date.toISOString(); - - return false; - } catch (e) { - return e instanceof RangeError; - } - } -runTestCase(testcase); +}); diff --git a/test/built-ins/Function/15.3.2.1-11-1-s.js b/test/built-ins/Function/15.3.2.1-11-1-s.js index 5c9bdd7872f7b314a047da97ec30a52868f5e6a3..e03cedaf5dd3e58db054551fdded267f8c1b4b64 100644 --- a/test/built-ins/Function/15.3.2.1-11-1-s.js +++ b/test/built-ins/Function/15.3.2.1-11-1-s.js @@ -7,17 +7,9 @@ description: > Duplicate seperate parameter name in Function constructor throws SyntaxError in strict mode flags: [noStrict] -includes: [runTestCase.js] ---*/ -function testcase() { - try { + +assert.throws(SyntaxError, function() { Function('a','a','"use strict";'); - return false; - } - catch (e) { - return (e instanceof SyntaxError); - } - - } -runTestCase(testcase); +}); diff --git a/test/built-ins/Function/15.3.2.1-11-3-s.js b/test/built-ins/Function/15.3.2.1-11-3-s.js index 371f41b64e245df72bb58a73ce4de0667aa20078..29adf517de48dac978b3ee57b75c756fdf6bf6e0 100644 --- a/test/built-ins/Function/15.3.2.1-11-3-s.js +++ b/test/built-ins/Function/15.3.2.1-11-3-s.js @@ -7,18 +7,9 @@ description: > Function constructor having a formal parameter named 'eval' throws SyntaxError if function body is strict mode flags: [noStrict] -includes: [runTestCase.js] ---*/ -function testcase() { - - try { +assert.throws(SyntaxError, function() { Function('eval', '"use strict";'); - return false; - } - catch (e) { - return (e instanceof SyntaxError); - } - } -runTestCase(testcase); +}); diff --git a/test/built-ins/Function/15.3.2.1-11-5-s.js b/test/built-ins/Function/15.3.2.1-11-5-s.js index 7565db70b41878ce713ab138c554519ffbe5d4a9..00db23462018e5271a78db155da357a03393ca6f 100644 --- a/test/built-ins/Function/15.3.2.1-11-5-s.js +++ b/test/built-ins/Function/15.3.2.1-11-5-s.js @@ -7,18 +7,9 @@ description: > Duplicate combined parameter name in Function constructor throws SyntaxError in strict mode flags: [noStrict] -includes: [runTestCase.js] ---*/ -function testcase() -{ - try - { + +assert.throws(SyntaxError, function() { Function('a,a','"use strict";'); - return false; - } - catch (e) { - return(e instanceof SyntaxError); - } - } -runTestCase(testcase); +}); diff --git a/test/built-ins/Function/prototype/bind/15.3.4.5-2-1.js b/test/built-ins/Function/prototype/bind/15.3.4.5-2-1.js index 94a9fcf63181a4296e13e9ec1a3e28f25acd5973..3ac890d0442b671b0bf9c16d0151805581cdacd9 100644 --- a/test/built-ins/Function/prototype/bind/15.3.4.5-2-1.js +++ b/test/built-ins/Function/prototype/bind/15.3.4.5-2-1.js @@ -9,22 +9,12 @@ es5id: 15.3.4.5-2-1 description: > Function.prototype.bind throws TypeError if the Target is not callable (but an instance of Function) -includes: [runTestCase.js] ---*/ -function testcase() { foo.prototype = Function.prototype; // dummy function function foo() {} var f = new foo(); - - try { +assert.throws(TypeError, function() { f.bind(); - } - catch (e) { - if (e instanceof TypeError) { - return true; - } - } - } -runTestCase(testcase); +}); diff --git a/test/built-ins/Function/prototype/bind/15.3.4.5-2-10.js b/test/built-ins/Function/prototype/bind/15.3.4.5-2-10.js index 644b87b3fedb5ee682df285e73d067c85b5f4dea..b7cc355aa4a509948ea65f860b23f4ca5a83a1ce 100644 --- a/test/built-ins/Function/prototype/bind/15.3.4.5-2-10.js +++ b/test/built-ins/Function/prototype/bind/15.3.4.5-2-10.js @@ -4,15 +4,9 @@ /*--- es5id: 15.3.4.5-2-10 description: Function.prototype.bind throws TypeError if 'Target' is undefined -includes: [runTestCase.js] ---*/ -function testcase() { - try { + +assert.throws(TypeError, function() { Function.prototype.bind.call(undefined); - return false; - } catch (e) { - return (e instanceof TypeError); - } - } -runTestCase(testcase); +}); diff --git a/test/built-ins/Function/prototype/bind/15.3.4.5-2-11.js b/test/built-ins/Function/prototype/bind/15.3.4.5-2-11.js index 1e3c66fc1de10c98c8916e50df51b3c863a451eb..a6b2d253652de4423a0e8cd925c3324b2aebd6d6 100644 --- a/test/built-ins/Function/prototype/bind/15.3.4.5-2-11.js +++ b/test/built-ins/Function/prototype/bind/15.3.4.5-2-11.js @@ -4,15 +4,9 @@ /*--- es5id: 15.3.4.5-2-11 description: Function.prototype.bind throws TypeError if 'Target' is NULL -includes: [runTestCase.js] ---*/ -function testcase() { - try { + +assert.throws(TypeError, function() { Function.prototype.bind.call(null); - return false; - } catch (e) { - return (e instanceof TypeError); - } - } -runTestCase(testcase); +}); diff --git a/test/built-ins/Function/prototype/bind/15.3.4.5-2-12.js b/test/built-ins/Function/prototype/bind/15.3.4.5-2-12.js index 7705c30cbf745312f0a3497e00aa98068cc8510c..ac81d90cbb707d03c771b8a171c972af12fa9f32 100644 --- a/test/built-ins/Function/prototype/bind/15.3.4.5-2-12.js +++ b/test/built-ins/Function/prototype/bind/15.3.4.5-2-12.js @@ -4,15 +4,9 @@ /*--- es5id: 15.3.4.5-2-12 description: Function.prototype.bind throws TypeError if 'Target' is a boolean -includes: [runTestCase.js] ---*/ -function testcase() { - try { + +assert.throws(TypeError, function() { Function.prototype.bind.call(true); - return false; - } catch (e) { - return (e instanceof TypeError); - } - } -runTestCase(testcase); +}); diff --git a/test/built-ins/Function/prototype/bind/15.3.4.5-2-13.js b/test/built-ins/Function/prototype/bind/15.3.4.5-2-13.js index 08f26ba47a13ca88f6c3ab230fa236808b16b59a..0745139ad95721b9de8fd3dd6bfabbc750e640c7 100644 --- a/test/built-ins/Function/prototype/bind/15.3.4.5-2-13.js +++ b/test/built-ins/Function/prototype/bind/15.3.4.5-2-13.js @@ -4,15 +4,9 @@ /*--- es5id: 15.3.4.5-2-13 description: Function.prototype.bind throws TypeError if 'Target' is a number -includes: [runTestCase.js] ---*/ -function testcase() { - try { + +assert.throws(TypeError, function() { Function.prototype.bind.call(5); - return false; - } catch (e) { - return (e instanceof TypeError); - } - } -runTestCase(testcase); +}); diff --git a/test/built-ins/Function/prototype/bind/15.3.4.5-2-14.js b/test/built-ins/Function/prototype/bind/15.3.4.5-2-14.js index c32540e81d212b68718a626751445ae7a4a3d3df..64b0899f799f97b978aab5cb51edba24c660bdb8 100644 --- a/test/built-ins/Function/prototype/bind/15.3.4.5-2-14.js +++ b/test/built-ins/Function/prototype/bind/15.3.4.5-2-14.js @@ -4,15 +4,9 @@ /*--- es5id: 15.3.4.5-2-14 description: Function.prototype.bind throws TypeError if 'Target' is a string -includes: [runTestCase.js] ---*/ -function testcase() { - try { + +assert.throws(TypeError, function() { Function.prototype.bind.call("abc"); - return false; - } catch (e) { - return (e instanceof TypeError); - } - } -runTestCase(testcase); +}); diff --git a/test/built-ins/Function/prototype/bind/15.3.4.5-2-15.js b/test/built-ins/Function/prototype/bind/15.3.4.5-2-15.js index 1d7ce26198e3786516b101f381f5749682b157eb..887441b2cf64e2eb8d4ff51196f3cad6ea90297b 100644 --- a/test/built-ins/Function/prototype/bind/15.3.4.5-2-15.js +++ b/test/built-ins/Function/prototype/bind/15.3.4.5-2-15.js @@ -6,15 +6,9 @@ es5id: 15.3.4.5-2-15 description: > Function.prototype.bind throws TypeError if 'Target' is Object without Call internal method -includes: [runTestCase.js] ---*/ -function testcase() { - try { + +assert.throws(TypeError, function() { Function.prototype.bind.call({}); - return false; - } catch (e) { - return (e instanceof TypeError); - } - } -runTestCase(testcase); +}); diff --git a/test/built-ins/Function/prototype/bind/15.3.4.5-2-2.js b/test/built-ins/Function/prototype/bind/15.3.4.5-2-2.js index c4b8608d9d86e4220e4d2d2215d7cfb1eb8dab60..c88738b1d737fdd6914acdab669bfd6667640f14 100644 --- a/test/built-ins/Function/prototype/bind/15.3.4.5-2-2.js +++ b/test/built-ins/Function/prototype/bind/15.3.4.5-2-2.js @@ -9,22 +9,12 @@ es5id: 15.3.4.5-2-2 description: > Function.prototype.bind throws TypeError if the Target is not callable (bind attached to object) -includes: [runTestCase.js] ---*/ -function testcase() { // dummy function function foo() {} var f = new foo(); f.bind = Function.prototype.bind; - - try { +assert.throws(TypeError, function() { f.bind(); - } - catch (e) { - if (e instanceof TypeError) { - return true; - } - } - } -runTestCase(testcase); +}); diff --git a/test/built-ins/Function/prototype/bind/15.3.4.5-2-7.js b/test/built-ins/Function/prototype/bind/15.3.4.5-2-7.js index 3cb325d59672c79df5ec0bd1cfcf0228fd2bda3e..2e6d92fddda5c13271f8698ee79c2066fd661a5f 100644 --- a/test/built-ins/Function/prototype/bind/15.3.4.5-2-7.js +++ b/test/built-ins/Function/prototype/bind/15.3.4.5-2-7.js @@ -9,17 +9,9 @@ es5id: 15.3.4.5-2-7 description: > Function.prototype.bind throws TypeError if the Target is not callable (JSON) -includes: [runTestCase.js] ---*/ -function testcase() { - try { + +assert.throws(TypeError, function() { JSON.bind(); - } - catch (e) { - if (e instanceof TypeError) { - return true; - } - } - } -runTestCase(testcase); +}); diff --git a/test/built-ins/Function/prototype/bind/15.3.4.5-20-3.js b/test/built-ins/Function/prototype/bind/15.3.4.5-20-3.js index aed56b32a8aa0ca02445bf5b1e27d36904763451..15516ceb6babf805756646ccf21500f3a3244829 100644 --- a/test/built-ins/Function/prototype/bind/15.3.4.5-20-3.js +++ b/test/built-ins/Function/prototype/bind/15.3.4.5-20-3.js @@ -6,18 +6,10 @@ es5id: 15.3.4.5-20-3 description: > Function.prototype.bind - [[Set]] attribute of 'caller' property in 'F' is thrower -includes: [runTestCase.js] ---*/ -function testcase() { - function foo() { } var obj = foo.bind({}); - try { +assert.throws(TypeError, function() { obj.caller = 12; - return false; - } catch (ex) { - return (ex instanceof TypeError); - } - } -runTestCase(testcase); +}); diff --git a/test/built-ins/Function/prototype/bind/15.3.4.5-21-3.js b/test/built-ins/Function/prototype/bind/15.3.4.5-21-3.js index 1f5ea8acea37c977767ec8bfabf01897c246fc90..c132f9d0960da434b8064496b4e8fc3fc26fee1a 100644 --- a/test/built-ins/Function/prototype/bind/15.3.4.5-21-3.js +++ b/test/built-ins/Function/prototype/bind/15.3.4.5-21-3.js @@ -6,18 +6,10 @@ es5id: 15.3.4.5-21-3 description: > Function.prototype.bind - [[Set]] attribute of 'arguments' property in 'F' is thrower -includes: [runTestCase.js] ---*/ -function testcase() { - function foo() { } var obj = foo.bind({}); - try { +assert.throws(TypeError, function() { obj.arguments = 12; - return false; - } catch (ex) { - return (ex instanceof TypeError); - } - } -runTestCase(testcase); +}); diff --git a/test/built-ins/JSON/15.12-0-2.js b/test/built-ins/JSON/15.12-0-2.js index b0623f88f84cb69a831904835358fbd2b17f1023..7b70edabf986287c664fda00825d126b35406ec5 100644 --- a/test/built-ins/JSON/15.12-0-2.js +++ b/test/built-ins/JSON/15.12-0-2.js @@ -8,19 +8,9 @@ info: > step 4 in 11.2.2 should throw a TypeError exception. es5id: 15.12-0-2 description: JSON must not support the [[Construct]] method -includes: [runTestCase.js] ---*/ -function testcase() { var o = JSON; - - try { +assert.throws(TypeError, function() { var j = new JSON(); - } - catch (e) { - if (e instanceof TypeError) { - return true; - } - } - } -runTestCase(testcase); +}); diff --git a/test/built-ins/JSON/15.12-0-3.js b/test/built-ins/JSON/15.12-0-3.js index 02a539bedecb212a31f16f476cb28619b96e0b8e..11f3293a8387d77134c794a8c47bcb6da9422eae 100644 --- a/test/built-ins/JSON/15.12-0-3.js +++ b/test/built-ins/JSON/15.12-0-3.js @@ -8,19 +8,9 @@ info: > step 5 in 11.2.3 should throw a TypeError exception. es5id: 15.12-0-3 description: JSON must not support the [[Call]] method -includes: [runTestCase.js] ---*/ -function testcase() { var o = JSON; - - try { +assert.throws(TypeError, function() { var j = JSON(); - } - catch (e) { - if (e instanceof TypeError) { - return true; - } - } - } -runTestCase(testcase); +}); diff --git a/test/built-ins/Object/create/15.2.3.5-1-1.js b/test/built-ins/Object/create/15.2.3.5-1-1.js index c5e0b426dedee480bdd91b601b5cec79effa016b..dfec5679462324f650a108e3eab8d5ba0e02ee81 100644 --- a/test/built-ins/Object/create/15.2.3.5-1-1.js +++ b/test/built-ins/Object/create/15.2.3.5-1-1.js @@ -4,16 +4,9 @@ /*--- es5id: 15.2.3.5-1-1 description: Object.create throws TypeError if 'O' is undefined -includes: [runTestCase.js] ---*/ -function testcase() { - try { +assert.throws(TypeError, function() { Object.create(undefined); - return false; - } catch (e) { - return (e instanceof TypeError); - } - } -runTestCase(testcase); +}); diff --git a/test/built-ins/Object/create/15.2.3.5-1-3.js b/test/built-ins/Object/create/15.2.3.5-1-3.js index 28933d17759298a81f61f0dc42484a8cb2a137b8..2a8aa4b63918e8791c5212788eee6ab9fe52b261 100644 --- a/test/built-ins/Object/create/15.2.3.5-1-3.js +++ b/test/built-ins/Object/create/15.2.3.5-1-3.js @@ -4,16 +4,9 @@ /*--- es5id: 15.2.3.5-1-3 description: Object.create throws TypeError if 'O' is a boolean primitive -includes: [runTestCase.js] ---*/ -function testcase() { - try { +assert.throws(TypeError, function() { Object.create(true); - return false; - } catch (e) { - return (e instanceof TypeError); - } - } -runTestCase(testcase); +}); diff --git a/test/built-ins/Object/create/15.2.3.5-1-4.js b/test/built-ins/Object/create/15.2.3.5-1-4.js index 300289d4c12fdb2dd08a57b91c3f515231283c3d..e33ef8ddb4c902a4ddacb2775201a5542eeedfb0 100644 --- a/test/built-ins/Object/create/15.2.3.5-1-4.js +++ b/test/built-ins/Object/create/15.2.3.5-1-4.js @@ -4,16 +4,9 @@ /*--- es5id: 15.2.3.5-1-4 description: Object.create throws TypeError if 'O' is a number primitive -includes: [runTestCase.js] ---*/ -function testcase() { - try { +assert.throws(TypeError, function() { Object.create(2); - return false; - } catch (e) { - return (e instanceof TypeError); - } - } -runTestCase(testcase); +}); diff --git a/test/built-ins/Object/create/15.2.3.5-1.js b/test/built-ins/Object/create/15.2.3.5-1.js index 2624275e42e92570ff659c23280f672175eb83d7..645c0c974fe01fb17464c443ff12059a1d641718 100644 --- a/test/built-ins/Object/create/15.2.3.5-1.js +++ b/test/built-ins/Object/create/15.2.3.5-1.js @@ -4,17 +4,9 @@ /*--- es5id: 15.2.3.5-1 description: Object.create throws TypeError if type of first param is not Object -includes: [runTestCase.js] ---*/ -function testcase() { - try { + +assert.throws(TypeError, function() { Object.create(0); - } - catch (e) { - if (e instanceof TypeError) { - return true; - } - } - } -runTestCase(testcase); +}); diff --git a/test/built-ins/Object/create/15.2.3.5-4-258.js b/test/built-ins/Object/create/15.2.3.5-4-258.js index 9d9132e5af2e483199436ad1eaddbc45fa6ea0a7..e20c4f14b11a22c1bae0660a0b3a2b523b2963dc 100644 --- a/test/built-ins/Object/create/15.2.3.5-4-258.js +++ b/test/built-ins/Object/create/15.2.3.5-4-258.js @@ -6,20 +6,13 @@ es5id: 15.2.3.5-4-258 description: > Object.create - 'get' property of one property in 'Properties' is the primitive value null (8.10.5 step 7.b) -includes: [runTestCase.js] ---*/ -function testcase() { - try { + +assert.throws(TypeError, function() { Object.create({}, { prop: { get: null } }); - - return false; - } catch (e) { - return (e instanceof TypeError); - } - } -runTestCase(testcase); +}); diff --git a/test/built-ins/Object/create/15.2.3.5-4-259.js b/test/built-ins/Object/create/15.2.3.5-4-259.js index 6a70c61dc7177d67f907a0c40d0b3b5a53d03952..f4ae695fa8e4e87ca7d63bb5111052609a0e4a15 100644 --- a/test/built-ins/Object/create/15.2.3.5-4-259.js +++ b/test/built-ins/Object/create/15.2.3.5-4-259.js @@ -6,20 +6,13 @@ es5id: 15.2.3.5-4-259 description: > Object.create - 'get' property of one property in 'Properties' is a boolean primitive (8.10.5 step 7.b) -includes: [runTestCase.js] ---*/ -function testcase() { - try { + +assert.throws(TypeError, function() { Object.create({}, { prop: { get: false } }); - - return false; - } catch (e) { - return (e instanceof TypeError); - } - } -runTestCase(testcase); +}); diff --git a/test/built-ins/Object/create/15.2.3.5-4-26.js b/test/built-ins/Object/create/15.2.3.5-4-26.js index aecc5f5942393115a6db77a74c7b723e346d4d17..90605aecef37c89df0adeb11545d28086265459c 100644 --- a/test/built-ins/Object/create/15.2.3.5-4-26.js +++ b/test/built-ins/Object/create/15.2.3.5-4-26.js @@ -6,22 +6,13 @@ es5id: 15.2.3.5-4-26 description: > Object.create - TypeError is thrown when own enumerable accessor property of 'Properties' without a get function (15.2.3.7 step 5.a) -includes: [runTestCase.js] ---*/ -function testcase() { - var props = {}; Object.defineProperty(props, "prop", { set: function () { }, enumerable: true }); - try { +assert.throws(TypeError, function() { Object.create({}, props); - - return false; - } catch (ex) { - return ex instanceof TypeError; - } - } -runTestCase(testcase); +}); diff --git a/test/built-ins/Object/create/15.2.3.5-4-260.js b/test/built-ins/Object/create/15.2.3.5-4-260.js index 58ea30579cf3ad005b47a4c4ab29ce5bbeadf9be..031bdfd5672e8cf452df647def514e33b767aa9b 100644 --- a/test/built-ins/Object/create/15.2.3.5-4-260.js +++ b/test/built-ins/Object/create/15.2.3.5-4-260.js @@ -6,20 +6,13 @@ es5id: 15.2.3.5-4-260 description: > Object.create - 'get' property of one property in 'Properties' is a number primitive (8.10.5 step 7.b) -includes: [runTestCase.js] ---*/ -function testcase() { - try { + +assert.throws(TypeError, function() { Object.create({}, { prop: { get: 123 } }); - - return false; - } catch (e) { - return (e instanceof TypeError); - } - } -runTestCase(testcase); +}); diff --git a/test/built-ins/Object/create/15.2.3.5-4-261.js b/test/built-ins/Object/create/15.2.3.5-4-261.js index 7b33457ef80ceea7c22e18c9ab1739d7fa8f4bfc..8a7f3f955b1ed90e917c20f02a55d21a5fa857dd 100644 --- a/test/built-ins/Object/create/15.2.3.5-4-261.js +++ b/test/built-ins/Object/create/15.2.3.5-4-261.js @@ -6,21 +6,13 @@ es5id: 15.2.3.5-4-261 description: > Object.create - 'get' property of one property in 'Properties' is a primitive string (8.10.5 step 7.b) -includes: [runTestCase.js] ---*/ -function testcase() { - try { +assert.throws(TypeError, function() { Object.create({}, { prop: { get: "string" } }); - - return false; - } catch (e) { - return (e instanceof TypeError); - } - } -runTestCase(testcase); +}); diff --git a/test/built-ins/Object/create/15.2.3.5-4-262.js b/test/built-ins/Object/create/15.2.3.5-4-262.js index 1758af3db70cbab250fcc9cf6bde1650a78c8611..f02da1a389243d52573254dd20516c53e4de3d91 100644 --- a/test/built-ins/Object/create/15.2.3.5-4-262.js +++ b/test/built-ins/Object/create/15.2.3.5-4-262.js @@ -6,20 +6,13 @@ es5id: 15.2.3.5-4-262 description: > Object.create - 'get' property of one property in 'Properties' is an Array object (8.10.5 step 7.b) -includes: [runTestCase.js] ---*/ -function testcase() { - try { + +assert.throws(TypeError, function() { Object.create({}, { prop: { get: [1, 2, 3] } }); - - return false; - } catch (e) { - return (e instanceof TypeError); - } - } -runTestCase(testcase); +}); diff --git a/test/built-ins/Object/create/15.2.3.5-4-27.js b/test/built-ins/Object/create/15.2.3.5-4-27.js index dba419000c419ca9305bc5331b4f55491cf4b6e7..913f3b4e11837a64e63064401a0041e354fe86db 100644 --- a/test/built-ins/Object/create/15.2.3.5-4-27.js +++ b/test/built-ins/Object/create/15.2.3.5-4-27.js @@ -8,11 +8,8 @@ description: > without a get function that overrides an enumerable inherited accessor property in 'Properties' is defined in 'obj' (15.2.3.7 step 5.a) -includes: [runTestCase.js] ---*/ -function testcase() { - var proto = {}; Object.defineProperty(proto, "prop", { get: function () { @@ -29,13 +26,6 @@ function testcase() { set: function () { }, enumerable: true }); - - try { +assert.throws(TypeError, function() { Object.create({}, child); - - return false; - } catch (ex) { - return ex instanceof TypeError; - } - } -runTestCase(testcase); +}); diff --git a/test/built-ins/Object/create/15.2.3.5-4-293.js b/test/built-ins/Object/create/15.2.3.5-4-293.js index ee4f14993e6bfe4e33641b654894f59288f004ef..b5141d316eb0fa8bc64cade9e13ac36e28153a41 100644 --- a/test/built-ins/Object/create/15.2.3.5-4-293.js +++ b/test/built-ins/Object/create/15.2.3.5-4-293.js @@ -6,21 +6,13 @@ es5id: 15.2.3.5-4-293 description: > Object.create - 'set' property of one property in 'Properties' is a primitive value null (8.10.5 step 8.b) -includes: [runTestCase.js] ---*/ -function testcase() { - try { +assert.throws(TypeError, function() { Object.create({}, { prop: { set: null } }); - - return false; - } catch (e) { - return (e instanceof TypeError); - } - } -runTestCase(testcase); +}); diff --git a/test/built-ins/Object/create/15.2.3.5-4-294.js b/test/built-ins/Object/create/15.2.3.5-4-294.js index 6c9e8c333a35746444d3edb7839a53291fe30a4f..0253d46f9b557c6502ee7d12b839961a65fabee2 100644 --- a/test/built-ins/Object/create/15.2.3.5-4-294.js +++ b/test/built-ins/Object/create/15.2.3.5-4-294.js @@ -6,21 +6,13 @@ es5id: 15.2.3.5-4-294 description: > Object.create - 'set' property of one property in 'Properties' is a primitive boolean value true (8.10.5 step 8.b) -includes: [runTestCase.js] ---*/ -function testcase() { - try { +assert.throws(TypeError, function() { Object.create({}, { prop: { set: true } }); - - return false; - } catch (e) { - return (e instanceof TypeError); - } - } -runTestCase(testcase); +}); diff --git a/test/built-ins/Object/create/15.2.3.5-4-295.js b/test/built-ins/Object/create/15.2.3.5-4-295.js index 4f5553910b8e1a63c0eb13683a77db0f5f787922..db9776e03704acba8dee2263745e50769bf7d8a7 100644 --- a/test/built-ins/Object/create/15.2.3.5-4-295.js +++ b/test/built-ins/Object/create/15.2.3.5-4-295.js @@ -6,21 +6,13 @@ es5id: 15.2.3.5-4-295 description: > Object.create - 'set' property of one property in 'Properties' is a primitive number value (8.10.5 step 8.b) -includes: [runTestCase.js] ---*/ -function testcase() { - try { +assert.throws(TypeError, function() { Object.create({}, { prop: { set: 123 } }); - - return false; - } catch (e) { - return (e instanceof TypeError); - } - } -runTestCase(testcase); +}); diff --git a/test/built-ins/Object/create/15.2.3.5-4-296.js b/test/built-ins/Object/create/15.2.3.5-4-296.js index 9ea966b795fa41bc19558d7f8344a79cd80ef639..9912d08063593b5a18ae5ae0e4d84c4d74f36658 100644 --- a/test/built-ins/Object/create/15.2.3.5-4-296.js +++ b/test/built-ins/Object/create/15.2.3.5-4-296.js @@ -6,21 +6,13 @@ es5id: 15.2.3.5-4-296 description: > Object.create - 'set' property of one property in 'Properties' is a primitive string value (8.10.5 step 8.b) -includes: [runTestCase.js] ---*/ -function testcase() { - try { +assert.throws(TypeError, function() { Object.create({}, { prop: { set: "abc" } }); - - return false; - } catch (e) { - return (e instanceof TypeError); - } - } -runTestCase(testcase); +}); diff --git a/test/built-ins/Object/create/15.2.3.5-4-297.js b/test/built-ins/Object/create/15.2.3.5-4-297.js index f5e5883869999d44bb446910e808c8e925563c2c..0365a10f8be1652cb6eba532620b098e4b12cf21 100644 --- a/test/built-ins/Object/create/15.2.3.5-4-297.js +++ b/test/built-ins/Object/create/15.2.3.5-4-297.js @@ -6,21 +6,13 @@ es5id: 15.2.3.5-4-297 description: > Object.create - 'set' property of one property in 'Properties' is an Date object (8.10.5 step 8.b) -includes: [runTestCase.js] ---*/ -function testcase() { - try { +assert.throws(TypeError, function() { Object.create({}, { prop: { set: new Date() } }); - - return false; - } catch (e) { - return (e instanceof TypeError); - } - } -runTestCase(testcase); +}); diff --git a/test/built-ins/Object/create/15.2.3.5-4-3.js b/test/built-ins/Object/create/15.2.3.5-4-3.js index 836a621b9ca2077947061e1459840a3e3d556500..5d998fb973e2d5b1baa45fb19e133d3b0a613ce9 100644 --- a/test/built-ins/Object/create/15.2.3.5-4-3.js +++ b/test/built-ins/Object/create/15.2.3.5-4-3.js @@ -6,16 +6,9 @@ es5id: 15.2.3.5-4-3 description: > Object.create throws TypeError if 'Properties' is null (15.2.3.7 step 2) -includes: [runTestCase.js] ---*/ -function testcase() { - try { +assert.throws(TypeError, function() { Object.create({}, null); - return false; - } catch (e) { - return (e instanceof TypeError); - } - } -runTestCase(testcase); +}); diff --git a/test/built-ins/Object/create/15.2.3.5-4-300.js b/test/built-ins/Object/create/15.2.3.5-4-300.js index eb7844fd392e4d6a8d3bf088ca831d75c1a0f094..d9557fc3d5b4ed4c47dc7c82ef34c36d08ff9034 100644 --- a/test/built-ins/Object/create/15.2.3.5-4-300.js +++ b/test/built-ins/Object/create/15.2.3.5-4-300.js @@ -6,23 +6,14 @@ es5id: 15.2.3.5-4-300 description: > Object.create - 'set' property of one property in 'Properties' is a host object that isn't callable (8.10.5 step 8.b) -includes: - - runTestCase.js - - fnGlobalObject.js +includes: [fnGlobalObject.js] ---*/ -function testcase() { - try { +assert.throws(TypeError, function() { Object.create({}, { prop: { set: fnGlobalObject() } }); - - return false; - } catch (e) { - return (e instanceof TypeError); - } - } -runTestCase(testcase); +}); diff --git a/test/built-ins/Object/create/15.2.3.5-4-301.js b/test/built-ins/Object/create/15.2.3.5-4-301.js index c7924401392659d5721e93ce048004ef1bac1551..41acad4d2bfa7b893a79996f65216e98baa4b24e 100644 --- a/test/built-ins/Object/create/15.2.3.5-4-301.js +++ b/test/built-ins/Object/create/15.2.3.5-4-301.js @@ -7,22 +7,14 @@ description: > Object.create - TypeError is thrown if both 'set' property and 'value' property of one property in 'Properties' are present (8.10.5 step 9.a) -includes: [runTestCase.js] ---*/ -function testcase() { - try { +assert.throws(TypeError, function() { Object.create({}, { prop: { set: function () { }, value: 100 } }); - - return false; - } catch (e) { - return (e instanceof TypeError); - } - } -runTestCase(testcase); +}); diff --git a/test/built-ins/Object/create/15.2.3.5-4-302.js b/test/built-ins/Object/create/15.2.3.5-4-302.js index 2df2e86b6a0fcc3108db3659b507926431b7581f..9d9b0dc596873c27f895b2a9b70517c6c529d7e9 100644 --- a/test/built-ins/Object/create/15.2.3.5-4-302.js +++ b/test/built-ins/Object/create/15.2.3.5-4-302.js @@ -7,22 +7,14 @@ description: > Object.create - TypeError is thrown if both 'set' property and 'writable' property of one property in 'Properties' are present (8.10.5 step 9.a) -includes: [runTestCase.js] ---*/ -function testcase() { - try { +assert.throws(TypeError, function() { Object.create({}, { prop: { set: function () { }, writable: true } }); - - return false; - } catch (e) { - return (e instanceof TypeError); - } - } -runTestCase(testcase); +}); diff --git a/test/built-ins/Object/create/15.2.3.5-4-303.js b/test/built-ins/Object/create/15.2.3.5-4-303.js index 3105350c19c844ee19dc9980770322549b227ea5..459a8580e196459f90f0f1d9e681d25c9dea7b96 100644 --- a/test/built-ins/Object/create/15.2.3.5-4-303.js +++ b/test/built-ins/Object/create/15.2.3.5-4-303.js @@ -7,22 +7,14 @@ description: > Object.create - TypeError is thrown if both 'get' property and 'value' property of one property in 'Properties' are present (8.10.5 step 9.a) -includes: [runTestCase.js] ---*/ -function testcase() { - try { +assert.throws(TypeError, function() { Object.create({}, { prop: { get: function () { }, value: 100 } }); - - return false; - } catch (e) { - return (e instanceof TypeError); - } - } -runTestCase(testcase); +}); diff --git a/test/built-ins/Object/create/15.2.3.5-4-304.js b/test/built-ins/Object/create/15.2.3.5-4-304.js index 3618ff9d38543469e62767244082e657cc571622..bae6d8dff509e4003007640589adb255bd68bb93 100644 --- a/test/built-ins/Object/create/15.2.3.5-4-304.js +++ b/test/built-ins/Object/create/15.2.3.5-4-304.js @@ -7,22 +7,14 @@ description: > Object.create - TypeError is thrown if both 'get' property and 'writable' property of one property in 'Properties' are present (8.10.5 step 9.a) -includes: [runTestCase.js] ---*/ -function testcase() { - try { +assert.throws(TypeError, function() { Object.create({}, { prop: { get: function () { }, writable: true } }); - - return false; - } catch (e) { - return (e instanceof TypeError); - } - } -runTestCase(testcase); +}); diff --git a/test/built-ins/Object/create/15.2.3.5-4-40.js b/test/built-ins/Object/create/15.2.3.5-4-40.js index 29bbe0a09572f73ca932e0aa41426b74fd761653..91c14b190a9dd329a08b075ddadc367103fa7a72 100644 --- a/test/built-ins/Object/create/15.2.3.5-4-40.js +++ b/test/built-ins/Object/create/15.2.3.5-4-40.js @@ -7,11 +7,8 @@ description: > Object.create - ensure that if an exception is thrown it occurs in the correct order relative to prior and subsequent side-effects (15.2.3.7 step 5.a) -includes: [runTestCase.js] ---*/ -function testcase() { - var newObj = {}; var props = {}; var i = 0; @@ -34,12 +31,8 @@ function testcase() { }, enumerable: true }); - - try { +assert.throws(RangeError, function() { newObj = Object.create({}, props); - return false; - } catch (e) { - return (e instanceof RangeError) && !newObj.hasOwnProperty("prop1") && i === 2; - } - } -runTestCase(testcase); +}); +assert.sameValue(newObj.hasOwnProperty("prop1"), false, 'newObj.hasOwnProperty("prop1")'); +assert.sameValue(i, 2, 'i'); diff --git a/test/built-ins/Object/create/15.2.3.5-4-41.js b/test/built-ins/Object/create/15.2.3.5-4-41.js index d5e2421d377a00d6a00cf06fb362cf932f8fda67..d74dd58cde9b076933583a502e1a5cfc36deddeb 100644 --- a/test/built-ins/Object/create/15.2.3.5-4-41.js +++ b/test/built-ins/Object/create/15.2.3.5-4-41.js @@ -6,18 +6,11 @@ es5id: 15.2.3.5-4-41 description: > Object.create - value of one property in 'Properties' is undefined (8.10.5 step 1) -includes: [runTestCase.js] ---*/ -function testcase() { - try { +assert.throws(TypeError, function() { Object.create({}, { prop: undefined }); - return false; - } catch (e) { - return (e instanceof TypeError); - } - } -runTestCase(testcase); +}); diff --git a/test/built-ins/Object/create/15.2.3.5-4-42.js b/test/built-ins/Object/create/15.2.3.5-4-42.js index d52b5a303be58ffc74ba9536041493a8168abf28..424a2be6665233169c6346fb1caaaeebd3fb9b98 100644 --- a/test/built-ins/Object/create/15.2.3.5-4-42.js +++ b/test/built-ins/Object/create/15.2.3.5-4-42.js @@ -6,19 +6,11 @@ es5id: 15.2.3.5-4-42 description: > Object.create - value of one property in 'Properties' is null (8.10.5 step 1) -includes: [runTestCase.js] ---*/ -function testcase() { - try { +assert.throws(TypeError, function() { Object.create({}, { prop: null }); - return false; - } catch (e) { - return (e instanceof TypeError); - } - - } -runTestCase(testcase); +}); diff --git a/test/built-ins/Object/create/15.2.3.5-4-43.js b/test/built-ins/Object/create/15.2.3.5-4-43.js index a01187f38e4fc56a1295debf270f9dca4f72fe63..f3ca54ea488c4da881a9678c4f47b62c196b1195 100644 --- a/test/built-ins/Object/create/15.2.3.5-4-43.js +++ b/test/built-ins/Object/create/15.2.3.5-4-43.js @@ -6,19 +6,11 @@ es5id: 15.2.3.5-4-43 description: > Object.create - value of one property in 'Properties' is false (8.10.5 step 1) -includes: [runTestCase.js] ---*/ -function testcase() { - try { +assert.throws(TypeError, function() { Object.create({}, { prop: false }); - return false; - } catch (e) { - return (e instanceof TypeError); - } - - } -runTestCase(testcase); +}); diff --git a/test/built-ins/Object/create/15.2.3.5-4-44.js b/test/built-ins/Object/create/15.2.3.5-4-44.js index 362e72691369751d37bd4729a1d4662bdc25edee..18073ec961af15eb72d6cd6939a1a17841491054 100644 --- a/test/built-ins/Object/create/15.2.3.5-4-44.js +++ b/test/built-ins/Object/create/15.2.3.5-4-44.js @@ -6,18 +6,11 @@ es5id: 15.2.3.5-4-44 description: > Object.create - value of one property in 'Properties' is a number primitive (8.10.5 step 1) -includes: [runTestCase.js] ---*/ -function testcase() { - try { +assert.throws(TypeError, function() { Object.create({}, { prop: 12 }); - return false; - } catch (e) { - return (e instanceof TypeError); - } - } -runTestCase(testcase); +}); diff --git a/test/built-ins/Object/create/15.2.3.5-4-45.js b/test/built-ins/Object/create/15.2.3.5-4-45.js index 0f07634c3e0f5cef42dd1c79ee585f430724b598..653c33ccb168b96b10dfda452e691f74324dc881 100644 --- a/test/built-ins/Object/create/15.2.3.5-4-45.js +++ b/test/built-ins/Object/create/15.2.3.5-4-45.js @@ -6,18 +6,11 @@ es5id: 15.2.3.5-4-45 description: > Object.create - value of one property in 'Properties' is a string (8.10.5 step 1) -includes: [runTestCase.js] ---*/ -function testcase() { - try { +assert.throws(TypeError, function() { Object.create({}, { prop: "abc" }); - return false; - } catch (e) { - return (e instanceof TypeError); - } - } -runTestCase(testcase); +}); diff --git a/test/built-ins/Object/defineProperties/15.2.3.7-1-1.js b/test/built-ins/Object/defineProperties/15.2.3.7-1-1.js index d94b31b676386a65aeea81f3ace85b1f39813ac2..6bf9439eff406f60885adece268dd2e53b0b39d4 100644 --- a/test/built-ins/Object/defineProperties/15.2.3.7-1-1.js +++ b/test/built-ins/Object/defineProperties/15.2.3.7-1-1.js @@ -4,16 +4,8 @@ /*--- es5id: 15.2.3.7-1-1 description: Object.defineProperties throws TypeError if 'O' is undefined -includes: [runTestCase.js] ---*/ -function testcase() { - - try { +assert.throws(TypeError, function() { Object.defineProperties(undefined, {}); - return false; - } catch (e) { - return (e instanceof TypeError); - } - } -runTestCase(testcase); +}); diff --git a/test/built-ins/Object/defineProperties/15.2.3.7-1-2.js b/test/built-ins/Object/defineProperties/15.2.3.7-1-2.js index e0cc78fc9baa53e228ed8df5a02e843a28dc86dd..b4eae1229a31305b80f50ea82ba036e2d352bb33 100644 --- a/test/built-ins/Object/defineProperties/15.2.3.7-1-2.js +++ b/test/built-ins/Object/defineProperties/15.2.3.7-1-2.js @@ -4,16 +4,8 @@ /*--- es5id: 15.2.3.7-1-2 description: Object.defineProperties throws TypeError if 'O' is null -includes: [runTestCase.js] ---*/ -function testcase() { - - try { +assert.throws(TypeError, function() { Object.defineProperties(null, {}); - return false; - } catch (e) { - return (e instanceof TypeError); - } - } -runTestCase(testcase); +}); diff --git a/test/built-ins/Object/defineProperties/15.2.3.7-1-3.js b/test/built-ins/Object/defineProperties/15.2.3.7-1-3.js index eeb85855eef0ebcb696400180cc6f9e00c0cffc4..0974b1a06bf5b1e55423906d6b50273a1b98685b 100644 --- a/test/built-ins/Object/defineProperties/15.2.3.7-1-3.js +++ b/test/built-ins/Object/defineProperties/15.2.3.7-1-3.js @@ -4,16 +4,8 @@ /*--- es5id: 15.2.3.7-1-3 description: Object.defineProperties throws TypeError if 'O' is a boolean -includes: [runTestCase.js] ---*/ -function testcase() { - - try { +assert.throws(TypeError, function() { Object.defineProperties(true, {}); - return false; - } catch (e) { - return (e instanceof TypeError); - } - } -runTestCase(testcase); +}); diff --git a/test/built-ins/Object/defineProperties/15.2.3.7-1-4.js b/test/built-ins/Object/defineProperties/15.2.3.7-1-4.js index 597c32d7af0ed7b12ef6dfc99ac4beef02474802..673f986086371d463605daa81146e4e75e417a86 100644 --- a/test/built-ins/Object/defineProperties/15.2.3.7-1-4.js +++ b/test/built-ins/Object/defineProperties/15.2.3.7-1-4.js @@ -4,16 +4,8 @@ /*--- es5id: 15.2.3.7-1-4 description: Object.defineProperties throws TypeError if 'O' is a string -includes: [runTestCase.js] ---*/ -function testcase() { - - try { +assert.throws(TypeError, function() { Object.defineProperties("abc", {}); - return false; - } catch (e) { - return (e instanceof TypeError); - } - } -runTestCase(testcase); +}); diff --git a/test/built-ins/Object/defineProperties/15.2.3.7-1.js b/test/built-ins/Object/defineProperties/15.2.3.7-1.js index 12c2752a52bdce5d96afeb4a14413dfb98d37136..c6b27773c9b8123d9e3e4d2c6b6390659852fb90 100644 --- a/test/built-ins/Object/defineProperties/15.2.3.7-1.js +++ b/test/built-ins/Object/defineProperties/15.2.3.7-1.js @@ -6,17 +6,8 @@ es5id: 15.2.3.7-1 description: > Object.defineProperties throws TypeError if type of first param is not Object -includes: [runTestCase.js] ---*/ -function testcase() { - try { +assert.throws(TypeError, function() { Object.defineProperties(0, {}); - } - catch (e) { - if (e instanceof TypeError) { - return true; - } - } - } -runTestCase(testcase); +}); diff --git a/test/built-ins/Object/defineProperties/15.2.3.7-2-1.js b/test/built-ins/Object/defineProperties/15.2.3.7-2-1.js index da621aed45c43b6f3913714ea7f537bc8a5afd23..4f8ca8d07d25c9e7bf3fa9a5afa08864b962c643 100644 --- a/test/built-ins/Object/defineProperties/15.2.3.7-2-1.js +++ b/test/built-ins/Object/defineProperties/15.2.3.7-2-1.js @@ -4,16 +4,8 @@ /*--- es5id: 15.2.3.7-2-1 description: Object.defineProperties throws TypeError if 'Properties' is null -includes: [runTestCase.js] ---*/ -function testcase() { - - try { +assert.throws(TypeError, function() { Object.defineProperties({}, null); - return false; - } catch (e) { - return (e instanceof TypeError); - } - } -runTestCase(testcase); +}); diff --git a/test/built-ins/Object/defineProperties/15.2.3.7-2-2.js b/test/built-ins/Object/defineProperties/15.2.3.7-2-2.js index 58d31b83c89fd7a94781bfb79d128902a6562c15..5366c8b9ac1edadae786f0228840eb3bc1e55cb0 100644 --- a/test/built-ins/Object/defineProperties/15.2.3.7-2-2.js +++ b/test/built-ins/Object/defineProperties/15.2.3.7-2-2.js @@ -6,16 +6,8 @@ es5id: 15.2.3.7-2-2 description: > Object.defineProperties throws TypeError if 'Properties' is undefined -includes: [runTestCase.js] ---*/ -function testcase() { - - try { +assert.throws(TypeError, function() { Object.defineProperties({}, undefined); - return false; - } catch (e) { - return (e instanceof TypeError); - } - } -runTestCase(testcase); +}); diff --git a/test/built-ins/Object/defineProperties/15.2.3.7-5-b-1.js b/test/built-ins/Object/defineProperties/15.2.3.7-5-b-1.js index 9b10cce727b4452f5fe373f3bb3043601af6cf14..7eaf6bd16a4cfec0d5ff65c3901a024772553bf6 100644 --- a/test/built-ins/Object/defineProperties/15.2.3.7-5-b-1.js +++ b/test/built-ins/Object/defineProperties/15.2.3.7-5-b-1.js @@ -4,20 +4,12 @@ /*--- es5id: 15.2.3.7-5-b-1 description: Object.defineProperties - 'descObj' is undefined (8.10.5 step 1) -includes: [runTestCase.js] ---*/ -function testcase() { - var obj = {}; - - try { +assert.throws(TypeError, function() { Object.defineProperties(obj, { prop: undefined }); - return false; - } catch (e) { - return e instanceof TypeError && !obj.hasOwnProperty("prop"); - } - } -runTestCase(testcase); +}); +assert.sameValue(obj.hasOwnProperty("prop"), false, 'obj.hasOwnProperty("prop")'); diff --git a/test/built-ins/Object/defineProperties/15.2.3.7-5-b-2.js b/test/built-ins/Object/defineProperties/15.2.3.7-5-b-2.js index 768a594be9d99788b7a658624d4845c457e16da1..c7fa6e5ead6a4e70d776e6356f390c602811be1d 100644 --- a/test/built-ins/Object/defineProperties/15.2.3.7-5-b-2.js +++ b/test/built-ins/Object/defineProperties/15.2.3.7-5-b-2.js @@ -4,20 +4,12 @@ /*--- es5id: 15.2.3.7-5-b-2 description: Object.defineProperties - 'descObj' is null (8.10.5 step 1) -includes: [runTestCase.js] ---*/ -function testcase() { - var obj = {}; - - try { +assert.throws(TypeError, function() { Object.defineProperties(obj, { prop: null }); - return false; - } catch (e) { - return e instanceof TypeError && !obj.hasOwnProperty("prop"); ; - } - } -runTestCase(testcase); +}); +assert.sameValue(obj.hasOwnProperty("prop"), false, 'obj.hasOwnProperty("prop")'); diff --git a/test/built-ins/Object/defineProperties/15.2.3.7-5-b-218.js b/test/built-ins/Object/defineProperties/15.2.3.7-5-b-218.js index 3cef301fb59a4e9c0e6fb3b8fc2af556fe31e348..391538ddb42e4c9d161cbcd78ab987885ae12d29 100644 --- a/test/built-ins/Object/defineProperties/15.2.3.7-5-b-218.js +++ b/test/built-ins/Object/defineProperties/15.2.3.7-5-b-218.js @@ -6,22 +6,13 @@ es5id: 15.2.3.7-5-b-218 description: > Object.defineProperties - value of 'get' property of 'descObj' is primitive values( value is null) (8.10.5 step 7.b) -includes: [runTestCase.js] ---*/ -function testcase() { var obj = {}; - - try { +assert.throws(TypeError, function() { Object.defineProperties(obj, { property: { get: null } }); - - return false; - } catch (e) { - return (e instanceof TypeError); - } - } -runTestCase(testcase); +}); diff --git a/test/built-ins/Object/defineProperties/15.2.3.7-5-b-219.js b/test/built-ins/Object/defineProperties/15.2.3.7-5-b-219.js index e04e7147ead89bfc97f936bab4b95a7626b0a4a8..adb34766fdaee1d930f6dadeff858b53ba2f13e1 100644 --- a/test/built-ins/Object/defineProperties/15.2.3.7-5-b-219.js +++ b/test/built-ins/Object/defineProperties/15.2.3.7-5-b-219.js @@ -6,22 +6,13 @@ es5id: 15.2.3.7-5-b-219 description: > Object.defineProperties - value of 'get' property of 'descObj' is primitive values( value is boolean) (8.10.5 step 7.b) -includes: [runTestCase.js] ---*/ -function testcase() { var obj = {}; - - try { +assert.throws(TypeError, function() { Object.defineProperties(obj, { property: { get: false } }); - - return false; - } catch (e) { - return (e instanceof TypeError); - } - } -runTestCase(testcase); +}); diff --git a/test/built-ins/Object/defineProperties/15.2.3.7-5-b-220.js b/test/built-ins/Object/defineProperties/15.2.3.7-5-b-220.js index ffce3edc5580789945c7a5995b2bf72b56dff825..d684f624dbff4a3751f0f2f1aab1bf6671ca29fd 100644 --- a/test/built-ins/Object/defineProperties/15.2.3.7-5-b-220.js +++ b/test/built-ins/Object/defineProperties/15.2.3.7-5-b-220.js @@ -6,22 +6,13 @@ es5id: 15.2.3.7-5-b-220 description: > Object.defineProperties - value of 'get' property of 'descObj' is primitive values( value is number) (8.10.5 step 7.b) -includes: [runTestCase.js] ---*/ -function testcase() { var obj = {}; - - try { +assert.throws(TypeError, function() { Object.defineProperties(obj, { property: { get: 123 } }); - - return false; - } catch (e) { - return (e instanceof TypeError); - } - } -runTestCase(testcase); +}); diff --git a/test/built-ins/Object/defineProperties/15.2.3.7-5-b-221.js b/test/built-ins/Object/defineProperties/15.2.3.7-5-b-221.js index ea60b42e68d299ca8bf990401066e8f41c828f16..982cddb9bdc8807085506a34af3c80394d1ca5a2 100644 --- a/test/built-ins/Object/defineProperties/15.2.3.7-5-b-221.js +++ b/test/built-ins/Object/defineProperties/15.2.3.7-5-b-221.js @@ -6,22 +6,13 @@ es5id: 15.2.3.7-5-b-221 description: > Object.defineProperties - value of 'get' property of 'descObj' is primitive values( value is string) (8.10.5 step 7.b) -includes: [runTestCase.js] ---*/ -function testcase() { var obj = {}; - - try { +assert.throws(TypeError, function() { Object.defineProperties(obj, { property: { get: "string" } }); - - return false; - } catch (e) { - return (e instanceof TypeError); - } - } -runTestCase(testcase); +}); diff --git a/test/built-ins/Object/defineProperties/15.2.3.7-5-b-222.js b/test/built-ins/Object/defineProperties/15.2.3.7-5-b-222.js index 3e5cfc2e4a10489352f73769120e40f068405526..57e21ef35a91cfbc6a01c530d3d3609810381023 100644 --- a/test/built-ins/Object/defineProperties/15.2.3.7-5-b-222.js +++ b/test/built-ins/Object/defineProperties/15.2.3.7-5-b-222.js @@ -6,22 +6,13 @@ es5id: 15.2.3.7-5-b-222 description: > Object.defineProperties - value of 'get' property of 'descObj' is applied to Array object (8.10.5 step 7.b) -includes: [runTestCase.js] ---*/ -function testcase() { var obj = {}; - - try { +assert.throws(TypeError, function() { Object.defineProperties(obj, { property: { get: [] } }); - - return false; - } catch (e) { - return (e instanceof TypeError); - } - } -runTestCase(testcase); +}); diff --git a/test/built-ins/Object/defineProperties/15.2.3.7-5-b-253.js b/test/built-ins/Object/defineProperties/15.2.3.7-5-b-253.js index 1667d76f573c42c0ad30c8d578e674c0b4924a91..e35a948b5dba53e200ce2800fc9fe550a2b47897 100644 --- a/test/built-ins/Object/defineProperties/15.2.3.7-5-b-253.js +++ b/test/built-ins/Object/defineProperties/15.2.3.7-5-b-253.js @@ -6,22 +6,13 @@ es5id: 15.2.3.7-5-b-253 description: > Object.defineProperties - value of 'set' property of 'descObj' is primitive values null (8.10.5 step 8.b) -includes: [runTestCase.js] ---*/ -function testcase() { - var obj = {}; - - try { +assert.throws(TypeError, function() { Object.defineProperties(obj, { prop: { set: null } }); - return false; - } catch (e) { - return (e instanceof TypeError); - } - } -runTestCase(testcase); +}); diff --git a/test/built-ins/Object/defineProperties/15.2.3.7-5-b-254.js b/test/built-ins/Object/defineProperties/15.2.3.7-5-b-254.js index 4dcec66e6897eedfd0cb809f2612839883769f0d..11d390a2bd7d1c6be01782204efe7e8e14116c92 100644 --- a/test/built-ins/Object/defineProperties/15.2.3.7-5-b-254.js +++ b/test/built-ins/Object/defineProperties/15.2.3.7-5-b-254.js @@ -6,22 +6,13 @@ es5id: 15.2.3.7-5-b-254 description: > Object.defineProperties - value of 'set' property of 'descObj' is primitive values boolean (8.10.5 step 8.b) -includes: [runTestCase.js] ---*/ -function testcase() { - var obj = {}; - - try { +assert.throws(TypeError, function() { Object.defineProperties(obj, { prop: { set: true } }); - return false; - } catch (e) { - return (e instanceof TypeError); - } - } -runTestCase(testcase); +}); diff --git a/test/built-ins/Object/defineProperties/15.2.3.7-5-b-255.js b/test/built-ins/Object/defineProperties/15.2.3.7-5-b-255.js index f158942905db34204cfe9ff120907b44ba24d26c..acbcc7ed2750afe1a9afe89d60b1298b17f7484a 100644 --- a/test/built-ins/Object/defineProperties/15.2.3.7-5-b-255.js +++ b/test/built-ins/Object/defineProperties/15.2.3.7-5-b-255.js @@ -6,22 +6,13 @@ es5id: 15.2.3.7-5-b-255 description: > Object.defineProperties - value of 'set' property of 'descObj' is primitive values number (8.10.5 step 8.b) -includes: [runTestCase.js] ---*/ -function testcase() { - var obj = {}; - - try { +assert.throws(TypeError, function() { Object.defineProperties(obj, { prop: { set: 100 } }); - return false; - } catch (e) { - return (e instanceof TypeError); - } - } -runTestCase(testcase); +}); diff --git a/test/built-ins/Object/defineProperties/15.2.3.7-5-b-256.js b/test/built-ins/Object/defineProperties/15.2.3.7-5-b-256.js index 762d1ba4cfea7950899afd0c66ff5cbb30df61a5..85e6c6b88cb5ec27a3b6520659b879a3db43f1cc 100644 --- a/test/built-ins/Object/defineProperties/15.2.3.7-5-b-256.js +++ b/test/built-ins/Object/defineProperties/15.2.3.7-5-b-256.js @@ -6,22 +6,13 @@ es5id: 15.2.3.7-5-b-256 description: > Object.defineProperties - value of 'set' property of 'descObj' is primitive values string (8.10.5 step 8.b) -includes: [runTestCase.js] ---*/ -function testcase() { - var obj = {}; - - try { +assert.throws(TypeError, function() { Object.defineProperties(obj, { prop: { set: "abcdef" } }); - return false; - } catch (e) { - return (e instanceof TypeError); - } - } -runTestCase(testcase); +}); diff --git a/test/built-ins/Object/defineProperties/15.2.3.7-5-b-257.js b/test/built-ins/Object/defineProperties/15.2.3.7-5-b-257.js index 22455761be91c235f43b5a6d91be2167ea9fca39..848af07304172b10eb5a4f5e6f80187b21ead64a 100644 --- a/test/built-ins/Object/defineProperties/15.2.3.7-5-b-257.js +++ b/test/built-ins/Object/defineProperties/15.2.3.7-5-b-257.js @@ -6,22 +6,13 @@ es5id: 15.2.3.7-5-b-257 description: > Object.defineProperties - value of 'set' property of 'descObj' is an interesting object other than a function (8.10.5 step 8.b) -includes: [runTestCase.js] ---*/ -function testcase() { - var obj = {}; - - try { +assert.throws(TypeError, function() { Object.defineProperties(obj, { prop: { set: [] } }); - return false; - } catch (e) { - return (e instanceof TypeError); - } - } -runTestCase(testcase); +}); diff --git a/test/built-ins/Object/defineProperties/15.2.3.7-5-b-261.js b/test/built-ins/Object/defineProperties/15.2.3.7-5-b-261.js index fc31f20a363bbfce174e12ba9644e59304083cbf..f0fed05eb198e8e7a7208cd85a31337f4689f4a3 100644 --- a/test/built-ins/Object/defineProperties/15.2.3.7-5-b-261.js +++ b/test/built-ins/Object/defineProperties/15.2.3.7-5-b-261.js @@ -7,24 +7,15 @@ description: > Object.defineProperties - TypeError is thrown if both 'set' property and 'value' property of 'descObj' are present (8.10.5 step 9.a) -includes: [runTestCase.js] ---*/ -function testcase() { - var setFun = function () {}; var obj = {}; - - try { +assert.throws(TypeError, function() { Object.defineProperties(obj, { prop: { value: 12, set: setFun } }); - return false; - } catch (e) { - return (e instanceof TypeError); - } - } -runTestCase(testcase); +}); diff --git a/test/built-ins/Object/defineProperties/15.2.3.7-5-b-262.js b/test/built-ins/Object/defineProperties/15.2.3.7-5-b-262.js index 247f747edb078e951317942539bf454abc1c0bdb..5587e17654abafba976d7a202b7bc8ddf32143c6 100644 --- a/test/built-ins/Object/defineProperties/15.2.3.7-5-b-262.js +++ b/test/built-ins/Object/defineProperties/15.2.3.7-5-b-262.js @@ -7,24 +7,15 @@ description: > Object.defineProperties - TypeError is thrown if both 'set' property and 'writable' property of 'descObj' are present (8.10.5 step 9.a) -includes: [runTestCase.js] ---*/ -function testcase() { - var setFun = function () { }; var obj = {}; - - try { +assert.throws(TypeError, function() { Object.defineProperties(obj, { prop: { writable: true, set: setFun } }); - return false; - } catch (e) { - return (e instanceof TypeError); - } - } -runTestCase(testcase); +}); diff --git a/test/built-ins/Object/defineProperties/15.2.3.7-5-b-263.js b/test/built-ins/Object/defineProperties/15.2.3.7-5-b-263.js index 9bf35d85ee8d2eb740698824d31556f58b242521..1587c5de2ca0a390cdd06a39dfe1b98d0f58bad6 100644 --- a/test/built-ins/Object/defineProperties/15.2.3.7-5-b-263.js +++ b/test/built-ins/Object/defineProperties/15.2.3.7-5-b-263.js @@ -7,24 +7,15 @@ description: > Object.defineProperties - TypeError is thrown if both 'get' property and 'value' property of 'descObj' are present (8.10.5 step 9.a) -includes: [runTestCase.js] ---*/ -function testcase() { - var getFun = function () {}; var obj = {}; - - try { +assert.throws(TypeError, function() { Object.defineProperties(obj, { prop: { value: 12, get: getFun } }); - return false; - } catch (e) { - return (e instanceof TypeError); - } - } -runTestCase(testcase); +}); diff --git a/test/built-ins/Object/defineProperties/15.2.3.7-5-b-264.js b/test/built-ins/Object/defineProperties/15.2.3.7-5-b-264.js index 23be87b1826706d1e026572d498e7e20ca57006f..945e4a276d3fce94db97efae9ccd23ba7e7ac1f9 100644 --- a/test/built-ins/Object/defineProperties/15.2.3.7-5-b-264.js +++ b/test/built-ins/Object/defineProperties/15.2.3.7-5-b-264.js @@ -7,25 +7,16 @@ description: > Object.defineProperties - TypeError is thrown if both 'get' property and 'writable' property of 'descObj' are present (8.10.5 step 9.a) -includes: [runTestCase.js] ---*/ -function testcase() { - var getFun = function () {}; var obj = {}; - - try { +assert.throws(TypeError, function() { Object.defineProperties(obj, { "prop": { writable: true, get: getFun } }); - return false; - } catch (e) { - return (e instanceof TypeError); - } - } -runTestCase(testcase); +}); diff --git a/test/built-ins/Object/defineProperties/15.2.3.7-5-b-3.js b/test/built-ins/Object/defineProperties/15.2.3.7-5-b-3.js index 8a8995e292ebd139c902a640928f87218609af4d..cba662cf528e491cbd32ec62f865677eaac8fcec 100644 --- a/test/built-ins/Object/defineProperties/15.2.3.7-5-b-3.js +++ b/test/built-ins/Object/defineProperties/15.2.3.7-5-b-3.js @@ -4,20 +4,12 @@ /*--- es5id: 15.2.3.7-5-b-3 description: Object.defineProperties - 'descObj' is a boolean (8.10.5 step 1) -includes: [runTestCase.js] ---*/ -function testcase() { - var obj = {}; - - try { +assert.throws(TypeError, function() { Object.defineProperties(obj, { prop: true }); - return false; - } catch (e) { - return e instanceof TypeError && !obj.hasOwnProperty("prop"); - } - } -runTestCase(testcase); +}); +assert.sameValue(obj.hasOwnProperty("prop"), false, 'obj.hasOwnProperty("prop")'); diff --git a/test/built-ins/Object/defineProperties/15.2.3.7-5-b-4.js b/test/built-ins/Object/defineProperties/15.2.3.7-5-b-4.js index e61abc465393c950a9552ca0d81df3a276a7e28e..ee430f83cee799707cab633919e3cc2b6fd5f41f 100644 --- a/test/built-ins/Object/defineProperties/15.2.3.7-5-b-4.js +++ b/test/built-ins/Object/defineProperties/15.2.3.7-5-b-4.js @@ -4,20 +4,12 @@ /*--- es5id: 15.2.3.7-5-b-4 description: Object.defineProperties - 'descObj' is a number (8.10.5 step 1) -includes: [runTestCase.js] ---*/ -function testcase() { - var obj = {}; - - try { +assert.throws(TypeError, function() { Object.defineProperties(obj, { prop: 12 }); - return false; - } catch (e) { - return e instanceof TypeError && !obj.hasOwnProperty("prop"); - } - } -runTestCase(testcase); +}); +assert.sameValue(obj.hasOwnProperty("prop"), false, 'obj.hasOwnProperty("prop")'); diff --git a/test/built-ins/Object/defineProperties/15.2.3.7-5-b-5.js b/test/built-ins/Object/defineProperties/15.2.3.7-5-b-5.js index c996b48e16847d2b9338579189ff322dc149577f..27a60e51de4602d65c21a504a7e17555ac4926cf 100644 --- a/test/built-ins/Object/defineProperties/15.2.3.7-5-b-5.js +++ b/test/built-ins/Object/defineProperties/15.2.3.7-5-b-5.js @@ -4,20 +4,12 @@ /*--- es5id: 15.2.3.7-5-b-5 description: Object.defineProperties - 'descObj' is a string (8.10.5 step 1) -includes: [runTestCase.js] ---*/ -function testcase() { - var obj = {}; - - try { +assert.throws(TypeError, function() { Object.defineProperties(obj, { prop: "abc" }); - return false; - } catch (e) { - return e instanceof TypeError && !obj.hasOwnProperty("prop"); - } - } -runTestCase(testcase); +}); +assert.sameValue(obj.hasOwnProperty("prop"), false, 'obj.hasOwnProperty("prop")'); diff --git a/test/built-ins/Object/defineProperties/15.2.3.7-6-a-1.js b/test/built-ins/Object/defineProperties/15.2.3.7-6-a-1.js index 8532a067fb087aaf7e570ea4031ba20c3a2cb769..e282f560758f13266376db40fa77c4db1f24f3a7 100644 --- a/test/built-ins/Object/defineProperties/15.2.3.7-6-a-1.js +++ b/test/built-ins/Object/defineProperties/15.2.3.7-6-a-1.js @@ -6,26 +6,18 @@ es5id: 15.2.3.7-6-a-1 description: > Object.defineProperties - 'P' is own existing data property (8.12.9 step 1 ) -includes: [runTestCase.js] ---*/ -function testcase() { var obj = {}; Object.defineProperty(obj, "prop", { value: 11, configurable: false }); - - try { +assert.throws(TypeError, function() { Object.defineProperties(obj, { prop: { value: 12, configurable: true } }); - return false; - } catch (e) { - return (e instanceof TypeError); - } - } -runTestCase(testcase); +}); diff --git a/test/built-ins/Object/defineProperties/15.2.3.7-6-a-10.js b/test/built-ins/Object/defineProperties/15.2.3.7-6-a-10.js index 5ec043573811b9762b5ec8633013514497e9c146..ed64214cf9a3660fb1a625ba86d38813641fe1eb 100644 --- a/test/built-ins/Object/defineProperties/15.2.3.7-6-a-10.js +++ b/test/built-ins/Object/defineProperties/15.2.3.7-6-a-10.js @@ -7,10 +7,8 @@ description: > Object.defineProperties - 'P' is own accessor property without a get function that overrides an inherited accessor property (8.12.9 step 1 ) -includes: [runTestCase.js] ---*/ -function testcase() { var proto = {}; Object.defineProperty(proto, "prop", { get: function () { @@ -27,17 +25,11 @@ function testcase() { set: function () { }, configurable: false }); - - try { +assert.throws(TypeError, function() { Object.defineProperties(obj, { prop: { value: 12, configurable: true } }); - return false; - } catch (e) { - return (e instanceof TypeError); - } - } -runTestCase(testcase); +}); diff --git a/test/built-ins/Object/defineProperties/15.2.3.7-6-a-112.js b/test/built-ins/Object/defineProperties/15.2.3.7-6-a-112.js index 3ef0d6ad464b71314db9c8a740f87f89043ab381..e22b9a9ead6fde5761d5230cd4852e556b9834d7 100644 --- a/test/built-ins/Object/defineProperties/15.2.3.7-6-a-112.js +++ b/test/built-ins/Object/defineProperties/15.2.3.7-6-a-112.js @@ -6,27 +6,21 @@ es5id: 15.2.3.7-6-a-112 description: > Object.defineProperties - 'O' is an Array, test the length property of 'O' is own data property (15.4.5.1 step 1) -includes: [runTestCase.js] ---*/ -function testcase() { - var arr = [0, 1]; Object.defineProperty(arr, "1", { value: 1, configurable: false }); - try { - +assert.throws(TypeError, function() { Object.defineProperties(arr, { length: { value: 1 } }); - return false; - } catch (ex) { +}); var desc = Object.getOwnPropertyDescriptor(arr, "length"); - return ex instanceof TypeError && desc.value === 2 && - desc.writable && !desc.enumerable && !desc.configurable; - } - } -runTestCase(testcase); +assert.sameValue(desc.value, 2, 'desc.value'); +assert(desc.writable, 'desc.writable !== true'); +assert.sameValue(desc.enumerable, false, 'desc.enumerable'); +assert.sameValue(desc.configurable, false, 'desc.configurable'); diff --git a/test/built-ins/Object/defineProperties/15.2.3.7-6-a-116.js b/test/built-ins/Object/defineProperties/15.2.3.7-6-a-116.js index 8a58af647c54d97ff16b46aed79832c1f2112d0c..4c300f6d74375b17dd733343363f29b25c9b9171 100644 --- a/test/built-ins/Object/defineProperties/15.2.3.7-6-a-116.js +++ b/test/built-ins/Object/defineProperties/15.2.3.7-6-a-116.js @@ -8,21 +8,11 @@ description: > property of 'O', the [[Value]] field of 'desc' is absent, test TypeError is thrown when updating the [[Configurable]] attribute of the length property from false to true (15.4.5.1 step 3.a.i) -includes: [runTestCase.js] ---*/ -function testcase() { - var arr = []; - - try { +assert.throws(TypeError, function() { Object.defineProperties(arr, { length: { configurable: true } }); - - return false; - } catch (e) { - return (e instanceof TypeError); - } - } -runTestCase(testcase); +}); diff --git a/test/built-ins/Object/defineProperties/15.2.3.7-6-a-117.js b/test/built-ins/Object/defineProperties/15.2.3.7-6-a-117.js index 1ba128bceb3a28e509e9803ba4b6672b5c4647ba..ab0fecce740ad1b6a021e7aa317fd25ec1063e65 100644 --- a/test/built-ins/Object/defineProperties/15.2.3.7-6-a-117.js +++ b/test/built-ins/Object/defineProperties/15.2.3.7-6-a-117.js @@ -8,21 +8,11 @@ description: > property of 'O', the [[Value]] field of 'desc' is absent, test TypeError is thrown when updating the [[Enumerable]] attribute of the length property from false to true (15.4.5.1 step 3.a.i) -includes: [runTestCase.js] ---*/ -function testcase() { - var arr = []; - - try { +assert.throws(TypeError, function() { Object.defineProperties(arr, { length: { enumerable: true } }); - - return false; - } catch (e) { - return (e instanceof TypeError); - } - } -runTestCase(testcase); +}); diff --git a/test/built-ins/Object/defineProperties/15.2.3.7-6-a-118.js b/test/built-ins/Object/defineProperties/15.2.3.7-6-a-118.js index 7dc734ad892aa3d16aa0d13b3e416a35c3051047..95ab99ed5880f88a49cea76f844b45318cffd436 100644 --- a/test/built-ins/Object/defineProperties/15.2.3.7-6-a-118.js +++ b/test/built-ins/Object/defineProperties/15.2.3.7-6-a-118.js @@ -8,14 +8,10 @@ description: > property of 'O', the [[Value]] field of 'desc' is absent, test TypeError is thrown when 'desc' is accessor descriptor (15.4.5.1 step 3.a.i) -includes: [runTestCase.js] ---*/ -function testcase() { - var arr = []; - - try { +assert.throws(TypeError, function() { Object.defineProperties(arr, { length: { get: function () { @@ -23,10 +19,5 @@ function testcase() { } } }); - - return false; - } catch (e) { - return e instanceof TypeError && arr.length === 0; - } - } -runTestCase(testcase); +}); +assert.sameValue(arr.length, 0, 'arr.length'); diff --git a/test/built-ins/Object/defineProperties/15.2.3.7-6-a-119.js b/test/built-ins/Object/defineProperties/15.2.3.7-6-a-119.js index 14cbb248d0caca28453cc2eda90473b3c6d047c0..e249d698ac578241d06da09d6627b99c0f93bd23 100644 --- a/test/built-ins/Object/defineProperties/15.2.3.7-6-a-119.js +++ b/test/built-ins/Object/defineProperties/15.2.3.7-6-a-119.js @@ -8,25 +8,15 @@ description: > property of 'O', the [[Value]] field of 'desc' is absent, test TypeError is thrown when updating the [[Writable]] attribute of the length property from false to true (15.4.5.1 step 3.a.i) -includes: [runTestCase.js] ---*/ -function testcase() { - var arr = []; Object.defineProperty(arr, "length", { writable: false }); - - try { +assert.throws(TypeError, function() { Object.defineProperties(arr, { length: { writable: true } }); - - return false; - } catch (e) { - return (e instanceof TypeError); - } - } -runTestCase(testcase); +}); diff --git a/test/built-ins/Object/defineProperties/15.2.3.7-6-a-121.js b/test/built-ins/Object/defineProperties/15.2.3.7-6-a-121.js index 3a03bf2664dc8c9b8ab46635c9269fd1fb7b0466..2c62ae0e9474fc451d694cc964b2b9ce831f9c72 100644 --- a/test/built-ins/Object/defineProperties/15.2.3.7-6-a-121.js +++ b/test/built-ins/Object/defineProperties/15.2.3.7-6-a-121.js @@ -7,21 +7,12 @@ description: > Object.defineProperties - 'O' is an Array, 'P' is the length property of 'O', test RangeError is thrown when setting the [[Value]] field of 'desc' to undefined (15.4.5.1 step 3.c) -includes: [runTestCase.js] ---*/ -function testcase() { - var arr = []; - - try { +assert.throws(RangeError, function() { Object.defineProperties(arr, { length: { value: undefined } }); - - return false; - } catch (e) { - return e instanceof RangeError && arr.length === 0; - } - } -runTestCase(testcase); +}); +assert.sameValue(arr.length, 0, 'arr.length'); diff --git a/test/built-ins/Object/defineProperties/15.2.3.7-6-a-129.js b/test/built-ins/Object/defineProperties/15.2.3.7-6-a-129.js index 5277ce5d97b77b12da4413b09d1648d337bcc9d3..e432de73f510f9f0ada6b9c18085bf174fa6ee20 100644 --- a/test/built-ins/Object/defineProperties/15.2.3.7-6-a-129.js +++ b/test/built-ins/Object/defineProperties/15.2.3.7-6-a-129.js @@ -7,22 +7,14 @@ description: > Object.defineProperties - 'O' is an Array, 'name' is the length property of 'O', test the [[Value]] field of 'desc' is negative number (15.4.5.1 step 3.c) -includes: [runTestCase.js] ---*/ -function testcase() { - var arr = []; - - try { +assert.throws(RangeError, function() { Object.defineProperties(arr, { length: { value: -9 } }); - return false; - } catch (e) { - return e instanceof RangeError && arr.length === 0; - } - } -runTestCase(testcase); +}); +assert.sameValue(arr.length, 0, 'arr.length'); diff --git a/test/built-ins/Object/defineProperties/15.2.3.7-6-a-130.js b/test/built-ins/Object/defineProperties/15.2.3.7-6-a-130.js index fc090de0e0adf3c7b0f0d668fa1cc49ee32bb506..ff246ba3241edc9a9dfcc139362343813350fd44 100644 --- a/test/built-ins/Object/defineProperties/15.2.3.7-6-a-130.js +++ b/test/built-ins/Object/defineProperties/15.2.3.7-6-a-130.js @@ -7,22 +7,14 @@ description: > Object.defineProperties - 'O' is an Array, 'name' is the length property of 'O', test the [[Value]] field of 'desc' is +Infinity (15.4.5.1 step 3.c) -includes: [runTestCase.js] ---*/ -function testcase() { - var arr = []; - - try { +assert.throws(RangeError, function() { Object.defineProperties(arr, { length: { value: +Infinity } }); - return false; - } catch (e) { - return e instanceof RangeError && arr.length === 0; - } - } -runTestCase(testcase); +}); +assert.sameValue(arr.length, 0, 'arr.length'); diff --git a/test/built-ins/Object/defineProperties/15.2.3.7-6-a-131.js b/test/built-ins/Object/defineProperties/15.2.3.7-6-a-131.js index e312ce8f9f2f236fe8409a64f880afff9f8362ba..ada55d4a51adbd58b67134d72530dc8f61a24726 100644 --- a/test/built-ins/Object/defineProperties/15.2.3.7-6-a-131.js +++ b/test/built-ins/Object/defineProperties/15.2.3.7-6-a-131.js @@ -7,22 +7,14 @@ description: > Object.defineProperties - 'O' is an Array, 'name' is the length property of 'O', test the [[Value]] field of 'desc' is -Infinity (15.4.5.1 step 3.c) -includes: [runTestCase.js] ---*/ -function testcase() { - var arr = []; - - try { +assert.throws(RangeError, function() { Object.defineProperties(arr, { length: { value: -Infinity } }); - return false; - } catch (e) { - return e instanceof RangeError && arr.length === 0; - } - } -runTestCase(testcase); +}); +assert.sameValue(arr.length, 0, 'arr.length'); diff --git a/test/built-ins/Object/defineProperties/15.2.3.7-6-a-132.js b/test/built-ins/Object/defineProperties/15.2.3.7-6-a-132.js index a8670853aa88850dde022b4a250fad71140cf179..16015d3bb0b10d29ecd2e7f5fb0d3e30d3c9868c 100644 --- a/test/built-ins/Object/defineProperties/15.2.3.7-6-a-132.js +++ b/test/built-ins/Object/defineProperties/15.2.3.7-6-a-132.js @@ -7,23 +7,14 @@ description: > Object.defineProperties - 'O' is an Array, 'name' is the length property of 'O', test the [[Value]] field of 'desc' is NaN (15.4.5.1 step 3.c) -includes: [runTestCase.js] ---*/ -function testcase() { - var arr = []; - - try { +assert.throws(RangeError, function() { Object.defineProperties(arr, { length: { value: NaN } }); - - return false; - } catch (e) { - return e instanceof RangeError && arr.length === 0; - } - } -runTestCase(testcase); +}); +assert.sameValue(arr.length, 0, 'arr.length'); diff --git a/test/built-ins/Object/defineProperties/15.2.3.7-6-a-134.js b/test/built-ins/Object/defineProperties/15.2.3.7-6-a-134.js index 04ccb58edc21e7796df19e2ecde7f9e676b1be4d..c9b787f8d90b57c63124394b398d827b13cc49e9 100644 --- a/test/built-ins/Object/defineProperties/15.2.3.7-6-a-134.js +++ b/test/built-ins/Object/defineProperties/15.2.3.7-6-a-134.js @@ -7,22 +7,14 @@ description: > Object.defineProperties - 'O' is an Array, 'name' is the length property of 'O', test the [[Value]] field of 'desc' is a string containing a negative number (15.4.5.1 step 3.c) -includes: [runTestCase.js] ---*/ -function testcase() { - var arr = []; - - try { +assert.throws(RangeError, function() { Object.defineProperties(arr, { length: { value: "-42" } }); - return false; - } catch (e) { - return e instanceof RangeError && arr.length === 0; - } - } -runTestCase(testcase); +}); +assert.sameValue(arr.length, 0, 'arr.length'); diff --git a/test/built-ins/Object/defineProperties/15.2.3.7-6-a-135.js b/test/built-ins/Object/defineProperties/15.2.3.7-6-a-135.js index 1f172e3a1682cf98524fe1ad21f9760397f9f569..5f9b707fdebceb51742d79e2179d9736e907bab8 100644 --- a/test/built-ins/Object/defineProperties/15.2.3.7-6-a-135.js +++ b/test/built-ins/Object/defineProperties/15.2.3.7-6-a-135.js @@ -7,22 +7,14 @@ description: > Object.defineProperties - 'O' is an Array, 'name' is the length property of 'O', test the [[Value]] field of 'desc' is a string containing a decimal number (15.4.5.1 step 3.c) -includes: [runTestCase.js] ---*/ -function testcase() { - var arr = []; - - try { +assert.throws(RangeError, function() { Object.defineProperties(arr, { length: { value: "200.59" } }); - return false; - } catch (e) { - return e instanceof RangeError && arr.length === 0; - } - } -runTestCase(testcase); +}); +assert.sameValue(arr.length, 0, 'arr.length'); diff --git a/test/built-ins/Object/defineProperties/15.2.3.7-6-a-136.js b/test/built-ins/Object/defineProperties/15.2.3.7-6-a-136.js index 3c9d497472fcc8267a69dc80bc9fb6f96b2f0e32..1613213e8679cc12ac8d87467d8eb34b50c0d63c 100644 --- a/test/built-ins/Object/defineProperties/15.2.3.7-6-a-136.js +++ b/test/built-ins/Object/defineProperties/15.2.3.7-6-a-136.js @@ -7,22 +7,14 @@ description: > Object.defineProperties - 'O' is an Array, 'name' is the length property of 'O', test the [[Value]] field of 'desc' is a string containing +Infinity (15.4.5.1 step 3.c) -includes: [runTestCase.js] ---*/ -function testcase() { - var arr = []; - - try { +assert.throws(RangeError, function() { Object.defineProperties(arr, { length: { value: "+Infinity" } }); - return false; - } catch (e) { - return e instanceof RangeError && arr.length === 0; - } - } -runTestCase(testcase); +}); +assert.sameValue(arr.length, 0, 'arr.length'); diff --git a/test/built-ins/Object/defineProperties/15.2.3.7-6-a-137.js b/test/built-ins/Object/defineProperties/15.2.3.7-6-a-137.js index e1d0b07caf970324b1c8b367d4e9b02a4d30f545..ebc116b2dff70bc11ea9926820117f91872d48c7 100644 --- a/test/built-ins/Object/defineProperties/15.2.3.7-6-a-137.js +++ b/test/built-ins/Object/defineProperties/15.2.3.7-6-a-137.js @@ -7,22 +7,14 @@ description: > Object.defineProperties - 'O' is an Array, 'name' is the length property of 'O', test the [[Value]] field of 'desc' is a string containing -Infinity (15.4.5.1 step 3.c) -includes: [runTestCase.js] ---*/ -function testcase() { - var arr = []; - - try { +assert.throws(RangeError, function() { Object.defineProperties(arr, { length: { value: "-Infinity" } }); - return false; - } catch (e) { - return e instanceof RangeError && arr.length === 0; - } - } -runTestCase(testcase); +}); +assert.sameValue(arr.length, 0, 'arr.length'); diff --git a/test/built-ins/Object/defineProperties/15.2.3.7-6-a-141.js b/test/built-ins/Object/defineProperties/15.2.3.7-6-a-141.js index 58d5cb72c25eae4e34c1992a536b3b2de221b8d0..ae2debbf94fcb5cce777eb2dd7b72ff7c2438e37 100644 --- a/test/built-ins/Object/defineProperties/15.2.3.7-6-a-141.js +++ b/test/built-ins/Object/defineProperties/15.2.3.7-6-a-141.js @@ -7,22 +7,14 @@ description: > Object.defineProperties - 'O' is an Array, 'P' is the length property of 'O', test the [[Value]] field of 'desc' is a string which doesn't convert to a number (15.4.5.1 step 3.c) -includes: [runTestCase.js] ---*/ -function testcase() { - var arr = []; - - try { +assert.throws(RangeError, function() { Object.defineProperties(arr, { length: { value: "two" } }); - return false; - } catch (e) { - return e instanceof RangeError && arr.length === 0; - } - } -runTestCase(testcase); +}); +assert.sameValue(arr.length, 0, 'arr.length'); diff --git a/test/built-ins/Object/defineProperties/15.2.3.7-6-a-146.js b/test/built-ins/Object/defineProperties/15.2.3.7-6-a-146.js index c257c7b6dc95073ed6984b708d5f9ee774d87614..96214d41de6a5e04c383d2aa9b2c4b61c4a7c500 100644 --- a/test/built-ins/Object/defineProperties/15.2.3.7-6-a-146.js +++ b/test/built-ins/Object/defineProperties/15.2.3.7-6-a-146.js @@ -8,16 +8,12 @@ description: > property of 'O', test TypeError is thrown when the [[Value]] field of 'desc' is an Object that both toString and valueOf wouldn't return primitive value (15.4.5.1 step 3.c) -includes: [runTestCase.js] ---*/ -function testcase() { - var arr = []; var toStringAccessed = false; var valueOfAccessed = false; - - try { +assert.throws(TypeError, function() { Object.defineProperties(arr, { length: { value: { @@ -33,10 +29,6 @@ function testcase() { } } }); - - return false; - } catch (e) { - return (e instanceof TypeError) && toStringAccessed && valueOfAccessed; - } - } -runTestCase(testcase); +}); +assert(toStringAccessed, 'toStringAccessed !== true'); +assert(valueOfAccessed, 'valueOfAccessed !== true'); diff --git a/test/built-ins/Object/defineProperties/15.2.3.7-6-a-148.js b/test/built-ins/Object/defineProperties/15.2.3.7-6-a-148.js index abb7e0c0ef25f5cfe7660abdb36ceeab75f8660d..d70d2214f558991af99c4f8e93b23b98ccc4aade 100644 --- a/test/built-ins/Object/defineProperties/15.2.3.7-6-a-148.js +++ b/test/built-ins/Object/defineProperties/15.2.3.7-6-a-148.js @@ -7,23 +7,14 @@ description: > Object.defineProperties - 'O' is an Array, 'name' is the length property of 'O', test RangeError is thrown when the [[Value]] field of 'desc' is positive non-integer values (15.4.5.1 step 3.c) -includes: [runTestCase.js] ---*/ -function testcase() { - var arr = []; - - try { +assert.throws(RangeError, function() { Object.defineProperties(arr, { length: { value: 123.5 } }); - - return false; - } catch (e) { - return e instanceof RangeError && arr.length === 0; - } - } -runTestCase(testcase); +}); +assert.sameValue(arr.length, 0, 'arr.length'); diff --git a/test/built-ins/Object/defineProperties/15.2.3.7-6-a-149.js b/test/built-ins/Object/defineProperties/15.2.3.7-6-a-149.js index 63597a0178f8e0f73b737ef4d313fe1e6ca3a954..c509c53052d3e3aeecdab68e2ad4bd01b5ae0b08 100644 --- a/test/built-ins/Object/defineProperties/15.2.3.7-6-a-149.js +++ b/test/built-ins/Object/defineProperties/15.2.3.7-6-a-149.js @@ -7,22 +7,14 @@ description: > Object.defineProperties - 'O' is an Array, 'name' is the length property of 'O', test RangeError is thrown when the [[Value]] field of 'desc' is negative non-integer values (15.4.5.1 step 3.c) -includes: [runTestCase.js] ---*/ -function testcase() { - var arr = []; - - try { +assert.throws(RangeError, function() { Object.defineProperties(arr, { length: { value: -4294967294.5 } }); - return false; - } catch (e) { - return e instanceof RangeError && arr.length === 0; - } - } -runTestCase(testcase); +}); +assert.sameValue(arr.length, 0, 'arr.length'); diff --git a/test/built-ins/Object/defineProperties/15.2.3.7-6-a-152.js b/test/built-ins/Object/defineProperties/15.2.3.7-6-a-152.js index 3d8b21eeadc3a5df7a84c6d8ed4227c98230f987..bf9c3b8d1eac60472f7e0f668e885027b4e13ecb 100644 --- a/test/built-ins/Object/defineProperties/15.2.3.7-6-a-152.js +++ b/test/built-ins/Object/defineProperties/15.2.3.7-6-a-152.js @@ -7,21 +7,14 @@ description: > Object.defineProperties - 'O' is an Array, 'name' is the length property of 'O', test RangeError is thrown when the [[Value]] field of 'desc' is boundary value 2^32 (15.4.5.1 step 3.c) -includes: [runTestCase.js] ---*/ -function testcase() { - var arr = []; - try { +assert.throws(RangeError, function() { Object.defineProperties(arr, { length: { value: 4294967296 } }); - return false; - } catch (e) { - return e instanceof RangeError && arr.length === 0; - } - } -runTestCase(testcase); +}); +assert.sameValue(arr.length, 0, 'arr.length'); diff --git a/test/built-ins/Object/defineProperties/15.2.3.7-6-a-153.js b/test/built-ins/Object/defineProperties/15.2.3.7-6-a-153.js index c443613853216a131e8b1486abc3d1a02f8d2c31..fddc31217ba3e3a33eaf725d559d7e1e22a4c75c 100644 --- a/test/built-ins/Object/defineProperties/15.2.3.7-6-a-153.js +++ b/test/built-ins/Object/defineProperties/15.2.3.7-6-a-153.js @@ -7,21 +7,14 @@ description: > Object.defineProperties - 'O' is an Array, 'name' is the length property of 'O', test RangeError is thrown when the [[Value]] field of 'desc' is boundary value 2^32 + 1 (15.4.5.1 step 3.c) -includes: [runTestCase.js] ---*/ -function testcase() { - var arr = []; - try { +assert.throws(RangeError, function() { Object.defineProperties(arr, { length: { value: 4294967297 } }); - return false; - } catch (e) { - return e instanceof RangeError && arr.length === 0; - } - } -runTestCase(testcase); +}); +assert.sameValue(arr.length, 0, 'arr.length'); diff --git a/test/built-ins/Object/defineProperties/15.2.3.7-6-a-158.js b/test/built-ins/Object/defineProperties/15.2.3.7-6-a-158.js index 4c94b0a64c11648a149a8e0910c9af470e4adff9..c98990822be300ed36a5fca44413fa06114c3ea7 100644 --- a/test/built-ins/Object/defineProperties/15.2.3.7-6-a-158.js +++ b/test/built-ins/Object/defineProperties/15.2.3.7-6-a-158.js @@ -8,27 +8,18 @@ description: > property of 'O', the [[Value]] field of 'desc' is greater than value of the length property, test TypeError is thrown when the length property is not writable (15.4.5.1 step 3.f.i) -includes: [runTestCase.js] ---*/ -function testcase() { - var arr = []; Object.defineProperty(arr, "length", { writable: false }); - - try { +assert.throws(TypeError, function() { Object.defineProperties(arr, { length: { value: 12 } }); - - return false; - } catch (e) { - return e instanceof TypeError && arr.length === 0; - } - } -runTestCase(testcase); +}); +assert.sameValue(arr.length, 0, 'arr.length'); diff --git a/test/built-ins/Object/defineProperties/15.2.3.7-6-a-160.js b/test/built-ins/Object/defineProperties/15.2.3.7-6-a-160.js index 968810c4564a22a1d0bfef9fae6f3ef2b2fe0d6f..a3eb0b4b6c423d905b9cfaac29d6ae55e9fb1cd3 100644 --- a/test/built-ins/Object/defineProperties/15.2.3.7-6-a-160.js +++ b/test/built-ins/Object/defineProperties/15.2.3.7-6-a-160.js @@ -9,26 +9,20 @@ description: > of the length property, test TypeError is thrown when the [[Writable]] attribute of the length property is false (15.4.5.1 step 3.g) -includes: [runTestCase.js] ---*/ -function testcase() { - var arr = [0, 1]; Object.defineProperty(arr, "length", { writable: false }); - - try { +assert.throws(TypeError, function() { Object.defineProperties(arr, { length: { value: 0 } }); - return false; - } catch (e) { - return e instanceof TypeError && arr.length === 2 && arr[0] === 0 && arr[1] === 1; - } - } -runTestCase(testcase); +}); +assert.sameValue(arr.length, 2, 'arr.length'); +assert.sameValue(arr[0], 0, 'arr[0]'); +assert.sameValue(arr[1], 1, 'arr[1]'); diff --git a/test/built-ins/Object/defineProperties/15.2.3.7-6-a-165.js b/test/built-ins/Object/defineProperties/15.2.3.7-6-a-165.js index b1a2533d3d7f11600daa0b2c7f79536632106e4b..6d83613b9acdec831f2a738ecc4e5f7e9b12be80 100644 --- a/test/built-ins/Object/defineProperties/15.2.3.7-6-a-165.js +++ b/test/built-ins/Object/defineProperties/15.2.3.7-6-a-165.js @@ -8,11 +8,8 @@ description: > property of 'O', the [[Value]] field of 'desc' is less than value of the length property, test the length property is decreased by 1 (15.4.5.1 step 3.l.i) -includes: [runTestCase.js] ---*/ -function testcase() { - var arr = [0, 1, 2]; Object.defineProperty(arr, "1", { @@ -22,17 +19,14 @@ function testcase() { Object.defineProperty(arr, "2", { configurable: true }); - - try { +assert.throws(TypeError, function() { Object.defineProperties(arr, { length: { value: 1 } }); - return false; - } catch (e) { - return e instanceof TypeError && arr.length === 2 && - !arr.hasOwnProperty("2") && arr[0] === 0 && arr[1] === 1; - } - } -runTestCase(testcase); +}); +assert.sameValue(arr.length, 2, 'arr.length'); +assert.sameValue(arr.hasOwnProperty("2"), false, 'arr.hasOwnProperty("2")'); +assert.sameValue(arr[0], 0, 'arr[0]'); +assert.sameValue(arr[1], 1, 'arr[1]'); diff --git a/test/built-ins/Object/defineProperties/15.2.3.7-6-a-166.js b/test/built-ins/Object/defineProperties/15.2.3.7-6-a-166.js index 4cf79075c5b74d6ee80eba4c6c1805ab1026a772..a6bd8e38c2f38af0b34675aa01200ca798c1d83c 100644 --- a/test/built-ins/Object/defineProperties/15.2.3.7-6-a-166.js +++ b/test/built-ins/Object/defineProperties/15.2.3.7-6-a-166.js @@ -9,14 +9,10 @@ description: > of the length property, test the [[Configurable]] attribute of own data property with large index named in 'O' can stop deleting index named properties (15.4.5.1 step 3.l.ii) -includes: [runTestCase.js] ---*/ -function testcase() { - var arr = [0, 1]; - - try { +assert.throws(TypeError, function() { Object.defineProperty(arr, "1", { configurable: false }); @@ -26,11 +22,8 @@ function testcase() { value: 1 } }); - - return false; - } catch (e) { - return (e instanceof TypeError) && arr.length === 2 && - arr.hasOwnProperty("1") && arr[0] === 0 && arr[1] === 1; - } - } -runTestCase(testcase); +}); +assert.sameValue(arr.length, 2, 'arr.length'); +assert(arr.hasOwnProperty("1"), 'arr.hasOwnProperty("1") !== true'); +assert.sameValue(arr[0], 0, 'arr[0]'); +assert.sameValue(arr[1], 1, 'arr[1]'); diff --git a/test/built-ins/Object/defineProperties/15.2.3.7-6-a-170.js b/test/built-ins/Object/defineProperties/15.2.3.7-6-a-170.js index 78ed126d760d79cb2c07550c6832dc5258135c63..bb54504641353545b080253f968f5791a98c81a5 100644 --- a/test/built-ins/Object/defineProperties/15.2.3.7-6-a-170.js +++ b/test/built-ins/Object/defineProperties/15.2.3.7-6-a-170.js @@ -9,14 +9,10 @@ description: > of the length property, test the [[Configurable]] attribute of own accessor property with large index named in 'O' can stop deleting index named properties (15.4.5.1 step 3.l.ii) -includes: [runTestCase.js] ---*/ -function testcase() { - var arr = [0, 1]; - - try { +assert.throws(TypeError, function() { Object.defineProperty(arr, "1", { get: function () { return 1; @@ -29,11 +25,8 @@ function testcase() { value: 1 } }); - - return false; - } catch (e) { - return (e instanceof TypeError) && arr.length === 2 && - arr.hasOwnProperty("1") && arr[0] === 0 && arr[1] === 1; - } - } -runTestCase(testcase); +}); +assert.sameValue(arr.length, 2, 'arr.length'); +assert(arr.hasOwnProperty("1"), 'arr.hasOwnProperty("1") !== true'); +assert.sameValue(arr[0], 0, 'arr[0]'); +assert.sameValue(arr[1], 1, 'arr[1]'); diff --git a/test/built-ins/Object/defineProperties/15.2.3.7-6-a-175.js b/test/built-ins/Object/defineProperties/15.2.3.7-6-a-175.js index b976470a798581897e9a81c2fa0b5dfa59e1196d..c4a266ad4f4eff8cbdf718d3bc57d486c6dd6534 100644 --- a/test/built-ins/Object/defineProperties/15.2.3.7-6-a-175.js +++ b/test/built-ins/Object/defineProperties/15.2.3.7-6-a-175.js @@ -9,26 +9,18 @@ description: > of the length property, test value of the length property is set to the last non-configurable index named property of 'O' plus 1 (15.4.5.1 step 3.l.iii.1) -includes: [runTestCase.js] ---*/ -function testcase() { - var arr = [0, 1, 2, 3]; Object.defineProperty(arr, "1", { configurable: false }); - - try { +assert.throws(TypeError, function() { Object.defineProperties(arr, { length: { value: 1 } }); - return false; - } catch (e) { - return (e instanceof TypeError) && (arr.length === 2); - } - } -runTestCase(testcase); +}); +assert.sameValue(arr.length, 2, 'arr.length'); diff --git a/test/built-ins/Object/defineProperties/15.2.3.7-6-a-184.js b/test/built-ins/Object/defineProperties/15.2.3.7-6-a-184.js index ec10693e0d12680a336d2aba65b36f0a881e620f..3fe016ff42a2afe0f0458dc72f6e9997e9062d8a 100644 --- a/test/built-ins/Object/defineProperties/15.2.3.7-6-a-184.js +++ b/test/built-ins/Object/defineProperties/15.2.3.7-6-a-184.js @@ -8,27 +8,21 @@ description: > 'P' is an array index named property,[[Writable]] attribute of the length property in 'O' is false, value of 'P' is equal to value of the length property in 'O' (15.4.5.1 step 4.b) -includes: [runTestCase.js] ---*/ -function testcase() { var arr = [1, 2, 3]; Object.defineProperty(arr, "length", { writable: false }); - - try { +assert.throws(TypeError, function() { Object.defineProperties(arr, { "3": { value: "abc" } }); - - return false; - } catch (e) { - return e instanceof TypeError && arr[0] === 1 && - arr[1] === 2 && arr[2] === 3 && !arr.hasOwnProperty("3"); - } - } -runTestCase(testcase); +}); +assert.sameValue(arr[0], 1, 'arr[0]'); +assert.sameValue(arr[1], 2, 'arr[1]'); +assert.sameValue(arr[2], 3, 'arr[2]'); +assert.sameValue(arr.hasOwnProperty("3"), false, 'arr.hasOwnProperty("3")'); diff --git a/test/built-ins/Object/defineProperties/15.2.3.7-6-a-185.js b/test/built-ins/Object/defineProperties/15.2.3.7-6-a-185.js index 293ebe520534c7ff7c79871ec404ce039ac913e7..3698753c54db0f40f09d45ff827a09e83fb8174d 100644 --- a/test/built-ins/Object/defineProperties/15.2.3.7-6-a-185.js +++ b/test/built-ins/Object/defineProperties/15.2.3.7-6-a-185.js @@ -8,27 +8,22 @@ description: > 'P' is an array index named property,[[Writable]] attribute of the length property in 'O' is false, value of 'P' is bigger than value of the length property in 'O' (15.4.5.1 step 4.b) -includes: [runTestCase.js] ---*/ -function testcase() { var arr = [1, 2, 3]; Object.defineProperty(arr, "length", { writable: false }); - - try { +assert.throws(TypeError, function() { Object.defineProperties(arr, { "4": { value: "abc" } }); - - return false; - } catch (e) { - return e instanceof TypeError && arr[0] === 1 && arr[1] === 2 && - arr[2] === 3 && !arr.hasOwnProperty("3") && !arr.hasOwnProperty("4"); - } - } -runTestCase(testcase); +}); +assert.sameValue(arr[0], 1, 'arr[0]'); +assert.sameValue(arr[1], 2, 'arr[1]'); +assert.sameValue(arr[2], 3, 'arr[2]'); +assert.sameValue(arr.hasOwnProperty("3"), false, 'arr.hasOwnProperty("3")'); +assert.sameValue(arr.hasOwnProperty("4"), false, 'arr.hasOwnProperty("4")'); diff --git a/test/built-ins/Object/defineProperties/15.2.3.7-6-a-186.js b/test/built-ins/Object/defineProperties/15.2.3.7-6-a-186.js index 78f495b7d45c4096311ca07f0588cc8337734aaa..e5f5943f622d59c355a047d9e6738a2de48d491f 100644 --- a/test/built-ins/Object/defineProperties/15.2.3.7-6-a-186.js +++ b/test/built-ins/Object/defineProperties/15.2.3.7-6-a-186.js @@ -6,26 +6,19 @@ es5id: 15.2.3.7-6-a-186 description: > Object.defineProperties - 'O' is an Array, 'P' is an array index named property, 'P' is own data property (15.4.5.1 step 4.c) -includes: [runTestCase.js] ---*/ -function testcase() { var arr = []; Object.defineProperty(arr, 0, { value: "ownDataProperty", configurable: false }); - - try { +assert.throws(TypeError, function() { Object.defineProperties(arr, { "0": { value: "abc", configurable: true } }); - return false; - } catch (e) { - return e instanceof TypeError && arr[0] === "ownDataProperty"; - } - } -runTestCase(testcase); +}); +assert.sameValue(arr[0], "ownDataProperty", 'arr[0]'); diff --git a/test/built-ins/Object/defineProperties/15.2.3.7-6-a-190.js b/test/built-ins/Object/defineProperties/15.2.3.7-6-a-190.js index 936a9f811b1323e91a43f1bfbc0c9022be024175..7ecdc01b2d0c1c99836bc793cd8e90037eca79d3 100644 --- a/test/built-ins/Object/defineProperties/15.2.3.7-6-a-190.js +++ b/test/built-ins/Object/defineProperties/15.2.3.7-6-a-190.js @@ -6,10 +6,8 @@ es5id: 15.2.3.7-6-a-190 description: > Object.defineProperties - 'O' is an Array, 'P' is an array index named property, 'P' is own accessor property (15.4.5.1 step 4.c) -includes: [runTestCase.js] ---*/ -function testcase() { var arr = []; Object.defineProperty(arr, "0", { @@ -18,8 +16,7 @@ function testcase() { }, configurable: false }); - - try { +assert.throws(TypeError, function() { Object.defineProperties(arr, { "0": { get: function () { @@ -28,9 +25,5 @@ function testcase() { configurable: true } }); - return false; - } catch (e) { - return e instanceof TypeError && arr[0] === 11; - } - } -runTestCase(testcase); +}); +assert.sameValue(arr[0], 11, 'arr[0]'); diff --git a/test/built-ins/Object/defineProperties/15.2.3.7-6-a-194.js b/test/built-ins/Object/defineProperties/15.2.3.7-6-a-194.js index 5a1858f962f7856abd9fdd8cb2b6ea3fcec94e70..7241a38ef747ee88a86e2d8db41e4239f2b5748d 100644 --- a/test/built-ins/Object/defineProperties/15.2.3.7-6-a-194.js +++ b/test/built-ins/Object/defineProperties/15.2.3.7-6-a-194.js @@ -7,22 +7,15 @@ description: > Object.defineProperties - 'O' is an Array, 'P' is an array index named property, 'P' property doesn't exist in 'O', test TypeError is thrown when 'O' is not extensible (15.4.5.1 step 4.c) -includes: [runTestCase.js] ---*/ -function testcase() { var arr = []; Object.preventExtensions(arr); - - try { +assert.throws(TypeError, function() { Object.defineProperties(arr, { "0": { value: 1 } }); - return false; - } catch (e) { - return (e instanceof TypeError) && (arr.hasOwnProperty("0") === false); - } - } -runTestCase(testcase); +}); +assert.sameValue(arr.hasOwnProperty("0"), false, 'arr.hasOwnProperty("0")'); diff --git a/test/built-ins/Object/defineProperties/15.2.3.7-6-a-22.js b/test/built-ins/Object/defineProperties/15.2.3.7-6-a-22.js index 83ec6d5b2659a09af210296a794ddcafa066546a..03026ecbe3bb7a16db2ba679d1b9630d3f867f97 100644 --- a/test/built-ins/Object/defineProperties/15.2.3.7-6-a-22.js +++ b/test/built-ins/Object/defineProperties/15.2.3.7-6-a-22.js @@ -7,10 +7,8 @@ description: > Object.defineProperties - 'O' is the Arguments object which implements its own [[GetOwnProperty]] method to get 'P' (8.12.9 step 1 ) -includes: [runTestCase.js] ---*/ -function testcase() { var arg = function () { return arguments; }(); @@ -19,17 +17,11 @@ function testcase() { value: 11, configurable: false }); - - try { +assert.throws(TypeError, function() { Object.defineProperties(arg, { prop: { value: 12, configurable: true } }); - return false; - } catch (e) { - return (e instanceof TypeError); - } - } -runTestCase(testcase); +}); diff --git a/test/built-ins/Object/defineProperties/15.2.3.7-6-a-25.js b/test/built-ins/Object/defineProperties/15.2.3.7-6-a-25.js index 9dad1635382b260ae9f7eea00ffc0e6a28924c27..3597664afaafb6b16e9b79081588365acd48e51c 100644 --- a/test/built-ins/Object/defineProperties/15.2.3.7-6-a-25.js +++ b/test/built-ins/Object/defineProperties/15.2.3.7-6-a-25.js @@ -6,23 +6,16 @@ es5id: 15.2.3.7-6-a-25 description: > Object.defineProperties - 'P' doesn't exist in 'O', test TypeError is thrown when 'O' is not extensible (8.12.9 step 3) -includes: [runTestCase.js] ---*/ -function testcase() { var obj = {}; Object.preventExtensions(obj); - - try { +assert.throws(TypeError, function() { Object.defineProperties(obj, { prop: { value: 12, configurable: true } }); - return false; - } catch (e) { - return e instanceof TypeError && !obj.hasOwnProperty("prop"); - } - } -runTestCase(testcase); +}); +assert.sameValue(obj.hasOwnProperty("prop"), false, 'obj.hasOwnProperty("prop")'); diff --git a/test/built-ins/Object/defineProperties/15.2.3.7-6-a-286.js b/test/built-ins/Object/defineProperties/15.2.3.7-6-a-286.js index 38efcf4b75bbabcea5e545def0adcd54edc5fa87..c65a852dc123c00b964a07712e3a2ec65afa3c29 100644 --- a/test/built-ins/Object/defineProperties/15.2.3.7-6-a-286.js +++ b/test/built-ins/Object/defineProperties/15.2.3.7-6-a-286.js @@ -9,11 +9,8 @@ description: > of 'O', test TypeError is thrown when updating the [[Get]] attribute value of 'P' which is defined as non-configurable (10.6 [[DefineOwnProperty]] step 4) -includes: [runTestCase.js] ---*/ -function testcase() { - var arg; (function fun(a, b, c) { @@ -33,18 +30,15 @@ function testcase() { function get_func2() { return 10; } - try { +assert.throws(TypeError, function() { Object.defineProperties(arg, { "0": { get: get_func2 } }); - - return false; - } catch (e) { +}); var desc = Object.getOwnPropertyDescriptor(arg, "0"); - return e instanceof TypeError && desc.get === get_func1 && typeof desc.set === "undefined" && - desc.enumerable === false && desc.configurable === false; - } - } -runTestCase(testcase); +assert.sameValue(desc.get, get_func1, 'desc.get'); +assert.sameValue(typeof desc.set, "undefined", 'typeof desc.set'); +assert.sameValue(desc.enumerable, false, 'desc.enumerable'); +assert.sameValue(desc.configurable, false, 'desc.configurable'); diff --git a/test/built-ins/Object/defineProperties/15.2.3.7-6-a-287.js b/test/built-ins/Object/defineProperties/15.2.3.7-6-a-287.js index d30df0a2958ba2476f55ace625c58b14529e9e9e..798298cf88ebc623793b3d2178daf076003a71b5 100644 --- a/test/built-ins/Object/defineProperties/15.2.3.7-6-a-287.js +++ b/test/built-ins/Object/defineProperties/15.2.3.7-6-a-287.js @@ -9,11 +9,8 @@ description: > of 'O', test TypeError is thrown when updating the [[Set]] attribute value of 'P' which is defined as non-configurable (10.6 [[DefineOwnProperty]] step 4) -includes: [runTestCase.js] ---*/ -function testcase() { - var arg; (function fun(a, b, c) { @@ -34,18 +31,15 @@ function testcase() { function set_func(value) { arg.setVerifyHelpProp = value; } - try { +assert.throws(TypeError, function() { Object.defineProperties(arg, { "0": { set: set_func } }); - - return false; - } catch (e) { +}); var desc = Object.getOwnPropertyDescriptor(arg, "0"); - return e instanceof TypeError && desc.get === get_func && typeof desc.set === "undefined" && - desc.enumerable === false && desc.configurable === false; - } - } -runTestCase(testcase); +assert.sameValue(desc.get, get_func, 'desc.get'); +assert.sameValue(typeof desc.set, "undefined", 'typeof desc.set'); +assert.sameValue(desc.enumerable, false, 'desc.enumerable'); +assert.sameValue(desc.configurable, false, 'desc.configurable'); diff --git a/test/built-ins/Object/defineProperties/15.2.3.7-6-a-3.js b/test/built-ins/Object/defineProperties/15.2.3.7-6-a-3.js index c6b961343f39edcbe322664d073bd06578015cad..aa93f1f028a9e9065fae265a64bfa8c27edd6de5 100644 --- a/test/built-ins/Object/defineProperties/15.2.3.7-6-a-3.js +++ b/test/built-ins/Object/defineProperties/15.2.3.7-6-a-3.js @@ -6,10 +6,8 @@ es5id: 15.2.3.7-6-a-3 description: > Object.defineProperties - 'P' is own data property that overrides an inherited data property (8.12.9 step 1 ) -includes: [runTestCase.js] ---*/ -function testcase() { var proto = {}; Object.defineProperty(proto, "prop", { value: 11, @@ -23,17 +21,11 @@ function testcase() { value: 12, configurable: false }); - - try { +assert.throws(TypeError, function() { Object.defineProperties(obj, { prop: { value: 13, configurable: true } }); - return false; - } catch (e) { - return (e instanceof TypeError); - } - } -runTestCase(testcase); +}); diff --git a/test/built-ins/Object/defineProperties/15.2.3.7-6-a-4.js b/test/built-ins/Object/defineProperties/15.2.3.7-6-a-4.js index 5f2b8c72033fc0677447a5f2cbcfbcbc6242184a..e1c624b55104154071bbc660f3ac7235aa758eae 100644 --- a/test/built-ins/Object/defineProperties/15.2.3.7-6-a-4.js +++ b/test/built-ins/Object/defineProperties/15.2.3.7-6-a-4.js @@ -6,10 +6,8 @@ es5id: 15.2.3.7-6-a-4 description: > Object.defineProperties - 'P' is own data property that overrides an inherited accessor property (8.12.9 step 1 ) -includes: [runTestCase.js] ---*/ -function testcase() { var proto = {}; Object.defineProperty(proto, "prop", { get: function () { @@ -25,17 +23,11 @@ function testcase() { value: 12, configurable: false }); - - try { +assert.throws(TypeError, function() { Object.defineProperties(obj, { prop: { value: 13, configurable: true } }); - return false; - } catch (e) { - return (e instanceof TypeError); - } - } -runTestCase(testcase); +}); diff --git a/test/built-ins/Object/defineProperties/15.2.3.7-6-a-7.js b/test/built-ins/Object/defineProperties/15.2.3.7-6-a-7.js index 0c746d7d4578eb6a6976c814089845081b759e7f..f46b1a03ae335b4ce377722df68b39b9377f75b3 100644 --- a/test/built-ins/Object/defineProperties/15.2.3.7-6-a-7.js +++ b/test/built-ins/Object/defineProperties/15.2.3.7-6-a-7.js @@ -6,10 +6,8 @@ es5id: 15.2.3.7-6-a-7 description: > Object.defineProperties - 'P' is own accessor property that overrides an inherited data property (8.12.9 step 1 ) -includes: [runTestCase.js] ---*/ -function testcase() { var proto = {}; Object.defineProperty(proto, "prop", { value: 11, @@ -25,17 +23,12 @@ function testcase() { }, configurable: false }); - - try { +assert.throws(TypeError, function() { Object.defineProperties(obj, { prop: { value: 13, configurable: true } }); - return false; - } catch (e) { - return (e instanceof TypeError) && obj.prop === 12; - } - } -runTestCase(testcase); +}); +assert.sameValue(obj.prop, 12, 'obj.prop'); diff --git a/test/built-ins/Object/defineProperties/15.2.3.7-6-a-8.js b/test/built-ins/Object/defineProperties/15.2.3.7-6-a-8.js index 6a11a0b30989eef39b471b68449ca9cc345932a2..923f4fdc9b555d09e03c4b9f36426b68964a3cf0 100644 --- a/test/built-ins/Object/defineProperties/15.2.3.7-6-a-8.js +++ b/test/built-ins/Object/defineProperties/15.2.3.7-6-a-8.js @@ -6,10 +6,8 @@ es5id: 15.2.3.7-6-a-8 description: > Object.defineProperties - 'P' is own accessor property that overrides an inherited accessor property (8.12.9 step 1 ) -includes: [runTestCase.js] ---*/ -function testcase() { var proto = {}; Object.defineProperty(proto, "prop", { get: function() { @@ -27,17 +25,12 @@ function testcase() { }, configurable: false }); - - try { +assert.throws(TypeError, function() { Object.defineProperties(obj, { prop: { value: 13, configurable: true } }); - return false; - } catch (e) { - return (e instanceof TypeError) && obj.prop === 12; - } - } -runTestCase(testcase); +}); +assert.sameValue(obj.prop, 12, 'obj.prop'); diff --git a/test/built-ins/Object/defineProperties/15.2.3.7-6-a-9.js b/test/built-ins/Object/defineProperties/15.2.3.7-6-a-9.js index e5934a5907549aacb5dc5cf369e2b124a05c6443..1b703ad31e44e9c0ab2bf5956e7b8ff01166ac3a 100644 --- a/test/built-ins/Object/defineProperties/15.2.3.7-6-a-9.js +++ b/test/built-ins/Object/defineProperties/15.2.3.7-6-a-9.js @@ -6,26 +6,18 @@ es5id: 15.2.3.7-6-a-9 description: > Object.defineProperties - 'P' is own accessor property without a get function (8.12.9 step 1 ) -includes: [runTestCase.js] ---*/ -function testcase() { var obj = {}; Object.defineProperty(obj, "prop", { set: function () { }, configurable: false }); - - try { +assert.throws(TypeError, function() { Object.defineProperties(obj, { prop: { get: function () { }, configurable: true } }); - return false; - } catch (e) { - return (e instanceof TypeError); - } - } -runTestCase(testcase); +}); diff --git a/test/built-ins/Object/defineProperty/15.2.3.6-1-1.js b/test/built-ins/Object/defineProperty/15.2.3.6-1-1.js index 2e7cae54eceac083a1b95f46185d1a44775bf800..07851ab52a50e6ccbe9237e9c740ffcfd1336d17 100644 --- a/test/built-ins/Object/defineProperty/15.2.3.6-1-1.js +++ b/test/built-ins/Object/defineProperty/15.2.3.6-1-1.js @@ -4,15 +4,8 @@ /*--- es5id: 15.2.3.6-1-1 description: Object.defineProperty applied to undefined throws a TypeError -includes: [runTestCase.js] ---*/ -function testcase() { - try { +assert.throws(TypeError, function() { Object.defineProperty(undefined, "foo", {}); - return false; - } catch (e) { - return e instanceof TypeError; - } - } -runTestCase(testcase); +}); diff --git a/test/built-ins/Object/defineProperty/15.2.3.6-1-2.js b/test/built-ins/Object/defineProperty/15.2.3.6-1-2.js index e2a39b24692fd2f38ea95c4c8a80751c1c6b5397..ad1ef64aaa9330b8b8b0cc8e8933595ff5ac4d0f 100644 --- a/test/built-ins/Object/defineProperty/15.2.3.6-1-2.js +++ b/test/built-ins/Object/defineProperty/15.2.3.6-1-2.js @@ -4,15 +4,8 @@ /*--- es5id: 15.2.3.6-1-2 description: Object.defineProperty applied to null throws a TypeError -includes: [runTestCase.js] ---*/ -function testcase() { - try { +assert.throws(TypeError, function() { Object.defineProperty(null, "foo", {}); - return false; - } catch (e) { - return e instanceof TypeError; - } - } -runTestCase(testcase); +}); diff --git a/test/built-ins/Object/defineProperty/15.2.3.6-1-3.js b/test/built-ins/Object/defineProperty/15.2.3.6-1-3.js index b9b43408550947b290c38e4234b7bc2164fad5ef..7fac12e1be565f6dd49bff0eac3ce9caa7127587 100644 --- a/test/built-ins/Object/defineProperty/15.2.3.6-1-3.js +++ b/test/built-ins/Object/defineProperty/15.2.3.6-1-3.js @@ -6,15 +6,8 @@ es5id: 15.2.3.6-1-3 description: > Object.defineProperty applied to number primitive throws a TypeError -includes: [runTestCase.js] ---*/ -function testcase() { - try { +assert.throws(TypeError, function() { Object.defineProperty(5, "foo", {}); - return false; - } catch (e) { - return e instanceof TypeError; - } - } -runTestCase(testcase); +}); diff --git a/test/built-ins/Object/defineProperty/15.2.3.6-1-4.js b/test/built-ins/Object/defineProperty/15.2.3.6-1-4.js index 3c3292f3b5ce97fb401644d953203de163173758..2f0f774641e4fc9c2048629ff1b0b0ec8a13fb73 100644 --- a/test/built-ins/Object/defineProperty/15.2.3.6-1-4.js +++ b/test/built-ins/Object/defineProperty/15.2.3.6-1-4.js @@ -6,15 +6,8 @@ es5id: 15.2.3.6-1-4 description: > Object.defineProperty applied to string primitive throws a TypeError -includes: [runTestCase.js] ---*/ -function testcase() { - try { +assert.throws(TypeError, function() { Object.defineProperty("hello\nworld\\!", "foo", {}); - return false; - } catch (e) { - return e instanceof TypeError; - } - } -runTestCase(testcase); +}); diff --git a/test/built-ins/Object/defineProperty/15.2.3.6-1.js b/test/built-ins/Object/defineProperty/15.2.3.6-1.js index c914dc7bccf57ef8834f58147332e940d8a2bef4..c3459ee28ef9e22b5d50dbe1d5736d017c6abc80 100644 --- a/test/built-ins/Object/defineProperty/15.2.3.6-1.js +++ b/test/built-ins/Object/defineProperty/15.2.3.6-1.js @@ -6,17 +6,8 @@ es5id: 15.2.3.6-1 description: > Object.defineProperty throws TypeError if type of first param is not Object -includes: [runTestCase.js] ---*/ -function testcase() { - try { +assert.throws(TypeError, function() { Object.defineProperty(true, "foo", {}); - } - catch (e) { - if (e instanceof TypeError) { - return true; - } - } - } -runTestCase(testcase); +}); diff --git a/test/built-ins/Object/defineProperty/15.2.3.6-2-47.js b/test/built-ins/Object/defineProperty/15.2.3.6-2-47.js index e1d7435b055d276891c5bf5aabcadb2e7009ff51..1fa4963c1a4b7636a238d50ffebbaa7ad0a2ce19 100644 --- a/test/built-ins/Object/defineProperty/15.2.3.6-2-47.js +++ b/test/built-ins/Object/defineProperty/15.2.3.6-2-47.js @@ -7,10 +7,8 @@ description: > Object.defineProperty - TypeError exception is thrown when 'P' is an object that neither toString nor valueOf returns a primitive value -includes: [runTestCase.js] ---*/ -function testcase() { var obj = {}; var toStringAccessed = false; var valueOfAccessed = false; @@ -25,12 +23,8 @@ function testcase() { return {}; } }; - - try { +assert.throws(TypeError, function() { Object.defineProperty(obj, ownProp, {}); - return false; - } catch (e) { - return valueOfAccessed && toStringAccessed && e instanceof TypeError; - } - } -runTestCase(testcase); +}); +assert(valueOfAccessed, 'valueOfAccessed !== true'); +assert(toStringAccessed, 'toStringAccessed !== true'); diff --git a/test/built-ins/Object/defineProperty/15.2.3.6-3-1.js b/test/built-ins/Object/defineProperty/15.2.3.6-3-1.js index cd3a857fd32fb13acdf61d8c7f29e9cc803ae516..2dcf9d66973804a8c492dfa447bed6db2ce1be58 100644 --- a/test/built-ins/Object/defineProperty/15.2.3.6-3-1.js +++ b/test/built-ins/Object/defineProperty/15.2.3.6-3-1.js @@ -10,24 +10,14 @@ es5id: 15.2.3.6-3-1 description: > Object.defineProperty throws TypeError if desc has 'get' and 'value' present(8.10.5 step 9.a) -includes: [runTestCase.js] ---*/ -function testcase() { var o = {}; // dummy getter var getter = function () { return 1; } var desc = { get: getter, value: 101}; - - try { +assert.throws(TypeError, function() { Object.defineProperty(o, "foo", desc); - } - catch (e) { - if (e instanceof TypeError && - (o.hasOwnProperty("foo") === false)) { - return true; - } - } - } -runTestCase(testcase); +}); +assert.sameValue(o.hasOwnProperty("foo"), false, 'o.hasOwnProperty("foo")'); diff --git a/test/built-ins/Object/defineProperty/15.2.3.6-3-10.js b/test/built-ins/Object/defineProperty/15.2.3.6-3-10.js index d8ac440cf93643f4c9b6743dcb8c363e77620120..aa3bc8ca8c177e87e0072c9e919d7cae360b3f18 100644 --- a/test/built-ins/Object/defineProperty/15.2.3.6-3-10.js +++ b/test/built-ins/Object/defineProperty/15.2.3.6-3-10.js @@ -10,24 +10,14 @@ es5id: 15.2.3.6-3-10 description: > Object.defineProperty throws TypeError if setter is not callable but not undefined (Number)(8.10.5 step 8.b) -includes: [runTestCase.js] ---*/ -function testcase() { var o = {}; // dummy setter var setter = 42; var desc = { set: setter }; - - try { +assert.throws(TypeError, function() { Object.defineProperty(o, "foo", desc); - } - catch (e) { - if (e instanceof TypeError && - (o.hasOwnProperty("foo") === false)) { - return true; - } - } - } -runTestCase(testcase); +}); +assert.sameValue(o.hasOwnProperty("foo"), false, 'o.hasOwnProperty("foo")'); diff --git a/test/built-ins/Object/defineProperty/15.2.3.6-3-11.js b/test/built-ins/Object/defineProperty/15.2.3.6-3-11.js index 2af0b34957eb5d3e48f2d54a6faf1822b7c0ebfa..fb3a335b5610ba0470eaf9ad198b478740582620 100644 --- a/test/built-ins/Object/defineProperty/15.2.3.6-3-11.js +++ b/test/built-ins/Object/defineProperty/15.2.3.6-3-11.js @@ -10,24 +10,14 @@ es5id: 15.2.3.6-3-11 description: > Object.defineProperty throws TypeError if setter is not callable but not undefined (Boolean)(8.10.5 step 8.b) -includes: [runTestCase.js] ---*/ -function testcase() { var o = {}; // dummy setter var setter = true; var desc = { set: setter }; - - try { +assert.throws(TypeError, function() { Object.defineProperty(o, "foo", desc); - } - catch (e) { - if (e instanceof TypeError && - (o.hasOwnProperty("foo") === false)) { - return true; - } - } - } -runTestCase(testcase); +}); +assert.sameValue(o.hasOwnProperty("foo"), false, 'o.hasOwnProperty("foo")'); diff --git a/test/built-ins/Object/defineProperty/15.2.3.6-3-12.js b/test/built-ins/Object/defineProperty/15.2.3.6-3-12.js index d14a9006e8e3925019e518a15117394b6f7deca7..6435a0d7a4b5cd0dab3439484174b525c488e7f1 100644 --- a/test/built-ins/Object/defineProperty/15.2.3.6-3-12.js +++ b/test/built-ins/Object/defineProperty/15.2.3.6-3-12.js @@ -10,24 +10,14 @@ es5id: 15.2.3.6-3-12 description: > Object.defineProperty throws TypeError if setter is not callable but not undefined (String)(8.10.5 step 8.b) -includes: [runTestCase.js] ---*/ -function testcase() { var o = {}; // dummy setter var setter = "abc"; var desc = { set: setter }; - - try { +assert.throws(TypeError, function() { Object.defineProperty(o, "foo", desc); - } - catch (e) { - if (e instanceof TypeError && - (o.hasOwnProperty("foo") === false)) { - return true; - } - } - } -runTestCase(testcase); +}); +assert.sameValue(o.hasOwnProperty("foo"), false, 'o.hasOwnProperty("foo")'); diff --git a/test/built-ins/Object/defineProperty/15.2.3.6-3-13.js b/test/built-ins/Object/defineProperty/15.2.3.6-3-13.js index 311f910aaddb98d5e2d037e72ba61effcb2eaf1d..dfd980d6a21984d9d68c1ec48ea5d608049a03a5 100644 --- a/test/built-ins/Object/defineProperty/15.2.3.6-3-13.js +++ b/test/built-ins/Object/defineProperty/15.2.3.6-3-13.js @@ -10,24 +10,14 @@ es5id: 15.2.3.6-3-13 description: > Object.defineProperty throws TypeError if the setter in desc is not callable (Null)(8.10.5 step 8.b) -includes: [runTestCase.js] ---*/ -function testcase() { var o = {}; // dummy setter var setter = null; var desc = { set: setter }; - - try { +assert.throws(TypeError, function() { Object.defineProperty(o, "foo", desc); - } - catch (e) { - if (e instanceof TypeError && - (o.hasOwnProperty("foo") === false)) { - return true; - } - } - } -runTestCase(testcase); +}); +assert.sameValue(o.hasOwnProperty("foo"), false, 'o.hasOwnProperty("foo")'); diff --git a/test/built-ins/Object/defineProperty/15.2.3.6-3-14.js b/test/built-ins/Object/defineProperty/15.2.3.6-3-14.js index e77f34afc90bbe6648879e306ff334b0a9ef3a80..0ae2a83500573190daea49d7efc1cacaf6972e49 100644 --- a/test/built-ins/Object/defineProperty/15.2.3.6-3-14.js +++ b/test/built-ins/Object/defineProperty/15.2.3.6-3-14.js @@ -10,24 +10,14 @@ es5id: 15.2.3.6-3-14 description: > Object.defineProperty throws TypeError if setter is not callable but not undefined (Object)(8.10.5 step 8.b) -includes: [runTestCase.js] ---*/ -function testcase() { var o = {}; // dummy getter var setter = { a: 1 }; var desc = { set: setter }; - - try { +assert.throws(TypeError, function() { Object.defineProperty(o, "foo", desc); - } - catch (e) { - if (e instanceof TypeError && - (o.hasOwnProperty("foo") === false)) { - return true; - } - } - } -runTestCase(testcase); +}); +assert.sameValue(o.hasOwnProperty("foo"), false, 'o.hasOwnProperty("foo")'); diff --git a/test/built-ins/Object/defineProperty/15.2.3.6-3-15.js b/test/built-ins/Object/defineProperty/15.2.3.6-3-15.js index fa8505aa046c434f6f66229eb3415b256d9d6bb0..03bca14f13ed929531c2b3ae94f88f2c8349a9f5 100644 --- a/test/built-ins/Object/defineProperty/15.2.3.6-3-15.js +++ b/test/built-ins/Object/defineProperty/15.2.3.6-3-15.js @@ -4,18 +4,9 @@ /*--- es5id: 15.2.3.6-3-15 description: Object.defineProperty - 'Attributes' is undefined (8.10.5 step 1) -includes: [runTestCase.js] ---*/ -function testcase() { - var obj = {}; - - try { +assert.throws(TypeError, function() { Object.defineProperty(obj, "property", undefined); - return false; - } catch (e) { - return e instanceof TypeError; - } - } -runTestCase(testcase); +}); diff --git a/test/built-ins/Object/defineProperty/15.2.3.6-3-16.js b/test/built-ins/Object/defineProperty/15.2.3.6-3-16.js index f69e46b1b88687e1173632cff2cc15562e4d2df1..e56a08412e58e4628a44c4ae6d0a00a8c2df4c11 100644 --- a/test/built-ins/Object/defineProperty/15.2.3.6-3-16.js +++ b/test/built-ins/Object/defineProperty/15.2.3.6-3-16.js @@ -4,16 +4,8 @@ /*--- es5id: 15.2.3.6-3-16 description: Object.defineProperty - 'Attributes' is null (8.10.5 step 1) -includes: [runTestCase.js] ---*/ -function testcase() { - - try { +assert.throws(TypeError, function() { Object.defineProperty({}, "property", null); - return false; - } catch (e) { - return e instanceof TypeError; - } - } -runTestCase(testcase); +}); diff --git a/test/built-ins/Object/defineProperty/15.2.3.6-3-17.js b/test/built-ins/Object/defineProperty/15.2.3.6-3-17.js index 21e9cf4d29e38bca31c3bb870930b1b075d7f74a..855ddf4b2ea8c0a4e6e9fcae41a3f54dbe97be92 100644 --- a/test/built-ins/Object/defineProperty/15.2.3.6-3-17.js +++ b/test/built-ins/Object/defineProperty/15.2.3.6-3-17.js @@ -6,16 +6,8 @@ es5id: 15.2.3.6-3-17 description: > Object.defineProperty - 'Attributes' is a boolean primitive (8.10.5 step 1) -includes: [runTestCase.js] ---*/ -function testcase() { - - try { +assert.throws(TypeError, function() { Object.defineProperty({}, "property", true); - return false; - } catch (e) { - return e instanceof TypeError; - } - } -runTestCase(testcase); +}); diff --git a/test/built-ins/Object/defineProperty/15.2.3.6-3-18.js b/test/built-ins/Object/defineProperty/15.2.3.6-3-18.js index b3cb2ae4ee721a947c82a6056392d4fd99c7b47e..c2f3bcd6734637ef47583212e4fb4474fe8db14d 100644 --- a/test/built-ins/Object/defineProperty/15.2.3.6-3-18.js +++ b/test/built-ins/Object/defineProperty/15.2.3.6-3-18.js @@ -6,16 +6,8 @@ es5id: 15.2.3.6-3-18 description: > Object.defineProperty - 'Attributes' is a number primitive (8.10.5 step 1) -includes: [runTestCase.js] ---*/ -function testcase() { - - try { +assert.throws(TypeError, function() { Object.defineProperty({}, "property", 12); - return false; - } catch (e) { - return e instanceof TypeError; - } - } -runTestCase(testcase); +}); diff --git a/test/built-ins/Object/defineProperty/15.2.3.6-3-19.js b/test/built-ins/Object/defineProperty/15.2.3.6-3-19.js index 4ea8af8ed578b906cb336128be2d1f28e69c65e6..c108213483099dba0f055ebe44fa7acadb638977 100644 --- a/test/built-ins/Object/defineProperty/15.2.3.6-3-19.js +++ b/test/built-ins/Object/defineProperty/15.2.3.6-3-19.js @@ -6,16 +6,8 @@ es5id: 15.2.3.6-3-19 description: > Object.defineProperty - 'Attributes' is a string primitive (8.10.5 step 1) -includes: [runTestCase.js] ---*/ -function testcase() { - - try { +assert.throws(TypeError, function() { Object.defineProperty({}, "property", "abc"); - return false; - } catch (e) { - return e instanceof TypeError; - } - } -runTestCase(testcase); +}); diff --git a/test/built-ins/Object/defineProperty/15.2.3.6-3-2.js b/test/built-ins/Object/defineProperty/15.2.3.6-3-2.js index c42ad2d38408eeabd2e488c38b4482d995767a60..768645e349f1f1166ae58b1e5637d7f57fcaa14f 100644 --- a/test/built-ins/Object/defineProperty/15.2.3.6-3-2.js +++ b/test/built-ins/Object/defineProperty/15.2.3.6-3-2.js @@ -10,24 +10,14 @@ es5id: 15.2.3.6-3-2 description: > Object.defineProperty throws TypeError if desc has 'get' and 'writable' present(8.10.5 step 9.a) -includes: [runTestCase.js] ---*/ -function testcase() { var o = {}; // dummy getter var getter = function () { return 1; } var desc = { get: getter, writable: false }; - - try { +assert.throws(TypeError, function() { Object.defineProperty(o, "foo", desc); - } - catch (e) { - if (e instanceof TypeError && - (o.hasOwnProperty("foo") === false)) { - return true; - } - } - } -runTestCase(testcase); +}); +assert.sameValue(o.hasOwnProperty("foo"), false, 'o.hasOwnProperty("foo")'); diff --git a/test/built-ins/Object/defineProperty/15.2.3.6-3-3.js b/test/built-ins/Object/defineProperty/15.2.3.6-3-3.js index a3a8ef7d4484ad56894c8ca5a504453d79c1b413..7a254a689b7682b110e4859dcae9f04b61223ea9 100644 --- a/test/built-ins/Object/defineProperty/15.2.3.6-3-3.js +++ b/test/built-ins/Object/defineProperty/15.2.3.6-3-3.js @@ -10,24 +10,14 @@ es5id: 15.2.3.6-3-3 description: > Object.defineProperty throws TypeError if desc has 'set' and 'value' present(8.10.5 step 9.a) -includes: [runTestCase.js] ---*/ -function testcase() { var o = {}; // dummy setter var setter = function () { } var desc = { set: setter, value: 101}; - - try { +assert.throws(TypeError, function() { Object.defineProperty(o, "foo", desc); - } - catch (e) { - if (e instanceof TypeError && - (o.hasOwnProperty("foo") === false)) { - return true; - } - } - } -runTestCase(testcase); +}); +assert.sameValue(o.hasOwnProperty("foo"), false, 'o.hasOwnProperty("foo")'); diff --git a/test/built-ins/Object/defineProperty/15.2.3.6-3-4.js b/test/built-ins/Object/defineProperty/15.2.3.6-3-4.js index 85fb4c81181ee1713e72422cf0f26025958129ec..14d006411b2ebd4f0701a2789098d9e30a7d1b9c 100644 --- a/test/built-ins/Object/defineProperty/15.2.3.6-3-4.js +++ b/test/built-ins/Object/defineProperty/15.2.3.6-3-4.js @@ -10,24 +10,14 @@ es5id: 15.2.3.6-3-4 description: > Object.defineProperty throws TypeError if desc has 'set' and 'writable' present(8.10.5 step 9.a) -includes: [runTestCase.js] ---*/ -function testcase() { var o = {}; // dummy getter var setter = function () { } var desc = { set: setter, writable: false }; - - try { +assert.throws(TypeError, function() { Object.defineProperty(o, "foo", desc); - } - catch (e) { - if (e instanceof TypeError && - (o.hasOwnProperty("foo") === false)) { - return true; - } - } - } -runTestCase(testcase); +}); +assert.sameValue(o.hasOwnProperty("foo"), false, 'o.hasOwnProperty("foo")'); diff --git a/test/built-ins/Object/defineProperty/15.2.3.6-3-5.js b/test/built-ins/Object/defineProperty/15.2.3.6-3-5.js index 6d9530c8833246b2b7b1a299197998e6bc6ca86f..af67691860e7f1b66778d37f520c4c0376849cc1 100644 --- a/test/built-ins/Object/defineProperty/15.2.3.6-3-5.js +++ b/test/built-ins/Object/defineProperty/15.2.3.6-3-5.js @@ -10,24 +10,14 @@ es5id: 15.2.3.6-3-5 description: > Object.defineProperty throws TypeError if getter is not callable but not undefined (Number)(8.10.5 step 7.b) -includes: [runTestCase.js] ---*/ -function testcase() { var o = {}; // dummy getter var getter = 42; var desc = { get: getter }; - - try { +assert.throws(TypeError, function() { Object.defineProperty(o, "foo", desc); - } - catch (e) { - if (e instanceof TypeError && - (o.hasOwnProperty("foo") === false)) { - return true; - } - } - } -runTestCase(testcase); +}); +assert.sameValue(o.hasOwnProperty("foo"), false, 'o.hasOwnProperty("foo")'); diff --git a/test/built-ins/Object/defineProperty/15.2.3.6-3-6.js b/test/built-ins/Object/defineProperty/15.2.3.6-3-6.js index 8580c10ff167a24e8f5913b83b13cbe5d9064247..075befa12a81b3ec3a812c2aabab28f950b7693b 100644 --- a/test/built-ins/Object/defineProperty/15.2.3.6-3-6.js +++ b/test/built-ins/Object/defineProperty/15.2.3.6-3-6.js @@ -10,24 +10,14 @@ es5id: 15.2.3.6-3-6 description: > Object.defineProperty throws TypeError if getter is not callable but not undefined (Boolean)(8.10.5 step 7.b) -includes: [runTestCase.js] ---*/ -function testcase() { var o = {}; // dummy getter var getter = true; var desc = { get: getter }; - - try { +assert.throws(TypeError, function() { Object.defineProperty(o, "foo", desc); - } - catch (e) { - if (e instanceof TypeError && - (o.hasOwnProperty("foo") === false)) { - return true; - } - } - } -runTestCase(testcase); +}); +assert.sameValue(o.hasOwnProperty("foo"), false, 'o.hasOwnProperty("foo")'); diff --git a/test/built-ins/Object/defineProperty/15.2.3.6-3-7.js b/test/built-ins/Object/defineProperty/15.2.3.6-3-7.js index e048b74ec172d82a244f49cf6d0b337e178a3677..9625de703cad2919580b8253d7e631feedcf32bb 100644 --- a/test/built-ins/Object/defineProperty/15.2.3.6-3-7.js +++ b/test/built-ins/Object/defineProperty/15.2.3.6-3-7.js @@ -10,24 +10,14 @@ es5id: 15.2.3.6-3-7 description: > Object.defineProperty throws TypeError if getter is not callable but not undefined (String)(8.10.5 step 7.b) -includes: [runTestCase.js] ---*/ -function testcase() { var o = {}; // dummy getter var getter = "abc"; var desc = { get: getter }; - - try { +assert.throws(TypeError, function() { Object.defineProperty(o, "foo", desc); - } - catch (e) { - if (e instanceof TypeError && - (o.hasOwnProperty("foo") === false)) { - return true; - } - } - } -runTestCase(testcase); +}); +assert.sameValue(o.hasOwnProperty("foo"), false, 'o.hasOwnProperty("foo")'); diff --git a/test/built-ins/Object/defineProperty/15.2.3.6-3-8.js b/test/built-ins/Object/defineProperty/15.2.3.6-3-8.js index 70e9387f02f2c6e7bf92c523b1339e2239c64477..a719492994ec8ca398c69b2ed08a0b685e817d66 100644 --- a/test/built-ins/Object/defineProperty/15.2.3.6-3-8.js +++ b/test/built-ins/Object/defineProperty/15.2.3.6-3-8.js @@ -10,24 +10,14 @@ es5id: 15.2.3.6-3-8 description: > Object.defineProperty throws TypeError if getter is not callable but not undefined (Null)(8.10.5 step 7.b) -includes: [runTestCase.js] ---*/ -function testcase() { var o = {}; // dummy getter var getter = null; var desc = { get: getter }; - - try { +assert.throws(TypeError, function() { Object.defineProperty(o, "foo", desc); - } - catch (e) { - if (e instanceof TypeError && - (o.hasOwnProperty("foo") === false)) { - return true; - } - } - } -runTestCase(testcase); +}); +assert.sameValue(o.hasOwnProperty("foo"), false, 'o.hasOwnProperty("foo")'); diff --git a/test/built-ins/Object/defineProperty/15.2.3.6-3-9.js b/test/built-ins/Object/defineProperty/15.2.3.6-3-9.js index 2cd8c3e6a5964e1eaafc7a3db6570595eaa45d32..eb1e1b17e0382e5ee9e0103876b0d7090796705a 100644 --- a/test/built-ins/Object/defineProperty/15.2.3.6-3-9.js +++ b/test/built-ins/Object/defineProperty/15.2.3.6-3-9.js @@ -10,24 +10,14 @@ es5id: 15.2.3.6-3-9 description: > Object.defineProperty throws TypeError if getter is not callable but not undefined (Object)(8.10.5 step 7.b) -includes: [runTestCase.js] ---*/ -function testcase() { var o = {}; // dummy getter var getter = { a: 1 }; var desc = { get: getter }; - - try { +assert.throws(TypeError, function() { Object.defineProperty(o, "foo", desc); - } - catch (e) { - if (e instanceof TypeError && - (o.hasOwnProperty("foo") === false)) { - return true; - } - } - } -runTestCase(testcase); +}); +assert.sameValue(o.hasOwnProperty("foo"), false, 'o.hasOwnProperty("foo")'); diff --git a/test/built-ins/Object/defineProperty/15.2.3.6-4-1.js b/test/built-ins/Object/defineProperty/15.2.3.6-4-1.js index 92413a320fa4f513fc7afd99e2cb51d5d19a8610..8fcec00fed03fd3753be495a1b24bafa0c764051 100644 --- a/test/built-ins/Object/defineProperty/15.2.3.6-4-1.js +++ b/test/built-ins/Object/defineProperty/15.2.3.6-4-1.js @@ -12,22 +12,12 @@ es5id: 15.2.3.6-4-1 description: > Object.defineProperty throws TypeError when adding properties to non-extensible objects(8.12.9 step 3) -includes: [runTestCase.js] ---*/ -function testcase() { var o = {}; Object.preventExtensions(o); - - try { +assert.throws(TypeError, function() { var desc = { value: 1 }; Object.defineProperty(o, "foo", desc); - } - catch (e) { - if (e instanceof TypeError && - (o.hasOwnProperty("foo") === false)) { - return true; - } - } - } -runTestCase(testcase); +}); +assert.sameValue(o.hasOwnProperty("foo"), false, 'o.hasOwnProperty("foo")'); diff --git a/test/built-ins/Object/defineProperty/15.2.3.6-4-10.js b/test/built-ins/Object/defineProperty/15.2.3.6-4-10.js index c8c916b5be4053a86557b4c6b9c897c73b3df2ee..096d483e018ceb48a9e2b2b6e754b00a4ac212e4 100644 --- a/test/built-ins/Object/defineProperty/15.2.3.6-4-10.js +++ b/test/built-ins/Object/defineProperty/15.2.3.6-4-10.js @@ -12,10 +12,8 @@ description: > Object.defineProperty throws TypeError when changing [[Enumerable]] from false to true on non-configurable accessor properties -includes: [runTestCase.js] ---*/ -function testcase() { var o = {}; // create an accessor property; all other attributes default to false. @@ -27,20 +25,11 @@ function testcase() { // now, setting enumerable to true should fail, since [[Configurable]] // on the original property will be false. var desc = { get: getter, enumerable: true }; - - try { +assert.throws(TypeError, function() { Object.defineProperty(o, "foo", desc); - } - catch (e) { - if (e instanceof TypeError) { +}); // the property should remain unchanged. var d2 = Object.getOwnPropertyDescriptor(o, "foo"); - if (d2.get === getter && - d2.enumerable === false && - d2.configurable === false) { - return true; - } - } - } - } -runTestCase(testcase); +assert.sameValue(d2.get, getter, 'd2.get'); +assert.sameValue(d2.enumerable, false, 'd2.enumerable'); +assert.sameValue(d2.configurable, false, 'd2.configurable'); diff --git a/test/built-ins/Object/defineProperty/15.2.3.6-4-11.js b/test/built-ins/Object/defineProperty/15.2.3.6-4-11.js index c2e53cabbfc16dbe0845a0f15154361c25466fec..c2f96ae2b034b41ffa8f159367bd846157efa84f 100644 --- a/test/built-ins/Object/defineProperty/15.2.3.6-4-11.js +++ b/test/built-ins/Object/defineProperty/15.2.3.6-4-11.js @@ -12,10 +12,8 @@ description: > Object.defineProperty throws TypeError when changing [[Enumerable]] from true to false on non-configurable accessor properties -includes: [runTestCase.js] ---*/ -function testcase() { var o = {}; // create an accessor property; all other attributes default to false. @@ -27,20 +25,11 @@ function testcase() { // now, setting enumerable to true should fail, since [[Configurable]] // on the original property will be false. var desc = { get: getter, enumerable: false }; - - try { +assert.throws(TypeError, function() { Object.defineProperty(o, "foo", desc); - } - catch (e) { - if (e instanceof TypeError) { +}); // the property should remain unchanged. var d2 = Object.getOwnPropertyDescriptor(o, "foo"); - if (d2.get === getter && - d2.enumerable === true && - d2.configurable === false) { - return true; - } - } - } - } -runTestCase(testcase); +assert.sameValue(d2.get, getter, 'd2.get'); +assert.sameValue(d2.enumerable, true, 'd2.enumerable'); +assert.sameValue(d2.configurable, false, 'd2.configurable'); diff --git a/test/built-ins/Object/defineProperty/15.2.3.6-4-12.js b/test/built-ins/Object/defineProperty/15.2.3.6-4-12.js index ccaee1e473bc3cd61804bb649828eec824baf141..a2d049bb3436599845c38866eaf9d44aa615fb0e 100644 --- a/test/built-ins/Object/defineProperty/15.2.3.6-4-12.js +++ b/test/built-ins/Object/defineProperty/15.2.3.6-4-12.js @@ -10,10 +10,8 @@ es5id: 15.2.3.6-4-12 description: > Object.defineProperty throws TypeError when changing non-configurable data properties to accessor properties -includes: [runTestCase.js] ---*/ -function testcase() { var o = {}; // create a data valued property; all other attributes default to false. @@ -27,20 +25,12 @@ function testcase() { var getter = function () { return 1; } var desc = { get: getter }; - try { +assert.throws(TypeError, function() { Object.defineProperty(o, "foo", desc); - } - catch (e) { - if (e instanceof TypeError) { +}); // the property should remain a data valued property. var d2 = Object.getOwnPropertyDescriptor(o, "foo"); - if (d2.value === 101 && - d2.writable === false && - d2.enumerable === false && - d2.configurable === false) { - return true; - } - } - } - } -runTestCase(testcase); +assert.sameValue(d2.value, 101, 'd2.value'); +assert.sameValue(d2.writable, false, 'd2.writable'); +assert.sameValue(d2.enumerable, false, 'd2.enumerable'); +assert.sameValue(d2.configurable, false, 'd2.configurable'); diff --git a/test/built-ins/Object/defineProperty/15.2.3.6-4-120.js b/test/built-ins/Object/defineProperty/15.2.3.6-4-120.js index 1c4501485fc9111cd36524f799fd8170e3253908..62f3f419f9fbca5332ee617b011993594abcbb2d 100644 --- a/test/built-ins/Object/defineProperty/15.2.3.6-4-120.js +++ b/test/built-ins/Object/defineProperty/15.2.3.6-4-120.js @@ -8,19 +8,11 @@ description: > property of 'O', the [[Value]] field of 'desc' is absent, test TypeError is thrown when updating the [[Configurable]] attribute of the length property from false to true (15.4.5.1 step 3.a.i) -includes: [runTestCase.js] ---*/ -function testcase() { - var arrObj = []; - try { +assert.throws(TypeError, function() { Object.defineProperty(arrObj, "length", { configurable: true }); - return false; - } catch (e) { - return e instanceof TypeError; - } - } -runTestCase(testcase); +}); diff --git a/test/built-ins/Object/defineProperty/15.2.3.6-4-121.js b/test/built-ins/Object/defineProperty/15.2.3.6-4-121.js index 6449cbe9d2a6a625498dcefd2de263b852107a80..3122743c37554cb8a2dff15b1f8b7039011d689a 100644 --- a/test/built-ins/Object/defineProperty/15.2.3.6-4-121.js +++ b/test/built-ins/Object/defineProperty/15.2.3.6-4-121.js @@ -8,19 +8,11 @@ description: > property of 'O', the [[Value]] field of 'desc' is absent, test TypeError is thrown when updating the [[Enumerable]] attribute of the length property from false to true (15.4.5.1 step 3.a.i) -includes: [runTestCase.js] ---*/ -function testcase() { - var arrObj = []; - try { +assert.throws(TypeError, function() { Object.defineProperty(arrObj, "length", { enumerable: true }); - return false; - } catch (e) { - return e instanceof TypeError; - } - } -runTestCase(testcase); +}); diff --git a/test/built-ins/Object/defineProperty/15.2.3.6-4-122.js b/test/built-ins/Object/defineProperty/15.2.3.6-4-122.js index 0a7961a318ea2ac5193b6d9abf91caac3f7112b2..d65953e8799ce0752517f0fe08d9dcda5641c89b 100644 --- a/test/built-ins/Object/defineProperty/15.2.3.6-4-122.js +++ b/test/built-ins/Object/defineProperty/15.2.3.6-4-122.js @@ -7,21 +7,13 @@ description: > Object.defineProperty - 'O' is an Array, 'name' is the length property of 'O', test TypeError is thrown when 'desc' is accessor descriptor (15.4.5.1 step 3.a.i) -includes: [runTestCase.js] ---*/ -function testcase() { - var arrObj = []; - try { +assert.throws(TypeError, function() { Object.defineProperty(arrObj, "length", { get: function () { return 2; } }); - return false; - } catch (e) { - return e instanceof TypeError; - } - } -runTestCase(testcase); +}); diff --git a/test/built-ins/Object/defineProperty/15.2.3.6-4-123.js b/test/built-ins/Object/defineProperty/15.2.3.6-4-123.js index c4bdd45b4489c208998e75c519086e51930a4ffa..f807ba2524a6f4b265d07eeee5ea98613c517995 100644 --- a/test/built-ins/Object/defineProperty/15.2.3.6-4-123.js +++ b/test/built-ins/Object/defineProperty/15.2.3.6-4-123.js @@ -8,23 +8,14 @@ description: > property of 'O', the [[Value]] field of 'desc' is absent, test TypeError is thrown when updating the [[Writable]] attribute of the length property from false to true (15.4.5.1 step 3.a.i) -includes: [runTestCase.js] ---*/ -function testcase() { - var arrObj = []; - try { +assert.throws(TypeError, function() { Object.defineProperty(arrObj, "length", { writable: false }); Object.defineProperty(arrObj, "length", { writable: true }); - - return false; - } catch (e) { - return e instanceof TypeError; - } - } -runTestCase(testcase); +}); diff --git a/test/built-ins/Object/defineProperty/15.2.3.6-4-125.js b/test/built-ins/Object/defineProperty/15.2.3.6-4-125.js index beae885f572cbabf48ace3f4e1f288a46435fc7f..32c822833011a246f7ffcb337d3b67051a4c9f7f 100644 --- a/test/built-ins/Object/defineProperty/15.2.3.6-4-125.js +++ b/test/built-ins/Object/defineProperty/15.2.3.6-4-125.js @@ -7,20 +7,11 @@ description: > Object.defineProperty - 'O' is an Array, 'name' is the length property of 'O', test that RangeError exception is thrown when [[Value]] field of 'desc' is undefined (15.4.5.1 step 3.c) -includes: [runTestCase.js] ---*/ -function testcase() { - var arrObj = []; - - try { +assert.throws(RangeError, function() { Object.defineProperty(arrObj, "length", { value: undefined }); - return false; - } catch (e) { - return e instanceof RangeError; - } - } -runTestCase(testcase); +}); diff --git a/test/built-ins/Object/defineProperty/15.2.3.6-4-13.js b/test/built-ins/Object/defineProperty/15.2.3.6-4-13.js index f815a71f59e6be37396b5b9ed6677d8f1d5ac2b8..dba8d0421e5005324a7dbeb24caa9a20c0733a9d 100644 --- a/test/built-ins/Object/defineProperty/15.2.3.6-4-13.js +++ b/test/built-ins/Object/defineProperty/15.2.3.6-4-13.js @@ -10,10 +10,8 @@ es5id: 15.2.3.6-4-13 description: > Object.defineProperty throws TypeError when changing non-configurable accessor properties to data properties -includes: [runTestCase.js] ---*/ -function testcase() { var o = {}; // create an accessor property; all other attributes default to false. @@ -26,19 +24,10 @@ function testcase() { // changing "foo" to be a data property should fail, since [[Configurable]] // on the original property will be false. var desc = { value: 101 }; - - try { +assert.throws(TypeError, function() { Object.defineProperty(o, "foo", desc); - } - catch (e) { - if (e instanceof TypeError) { +}); // the property should remain an accessor property. var d2 = Object.getOwnPropertyDescriptor(o, "foo"); - if (d2.get === getter && - d2.configurable === false) { - return true; - } - } - } - } -runTestCase(testcase); +assert.sameValue(d2.get, getter, 'd2.get'); +assert.sameValue(d2.configurable, false, 'd2.configurable'); diff --git a/test/built-ins/Object/defineProperty/15.2.3.6-4-133.js b/test/built-ins/Object/defineProperty/15.2.3.6-4-133.js index a9d8b98258465102ad2f932a5ad5b3ccb375c5b3..990f4c1905653e7a3846062f6cda4037914bd4aa 100644 --- a/test/built-ins/Object/defineProperty/15.2.3.6-4-133.js +++ b/test/built-ins/Object/defineProperty/15.2.3.6-4-133.js @@ -7,20 +7,11 @@ description: > Object.defineProperty - 'O' is an Array, 'name' is the length property of 'O', test RangeError exception is thrown when the [[Value]] field of 'desc' is a negative number (15.4.5.1 step 3.c) -includes: [runTestCase.js] ---*/ -function testcase() { - var arrObj = []; - - try { +assert.throws(RangeError, function() { Object.defineProperty(arrObj, "length", { value: -9 }); - return false; - } catch (e) { - return e instanceof RangeError; - } - } -runTestCase(testcase); +}); diff --git a/test/built-ins/Object/defineProperty/15.2.3.6-4-134.js b/test/built-ins/Object/defineProperty/15.2.3.6-4-134.js index ec83b561cb6c8b39ca207d374bee4cd31b2c14ba..6141877b5a11f0a34213a004819039db3e38af87 100644 --- a/test/built-ins/Object/defineProperty/15.2.3.6-4-134.js +++ b/test/built-ins/Object/defineProperty/15.2.3.6-4-134.js @@ -7,20 +7,11 @@ description: > Object.defineProperty - 'O' is an Array, 'name' is the length property of 'O', test RangeError exception is thrown when the [[Value]] field of 'desc' is +Infinity (15.4.5.1 step 3.c) -includes: [runTestCase.js] ---*/ -function testcase() { - var arrObj = []; - - try { +assert.throws(RangeError, function() { Object.defineProperty(arrObj, "length", { value: +Infinity }); - return false; - } catch (e) { - return e instanceof RangeError; - } - } -runTestCase(testcase); +}); diff --git a/test/built-ins/Object/defineProperty/15.2.3.6-4-135.js b/test/built-ins/Object/defineProperty/15.2.3.6-4-135.js index 4822a5639588db5ed35aff5cf529800ca7d737cb..fa36e838f26ba8cc77f62cfcfa6b3377cdf2dab8 100644 --- a/test/built-ins/Object/defineProperty/15.2.3.6-4-135.js +++ b/test/built-ins/Object/defineProperty/15.2.3.6-4-135.js @@ -7,20 +7,11 @@ description: > Object.defineProperty - 'O' is an Array, 'name' is the length property of 'O', test RangeError exception is thrown when the [[Value]] field of 'desc' is -Infinity (15.4.5.1 step 3.c) -includes: [runTestCase.js] ---*/ -function testcase() { - var arrObj = []; - - try { +assert.throws(RangeError, function() { Object.defineProperty(arrObj, "length", { value: -Infinity }); - return false; - } catch (e) { - return e instanceof RangeError; - } - } -runTestCase(testcase); +}); diff --git a/test/built-ins/Object/defineProperty/15.2.3.6-4-136.js b/test/built-ins/Object/defineProperty/15.2.3.6-4-136.js index 2aac312bb18e5139d5ff3535bff6694dbb4d72c5..a4b4c1b79e53a3de4ef139ab14ae1fa9e1ffe34c 100644 --- a/test/built-ins/Object/defineProperty/15.2.3.6-4-136.js +++ b/test/built-ins/Object/defineProperty/15.2.3.6-4-136.js @@ -7,20 +7,11 @@ description: > Object.defineProperty - 'O' is an Array, 'name' is the length property of 'O', test RangeError exception is thrown when the [[Value]] field of 'desc' is NaN (15.4.5.1 step 3.c) -includes: [runTestCase.js] ---*/ -function testcase() { - var arrObj = []; - - try { +assert.throws(RangeError, function() { Object.defineProperty(arrObj, "length", { value: NaN }); - return false; - } catch (e) { - return e instanceof RangeError; - } - } -runTestCase(testcase); +}); diff --git a/test/built-ins/Object/defineProperty/15.2.3.6-4-138.js b/test/built-ins/Object/defineProperty/15.2.3.6-4-138.js index 0cc3097626768ee8a0de7bc09e56237f9cc5d51d..b1f9b8fc6b7dd4b583ef19f7efc2d1b215afbf87 100644 --- a/test/built-ins/Object/defineProperty/15.2.3.6-4-138.js +++ b/test/built-ins/Object/defineProperty/15.2.3.6-4-138.js @@ -8,21 +8,11 @@ description: > property of 'O', test RangeError exception is thrown when the [[Value]] field of 'desc' is a string containing a negative number (15.4.5.1 step 3.c) -includes: [runTestCase.js] ---*/ -function testcase() { - var arrObj = []; - - try { +assert.throws(RangeError, function() { Object.defineProperty(arrObj, "length", { value: "-42" }); - return false; - } catch (e) { - return e instanceof RangeError; - } - - } -runTestCase(testcase); +}); diff --git a/test/built-ins/Object/defineProperty/15.2.3.6-4-139.js b/test/built-ins/Object/defineProperty/15.2.3.6-4-139.js index f1d0616bb9fa47778c850820da2fb867260e8032..13a4b9380b433213c9ebc3f24549dee2a8feac05 100644 --- a/test/built-ins/Object/defineProperty/15.2.3.6-4-139.js +++ b/test/built-ins/Object/defineProperty/15.2.3.6-4-139.js @@ -8,21 +8,11 @@ description: > property of 'O', test RangeError exception is thrown when the [[Value]] field of 'desc' is a string containing a decimal number (15.4.5.1 step 3.c) -includes: [runTestCase.js] ---*/ -function testcase() { - var arrObj = []; - - try { +assert.throws(RangeError, function() { Object.defineProperty(arrObj, "length", { value: "200.59" }); - return false; - } catch (e) { - return e instanceof RangeError; - } - - } -runTestCase(testcase); +}); diff --git a/test/built-ins/Object/defineProperty/15.2.3.6-4-140.js b/test/built-ins/Object/defineProperty/15.2.3.6-4-140.js index d34bb0a5e4502f2e1f42d55f3bbe1801cdd038cf..65d068b74e0a600aed63175728bb65df21fb2a24 100644 --- a/test/built-ins/Object/defineProperty/15.2.3.6-4-140.js +++ b/test/built-ins/Object/defineProperty/15.2.3.6-4-140.js @@ -8,21 +8,11 @@ description: > property of 'O', test RangeError exception is thrown when the [[Value]] field of 'desc' is a string containing +Infinity (15.4.5.1 step 3.c) -includes: [runTestCase.js] ---*/ -function testcase() { - var arrObj = []; - - try { +assert.throws(RangeError, function() { Object.defineProperty(arrObj, "length", { value: "+Infinity" }); - return false; - } catch (e) { - return e instanceof RangeError; - } - - } -runTestCase(testcase); +}); diff --git a/test/built-ins/Object/defineProperty/15.2.3.6-4-141.js b/test/built-ins/Object/defineProperty/15.2.3.6-4-141.js index b6627d57d68050c427a7cb3c929e7bb110b707f4..a39d1564a69d012c7d7348eb82740ef8d7314f52 100644 --- a/test/built-ins/Object/defineProperty/15.2.3.6-4-141.js +++ b/test/built-ins/Object/defineProperty/15.2.3.6-4-141.js @@ -8,20 +8,11 @@ description: > property of 'O', test RangeError exception is thrown when the [[Value]] field of 'desc' is a string containing -Infinity (15.4.5.1 step 3.c) -includes: [runTestCase.js] ---*/ -function testcase() { - var arrObj = []; - - try { +assert.throws(RangeError, function() { Object.defineProperty(arrObj, "length", { value: "-Infinity" }); - return false; - } catch (e) { - return e instanceof RangeError; - } - } -runTestCase(testcase); +}); diff --git a/test/built-ins/Object/defineProperty/15.2.3.6-4-145.js b/test/built-ins/Object/defineProperty/15.2.3.6-4-145.js index d8aabcd36fa876412c73302a17d5082664ee589c..8909f1994b2fc1e35fecb62811ac8161bf948277 100644 --- a/test/built-ins/Object/defineProperty/15.2.3.6-4-145.js +++ b/test/built-ins/Object/defineProperty/15.2.3.6-4-145.js @@ -8,20 +8,11 @@ description: > property of 'O', test RangeError exception is thrown when the [[Value]] field of 'desc' is a string which doesn't convert to a number (15.4.5.1 step 3.c) -includes: [runTestCase.js] ---*/ -function testcase() { - var arrObj = []; - - try { +assert.throws(RangeError, function() { Object.defineProperty(arrObj, "length", { value: "two" }); - return false; - } catch (e) { - return e instanceof RangeError; - } - } -runTestCase(testcase); +}); diff --git a/test/built-ins/Object/defineProperty/15.2.3.6-4-150.js b/test/built-ins/Object/defineProperty/15.2.3.6-4-150.js index 38ee2aad7627840b961346e7da81247958ce56d7..caafe22910394380349a3c1e6468b5fb4a71521e 100644 --- a/test/built-ins/Object/defineProperty/15.2.3.6-4-150.js +++ b/test/built-ins/Object/defineProperty/15.2.3.6-4-150.js @@ -8,16 +8,12 @@ description: > property of 'O', test TypeError is thrown when the [[Value]] field of 'desc' is an Object that both toString and valueOf wouldn't return primitive value (15.4.5.1 step 3.c) -includes: [runTestCase.js] ---*/ -function testcase() { - var arrObj = []; var toStringAccessed = false; var valueOfAccessed = false; - - try { +assert.throws(TypeError, function() { Object.defineProperty(arrObj, "length", { value: { toString: function () { @@ -31,10 +27,6 @@ function testcase() { } } }); - return false; - - } catch (e) { - return e instanceof TypeError && toStringAccessed && valueOfAccessed; - } - } -runTestCase(testcase); +}); +assert(toStringAccessed, 'toStringAccessed !== true'); +assert(valueOfAccessed, 'valueOfAccessed !== true'); diff --git a/test/built-ins/Object/defineProperty/15.2.3.6-4-152.js b/test/built-ins/Object/defineProperty/15.2.3.6-4-152.js index b06f8237bf23e915cf99ebf8b013c483a6694567..e3975ad9efb8c0d5a402daab8d64996649a05abe 100644 --- a/test/built-ins/Object/defineProperty/15.2.3.6-4-152.js +++ b/test/built-ins/Object/defineProperty/15.2.3.6-4-152.js @@ -8,21 +8,11 @@ description: > property of 'O', test RangeError is thrown when the [[Value]] field of 'desc' is a positive non-integer values (15.4.5.1 step 3.c) -includes: [runTestCase.js] ---*/ -function testcase() { - var arrObj = []; - - try { +assert.throws(RangeError, function() { Object.defineProperty(arrObj, "length", { value: 123.5 }); - - return false; - } catch (e) { - return e instanceof RangeError; - } - } -runTestCase(testcase); +}); diff --git a/test/built-ins/Object/defineProperty/15.2.3.6-4-153.js b/test/built-ins/Object/defineProperty/15.2.3.6-4-153.js index fd3320eab55b95a31819d68171d1e1a8306cb000..dc60afadfc009b6bd11c6cd0b4f2f32fa1832198 100644 --- a/test/built-ins/Object/defineProperty/15.2.3.6-4-153.js +++ b/test/built-ins/Object/defineProperty/15.2.3.6-4-153.js @@ -8,22 +8,11 @@ description: > property of 'O', test RangeError is thrown when the [[Value]] field of 'desc' is a negative non-integer values (15.4.5.1 step 3.c) -includes: [runTestCase.js] ---*/ -function testcase() { - var arrObj = []; - - try { +assert.throws(RangeError, function() { Object.defineProperty(arrObj, "length", { value: -4294967294.5 }); - - return false; - } catch (e) { - return e instanceof RangeError; - } - - } -runTestCase(testcase); +}); diff --git a/test/built-ins/Object/defineProperty/15.2.3.6-4-156.js b/test/built-ins/Object/defineProperty/15.2.3.6-4-156.js index 2975917f605d4128fe2c17c5f0a4da61f4da6d8f..010a2237c7d7ec04a5e6380d093544ffb3504187 100644 --- a/test/built-ins/Object/defineProperty/15.2.3.6-4-156.js +++ b/test/built-ins/Object/defineProperty/15.2.3.6-4-156.js @@ -7,21 +7,11 @@ description: > Object.defineProperty - 'O' is an Array, 'name' is the length property of 'O', test RangeError is thrown when the [[Value]] field of 'desc' is boundary value 2^32 (15.4.5.1 step 3.c) -includes: [runTestCase.js] ---*/ -function testcase() { - var arrObj = []; - - try { +assert.throws(RangeError, function() { Object.defineProperty(arrObj, "length", { value: 4294967296 }); - return false; - } catch (e) { - return e instanceof RangeError; - } - - } -runTestCase(testcase); +}); diff --git a/test/built-ins/Object/defineProperty/15.2.3.6-4-157.js b/test/built-ins/Object/defineProperty/15.2.3.6-4-157.js index 10a0fa812259295f6de1d3a2be7911fe57027d1e..24b4e08ee36f440fecaf14c41508a6a1fcb931ff 100644 --- a/test/built-ins/Object/defineProperty/15.2.3.6-4-157.js +++ b/test/built-ins/Object/defineProperty/15.2.3.6-4-157.js @@ -7,21 +7,11 @@ description: > Object.defineProperty - 'O' is an Array, 'name' is the length property of 'O', test RangeError is thrown when the [[Value]] field of 'desc' is boundary value 2^32 + 1 (15.4.5.1 step 3.c) -includes: [runTestCase.js] ---*/ -function testcase() { - var arrObj = []; - - try { +assert.throws(RangeError, function() { Object.defineProperty(arrObj, "length", { value: 4294967297 }); - return false; - } catch (e) { - return e instanceof RangeError; - } - - } -runTestCase(testcase); +}); diff --git a/test/built-ins/Object/defineProperty/15.2.3.6-4-16.js b/test/built-ins/Object/defineProperty/15.2.3.6-4-16.js index 740c359d3e025090ffd98309bd4ceced93b1e737..ac5f5233037743a40790e79c76b1eee599b497e2 100644 --- a/test/built-ins/Object/defineProperty/15.2.3.6-4-16.js +++ b/test/built-ins/Object/defineProperty/15.2.3.6-4-16.js @@ -10,10 +10,8 @@ es5id: 15.2.3.6-4-16 description: > Object.defineProperty throws TypeError when relaxing [[Writable]] on non-configurable data properties -includes: [runTestCase.js] ---*/ -function testcase() { var o = {}; // create a data valued property; all other attributes default to false. @@ -23,21 +21,12 @@ function testcase() { // now, relaxing [[Writable]] on "foo" should fail, since both // [[Configurable]] and [[Writable]] on the original property will be false. var desc = { value: 101, writable: true }; - - try { +assert.throws(TypeError, function() { Object.defineProperty(o, "foo", desc); - } - catch (e) { - if (e instanceof TypeError) { +}); // the property should remain unchanged. var d2 = Object.getOwnPropertyDescriptor(o, "foo"); - if (d2.value === 101 && - d2.writable === false && - d2.enumerable === false && - d2.configurable === false) { - return true; - } - } - } - } -runTestCase(testcase); +assert.sameValue(d2.value, 101, 'd2.value'); +assert.sameValue(d2.writable, false, 'd2.writable'); +assert.sameValue(d2.enumerable, false, 'd2.enumerable'); +assert.sameValue(d2.configurable, false, 'd2.configurable'); diff --git a/test/built-ins/Object/defineProperty/15.2.3.6-4-162.js b/test/built-ins/Object/defineProperty/15.2.3.6-4-162.js index d0e9c25b97344670f24e7034282dff9247a58741..dd21806a7a83ea5622709ee8fdf5a5ccc916aa2b 100644 --- a/test/built-ins/Object/defineProperty/15.2.3.6-4-162.js +++ b/test/built-ins/Object/defineProperty/15.2.3.6-4-162.js @@ -8,24 +8,15 @@ description: > property of 'O', the [[Value]] field of 'desc' is greater than value of the length property, test TypeError is thrown when the length property is not writable (15.4.5.1 step 3.f.i) -includes: [runTestCase.js] ---*/ -function testcase() { - var arrObj = []; Object.defineProperty(arrObj, "length", { writable: false }); - - try { +assert.throws(TypeError, function() { Object.defineProperty(arrObj, "length", { value: 12 }); - return false; - } catch (e) { - return e instanceof TypeError; - } - } -runTestCase(testcase); +}); diff --git a/test/built-ins/Object/defineProperty/15.2.3.6-4-164.js b/test/built-ins/Object/defineProperty/15.2.3.6-4-164.js index 89837ebee04e2cad5568a090d89f66f9e1f475a4..c8a0513c78437c9a86e5665e17513a1ffc301c66 100644 --- a/test/built-ins/Object/defineProperty/15.2.3.6-4-164.js +++ b/test/built-ins/Object/defineProperty/15.2.3.6-4-164.js @@ -9,24 +9,15 @@ description: > of the length property, test TypeError is thrown when the [[Writable]] attribute of the length property is false (15.4.5.1 step 3.g) -includes: [runTestCase.js] ---*/ -function testcase() { - var arrObj = [0, 1]; Object.defineProperty(arrObj, "length", { writable: false }); - - try { +assert.throws(TypeError, function() { Object.defineProperty(arrObj, "length", { value: 0 }); - return false; - } catch (e) { - return e instanceof TypeError; - } - } -runTestCase(testcase); +}); diff --git a/test/built-ins/Object/defineProperty/15.2.3.6-4-168.js b/test/built-ins/Object/defineProperty/15.2.3.6-4-168.js index 584c171fc00d89a312bcc8d0b44b2a9fe87c0aff..1cb70eb370b9f759aead8f2ea7a012721f26f005 100644 --- a/test/built-ins/Object/defineProperty/15.2.3.6-4-168.js +++ b/test/built-ins/Object/defineProperty/15.2.3.6-4-168.js @@ -12,14 +12,10 @@ description: > value greater than the non-deletable index by 1, writable attribute of length is set to false and TypeError exception is thrown (15.4.5.1 step 3.i.iii) -includes: [runTestCase.js] ---*/ -function testcase() { - var arrObj = [0, 1, 2]; - - try { +assert.throws(TypeError, function() { Object.defineProperty(arrObj, "1", { configurable: false }); @@ -28,9 +24,5 @@ function testcase() { value: 0, writable: false }); - return false; - } catch (e) { - return e instanceof TypeError && arrObj.length === 2; - } - } -runTestCase(testcase); +}); +assert.sameValue(arrObj.length, 2, 'arrObj.length'); diff --git a/test/built-ins/Object/defineProperty/15.2.3.6-4-169.js b/test/built-ins/Object/defineProperty/15.2.3.6-4-169.js index 2244260fa4db4457368c29611c826d83e1890c15..15aff619002cc3748d82368530708404907bb1a7 100644 --- a/test/built-ins/Object/defineProperty/15.2.3.6-4-169.js +++ b/test/built-ins/Object/defineProperty/15.2.3.6-4-169.js @@ -10,11 +10,8 @@ description: > which is set to configurable: false, test that new length is set to a value greater than the non-deletable index by 1, and TypeError is thrown (15.4.5.1 step 3.l.i) -includes: [runTestCase.js] ---*/ -function testcase() { - var arrObj = [0, 1, 2]; Object.defineProperty(arrObj, "1", { @@ -24,14 +21,10 @@ function testcase() { Object.defineProperty(arrObj, "2", { configurable: true }); - - try { +assert.throws(TypeError, function() { Object.defineProperty(arrObj, "length", { value: 1 }); - return false; - } catch (e) { - return e instanceof TypeError && arrObj.length === 2 && !arrObj.hasOwnProperty("2"); - } - } -runTestCase(testcase); +}); +assert.sameValue(arrObj.length, 2, 'arrObj.length'); +assert.sameValue(arrObj.hasOwnProperty("2"), false, 'arrObj.hasOwnProperty("2")'); diff --git a/test/built-ins/Object/defineProperty/15.2.3.6-4-17.js b/test/built-ins/Object/defineProperty/15.2.3.6-4-17.js index 4303b1ac5aae72fb019f2d3f02414f2c9f59ae06..9a945d76c56d0bd7e35d4058798ba77a5a1e0083 100644 --- a/test/built-ins/Object/defineProperty/15.2.3.6-4-17.js +++ b/test/built-ins/Object/defineProperty/15.2.3.6-4-17.js @@ -10,10 +10,8 @@ es5id: 15.2.3.6-4-17 description: > Object.defineProperty throws TypeError when changing value of non-writable non-configurable data properties -includes: [runTestCase.js] ---*/ -function testcase() { var o = {}; // create a data valued property; all other attributes default to false. @@ -23,22 +21,13 @@ function testcase() { // now, trying to change the value of "foo" should fail, since both // [[Configurable]] and [[Writable]] on the original property will be false. var desc = { value: 102 }; - - try { +assert.throws(TypeError, function() { Object.defineProperty(o, "foo", desc); - } - catch (e) { - if (e instanceof TypeError) { +}); // the property should remain unchanged. var d2 = Object.getOwnPropertyDescriptor(o, "foo"); - if (d2.value === 101 && - d2.writable === false && - d2.enumerable === false && - d2.configurable === false) { - return true; - } - } - } - } -runTestCase(testcase); +assert.sameValue(d2.value, 101, 'd2.value'); +assert.sameValue(d2.writable, false, 'd2.writable'); +assert.sameValue(d2.enumerable, false, 'd2.enumerable'); +assert.sameValue(d2.configurable, false, 'd2.configurable'); diff --git a/test/built-ins/Object/defineProperty/15.2.3.6-4-170.js b/test/built-ins/Object/defineProperty/15.2.3.6-4-170.js index 276000567731213b43ee4e324a7889d4803460b0..4650c357eb89793aee4095b5ec2b1351c19e32d5 100644 --- a/test/built-ins/Object/defineProperty/15.2.3.6-4-170.js +++ b/test/built-ins/Object/defineProperty/15.2.3.6-4-170.js @@ -11,14 +11,10 @@ description: > to a value greater than the non-deletable index by 1, writable attribute of length is set to false and TypeError exception is thrown (15.4.5.1 step 3.l.ii) -includes: [runTestCase.js] ---*/ -function testcase() { - var arrObj = [0, 1]; - - try { +assert.throws(TypeError, function() { Object.defineProperty(arrObj, "1", { configurable: false }); @@ -26,10 +22,6 @@ function testcase() { Object.defineProperty(arrObj, "length", { value: 1 }); - - return false; - } catch (e) { - return e instanceof TypeError && arrObj.length === 2 && arrObj.hasOwnProperty("1"); - } - } -runTestCase(testcase); +}); +assert.sameValue(arrObj.length, 2, 'arrObj.length'); +assert(arrObj.hasOwnProperty("1"), 'arrObj.hasOwnProperty("1") !== true'); diff --git a/test/built-ins/Object/defineProperty/15.2.3.6-4-174.js b/test/built-ins/Object/defineProperty/15.2.3.6-4-174.js index 4563a5da4fc642cc5d172a8d52750b0a06a001d9..422632e805f9c5ac201e6e4385a34ee57b27827b 100644 --- a/test/built-ins/Object/defineProperty/15.2.3.6-4-174.js +++ b/test/built-ins/Object/defineProperty/15.2.3.6-4-174.js @@ -9,14 +9,10 @@ description: > of the length property, test the [[Configurable]] attribute of own accessor property with large index named in 'O' can stop deleting index named properties (15.4.5.1 step 3.l.ii) -includes: [runTestCase.js] ---*/ -function testcase() { - var arrObj = [0, 1]; - - try { +assert.throws(TypeError, function() { Object.defineProperty(arrObj, "1", { get: function () { return 1; @@ -27,10 +23,6 @@ function testcase() { Object.defineProperty(arrObj, "length", { value: 1 }); - - return false; - } catch (e) { - return e instanceof TypeError && arrObj.length === 2 && arrObj.hasOwnProperty("1"); - } - } -runTestCase(testcase); +}); +assert.sameValue(arrObj.length, 2, 'arrObj.length'); +assert(arrObj.hasOwnProperty("1"), 'arrObj.hasOwnProperty("1") !== true'); diff --git a/test/built-ins/Object/defineProperty/15.2.3.6-4-18.js b/test/built-ins/Object/defineProperty/15.2.3.6-4-18.js index f9f358abfd6baf176824563c565de4ff64d31b8a..ff511f401919c1f3c7c8ded288eeb559fe7ce73f 100644 --- a/test/built-ins/Object/defineProperty/15.2.3.6-4-18.js +++ b/test/built-ins/Object/defineProperty/15.2.3.6-4-18.js @@ -10,10 +10,8 @@ es5id: 15.2.3.6-4-18 description: > Object.defineProperty throws TypeError when changing setter of non-configurable accessor properties(8.12.9 step 11.a.i) -includes: [runTestCase.js] ---*/ -function testcase() { var o = {}; // create an accessor property; all other attributes default to false. @@ -26,20 +24,11 @@ function testcase() { // on the original property will be false. var setter = function (x) {}; var desc = { set: setter }; - - try { +assert.throws(TypeError, function() { Object.defineProperty(o, "foo", desc); - } - catch (e) { - if (e instanceof TypeError) { +}); // the property should remain unchanged. var d2 = Object.getOwnPropertyDescriptor(o, "foo"); - if (d2.get === getter && - d2.configurable === false && - d2.enumerable === false) { - return true; - } - } - } - } -runTestCase(testcase); +assert.sameValue(d2.get, getter, 'd2.get'); +assert.sameValue(d2.configurable, false, 'd2.configurable'); +assert.sameValue(d2.enumerable, false, 'd2.enumerable'); diff --git a/test/built-ins/Object/defineProperty/15.2.3.6-4-188.js b/test/built-ins/Object/defineProperty/15.2.3.6-4-188.js index 83b2820194763c3bbbe6a889fc3617474f0ede2c..53b68caf95c108bd9cd5c40a51b15855f31f464d 100644 --- a/test/built-ins/Object/defineProperty/15.2.3.6-4-188.js +++ b/test/built-ins/Object/defineProperty/15.2.3.6-4-188.js @@ -8,24 +8,15 @@ description: > named property, test TypeError is thrown if the [[Writable]] attribute of the length property in 'O' is false and value of 'name' equals to value of the length property (15.4.5.1 step 4.b) -includes: [runTestCase.js] ---*/ -function testcase() { var arrObj = [1, 2, 3]; Object.defineProperty(arrObj, "length", { writable: false }); - - try { +assert.throws(TypeError, function() { Object.defineProperty(arrObj, 3, { value: "abc" }); - - return false; - } catch (e) { - return e instanceof TypeError; - } - } -runTestCase(testcase); +}); diff --git a/test/built-ins/Object/defineProperty/15.2.3.6-4-189.js b/test/built-ins/Object/defineProperty/15.2.3.6-4-189.js index 2308e831f8e4171b9ce49a115adcb3393858de6f..f67443f47580e1dda6edabf1ce9e9c2a655e6773 100644 --- a/test/built-ins/Object/defineProperty/15.2.3.6-4-189.js +++ b/test/built-ins/Object/defineProperty/15.2.3.6-4-189.js @@ -9,24 +9,15 @@ description: > attribute of the length property in 'O' is false and value of 'name' is greater than value of the length property (15.4.5.1 step 4.b) -includes: [runTestCase.js] ---*/ -function testcase() { var arrObj = [1, 2, 3]; Object.defineProperty(arrObj, "length", { writable: false }); - - try { +assert.throws(TypeError, function() { Object.defineProperty(arrObj, 4, { value: "abc" }); - - return false; - } catch (e) { - return e instanceof TypeError; - } - } -runTestCase(testcase); +}); diff --git a/test/built-ins/Object/defineProperty/15.2.3.6-4-198.js b/test/built-ins/Object/defineProperty/15.2.3.6-4-198.js index d10e7f75efafc7c9c1c6c3e9335f099a8cf63d2f..27354b58dd56d579d49ff8f5dda1ba066d5742de 100644 --- a/test/built-ins/Object/defineProperty/15.2.3.6-4-198.js +++ b/test/built-ins/Object/defineProperty/15.2.3.6-4-198.js @@ -7,19 +7,12 @@ description: > Object.defineProperty - 'O' is an Array, 'name' is an array index named property, 'name' property doesn't exist in 'O', test TypeError is thrown when 'O' is not extensible (15.4.5.1 step 4.c) -includes: [runTestCase.js] ---*/ -function testcase() { var arrObj = []; Object.preventExtensions(arrObj); - - try { +assert.throws(TypeError, function() { var desc = { value: 1 }; Object.defineProperty(arrObj, "0", desc); - return false; - } catch (e) { - return e instanceof TypeError && (arrObj.hasOwnProperty("0") === false); - } - } -runTestCase(testcase); +}); +assert.sameValue(arrObj.hasOwnProperty("0"), false, 'arrObj.hasOwnProperty("0")'); diff --git a/test/built-ins/Object/defineProperty/15.2.3.6-4-20.js b/test/built-ins/Object/defineProperty/15.2.3.6-4-20.js index 490183f734683e141978cfd4b161d600f447c192..a40764a323a29aa82c189308406ae1ea4f526cff 100644 --- a/test/built-ins/Object/defineProperty/15.2.3.6-4-20.js +++ b/test/built-ins/Object/defineProperty/15.2.3.6-4-20.js @@ -11,10 +11,8 @@ description: > Object.defineProperty throws TypeError when changing getter (if present) of non-configurable accessor properties(8.12.9 step 11.a.ii) -includes: [runTestCase.js] ---*/ -function testcase() { var o = {}; // create an accessor property; all other attributes default to false. @@ -26,20 +24,11 @@ function testcase() { // now, trying to change the setter should fail, since [[Configurable]] // on the original property will be false. var desc = { get: undefined }; - - try { +assert.throws(TypeError, function() { Object.defineProperty(o, "foo", desc); - } - catch (e) { - if (e instanceof TypeError) { +}); var d2 = Object.getOwnPropertyDescriptor(o, "foo"); - if (d2.get === getter && - d2.configurable === false && - d2.enumerable === false) { - return true; - } - } - } - } -runTestCase(testcase); +assert.sameValue(d2.get, getter, 'd2.get'); +assert.sameValue(d2.configurable, false, 'd2.configurable'); +assert.sameValue(d2.enumerable, false, 'd2.enumerable'); diff --git a/test/built-ins/Object/defineProperty/15.2.3.6-4-22.js b/test/built-ins/Object/defineProperty/15.2.3.6-4-22.js index 7a536dfc91a6521294e17d41dc3ae707c706235c..6643da65d90a8255f3556f7351e00584157c011f 100644 --- a/test/built-ins/Object/defineProperty/15.2.3.6-4-22.js +++ b/test/built-ins/Object/defineProperty/15.2.3.6-4-22.js @@ -6,24 +6,17 @@ es5id: 15.2.3.6-4-22 description: > Object.defineProperty - 'name' is existing own data property (8.12.9 step 1) -includes: [runTestCase.js] ---*/ -function testcase() { var obj = {}; Object.defineProperty(obj, "foo", { value: 11, configurable: false }); - - try { +assert.throws(TypeError, function() { Object.defineProperty(obj, "foo", { value: 12, configurable: true }); - return false; - } catch (e) { - return e instanceof TypeError && obj.foo === 11; - } - } -runTestCase(testcase); +}); +assert.sameValue(obj.foo, 11, 'obj.foo'); diff --git a/test/built-ins/Object/defineProperty/15.2.3.6-4-24.js b/test/built-ins/Object/defineProperty/15.2.3.6-4-24.js index 7ffd5748e0b135fb5f58ed6842d01c40c4e81288..a1e7f654f980948317040c01ccacb9d3b83a523a 100644 --- a/test/built-ins/Object/defineProperty/15.2.3.6-4-24.js +++ b/test/built-ins/Object/defineProperty/15.2.3.6-4-24.js @@ -6,10 +6,8 @@ es5id: 15.2.3.6-4-24 description: > Object.defineProperty - 'name' is own data property that overrides an inherited data property (8.12.9 step 1) -includes: [runTestCase.js] ---*/ -function testcase() { var proto = {}; Object.defineProperty(proto, "foo", { value: 12, @@ -23,14 +21,9 @@ function testcase() { value: 11, configurable: false }); - - try { +assert.throws(TypeError, function() { Object.defineProperty(obj, "foo", { configurable: true }); - return false; - } catch (e) { - return e instanceof TypeError && obj.foo === 11; - } - } -runTestCase(testcase); +}); +assert.sameValue(obj.foo, 11, 'obj.foo'); diff --git a/test/built-ins/Object/defineProperty/15.2.3.6-4-25.js b/test/built-ins/Object/defineProperty/15.2.3.6-4-25.js index ef42415f1544653263f38ce70db6facfb9748f01..0dafb044a033c96feea7d37a65eb42748505ccf1 100644 --- a/test/built-ins/Object/defineProperty/15.2.3.6-4-25.js +++ b/test/built-ins/Object/defineProperty/15.2.3.6-4-25.js @@ -6,10 +6,8 @@ es5id: 15.2.3.6-4-25 description: > Object.defineProperty - 'data' is own data property that overrides an inherited accessor property (8.12.9 step 1) -includes: [runTestCase.js] ---*/ -function testcase() { var proto = {}; Object.defineProperty(proto, "foo", { get: function () { }, @@ -23,14 +21,9 @@ function testcase() { value: 11, configurable: false }); - - try { +assert.throws(TypeError, function() { Object.defineProperty(obj, "foo", { configurable: true }); - return false; - } catch (e) { - return e instanceof TypeError && obj.foo === 11; - } - } -runTestCase(testcase); +}); +assert.sameValue(obj.foo, 11, 'obj.foo'); diff --git a/test/built-ins/Object/defineProperty/15.2.3.6-4-26.js b/test/built-ins/Object/defineProperty/15.2.3.6-4-26.js index ec2e4c818a2c4b80f66fbf40a609aa74bf2e1d50..5a6c52ba576b108aee22aff8b8b6c0a6a03391d0 100644 --- a/test/built-ins/Object/defineProperty/15.2.3.6-4-26.js +++ b/test/built-ins/Object/defineProperty/15.2.3.6-4-26.js @@ -6,10 +6,8 @@ es5id: 15.2.3.6-4-26 description: > Object.defineProperty - 'name' is own accessor property (8.12.9 step 1) -includes: [runTestCase.js] ---*/ -function testcase() { var obj = {}; Object.defineProperty(obj, "property", { @@ -18,17 +16,12 @@ function testcase() { }, configurable: false }); - - try { +assert.throws(TypeError, function() { Object.defineProperty(obj, "property", { get: function () { return 12; }, configurable: true }); - return false; - } catch (e) { - return e instanceof TypeError && obj.property === 11; - } - } -runTestCase(testcase); +}); +assert.sameValue(obj.property, 11, 'obj.property'); diff --git a/test/built-ins/Object/defineProperty/15.2.3.6-4-28.js b/test/built-ins/Object/defineProperty/15.2.3.6-4-28.js index c3b6b50192e128180cc206c0de66538913dac17e..e2918e4bb0e4a5d79ae0f1af7e2866e08f36bccd 100644 --- a/test/built-ins/Object/defineProperty/15.2.3.6-4-28.js +++ b/test/built-ins/Object/defineProperty/15.2.3.6-4-28.js @@ -6,10 +6,8 @@ es5id: 15.2.3.6-4-28 description: > Object.defineProperty - 'name' is own accessor property that overrides an inherited data property (8.12.9 step 1) -includes: [runTestCase.js] ---*/ -function testcase() { var proto = {}; Object.defineProperty(proto, "foo", { value: 11, @@ -23,14 +21,8 @@ function testcase() { get: function () { }, configurable: false }); - - try { +assert.throws(TypeError, function() { Object.defineProperty(obj, "foo", { configurable: true }); - return false; - } catch (e) { - return e instanceof TypeError; - } - } -runTestCase(testcase); +}); diff --git a/test/built-ins/Object/defineProperty/15.2.3.6-4-29.js b/test/built-ins/Object/defineProperty/15.2.3.6-4-29.js index 0c11ec0bdc889e55aab02347fd9b5f9f8b791791..249380afc906ca887172aa5a22f2e14d78302b5f 100644 --- a/test/built-ins/Object/defineProperty/15.2.3.6-4-29.js +++ b/test/built-ins/Object/defineProperty/15.2.3.6-4-29.js @@ -6,10 +6,8 @@ es5id: 15.2.3.6-4-29 description: > Object.defineProperty - 'name' is own accessor property that overrides an inherited accessor property (8.12.9 step 1) -includes: [runTestCase.js] ---*/ -function testcase() { var proto = {}; Object.defineProperty(proto, "foo", { get: function () { }, @@ -23,14 +21,8 @@ function testcase() { get: function () { }, configurable: false }); - - try { +assert.throws(TypeError, function() { Object.defineProperty(obj, "foo", { configurable: true }); - return false; - } catch (e) { - return e instanceof TypeError; - } - } -runTestCase(testcase); +}); diff --git a/test/built-ins/Object/defineProperty/15.2.3.6-4-30.js b/test/built-ins/Object/defineProperty/15.2.3.6-4-30.js index a30d3988412312e9ba7da98d3100ca48797177bc..3c42e298dd6964803b688b0ccbef43d7b412f760 100644 --- a/test/built-ins/Object/defineProperty/15.2.3.6-4-30.js +++ b/test/built-ins/Object/defineProperty/15.2.3.6-4-30.js @@ -6,23 +6,15 @@ es5id: 15.2.3.6-4-30 description: > Object.defineProperty - 'name' is own accessor property without a get function (8.12.9 step 1) -includes: [runTestCase.js] ---*/ -function testcase() { var obj = {}; Object.defineProperty(obj, "foo", { set: function () { }, configurable: false }); - - try { +assert.throws(TypeError, function() { Object.defineProperty(obj, "foo", { configurable: true }); - return false; - } catch (e) { - return e instanceof TypeError; - } - } -runTestCase(testcase); +}); diff --git a/test/built-ins/Object/defineProperty/15.2.3.6-4-31.js b/test/built-ins/Object/defineProperty/15.2.3.6-4-31.js index c3cff89f916dd2d2ed2d9ab5e10182cd6fc4294b..3a2098e1e0a6dc9e1a5e8e83ed64a0067269db74 100644 --- a/test/built-ins/Object/defineProperty/15.2.3.6-4-31.js +++ b/test/built-ins/Object/defineProperty/15.2.3.6-4-31.js @@ -7,10 +7,8 @@ description: > Object.defineProperty - 'name' is own accessor property without a get function that overrides an inherited accessor property(8.12.9 step 1) -includes: [runTestCase.js] ---*/ -function testcase() { var proto = {}; Object.defineProperty(proto, "foo", { get: function () { }, @@ -24,14 +22,8 @@ function testcase() { set: function () { }, configurable: false }); - - try { +assert.throws(TypeError, function() { Object.defineProperty(obj, "foo", { configurable: true }); - return false; - } catch (e) { - return e instanceof TypeError; - } - } -runTestCase(testcase); +}); diff --git a/test/built-ins/Object/defineProperty/15.2.3.6-4-33.js b/test/built-ins/Object/defineProperty/15.2.3.6-4-33.js index 1e0a8118620707b3b6f8494fd85459665f181211..0f95d6cf57a5724683916f12e7565b8872afdcde 100644 --- a/test/built-ins/Object/defineProperty/15.2.3.6-4-33.js +++ b/test/built-ins/Object/defineProperty/15.2.3.6-4-33.js @@ -7,25 +7,18 @@ description: > Object.defineProperty - 'O' is a Function object that uses Object's [[GetOwnProperty]] method to access the 'name' property (8.12.9 step 1) -includes: [runTestCase.js] ---*/ -function testcase() { var fun = function () { }; Object.defineProperty(fun, "foo", { value: 12, configurable: false }); - - try { +assert.throws(TypeError, function() { Object.defineProperty(fun, "foo", { value: 11, configurable: true }); - return false; - } catch (e) { - return e instanceof TypeError && fun.foo === 12; - } - } -runTestCase(testcase); +}); +assert.sameValue(fun.foo, 12, 'fun.foo'); diff --git a/test/built-ins/Object/defineProperty/15.2.3.6-4-337.js b/test/built-ins/Object/defineProperty/15.2.3.6-4-337.js index c91bd20ac9faae8cc45b76734d60a94d92d57206..a09c71134b9cbdb380c7b98dd86fc08d036d0120 100644 --- a/test/built-ins/Object/defineProperty/15.2.3.6-4-337.js +++ b/test/built-ins/Object/defineProperty/15.2.3.6-4-337.js @@ -7,10 +7,8 @@ description: > ES5 Attributes - fail to update [[Enumerable]] attribute of data property ([[Writable]] is true, [[Enumerable]] is true, [[Configurable]] is false) to different value -includes: [runTestCase.js] ---*/ -function testcase() { var obj = {}; Object.defineProperty(obj, "prop", { @@ -22,15 +20,13 @@ function testcase() { var propertyDefineCorrect = obj.hasOwnProperty("prop"); var desc1 = Object.getOwnPropertyDescriptor(obj, "prop"); - - try { +assert.throws(TypeError, function() { Object.defineProperty(obj, "prop", { enumerable: false }); - return false; - } catch (e) { +}); var desc2 = Object.getOwnPropertyDescriptor(obj, "prop"); - return propertyDefineCorrect && desc1.enumerable === true && obj.prop === 2010 && desc2.enumerable === true && e instanceof TypeError; - } - } -runTestCase(testcase); +assert(propertyDefineCorrect, 'propertyDefineCorrect !== true'); +assert.sameValue(desc1.enumerable, true, 'desc1.enumerable'); +assert.sameValue(obj.prop, 2010, 'obj.prop'); +assert.sameValue(desc2.enumerable, true, 'desc2.enumerable'); diff --git a/test/built-ins/Object/defineProperty/15.2.3.6-4-338.js b/test/built-ins/Object/defineProperty/15.2.3.6-4-338.js index 38f563aa0f812e17a84261fb9ff6e8f18e592f49..45425687a7511a919120a577de37f2cc47590d8e 100644 --- a/test/built-ins/Object/defineProperty/15.2.3.6-4-338.js +++ b/test/built-ins/Object/defineProperty/15.2.3.6-4-338.js @@ -7,10 +7,8 @@ description: > ES5 Attributes - fail to update [[Configurable]] attribute of data property ([[Writable]] is true, [[Enumerable]] is true, [[Configurable]] is false) to different value -includes: [runTestCase.js] ---*/ -function testcase() { var obj = {}; Object.defineProperty(obj, "prop", { @@ -21,15 +19,13 @@ function testcase() { }); var propertyDefineCorrect = obj.hasOwnProperty("prop"); var desc1 = Object.getOwnPropertyDescriptor(obj, "prop"); - - try { +assert.throws(TypeError, function() { Object.defineProperty(obj, "prop", { configurable: true }); - return false; - } catch (e) { +}); var desc2 = Object.getOwnPropertyDescriptor(obj, "prop"); - return propertyDefineCorrect && desc1.configurable === false && obj.prop === 2010 && desc2.configurable === false && e instanceof TypeError; - } - } -runTestCase(testcase); +assert(propertyDefineCorrect, 'propertyDefineCorrect !== true'); +assert.sameValue(desc1.configurable, false, 'desc1.configurable'); +assert.sameValue(obj.prop, 2010, 'obj.prop'); +assert.sameValue(desc2.configurable, false, 'desc2.configurable'); diff --git a/test/built-ins/Object/defineProperty/15.2.3.6-4-339-1.js b/test/built-ins/Object/defineProperty/15.2.3.6-4-339-1.js index 01b6f0230b47f7c5cc4c8f764d7020aa36ce2e8d..f4523b9af9e3a861694d9d6f97eb2c602e135770 100644 --- a/test/built-ins/Object/defineProperty/15.2.3.6-4-339-1.js +++ b/test/built-ins/Object/defineProperty/15.2.3.6-4-339-1.js @@ -8,10 +8,8 @@ description: > attributes [[Writable]]: true, [[Enumerable]]: true, [[Configurable]]: false to an accessor property does not succeed, 'A' is an Array object (8.12.9 - step 9.a) -includes: [runTestCase.js] ---*/ -function testcase() { var obj = []; Object.defineProperty(obj, "0", { @@ -26,14 +24,13 @@ function testcase() { function getFunc() { return 20; } - try { +assert.throws(TypeError, function() { Object.defineProperty(obj, "0", { get: getFunc }); - return false; - } catch (e) { +}); var desc2 = Object.getOwnPropertyDescriptor(obj, "0"); - return propertyDefineCorrect && desc1.value === 2010 && obj[0] === 2010 && typeof desc2.get === "undefined" && e instanceof TypeError; - } - } -runTestCase(testcase); +assert(propertyDefineCorrect, 'propertyDefineCorrect !== true'); +assert.sameValue(desc1.value, 2010, 'desc1.value'); +assert.sameValue(obj[0], 2010, 'obj[0]'); +assert.sameValue(typeof desc2.get, "undefined", 'typeof desc2.get'); diff --git a/test/built-ins/Object/defineProperty/15.2.3.6-4-339-2.js b/test/built-ins/Object/defineProperty/15.2.3.6-4-339-2.js index 428e988e3b49e784fd5fdcde55003ecfa11e2f40..d2efb019b8246477586326b8d39c684c8cec2f3c 100644 --- a/test/built-ins/Object/defineProperty/15.2.3.6-4-339-2.js +++ b/test/built-ins/Object/defineProperty/15.2.3.6-4-339-2.js @@ -8,10 +8,8 @@ description: > attributes [[Writable]]: true, [[Enumerable]]: true, [[Configurable]]: false to an accessor property does not succeed, 'O' is an Arguments object (8.12.9 - step 9.a) -includes: [runTestCase.js] ---*/ -function testcase() { var obj = (function () { return arguments; }()); @@ -28,14 +26,13 @@ function testcase() { function getFunc() { return 20; } - try { +assert.throws(TypeError, function() { Object.defineProperty(obj, "prop", { get: getFunc }); - return false; - } catch (e) { +}); var desc2 = Object.getOwnPropertyDescriptor(obj, "prop"); - return propertyDefineCorrect && desc1.value === 2010 && obj.prop === 2010 && typeof desc2.get === "undefined" && e instanceof TypeError; - } - } -runTestCase(testcase); +assert(propertyDefineCorrect, 'propertyDefineCorrect !== true'); +assert.sameValue(desc1.value, 2010, 'desc1.value'); +assert.sameValue(obj.prop, 2010, 'obj.prop'); +assert.sameValue(typeof desc2.get, "undefined", 'typeof desc2.get'); diff --git a/test/built-ins/Object/defineProperty/15.2.3.6-4-339-3.js b/test/built-ins/Object/defineProperty/15.2.3.6-4-339-3.js index eea47783f2dce7f012ed2f665dc2546a00261b19..dedf8ce8f5b5d6356620442f7d4660da1b199f97 100644 --- a/test/built-ins/Object/defineProperty/15.2.3.6-4-339-3.js +++ b/test/built-ins/Object/defineProperty/15.2.3.6-4-339-3.js @@ -8,10 +8,8 @@ description: > attributes [[Writable]]: true, [[Enumerable]]: true, [[Configurable]]: false to an accessor property does not succeed, 'A' is an Array object (8.12.9 - step 9.a) -includes: [runTestCase.js] ---*/ -function testcase() { var obj = []; Object.defineProperty(obj, "prop", { @@ -26,15 +24,13 @@ function testcase() { function getFunc() { return 20; } - try { +assert.throws(TypeError, function() { Object.defineProperty(obj, "prop", { get: getFunc }); - return false; - } catch (e) { +}); var desc2 = Object.getOwnPropertyDescriptor(obj, "prop"); - return propertyDefineCorrect && desc1.value === 2010 && obj.prop === 2010 && - typeof desc2.get === "undefined" && e instanceof TypeError; - } - } -runTestCase(testcase); +assert(propertyDefineCorrect, 'propertyDefineCorrect !== true'); +assert.sameValue(desc1.value, 2010, 'desc1.value'); +assert.sameValue(obj.prop, 2010, 'obj.prop'); +assert.sameValue(typeof desc2.get, "undefined", 'typeof desc2.get'); diff --git a/test/built-ins/Object/defineProperty/15.2.3.6-4-339-4.js b/test/built-ins/Object/defineProperty/15.2.3.6-4-339-4.js index 92a20998bde05111b66cb2994b78fb32b578d7b8..35d2aa61491f3eb03090df423e28411e860cc1a6 100644 --- a/test/built-ins/Object/defineProperty/15.2.3.6-4-339-4.js +++ b/test/built-ins/Object/defineProperty/15.2.3.6-4-339-4.js @@ -8,10 +8,8 @@ description: > attributes [[Writable]]: true, [[Enumerable]]: true, [[Configurable]]: false to an accessor property does not succeed, 'O' is an Arguments object (8.12.9 - step 9.a) -includes: [runTestCase.js] ---*/ -function testcase() { var obj = (function () { return arguments; }()); @@ -28,15 +26,13 @@ function testcase() { function getFunc() { return 20; } - try { +assert.throws(TypeError, function() { Object.defineProperty(obj, "0", { get: getFunc }); - return false; - } catch (e) { +}); var desc2 = Object.getOwnPropertyDescriptor(obj, "0"); - return propertyDefineCorrect && desc1.value === 2010 && obj[0] === 2010 && - typeof desc2.get === "undefined" && e instanceof TypeError; - } - } -runTestCase(testcase); +assert(propertyDefineCorrect, 'propertyDefineCorrect !== true'); +assert.sameValue(desc1.value, 2010, 'desc1.value'); +assert.sameValue(obj[0], 2010, 'obj[0]'); +assert.sameValue(typeof desc2.get, "undefined", 'typeof desc2.get'); diff --git a/test/built-ins/Object/defineProperty/15.2.3.6-4-339.js b/test/built-ins/Object/defineProperty/15.2.3.6-4-339.js index ec5daa537a9bfb2ef96f02effe4815bed2098bac..1cce212b23b379e50399a5ed577a4c52b9e9532d 100644 --- a/test/built-ins/Object/defineProperty/15.2.3.6-4-339.js +++ b/test/built-ins/Object/defineProperty/15.2.3.6-4-339.js @@ -7,10 +7,8 @@ description: > ES5 Attributes - fail to update the data property ([[Writable]] is true, [[Enumerable]] is true, [[Configurable]] is false) to an accessor property -includes: [runTestCase.js] ---*/ -function testcase() { var obj = {}; Object.defineProperty(obj, "prop", { @@ -25,14 +23,13 @@ function testcase() { function getFunc() { return 20; } - try { +assert.throws(TypeError, function() { Object.defineProperty(obj, "prop", { get: getFunc }); - return false; - } catch (e) { +}); var desc2 = Object.getOwnPropertyDescriptor(obj, "prop"); - return propertyDefineCorrect && desc1.value === 2010 && obj.prop === 2010 && typeof desc2.get === "undefined" && e instanceof TypeError; - } - } -runTestCase(testcase); +assert(propertyDefineCorrect, 'propertyDefineCorrect !== true'); +assert.sameValue(desc1.value, 2010, 'desc1.value'); +assert.sameValue(obj.prop, 2010, 'obj.prop'); +assert.sameValue(typeof desc2.get, "undefined", 'typeof desc2.get'); diff --git a/test/built-ins/Object/defineProperty/15.2.3.6-4-34.js b/test/built-ins/Object/defineProperty/15.2.3.6-4-34.js index dfa637d260fe713d260ae71764436e964a33a74e..323bd5e01b91cea8c2d54967e8ab5574cb30518d 100644 --- a/test/built-ins/Object/defineProperty/15.2.3.6-4-34.js +++ b/test/built-ins/Object/defineProperty/15.2.3.6-4-34.js @@ -7,25 +7,18 @@ description: > Object.defineProperty - 'O' is an Array object that uses Object's [[GetOwnProperty]] method to access the 'name' property (8.12.9 step 1) -includes: [runTestCase.js] ---*/ -function testcase() { var arrObj = []; Object.defineProperty(arrObj, "foo", { value: 12, configurable: false }); - - try { +assert.throws(TypeError, function() { Object.defineProperty(arrObj, "foo", { value: 11, configurable: true }); - return false; - } catch (e) { - return e instanceof TypeError && arrObj.foo === 12; - } - } -runTestCase(testcase); +}); +assert.sameValue(arrObj.foo, 12, 'arrObj.foo'); diff --git a/test/built-ins/Object/defineProperty/15.2.3.6-4-35.js b/test/built-ins/Object/defineProperty/15.2.3.6-4-35.js index e19b585b678c845bed6c5ea57b28a7585eee8b41..b6f3fb3b3568ce6ec4f74d69c82c60951d223411 100644 --- a/test/built-ins/Object/defineProperty/15.2.3.6-4-35.js +++ b/test/built-ins/Object/defineProperty/15.2.3.6-4-35.js @@ -7,25 +7,18 @@ description: > Object.defineProperty - 'O' is a String object which implements its own [[GetOwnProperty]] method to access the 'name' property (8.12.9 step 1) -includes: [runTestCase.js] ---*/ -function testcase() { var str = new String("abc"); Object.defineProperty(str, "foo", { value: 12, configurable: false }); - - try { +assert.throws(TypeError, function() { Object.defineProperty(str, "foo", { value: 11, configurable: true }); - return false; - } catch (e) { - return e instanceof TypeError && str.foo === 12; - } - } -runTestCase(testcase); +}); +assert.sameValue(str.foo, 12, 'str.foo'); diff --git a/test/built-ins/Object/defineProperty/15.2.3.6-4-351.js b/test/built-ins/Object/defineProperty/15.2.3.6-4-351.js index 72da60ce6000f87d482347f475bf728bf6b1196e..4007343fa01f67b52cbf4dde7ecc8ca8c5372731 100644 --- a/test/built-ins/Object/defineProperty/15.2.3.6-4-351.js +++ b/test/built-ins/Object/defineProperty/15.2.3.6-4-351.js @@ -7,10 +7,8 @@ description: > ES5 Attributes - fail to update [[Enumerable]] attribute of data property ([[Writable]] is true, [[Enumerable]] is false, [[Configurable]] is false) to different value -includes: [runTestCase.js] ---*/ -function testcase() { var obj = {}; Object.defineProperty(obj, "prop", { @@ -22,15 +20,13 @@ function testcase() { var propertyDefineCorrect = obj.hasOwnProperty("prop"); var desc1 = Object.getOwnPropertyDescriptor(obj, "prop"); - - try { +assert.throws(TypeError, function() { Object.defineProperty(obj, "prop", { enumerable: true }); - return false; - } catch (e) { +}); var desc2 = Object.getOwnPropertyDescriptor(obj, "prop"); - return propertyDefineCorrect && desc1.enumerable === false && obj.prop === 2010 && desc2.enumerable === false && e instanceof TypeError; - } - } -runTestCase(testcase); +assert(propertyDefineCorrect, 'propertyDefineCorrect !== true'); +assert.sameValue(desc1.enumerable, false, 'desc1.enumerable'); +assert.sameValue(obj.prop, 2010, 'obj.prop'); +assert.sameValue(desc2.enumerable, false, 'desc2.enumerable'); diff --git a/test/built-ins/Object/defineProperty/15.2.3.6-4-352.js b/test/built-ins/Object/defineProperty/15.2.3.6-4-352.js index fd24809f32878ff6b9c4f3c709ce3af304184af5..e06bcef7a81f74cbf56833a07718569fcca3f6dc 100644 --- a/test/built-ins/Object/defineProperty/15.2.3.6-4-352.js +++ b/test/built-ins/Object/defineProperty/15.2.3.6-4-352.js @@ -7,10 +7,8 @@ description: > ES5 Attributes - fail to update [[Configurable]] attribute of data property ([[Writable]] is true, [[Enumerable]] is false, [[Configurable]] is false) to different value -includes: [runTestCase.js] ---*/ -function testcase() { var obj = {}; Object.defineProperty(obj, "prop", { @@ -22,15 +20,13 @@ function testcase() { var propertyDefineCorrect = obj.hasOwnProperty("prop"); var desc1 = Object.getOwnPropertyDescriptor(obj, "prop"); - - try { +assert.throws(TypeError, function() { Object.defineProperty(obj, "prop", { configurable: true }); - return false; - } catch (e) { +}); var desc2 = Object.getOwnPropertyDescriptor(obj, "prop"); - return propertyDefineCorrect && desc1.configurable === false && obj.prop === 2010 && desc2.configurable === false && e instanceof TypeError; - } - } -runTestCase(testcase); +assert(propertyDefineCorrect, 'propertyDefineCorrect !== true'); +assert.sameValue(desc1.configurable, false, 'desc1.configurable'); +assert.sameValue(obj.prop, 2010, 'obj.prop'); +assert.sameValue(desc2.configurable, false, 'desc2.configurable'); diff --git a/test/built-ins/Object/defineProperty/15.2.3.6-4-353.js b/test/built-ins/Object/defineProperty/15.2.3.6-4-353.js index 98c28a86c6530606ef4ba211c03159ed7e3b5dea..7f90efce203323b2a6d81f8cee4cd6788cd10130 100644 --- a/test/built-ins/Object/defineProperty/15.2.3.6-4-353.js +++ b/test/built-ins/Object/defineProperty/15.2.3.6-4-353.js @@ -7,10 +7,8 @@ description: > ES5 Attributes - fail to update the data property ([[Writable]] is true, [[Enumerable]] is false, [[Configurable]] is false) to an accessor property -includes: [runTestCase.js] ---*/ -function testcase() { var obj = {}; Object.defineProperty(obj, "prop", { @@ -25,14 +23,13 @@ function testcase() { function getFunc() { return 20; } - try { +assert.throws(TypeError, function() { Object.defineProperty(obj, "prop", { get: getFunc }); - return false; - } catch (e) { +}); var desc2 = Object.getOwnPropertyDescriptor(obj, "prop"); - return propertyDefineCorrect && desc1.value === 2010 && obj.prop === 2010 && typeof desc2.get === "undefined" && e instanceof TypeError; - } - } -runTestCase(testcase); +assert(propertyDefineCorrect, 'propertyDefineCorrect !== true'); +assert.sameValue(desc1.value, 2010, 'desc1.value'); +assert.sameValue(obj.prop, 2010, 'obj.prop'); +assert.sameValue(typeof desc2.get, "undefined", 'typeof desc2.get'); diff --git a/test/built-ins/Object/defineProperty/15.2.3.6-4-36.js b/test/built-ins/Object/defineProperty/15.2.3.6-4-36.js index 2efdb845370416499a0d90058f7a0f3d5774aa20..207e87585cc07c4c338e405c4f8424f0e863d8ee 100644 --- a/test/built-ins/Object/defineProperty/15.2.3.6-4-36.js +++ b/test/built-ins/Object/defineProperty/15.2.3.6-4-36.js @@ -7,25 +7,18 @@ description: > Object.defineProperty - 'O' is a Boolean object that uses Object's [[GetOwnProperty]] method to access the 'name' property (8.12.9 step 1) -includes: [runTestCase.js] ---*/ -function testcase() { var obj = new Boolean(true); Object.defineProperty(obj, "foo", { value: 12, configurable: false }); - - try { +assert.throws(TypeError, function() { Object.defineProperty(obj, "foo", { value: 11, configurable: true }); - return false; - } catch (e) { - return e instanceof TypeError && obj.foo === 12; - } - } -runTestCase(testcase); +}); +assert.sameValue(obj.foo, 12, 'obj.foo'); diff --git a/test/built-ins/Object/defineProperty/15.2.3.6-4-364.js b/test/built-ins/Object/defineProperty/15.2.3.6-4-364.js index dd02213bd48040e2bce5fcc2022c41d87c756652..2bca77ac775b6b856237087da67ab21222f123fa 100644 --- a/test/built-ins/Object/defineProperty/15.2.3.6-4-364.js +++ b/test/built-ins/Object/defineProperty/15.2.3.6-4-364.js @@ -7,10 +7,8 @@ description: > ES5 Attributes - fail to update [[Writable]] attribute of data property ([[Writable]] is false, [[Enumerable]] is true, [[Configurable]] is false) to different value -includes: [runTestCase.js] ---*/ -function testcase() { var obj = {}; Object.defineProperty(obj, "prop", { @@ -21,16 +19,14 @@ function testcase() { }); var propertyDefineCorrect = obj.hasOwnProperty("prop"); var desc1 = Object.getOwnPropertyDescriptor(obj, "prop"); - try { +assert.throws(TypeError, function() { Object.defineProperty(obj, "prop", { writable: true }); - - return false; - } catch (e) { +}); var desc2 = Object.getOwnPropertyDescriptor(obj, "prop"); - return propertyDefineCorrect && desc1.writable === false && obj.prop === 2010 && desc2.writable === false && e instanceof TypeError; - } - } -runTestCase(testcase); +assert(propertyDefineCorrect, 'propertyDefineCorrect !== true'); +assert.sameValue(desc1.writable, false, 'desc1.writable'); +assert.sameValue(obj.prop, 2010, 'obj.prop'); +assert.sameValue(desc2.writable, false, 'desc2.writable'); diff --git a/test/built-ins/Object/defineProperty/15.2.3.6-4-365.js b/test/built-ins/Object/defineProperty/15.2.3.6-4-365.js index ccb73b470ffff8a8aad67e785e727a452117d1c8..e64f411e992625e7752f89595598eca14a6b1386 100644 --- a/test/built-ins/Object/defineProperty/15.2.3.6-4-365.js +++ b/test/built-ins/Object/defineProperty/15.2.3.6-4-365.js @@ -7,10 +7,8 @@ description: > ES5 Attributes - fail to update [[Enumerable]] attribute of data property ([[Writable]] is false, [[Enumerable]] is true, [[Configurable]] is false) to different value -includes: [runTestCase.js] ---*/ -function testcase() { var obj = {}; Object.defineProperty(obj, "prop", { @@ -21,16 +19,14 @@ function testcase() { }); var propertyDefineCorrect = obj.hasOwnProperty("prop"); var desc1 = Object.getOwnPropertyDescriptor(obj, "prop"); - try { +assert.throws(TypeError, function() { Object.defineProperty(obj, "prop", { enumerable: false }); - - return false; - } catch (e) { +}); var desc2 = Object.getOwnPropertyDescriptor(obj, "prop"); - return propertyDefineCorrect && desc1.enumerable === true && obj.prop === 2010 && desc2.enumerable === true && e instanceof TypeError; - } - } -runTestCase(testcase); +assert(propertyDefineCorrect, 'propertyDefineCorrect !== true'); +assert.sameValue(desc1.enumerable, true, 'desc1.enumerable'); +assert.sameValue(obj.prop, 2010, 'obj.prop'); +assert.sameValue(desc2.enumerable, true, 'desc2.enumerable'); diff --git a/test/built-ins/Object/defineProperty/15.2.3.6-4-366.js b/test/built-ins/Object/defineProperty/15.2.3.6-4-366.js index 4d81111716ba720b7ee089620c987b08260bb659..1b83099163824a54569107b8711d0de78674b948 100644 --- a/test/built-ins/Object/defineProperty/15.2.3.6-4-366.js +++ b/test/built-ins/Object/defineProperty/15.2.3.6-4-366.js @@ -7,10 +7,8 @@ description: > ES5 Attributes - fail to update [[Configurable]] attribute of data property ([[Writable]] is false, [[Enumerable]] is true, [[Configurable]] is false) to different value -includes: [runTestCase.js] ---*/ -function testcase() { var obj = {}; Object.defineProperty(obj, "prop", { @@ -21,16 +19,14 @@ function testcase() { }); var propertyDefineCorrect = obj.hasOwnProperty("prop"); var desc1 = Object.getOwnPropertyDescriptor(obj, "prop"); - try { +assert.throws(TypeError, function() { Object.defineProperty(obj, "prop", { configurable: true }); - - return false; - } catch (e) { +}); var desc2 = Object.getOwnPropertyDescriptor(obj, "prop"); - return propertyDefineCorrect && desc1.configurable === false && obj.prop === 2010 && desc2.configurable === false && e instanceof TypeError; - } - } -runTestCase(testcase); +assert(propertyDefineCorrect, 'propertyDefineCorrect !== true'); +assert.sameValue(desc1.configurable, false, 'desc1.configurable'); +assert.sameValue(obj.prop, 2010, 'obj.prop'); +assert.sameValue(desc2.configurable, false, 'desc2.configurable'); diff --git a/test/built-ins/Object/defineProperty/15.2.3.6-4-367.js b/test/built-ins/Object/defineProperty/15.2.3.6-4-367.js index e7152981d37cd0b3b59add82cc07ab47e3e54412..2626b69fa34dcf7a52e93f2292aa29429482de7e 100644 --- a/test/built-ins/Object/defineProperty/15.2.3.6-4-367.js +++ b/test/built-ins/Object/defineProperty/15.2.3.6-4-367.js @@ -7,10 +7,8 @@ description: > ES5 Attributes - fail to update the data property ([[Writable]] is false, [[Enumerable]] is true, [[Configurable]] is false) to an accessor property -includes: [runTestCase.js] ---*/ -function testcase() { var obj = {}; Object.defineProperty(obj, "prop", { @@ -25,14 +23,13 @@ function testcase() { function getFunc() { return 20; } - try { +assert.throws(TypeError, function() { Object.defineProperty(obj, "prop", { get: getFunc }); - return false; - } catch (e) { +}); var desc2 = Object.getOwnPropertyDescriptor(obj, "prop"); - return propertyDefineCorrect && desc1.value === 2010 && obj.prop === 2010 && typeof desc2.get === "undefined" && e instanceof TypeError; - } - } -runTestCase(testcase); +assert(propertyDefineCorrect, 'propertyDefineCorrect !== true'); +assert.sameValue(desc1.value, 2010, 'desc1.value'); +assert.sameValue(obj.prop, 2010, 'obj.prop'); +assert.sameValue(typeof desc2.get, "undefined", 'typeof desc2.get'); diff --git a/test/built-ins/Object/defineProperty/15.2.3.6-4-37.js b/test/built-ins/Object/defineProperty/15.2.3.6-4-37.js index 09d3cf9169a22efb7716b13ec0fe632a68875c99..c27cbbc780f8f67a3204e9cc3db35c53a1c5b1cd 100644 --- a/test/built-ins/Object/defineProperty/15.2.3.6-4-37.js +++ b/test/built-ins/Object/defineProperty/15.2.3.6-4-37.js @@ -7,25 +7,18 @@ description: > Object.defineProperty - 'O' is a Number object that uses Object's [[GetOwnProperty]] method to access the 'name' property (8.12.9 step 1) -includes: [runTestCase.js] ---*/ -function testcase() { var obj = new Number(-2); Object.defineProperty(obj, "foo", { value: 12, configurable: false }); - - try { +assert.throws(TypeError, function() { Object.defineProperty(obj, "foo", { value: 11, configurable: true }); - return false; - } catch (e) { - return e instanceof TypeError && obj.foo === 12; - } - } -runTestCase(testcase); +}); +assert.sameValue(obj.foo, 12, 'obj.foo'); diff --git a/test/built-ins/Object/defineProperty/15.2.3.6-4-378.js b/test/built-ins/Object/defineProperty/15.2.3.6-4-378.js index a439572238f74ba7fb686b2cc6f0c245aa801ecf..ca9b1ab784d52e52f2b4f6212b3f70363d6ae90a 100644 --- a/test/built-ins/Object/defineProperty/15.2.3.6-4-378.js +++ b/test/built-ins/Object/defineProperty/15.2.3.6-4-378.js @@ -7,10 +7,8 @@ description: > ES5 Attributes - fail to update [[Writable]] attribute of data property ([[Writable]] is false, [[Enumerable]] is false, [[Configurable]] is false) to different value -includes: [runTestCase.js] ---*/ -function testcase() { var obj = {}; Object.defineProperty(obj, "prop", { @@ -21,17 +19,14 @@ function testcase() { }); var propertyDefineCorrect = obj.hasOwnProperty("prop"); var desc1 = Object.getOwnPropertyDescriptor(obj, "prop"); - - try { +assert.throws(TypeError, function() { Object.defineProperty(obj, "prop", { writable: true }); - - return false; - } catch (e) { +}); var desc2 = Object.getOwnPropertyDescriptor(obj, "prop"); - return propertyDefineCorrect && desc1.writable === false && obj.prop === 2010 && desc2.writable === false && e instanceof TypeError; - } - } -runTestCase(testcase); +assert(propertyDefineCorrect, 'propertyDefineCorrect !== true'); +assert.sameValue(desc1.writable, false, 'desc1.writable'); +assert.sameValue(obj.prop, 2010, 'obj.prop'); +assert.sameValue(desc2.writable, false, 'desc2.writable'); diff --git a/test/built-ins/Object/defineProperty/15.2.3.6-4-379.js b/test/built-ins/Object/defineProperty/15.2.3.6-4-379.js index ba16519f42dea02b4e76f7d8dbdb8da598ff3984..8d52b1bb0e9ac75683a1588d736e7514e7ce6817 100644 --- a/test/built-ins/Object/defineProperty/15.2.3.6-4-379.js +++ b/test/built-ins/Object/defineProperty/15.2.3.6-4-379.js @@ -7,10 +7,8 @@ description: > ES5 Attributes - fail to update [[Enumerable]] attribute of data property ([[Writable]] is false, [[Enumerable]] is false, [[Configurable]] is false) to different value -includes: [runTestCase.js] ---*/ -function testcase() { var obj = {}; Object.defineProperty(obj, "prop", { @@ -21,16 +19,14 @@ function testcase() { }); var propertyDefineCorrect = obj.hasOwnProperty("prop"); var desc1 = Object.getOwnPropertyDescriptor(obj, "prop"); - try { +assert.throws(TypeError, function() { Object.defineProperty(obj, "prop", { enumerable: true }); - - return false; - } catch (e) { +}); var desc2 = Object.getOwnPropertyDescriptor(obj, "prop"); - return propertyDefineCorrect && desc1.enumerable === false && obj.prop === 2010 && desc2.enumerable === false && e instanceof TypeError; - } - } -runTestCase(testcase); +assert(propertyDefineCorrect, 'propertyDefineCorrect !== true'); +assert.sameValue(desc1.enumerable, false, 'desc1.enumerable'); +assert.sameValue(obj.prop, 2010, 'obj.prop'); +assert.sameValue(desc2.enumerable, false, 'desc2.enumerable'); diff --git a/test/built-ins/Object/defineProperty/15.2.3.6-4-380.js b/test/built-ins/Object/defineProperty/15.2.3.6-4-380.js index b47b2906a6d959394c76f56afb0b66f0f692f791..8797d6d55497f3e7ca94ecd89ae0633a790af213 100644 --- a/test/built-ins/Object/defineProperty/15.2.3.6-4-380.js +++ b/test/built-ins/Object/defineProperty/15.2.3.6-4-380.js @@ -7,10 +7,8 @@ description: > ES5 Attributes - fail to update [[Configurable]] attribute of data property ([[Writable]] is false, [[Enumerable]] is false, [[Configurable]] is false) to different value -includes: [runTestCase.js] ---*/ -function testcase() { var obj = {}; Object.defineProperty(obj, "prop", { @@ -21,17 +19,14 @@ function testcase() { }); var propertyDefineCorrect = obj.hasOwnProperty("prop"); var desc1 = Object.getOwnPropertyDescriptor(obj, "prop"); - - try { +assert.throws(TypeError, function() { Object.defineProperty(obj, "prop", { configurable: true }); - - return false; - } catch (e) { +}); var desc2 = Object.getOwnPropertyDescriptor(obj, "prop"); - return propertyDefineCorrect && desc1.configurable === false && obj.prop === 2010 && desc2.configurable === false && e instanceof TypeError; - } - } -runTestCase(testcase); +assert(propertyDefineCorrect, 'propertyDefineCorrect !== true'); +assert.sameValue(desc1.configurable, false, 'desc1.configurable'); +assert.sameValue(obj.prop, 2010, 'obj.prop'); +assert.sameValue(desc2.configurable, false, 'desc2.configurable'); diff --git a/test/built-ins/Object/defineProperty/15.2.3.6-4-381.js b/test/built-ins/Object/defineProperty/15.2.3.6-4-381.js index 3ed7d37a4b75310c761e05bf9be62d56807279cf..93a371d4159f76005e212df191769f5770e26af6 100644 --- a/test/built-ins/Object/defineProperty/15.2.3.6-4-381.js +++ b/test/built-ins/Object/defineProperty/15.2.3.6-4-381.js @@ -7,10 +7,8 @@ description: > ES5 Attributes - fail to update the data property ([[Writable]] is false, [[Enumerable]] is false, [[Configurable]] is false) to an accessor property -includes: [runTestCase.js] ---*/ -function testcase() { var obj = {}; Object.defineProperty(obj, "prop", { @@ -25,14 +23,13 @@ function testcase() { function getFunc() { return 20; } - try { +assert.throws(TypeError, function() { Object.defineProperty(obj, "prop", { get: getFunc }); - return false; - } catch (e) { +}); var desc2 = Object.getOwnPropertyDescriptor(obj, "prop"); - return propertyDefineCorrect && desc1.value === 2010 && obj.prop === 2010 && typeof desc2.get === "undefined" && e instanceof TypeError; - } - } -runTestCase(testcase); +assert(propertyDefineCorrect, 'propertyDefineCorrect !== true'); +assert.sameValue(desc1.value, 2010, 'desc1.value'); +assert.sameValue(obj.prop, 2010, 'obj.prop'); +assert.sameValue(typeof desc2.get, "undefined", 'typeof desc2.get'); diff --git a/test/built-ins/Object/defineProperty/15.2.3.6-4-39.js b/test/built-ins/Object/defineProperty/15.2.3.6-4-39.js index 077cbfe4f92f37181ec1e74db999289f6876d731..8e26fa4422f87c66c25e02b765976be035f93e6a 100644 --- a/test/built-ins/Object/defineProperty/15.2.3.6-4-39.js +++ b/test/built-ins/Object/defineProperty/15.2.3.6-4-39.js @@ -7,25 +7,18 @@ description: > Object.defineProperty - 'O' is a Date object that uses Object's [[GetOwnProperty]] method to access the 'name' property (8.12.9 step 1) -includes: [runTestCase.js] ---*/ -function testcase() { var desc = new Date(); Object.defineProperty(desc, "foo", { value: 12, configurable: false }); - - try { +assert.throws(TypeError, function() { Object.defineProperty(desc, "foo", { value: 11, configurable: true }); - return false; - } catch (e) { - return e instanceof TypeError && desc.foo === 12; - } - } -runTestCase(testcase); +}); +assert.sameValue(desc.foo, 12, 'desc.foo'); diff --git a/test/built-ins/Object/defineProperty/15.2.3.6-4-40.js b/test/built-ins/Object/defineProperty/15.2.3.6-4-40.js index e5541472a9c3f10f2e1e13b83bbf5aff9ce80d4d..bfff5ac93d80904abfdd9f8331f0ac699391458f 100644 --- a/test/built-ins/Object/defineProperty/15.2.3.6-4-40.js +++ b/test/built-ins/Object/defineProperty/15.2.3.6-4-40.js @@ -7,25 +7,18 @@ description: > Object.defineProperty - 'O' is a RegExp object that uses Object's [[GetOwnProperty]] method to access the 'name' property (8.12.9 step 1) -includes: [runTestCase.js] ---*/ -function testcase() { var desc = new RegExp(); Object.defineProperty(desc, "foo", { value: 12, configurable: false }); - - try { +assert.throws(TypeError, function() { Object.defineProperty(desc, "foo", { value: 11, configurable: true }); - return false; - } catch (e) { - return e instanceof TypeError && desc.foo === 12; - } - } -runTestCase(testcase); +}); +assert.sameValue(desc.foo, 12, 'desc.foo'); diff --git a/test/built-ins/Object/defineProperty/15.2.3.6-4-42.js b/test/built-ins/Object/defineProperty/15.2.3.6-4-42.js index 4c5524806cd08ebd59069783d4724dcb46e806f1..2ca95325b31e937cb7e07e3868362c4337692c98 100644 --- a/test/built-ins/Object/defineProperty/15.2.3.6-4-42.js +++ b/test/built-ins/Object/defineProperty/15.2.3.6-4-42.js @@ -7,25 +7,18 @@ description: > Object.defineProperty - 'O' is an Error object that uses Object's [[GetOwnProperty]] method to access the 'name' property (8.12.9 step 1) -includes: [runTestCase.js] ---*/ -function testcase() { var desc = new Error(); Object.defineProperty(desc, "foo", { value: 12, configurable: false }); - - try { +assert.throws(TypeError, function() { Object.defineProperty(desc, "foo", { value: 11, configurable: true }); - return false; - } catch (e) { - return e instanceof TypeError && desc.foo === 12; - } - } -runTestCase(testcase); +}); +assert.sameValue(desc.foo, 12, 'desc.foo'); diff --git a/test/built-ins/Object/defineProperty/15.2.3.6-4-43.js b/test/built-ins/Object/defineProperty/15.2.3.6-4-43.js index a0ad64d78074847953c67a76cca2be6d1cda3bd9..4146385ecb5eba5c0e32c5d43eb31f04406842ee 100644 --- a/test/built-ins/Object/defineProperty/15.2.3.6-4-43.js +++ b/test/built-ins/Object/defineProperty/15.2.3.6-4-43.js @@ -7,25 +7,18 @@ description: > Object.defineProperty - 'O' is an Arguments object which implements its own [[GetOwnProperty]] method to access the 'name' property (8.12.9 step 1) -includes: [runTestCase.js] ---*/ -function testcase() { var argObj = (function () { return arguments; })(); Object.defineProperty(argObj, "foo", { value: 12, configurable: false }); - - try { +assert.throws(TypeError, function() { Object.defineProperty(argObj, "foo", { value: 11, configurable: true }); - return false; - } catch (e) { - return e instanceof TypeError && argObj.foo === 12; - } - } -runTestCase(testcase); +}); +assert.sameValue(argObj.foo, 12, 'argObj.foo'); diff --git a/test/built-ins/Object/defineProperty/15.2.3.6-4-435.js b/test/built-ins/Object/defineProperty/15.2.3.6-4-435.js index 11576b55fe94c5debca6fdca59c5ad6066a4fd50..c9537916865baa55fb68551c5b4093a1d6ce35a8 100644 --- a/test/built-ins/Object/defineProperty/15.2.3.6-4-435.js +++ b/test/built-ins/Object/defineProperty/15.2.3.6-4-435.js @@ -8,10 +8,8 @@ description: > property ([[Get]] is undefined, [[Set]] is undefined, [[Enumerable]] is true, [[Configurable]] is false) to different value -includes: [runTestCase.js] ---*/ -function testcase() { var obj = {}; var getFunc = function () { return 1001; @@ -26,17 +24,14 @@ function testcase() { var result1 = typeof obj.prop === "undefined"; var desc1 = Object.getOwnPropertyDescriptor(obj, "prop"); - - try { +assert.throws(TypeError, function() { Object.defineProperty(obj, "prop", { get: getFunc }); - - return false; - } catch (e) { +}); var result2 = typeof obj.prop === "undefined"; var desc2 = Object.getOwnPropertyDescriptor(obj, "prop"); - return result1 && result2 && typeof desc1.get === "undefined" && typeof desc2.get === "undefined" && e instanceof TypeError; - } - } -runTestCase(testcase); +assert(result1, 'result1 !== true'); +assert(result2, 'result2 !== true'); +assert.sameValue(typeof desc1.get, "undefined", 'typeof desc1.get'); +assert.sameValue(typeof desc2.get, "undefined", 'typeof desc2.get'); diff --git a/test/built-ins/Object/defineProperty/15.2.3.6-4-436.js b/test/built-ins/Object/defineProperty/15.2.3.6-4-436.js index 84804edc66c6f6caca70103dbda52788b882a244..56a8768029905116695600bbf92d7eb4753f3a95 100644 --- a/test/built-ins/Object/defineProperty/15.2.3.6-4-436.js +++ b/test/built-ins/Object/defineProperty/15.2.3.6-4-436.js @@ -8,10 +8,8 @@ description: > property ([[Get]] is undefined, [[Set]] is undefined, [[Enumerable]] is true, [[Configurable]] is false) to different value -includes: [runTestCase.js] ---*/ -function testcase() { var obj = {}; var verifySetFunc = "data"; var setFunc = function (value) { @@ -26,16 +24,11 @@ function testcase() { }); var desc1 = Object.getOwnPropertyDescriptor(obj, "prop"); - - try { +assert.throws(TypeError, function() { Object.defineProperty(obj, "prop", { set: setFunc }); - - return false; - } catch (e) { +}); var desc2 = Object.getOwnPropertyDescriptor(obj, "prop"); - return typeof desc1.set === "undefined" && typeof desc2.set === "undefined" && e instanceof TypeError; - } - } -runTestCase(testcase); +assert.sameValue(typeof desc1.set, "undefined", 'typeof desc1.set'); +assert.sameValue(typeof desc2.set, "undefined", 'typeof desc2.set'); diff --git a/test/built-ins/Object/defineProperty/15.2.3.6-4-437.js b/test/built-ins/Object/defineProperty/15.2.3.6-4-437.js index cc31175c46d68cd584efc8bcc99346af17207cb3..1ad84c659bc07588034683f80b3a952ae537bf30 100644 --- a/test/built-ins/Object/defineProperty/15.2.3.6-4-437.js +++ b/test/built-ins/Object/defineProperty/15.2.3.6-4-437.js @@ -8,10 +8,8 @@ description: > accessor property ([[Get]] is undefined, [[Set]] is undefined, [[Enumerable]] is true, [[Configurable]] is false) to different value -includes: [runTestCase.js] ---*/ -function testcase() { var obj = {}; Object.defineProperty(obj, "prop", { @@ -27,14 +25,11 @@ function testcase() { result1 = true; } } - - try { +assert.throws(TypeError, function() { Object.defineProperty(obj, "prop", { enumerable: false }); - - return false; - } catch (e) { +}); var result2 = false; var desc2 = Object.getOwnPropertyDescriptor(obj, "prop"); for (var p2 in obj) { @@ -43,7 +38,7 @@ function testcase() { } } - return result1 && result2 && desc1.enumerable === true && desc2.enumerable === true && e instanceof TypeError; - } - } -runTestCase(testcase); +assert(result1, 'result1 !== true'); +assert(result2, 'result2 !== true'); +assert.sameValue(desc1.enumerable, true, 'desc1.enumerable'); +assert.sameValue(desc2.enumerable, true, 'desc2.enumerable'); diff --git a/test/built-ins/Object/defineProperty/15.2.3.6-4-439.js b/test/built-ins/Object/defineProperty/15.2.3.6-4-439.js index 0be18cdb8bf261a9c4fe79c85d70a9ca7ffdf3e1..ce40ec27b3d42dc8b1d8a00025fb56180476daa8 100644 --- a/test/built-ins/Object/defineProperty/15.2.3.6-4-439.js +++ b/test/built-ins/Object/defineProperty/15.2.3.6-4-439.js @@ -7,10 +7,8 @@ description: > ES5 Attributes - fail to update the accessor property ([[Get]] is undefined, [[Set]] is undefined, [[Enumerable]] is true, [[Configurable]] is false) to a data property -includes: [runTestCase.js] ---*/ -function testcase() { var obj = {}; Object.defineProperty(obj, "prop", { @@ -20,17 +18,12 @@ function testcase() { configurable: false }); var desc1 = Object.getOwnPropertyDescriptor(obj, "prop"); - - try { +assert.throws(TypeError, function() { Object.defineProperty(obj, "prop", { value: 1001 }); - - return false; - } catch (e) { +}); var desc2 = Object.getOwnPropertyDescriptor(obj, "prop"); - return desc1.hasOwnProperty("get") && !desc2.hasOwnProperty("value") && e instanceof TypeError; - } - } -runTestCase(testcase); +assert(desc1.hasOwnProperty("get"), 'desc1.hasOwnProperty("get") !== true'); +assert.sameValue(desc2.hasOwnProperty("value"), false, 'desc2.hasOwnProperty("value")'); diff --git a/test/built-ins/Object/defineProperty/15.2.3.6-4-453.js b/test/built-ins/Object/defineProperty/15.2.3.6-4-453.js index dac2a2b3397d858c576d664bd4e0abb8dde19c8a..c0780c55bbf3d2545cdf03a19ad122b7a01affcf 100644 --- a/test/built-ins/Object/defineProperty/15.2.3.6-4-453.js +++ b/test/built-ins/Object/defineProperty/15.2.3.6-4-453.js @@ -8,10 +8,8 @@ description: > property ([[Get]] is undefined, [[Set]] is undefined, [[Enumerable]] is false, [[Configurable]] is false) to different value -includes: [runTestCase.js] ---*/ -function testcase() { var obj = {}; var getFunc = function () { return 1001; @@ -26,17 +24,14 @@ function testcase() { var result1 = typeof obj.prop === "undefined"; var desc1 = Object.getOwnPropertyDescriptor(obj, "prop"); - - try { +assert.throws(TypeError, function() { Object.defineProperty(obj, "prop", { get: getFunc }); - - return false; - } catch (e) { +}); var result2 = typeof obj.prop === "undefined"; var desc2 = Object.getOwnPropertyDescriptor(obj, "prop"); - return result1 && result2 && typeof desc1.get === "undefined" && typeof desc2.get === "undefined" && e instanceof TypeError; - } - } -runTestCase(testcase); +assert(result1, 'result1 !== true'); +assert(result2, 'result2 !== true'); +assert.sameValue(typeof desc1.get, "undefined", 'typeof desc1.get'); +assert.sameValue(typeof desc2.get, "undefined", 'typeof desc2.get'); diff --git a/test/built-ins/Object/defineProperty/15.2.3.6-4-454.js b/test/built-ins/Object/defineProperty/15.2.3.6-4-454.js index 1c1b6e852b52e700528d1849b4fa2992ccb0e90a..52e445972a3011d73e6470bf47c7d63fb8ecebf0 100644 --- a/test/built-ins/Object/defineProperty/15.2.3.6-4-454.js +++ b/test/built-ins/Object/defineProperty/15.2.3.6-4-454.js @@ -8,10 +8,8 @@ description: > property ([[Get]] is undefined, [[Set]] is undefined, [[Enumerable]] is false, [[Configurable]] is false) to different value -includes: [runTestCase.js] ---*/ -function testcase() { var obj = {}; var verifySetFunc = "data"; @@ -27,16 +25,11 @@ function testcase() { }); var desc1 = Object.getOwnPropertyDescriptor(obj, "prop"); - - try { +assert.throws(TypeError, function() { Object.defineProperty(obj, "prop", { set: setFunc }); - - return false; - } catch (e) { +}); var desc2 = Object.getOwnPropertyDescriptor(obj, "prop"); - return typeof desc1.set === "undefined" && typeof desc2.set === "undefined" && e instanceof TypeError; - } - } -runTestCase(testcase); +assert.sameValue(typeof desc1.set, "undefined", 'typeof desc1.set'); +assert.sameValue(typeof desc2.set, "undefined", 'typeof desc2.set'); diff --git a/test/built-ins/Object/defineProperty/15.2.3.6-4-455.js b/test/built-ins/Object/defineProperty/15.2.3.6-4-455.js index 74a99987d22c2d5368c536e92a79f1e70a28468f..baad8246678a531798aec6d6db9954fa9de527ba 100644 --- a/test/built-ins/Object/defineProperty/15.2.3.6-4-455.js +++ b/test/built-ins/Object/defineProperty/15.2.3.6-4-455.js @@ -8,10 +8,8 @@ description: > accessor property ([[Get]] is undefined, [[Set]] is undefined, [[Enumerable]] is false, [[Configurable]] is false) to different value -includes: [runTestCase.js] ---*/ -function testcase() { var obj = {}; Object.defineProperty(obj, "prop", { @@ -27,14 +25,11 @@ function testcase() { result1 = true; } } - - try { +assert.throws(TypeError, function() { Object.defineProperty(obj, "prop", { enumerable: true }); - - return false; - } catch (e) { +}); var result2 = false; var desc2 = Object.getOwnPropertyDescriptor(obj, "prop"); for (var p2 in obj) { @@ -43,7 +38,7 @@ function testcase() { } } - return !result1 && !result2 && desc1.enumerable === false && desc2.enumerable === false && e instanceof TypeError; - } - } -runTestCase(testcase); +assert.sameValue(result1, false, 'result1'); +assert.sameValue(result2, false, 'result2'); +assert.sameValue(desc1.enumerable, false, 'desc1.enumerable'); +assert.sameValue(desc2.enumerable, false, 'desc2.enumerable'); diff --git a/test/built-ins/Object/defineProperty/15.2.3.6-4-457.js b/test/built-ins/Object/defineProperty/15.2.3.6-4-457.js index 9bb5c03abe68ac0cdbcee7f791c297b7ba9e761c..7f90aa37970cb9290f2fd3660d8cedb749721157 100644 --- a/test/built-ins/Object/defineProperty/15.2.3.6-4-457.js +++ b/test/built-ins/Object/defineProperty/15.2.3.6-4-457.js @@ -7,10 +7,8 @@ description: > ES5 Attributes - fail to update the accessor property ([[Get]] is undefined, [[Set]] is undefined, [[Enumerable]] is false, [[Configurable]] is false) to a data property -includes: [runTestCase.js] ---*/ -function testcase() { var obj = {}; Object.defineProperty(obj, "prop", { @@ -20,17 +18,12 @@ function testcase() { configurable: false }); var desc1 = Object.getOwnPropertyDescriptor(obj, "prop"); - - try { +assert.throws(TypeError, function() { Object.defineProperty(obj, "prop", { value: 1001 }); - - return false; - } catch (e) { +}); var desc2 = Object.getOwnPropertyDescriptor(obj, "prop"); - return desc1.hasOwnProperty("get") && !desc2.hasOwnProperty("value") && e instanceof TypeError; - } - } -runTestCase(testcase); +assert(desc1.hasOwnProperty("get"), 'desc1.hasOwnProperty("get") !== true'); +assert.sameValue(desc2.hasOwnProperty("value"), false, 'desc2.hasOwnProperty("value")'); diff --git a/test/built-ins/Object/defineProperty/15.2.3.6-4-471.js b/test/built-ins/Object/defineProperty/15.2.3.6-4-471.js index 58813e18ddd8df2d203e43b3a1f5f25e2c707a8b..1d0099628761d5a2b7194343b68513efaff22366 100644 --- a/test/built-ins/Object/defineProperty/15.2.3.6-4-471.js +++ b/test/built-ins/Object/defineProperty/15.2.3.6-4-471.js @@ -8,10 +8,8 @@ description: > property ([[Get]] is undefined, [[Set]] is a Function, [[Enumerable]] is true, [[Configurable]] is false) to different value -includes: [runTestCase.js] ---*/ -function testcase() { var obj = {}; var getFunc = function () { @@ -32,18 +30,15 @@ function testcase() { var result1 = typeof obj.prop === "undefined"; var desc1 = Object.getOwnPropertyDescriptor(obj, "prop"); - - try { +assert.throws(TypeError, function() { Object.defineProperty(obj, "prop", { get: getFunc }); - - return false; - } catch (e) { +}); var result2 = typeof obj.prop === "undefined"; var desc2 = Object.getOwnPropertyDescriptor(obj, "prop"); - return result1 && result2 && typeof desc1.get === "undefined" && typeof desc2.get === "undefined" && e instanceof TypeError; - } - } -runTestCase(testcase); +assert(result1, 'result1 !== true'); +assert(result2, 'result2 !== true'); +assert.sameValue(typeof desc1.get, "undefined", 'typeof desc1.get'); +assert.sameValue(typeof desc2.get, "undefined", 'typeof desc2.get'); diff --git a/test/built-ins/Object/defineProperty/15.2.3.6-4-472.js b/test/built-ins/Object/defineProperty/15.2.3.6-4-472.js index b19d317601aa6c8b5baf942991b3dcf67b348929..1502c79c168d98b553bfb1d05fdc3e7571c83902 100644 --- a/test/built-ins/Object/defineProperty/15.2.3.6-4-472.js +++ b/test/built-ins/Object/defineProperty/15.2.3.6-4-472.js @@ -8,10 +8,8 @@ description: > property ([[Get]] is undefined, [[Set]] is a Function, [[Enumerable]] is true, [[Configurable]] is false) to different value -includes: [runTestCase.js] ---*/ -function testcase() { var obj = {}; var verifySetFunc = "data"; @@ -27,17 +25,12 @@ function testcase() { }); var desc1 = Object.getOwnPropertyDescriptor(obj, "prop"); - - try { +assert.throws(TypeError, function() { Object.defineProperty(obj, "prop", { set: undefined }); - - return false; - } catch (e) { +}); var desc2 = Object.getOwnPropertyDescriptor(obj, "prop"); - return desc1.set === setFunc && desc2.set === setFunc && e instanceof TypeError; - } - } -runTestCase(testcase); +assert.sameValue(desc1.set, setFunc, 'desc1.set'); +assert.sameValue(desc2.set, setFunc, 'desc2.set'); diff --git a/test/built-ins/Object/defineProperty/15.2.3.6-4-473.js b/test/built-ins/Object/defineProperty/15.2.3.6-4-473.js index a004a0e6868304ada860ad1521590354cd70c7f2..a9c65d14d7f58eb63c4393b063cf6d4f2dbc8991 100644 --- a/test/built-ins/Object/defineProperty/15.2.3.6-4-473.js +++ b/test/built-ins/Object/defineProperty/15.2.3.6-4-473.js @@ -8,10 +8,8 @@ description: > accessor property ([[Get]] is undefined, [[Set]] is a Function, [[Enumerable]] is true, [[Configurable]] is false) to different value -includes: [runTestCase.js] ---*/ -function testcase() { var obj = {}; var verifySetFunc = "data"; @@ -33,14 +31,11 @@ function testcase() { result1 = true; } } - - try { +assert.throws(TypeError, function() { Object.defineProperty(obj, "prop", { enumerable: false }); - - return false; - } catch (e) { +}); var result2 = false; var desc2 = Object.getOwnPropertyDescriptor(obj, "prop"); for (var p2 in obj) { @@ -49,7 +44,7 @@ function testcase() { } } - return result1 && result2 && desc1.enumerable === true && desc2.enumerable === true && e instanceof TypeError; - } - } -runTestCase(testcase); +assert(result1, 'result1 !== true'); +assert(result2, 'result2 !== true'); +assert.sameValue(desc1.enumerable, true, 'desc1.enumerable'); +assert.sameValue(desc2.enumerable, true, 'desc2.enumerable'); diff --git a/test/built-ins/Object/defineProperty/15.2.3.6-4-475.js b/test/built-ins/Object/defineProperty/15.2.3.6-4-475.js index 63827bb2dc8664822fec7143b97805578e65837a..1ea58556c10d2a80f5ad32fdd851ad4957cbcca0 100644 --- a/test/built-ins/Object/defineProperty/15.2.3.6-4-475.js +++ b/test/built-ins/Object/defineProperty/15.2.3.6-4-475.js @@ -7,10 +7,8 @@ description: > ES5 Attributes - fail to update the accessor property ([[Get]] is undefined, [[Set]] is a Function, [[Enumerable]] is true, [[Configurable]] is false) to a data property -includes: [runTestCase.js] ---*/ -function testcase() { var obj = {}; var verifySetFunc = "data"; @@ -25,17 +23,12 @@ function testcase() { configurable: false }); var desc1 = Object.getOwnPropertyDescriptor(obj, "prop"); - - try { +assert.throws(TypeError, function() { Object.defineProperty(obj, "prop", { value: 1001 }); - - return false; - } catch (e) { +}); var desc2 = Object.getOwnPropertyDescriptor(obj, "prop"); - return desc1.hasOwnProperty("get") && !desc2.hasOwnProperty("value") && e instanceof TypeError; - } - } -runTestCase(testcase); +assert(desc1.hasOwnProperty("get"), 'desc1.hasOwnProperty("get") !== true'); +assert.sameValue(desc2.hasOwnProperty("value"), false, 'desc2.hasOwnProperty("value")'); diff --git a/test/built-ins/Object/defineProperty/15.2.3.6-4-489.js b/test/built-ins/Object/defineProperty/15.2.3.6-4-489.js index d6a8997ed3be6b87f014b951bf7bb77a8c4b4a8e..18e561052b3f50a12f7f2ed58189f45c9740f7e2 100644 --- a/test/built-ins/Object/defineProperty/15.2.3.6-4-489.js +++ b/test/built-ins/Object/defineProperty/15.2.3.6-4-489.js @@ -8,10 +8,8 @@ description: > property ([[Get]] is undefined, [[Set]] is a Function, [[Enumerable]] is false, [[Configurable]] is false) to different value -includes: [runTestCase.js] ---*/ -function testcase() { var obj = {}; var getFunc = function () { @@ -32,18 +30,15 @@ function testcase() { var result1 = typeof obj.prop === "undefined"; var desc1 = Object.getOwnPropertyDescriptor(obj, "prop"); - - try { +assert.throws(TypeError, function() { Object.defineProperty(obj, "prop", { get: getFunc }); - - return false; - } catch (e) { +}); var result2 = typeof obj.prop === "undefined"; var desc2 = Object.getOwnPropertyDescriptor(obj, "prop"); - return result1 && result2 && typeof desc1.get === "undefined" && typeof desc2.get === "undefined" && e instanceof TypeError; - } - } -runTestCase(testcase); +assert(result1, 'result1 !== true'); +assert(result2, 'result2 !== true'); +assert.sameValue(typeof desc1.get, "undefined", 'typeof desc1.get'); +assert.sameValue(typeof desc2.get, "undefined", 'typeof desc2.get'); diff --git a/test/built-ins/Object/defineProperty/15.2.3.6-4-490.js b/test/built-ins/Object/defineProperty/15.2.3.6-4-490.js index ee9586443a169149089b6a4b4a12325d72858bc3..a397f74ee90ac5a5f78f51052c0a1bd9e71433a6 100644 --- a/test/built-ins/Object/defineProperty/15.2.3.6-4-490.js +++ b/test/built-ins/Object/defineProperty/15.2.3.6-4-490.js @@ -8,10 +8,8 @@ description: > property ([[Get]] is undefined, [[Set]] is a Function, [[Enumerable]] is false, [[Configurable]] is false) to different value -includes: [runTestCase.js] ---*/ -function testcase() { var obj = {}; var verifySetFunc = "data"; @@ -27,17 +25,12 @@ function testcase() { }); var desc1 = Object.getOwnPropertyDescriptor(obj, "prop"); - - try { +assert.throws(TypeError, function() { Object.defineProperty(obj, "prop", { set: undefined }); - - return false; - } catch (e) { +}); var desc2 = Object.getOwnPropertyDescriptor(obj, "prop"); - return desc1.set === setFunc && desc2.set === setFunc && e instanceof TypeError; - } - } -runTestCase(testcase); +assert.sameValue(desc1.set, setFunc, 'desc1.set'); +assert.sameValue(desc2.set, setFunc, 'desc2.set'); diff --git a/test/built-ins/Object/defineProperty/15.2.3.6-4-491.js b/test/built-ins/Object/defineProperty/15.2.3.6-4-491.js index a382a2d6b7bdb58b29e183c6b45a3314067c5b70..04c26899b302979878f4f5ef785009857f827912 100644 --- a/test/built-ins/Object/defineProperty/15.2.3.6-4-491.js +++ b/test/built-ins/Object/defineProperty/15.2.3.6-4-491.js @@ -8,10 +8,8 @@ description: > accessor property ([[Get]] is undefined, [[Set]] is a Function, [[Enumerable]] is false, [[Configurable]] is false) to different value -includes: [runTestCase.js] ---*/ -function testcase() { var obj = {}; var verifySetFunc = "data"; @@ -33,14 +31,11 @@ function testcase() { result1 = true; } } - - try { +assert.throws(TypeError, function() { Object.defineProperty(obj, "prop", { enumerable: true }); - - return false; - } catch (e) { +}); var result2 = false; var desc2 = Object.getOwnPropertyDescriptor(obj, "prop"); for (var p2 in obj) { @@ -49,7 +44,7 @@ function testcase() { } } - return !result1 && !result2 && desc1.enumerable === false && desc2.enumerable === false && e instanceof TypeError; - } - } -runTestCase(testcase); +assert.sameValue(result1, false, 'result1'); +assert.sameValue(result2, false, 'result2'); +assert.sameValue(desc1.enumerable, false, 'desc1.enumerable'); +assert.sameValue(desc2.enumerable, false, 'desc2.enumerable'); diff --git a/test/built-ins/Object/defineProperty/15.2.3.6-4-493.js b/test/built-ins/Object/defineProperty/15.2.3.6-4-493.js index 28b9d24b899d41864c735b0698996e702c212d1c..8e51a7fd8024139ee292f8daab4637b9557aa4e6 100644 --- a/test/built-ins/Object/defineProperty/15.2.3.6-4-493.js +++ b/test/built-ins/Object/defineProperty/15.2.3.6-4-493.js @@ -7,10 +7,8 @@ description: > ES5 Attributes - fail to update the accessor property ([[Get]] is undefined, [[Set]] is a Function, [[Enumerable]] is false, [[Configurable]] is false) to a data property -includes: [runTestCase.js] ---*/ -function testcase() { var obj = {}; var verifySetFunc = "data"; @@ -25,17 +23,12 @@ function testcase() { configurable: false }); var desc1 = Object.getOwnPropertyDescriptor(obj, "prop"); - - try { +assert.throws(TypeError, function() { Object.defineProperty(obj, "prop", { value: 1001 }); - - return false; - } catch (e) { +}); var desc2 = Object.getOwnPropertyDescriptor(obj, "prop"); - return desc1.hasOwnProperty("get") && !desc2.hasOwnProperty("value") && e instanceof TypeError; - } - } -runTestCase(testcase); +assert(desc1.hasOwnProperty("get"), 'desc1.hasOwnProperty("get") !== true'); +assert.sameValue(desc2.hasOwnProperty("value"), false, 'desc2.hasOwnProperty("value")'); diff --git a/test/built-ins/Object/defineProperty/15.2.3.6-4-507.js b/test/built-ins/Object/defineProperty/15.2.3.6-4-507.js index e04445694c1fec9e3380914adfe3a5dd7d45ade1..f5ffda634d96f7fd56f501ed295c3a7e3290592c 100644 --- a/test/built-ins/Object/defineProperty/15.2.3.6-4-507.js +++ b/test/built-ins/Object/defineProperty/15.2.3.6-4-507.js @@ -8,10 +8,8 @@ description: > property ([[Get]] is a Function, [[Set]] is undefined, [[Enumerable]] is true, [[Configurable]] is false) to different value -includes: [runTestCase.js] ---*/ -function testcase() { var obj = {}; var getFunc = function () { return 1001; @@ -26,18 +24,15 @@ function testcase() { var result1 = obj.prop === 1001; var desc1 = Object.getOwnPropertyDescriptor(obj, "prop"); - - try { +assert.throws(TypeError, function() { Object.defineProperty(obj, "prop", { get: undefined }); - - return false; - } catch (e) { +}); var result2 = obj.prop === 1001; var desc2 = Object.getOwnPropertyDescriptor(obj, "prop"); - return result1 && result2 && desc1.get === getFunc && desc2.get === getFunc && e instanceof TypeError; - } - } -runTestCase(testcase); +assert(result1, 'result1 !== true'); +assert(result2, 'result2 !== true'); +assert.sameValue(desc1.get, getFunc, 'desc1.get'); +assert.sameValue(desc2.get, getFunc, 'desc2.get'); diff --git a/test/built-ins/Object/defineProperty/15.2.3.6-4-508.js b/test/built-ins/Object/defineProperty/15.2.3.6-4-508.js index cb784f209c5462deb6aec1849e4230902ebde0ae..5aba3d35e16765777a7c39703941930688efcec5 100644 --- a/test/built-ins/Object/defineProperty/15.2.3.6-4-508.js +++ b/test/built-ins/Object/defineProperty/15.2.3.6-4-508.js @@ -8,10 +8,8 @@ description: > property ([[Get]] is a Function, [[Set]] is undefined, [[Enumerable]] is true, [[Configurable]] is false) to different value -includes: [runTestCase.js] ---*/ -function testcase() { var obj = {}; var getFunc = function () { @@ -31,17 +29,12 @@ function testcase() { }); var desc1 = Object.getOwnPropertyDescriptor(obj, "prop"); - - try { +assert.throws(TypeError, function() { Object.defineProperty(obj, "prop", { set: setFunc }); - - return false; - } catch (e) { +}); var desc2 = Object.getOwnPropertyDescriptor(obj, "prop"); - return typeof desc1.set === "undefined" && typeof desc2.set === "undefined" && e instanceof TypeError; - } - } -runTestCase(testcase); +assert.sameValue(typeof desc1.set, "undefined", 'typeof desc1.set'); +assert.sameValue(typeof desc2.set, "undefined", 'typeof desc2.set'); diff --git a/test/built-ins/Object/defineProperty/15.2.3.6-4-509.js b/test/built-ins/Object/defineProperty/15.2.3.6-4-509.js index fb4dc700abab08267d2d3e5d86f22dc2f5f1c82a..697a1b3c4b9dfa1a81f0b6f4f8a87c3f2957c819 100644 --- a/test/built-ins/Object/defineProperty/15.2.3.6-4-509.js +++ b/test/built-ins/Object/defineProperty/15.2.3.6-4-509.js @@ -8,10 +8,8 @@ description: > accessor property ([[Get]] is a Function, [[Set]] is undefined, [[Enumerable]] is true, [[Configurable]] is false) to different value -includes: [runTestCase.js] ---*/ -function testcase() { var obj = {}; var getFunc = function () { @@ -31,14 +29,11 @@ function testcase() { result1 = true; } } - - try { +assert.throws(TypeError, function() { Object.defineProperty(obj, "prop", { enumerable: false }); - - return false; - } catch (e) { +}); var result2 = false; var desc2 = Object.getOwnPropertyDescriptor(obj, "prop"); for (var p2 in obj) { @@ -47,7 +42,7 @@ function testcase() { } } - return result1 && result2 && desc1.enumerable === true && desc2.enumerable === true && e instanceof TypeError; - } - } -runTestCase(testcase); +assert(result1, 'result1 !== true'); +assert(result2, 'result2 !== true'); +assert.sameValue(desc1.enumerable, true, 'desc1.enumerable'); +assert.sameValue(desc2.enumerable, true, 'desc2.enumerable'); diff --git a/test/built-ins/Object/defineProperty/15.2.3.6-4-511.js b/test/built-ins/Object/defineProperty/15.2.3.6-4-511.js index b6289d44855bc059aa444a56ac1a6d3c248e6433..d3c44cf0bf414d43772b8a534e6454d41f57d859 100644 --- a/test/built-ins/Object/defineProperty/15.2.3.6-4-511.js +++ b/test/built-ins/Object/defineProperty/15.2.3.6-4-511.js @@ -7,10 +7,8 @@ description: > ES5 Attributes - fail to update the accessor property ([[Get]] is a Function, [[Set]] is undefined, [[Enumerable]] is true, [[Configurable]] is false) to a data property -includes: [runTestCase.js] ---*/ -function testcase() { var obj = {}; var getFunc = function () { @@ -24,17 +22,12 @@ function testcase() { configurable: false }); var desc1 = Object.getOwnPropertyDescriptor(obj, "prop"); - - try { +assert.throws(TypeError, function() { Object.defineProperty(obj, "prop", { value: 1001 }); - - return false; - } catch (e) { +}); var desc2 = Object.getOwnPropertyDescriptor(obj, "prop"); - return desc1.hasOwnProperty("get") && !desc2.hasOwnProperty("value") && e instanceof TypeError; - } - } -runTestCase(testcase); +assert(desc1.hasOwnProperty("get"), 'desc1.hasOwnProperty("get") !== true'); +assert.sameValue(desc2.hasOwnProperty("value"), false, 'desc2.hasOwnProperty("value")'); diff --git a/test/built-ins/Object/defineProperty/15.2.3.6-4-525.js b/test/built-ins/Object/defineProperty/15.2.3.6-4-525.js index 55bc619abbc54d215b1db9b8b6305ad6985593be..1ac4af8f8c5739ff49d4cc976da98c2bebdab98f 100644 --- a/test/built-ins/Object/defineProperty/15.2.3.6-4-525.js +++ b/test/built-ins/Object/defineProperty/15.2.3.6-4-525.js @@ -8,10 +8,8 @@ description: > property ([[Get]] is a Function, [[Set]] is undefined, [[Enumerable]] is false, [[Configurable]] is false) to different value -includes: [runTestCase.js] ---*/ -function testcase() { var obj = {}; var getFunc = function () { return 1001; @@ -26,18 +24,15 @@ function testcase() { var result1 = obj.prop === 1001; var desc1 = Object.getOwnPropertyDescriptor(obj, "prop"); - - try { +assert.throws(TypeError, function() { Object.defineProperty(obj, "prop", { get: undefined }); - - return false; - } catch (e) { +}); var result2 = obj.prop === 1001; var desc2 = Object.getOwnPropertyDescriptor(obj, "prop"); - return result1 && result2 && desc1.get === getFunc && desc2.get === getFunc && e instanceof TypeError; - } - } -runTestCase(testcase); +assert(result1, 'result1 !== true'); +assert(result2, 'result2 !== true'); +assert.sameValue(desc1.get, getFunc, 'desc1.get'); +assert.sameValue(desc2.get, getFunc, 'desc2.get'); diff --git a/test/built-ins/Object/defineProperty/15.2.3.6-4-526.js b/test/built-ins/Object/defineProperty/15.2.3.6-4-526.js index 92edac2a66ece4150053b51444e77f88652cf65c..620c61a24fbd20a29c22189972b93bd5e4d9ea54 100644 --- a/test/built-ins/Object/defineProperty/15.2.3.6-4-526.js +++ b/test/built-ins/Object/defineProperty/15.2.3.6-4-526.js @@ -8,10 +8,8 @@ description: > property ([[Get]] is a Function, [[Set]] is undefined, [[Enumerable]] is false, [[Configurable]] is false) to different value -includes: [runTestCase.js] ---*/ -function testcase() { var obj = {}; var getFunc = function () { @@ -31,17 +29,12 @@ function testcase() { }); var desc1 = Object.getOwnPropertyDescriptor(obj, "prop"); - - try { +assert.throws(TypeError, function() { Object.defineProperty(obj, "prop", { set: setFunc }); - - return false; - } catch (e) { +}); var desc2 = Object.getOwnPropertyDescriptor(obj, "prop"); - return typeof desc1.set === "undefined" && typeof desc2.set === "undefined" && e instanceof TypeError; - } - } -runTestCase(testcase); +assert.sameValue(typeof desc1.set, "undefined", 'typeof desc1.set'); +assert.sameValue(typeof desc2.set, "undefined", 'typeof desc2.set'); diff --git a/test/built-ins/Object/defineProperty/15.2.3.6-4-527.js b/test/built-ins/Object/defineProperty/15.2.3.6-4-527.js index efa02dc5dd22bd8dafb1241398c3ba3872595c53..a1cc85f9ab429b636595b4534d15eae4051104a7 100644 --- a/test/built-ins/Object/defineProperty/15.2.3.6-4-527.js +++ b/test/built-ins/Object/defineProperty/15.2.3.6-4-527.js @@ -8,10 +8,8 @@ description: > accessor property ([[Get]] is a Function, [[Set]] is undefined, [[Enumerable]] is false, [[Configurable]] is false) to different value -includes: [runTestCase.js] ---*/ -function testcase() { var obj = {}; var getFunc = function () { @@ -31,14 +29,11 @@ function testcase() { result1 = true; } } - - try { +assert.throws(TypeError, function() { Object.defineProperty(obj, "prop", { enumerable: true }); - - return false; - } catch (e) { +}); var result2 = false; var desc2 = Object.getOwnPropertyDescriptor(obj, "prop"); for (var p2 in obj) { @@ -47,7 +42,7 @@ function testcase() { } } - return !result1 && !result2 && desc1.enumerable === false && desc2.enumerable === false && e instanceof TypeError; - } - } -runTestCase(testcase); +assert.sameValue(result1, false, 'result1'); +assert.sameValue(result2, false, 'result2'); +assert.sameValue(desc1.enumerable, false, 'desc1.enumerable'); +assert.sameValue(desc2.enumerable, false, 'desc2.enumerable'); diff --git a/test/built-ins/Object/defineProperty/15.2.3.6-4-529.js b/test/built-ins/Object/defineProperty/15.2.3.6-4-529.js index 299e5651778b3a5ed1f1db499f8f5de2c132e94e..891797eb9cfdfe1be9f0f29319062c53d98817e9 100644 --- a/test/built-ins/Object/defineProperty/15.2.3.6-4-529.js +++ b/test/built-ins/Object/defineProperty/15.2.3.6-4-529.js @@ -7,10 +7,8 @@ description: > ES5 Attributes - fail to update the accessor property ([[Get]] is a Function, [[Set]] is undefined, [[Enumerable]] is false, [[Configurable]] is false) to a data property -includes: [runTestCase.js] ---*/ -function testcase() { var obj = {}; var getFunc = function () { @@ -24,17 +22,12 @@ function testcase() { configurable: false }); var desc1 = Object.getOwnPropertyDescriptor(obj, "prop"); - - try { +assert.throws(TypeError, function() { Object.defineProperty(obj, "prop", { value: 1001 }); - - return false; - } catch (e) { +}); var desc2 = Object.getOwnPropertyDescriptor(obj, "prop"); - return desc1.hasOwnProperty("get") && !desc2.hasOwnProperty("value") && e instanceof TypeError; - } - } -runTestCase(testcase); +assert(desc1.hasOwnProperty("get"), 'desc1.hasOwnProperty("get") !== true'); +assert.sameValue(desc2.hasOwnProperty("value"), false, 'desc2.hasOwnProperty("value")'); diff --git a/test/built-ins/Object/defineProperty/15.2.3.6-4-543.js b/test/built-ins/Object/defineProperty/15.2.3.6-4-543.js index b1f5f55983941ebfc99662379439db02befcbf65..7afe42f31a9c48b5a76896323ebe4a26baeb1f54 100644 --- a/test/built-ins/Object/defineProperty/15.2.3.6-4-543.js +++ b/test/built-ins/Object/defineProperty/15.2.3.6-4-543.js @@ -8,10 +8,8 @@ description: > property ([[Get]] is a Function, [[Set]] is a Function, [[Enumerable]] is true, [[Configurable]] is false) to different value -includes: [runTestCase.js] ---*/ -function testcase() { var obj = {}; var getFunc = function () { @@ -32,18 +30,15 @@ function testcase() { var result1 = obj.prop === 1001; var desc1 = Object.getOwnPropertyDescriptor(obj, "prop"); - - try { +assert.throws(TypeError, function() { Object.defineProperty(obj, "prop", { get: undefined }); - - return false; - } catch (e) { +}); var result2 = obj.prop === 1001; var desc2 = Object.getOwnPropertyDescriptor(obj, "prop"); - return result1 && result2 && desc1.get === getFunc && desc2.get === getFunc && e instanceof TypeError; - } - } -runTestCase(testcase); +assert(result1, 'result1 !== true'); +assert(result2, 'result2 !== true'); +assert.sameValue(desc1.get, getFunc, 'desc1.get'); +assert.sameValue(desc2.get, getFunc, 'desc2.get'); diff --git a/test/built-ins/Object/defineProperty/15.2.3.6-4-544.js b/test/built-ins/Object/defineProperty/15.2.3.6-4-544.js index 6f75dd0755fb2eb47178ba1f099b0aad674ffac6..c8b18272fe4f7a220be3469cf6cf3bd482c9b818 100644 --- a/test/built-ins/Object/defineProperty/15.2.3.6-4-544.js +++ b/test/built-ins/Object/defineProperty/15.2.3.6-4-544.js @@ -8,10 +8,8 @@ description: > property ([[Get]] is a Function, [[Set]] is a Function, [[Enumerable]] is true, [[Configurable]] is false) to different value -includes: [runTestCase.js] ---*/ -function testcase() { var obj = {}; var getFunc = function () { @@ -31,17 +29,12 @@ function testcase() { }); var desc1 = Object.getOwnPropertyDescriptor(obj, "prop"); - - try { +assert.throws(TypeError, function() { Object.defineProperty(obj, "prop", { set: undefined }); - - return false; - } catch (e) { +}); var desc2 = Object.getOwnPropertyDescriptor(obj, "prop"); - return desc1.set === setFunc && desc2.set === setFunc && e instanceof TypeError; - } - } -runTestCase(testcase); +assert.sameValue(desc1.set, setFunc, 'desc1.set'); +assert.sameValue(desc2.set, setFunc, 'desc2.set'); diff --git a/test/built-ins/Object/defineProperty/15.2.3.6-4-545.js b/test/built-ins/Object/defineProperty/15.2.3.6-4-545.js index da86a84332aa65b78efcf5a55abd58eb180dfa17..f6150509a02b2b4f410de823760dabb32580464f 100644 --- a/test/built-ins/Object/defineProperty/15.2.3.6-4-545.js +++ b/test/built-ins/Object/defineProperty/15.2.3.6-4-545.js @@ -8,10 +8,8 @@ description: > accessor property ([[Get]] is a Function, [[Set]] is a Function, [[Enumerable]] is true, [[Configurable]] is false) to different value -includes: [runTestCase.js] ---*/ -function testcase() { var obj = {}; var getFunc = function () { @@ -36,14 +34,11 @@ function testcase() { result1 = true; } } - - try { +assert.throws(TypeError, function() { Object.defineProperty(obj, "prop", { enumerable: false }); - - return false; - } catch (e) { +}); var result2 = false; var desc2 = Object.getOwnPropertyDescriptor(obj, "prop"); for (var p2 in obj) { @@ -52,7 +47,7 @@ function testcase() { } } - return result1 && result2 && desc1.enumerable === true && desc2.enumerable === true && e instanceof TypeError; - } - } -runTestCase(testcase); +assert(result1, 'result1 !== true'); +assert(result2, 'result2 !== true'); +assert.sameValue(desc1.enumerable, true, 'desc1.enumerable'); +assert.sameValue(desc2.enumerable, true, 'desc2.enumerable'); diff --git a/test/built-ins/Object/defineProperty/15.2.3.6-4-547.js b/test/built-ins/Object/defineProperty/15.2.3.6-4-547.js index 8fb4ec5f0373cc38623006b6bff790ab8dc4135c..a75fb8782e68ec691b8c72eb90c85c846fe5c2d4 100644 --- a/test/built-ins/Object/defineProperty/15.2.3.6-4-547.js +++ b/test/built-ins/Object/defineProperty/15.2.3.6-4-547.js @@ -7,10 +7,8 @@ description: > ES5 Attributes - fail to update the accessor property ([[Get]] is a Function, [[Set]] is a Function, [[Enumerable]] is true, [[Configurable]] is false) to a data property -includes: [runTestCase.js] ---*/ -function testcase() { var obj = {}; var getFunc = function () { @@ -29,17 +27,12 @@ function testcase() { configurable: false }); var desc1 = Object.getOwnPropertyDescriptor(obj, "prop"); - - try { +assert.throws(TypeError, function() { Object.defineProperty(obj, "prop", { value: 1001 }); - - return false; - } catch (e) { +}); var desc2 = Object.getOwnPropertyDescriptor(obj, "prop"); - return desc1.hasOwnProperty("get") && !desc2.hasOwnProperty("value") && e instanceof TypeError; - } - } -runTestCase(testcase); +assert(desc1.hasOwnProperty("get"), 'desc1.hasOwnProperty("get") !== true'); +assert.sameValue(desc2.hasOwnProperty("value"), false, 'desc2.hasOwnProperty("value")'); diff --git a/test/built-ins/Object/defineProperty/15.2.3.6-4-561.js b/test/built-ins/Object/defineProperty/15.2.3.6-4-561.js index 2e4cdac50280a6f12adba3d5066d06c9008549f8..376507ea1617b0a550d76677b036f4fc8f7e8e6d 100644 --- a/test/built-ins/Object/defineProperty/15.2.3.6-4-561.js +++ b/test/built-ins/Object/defineProperty/15.2.3.6-4-561.js @@ -8,10 +8,8 @@ description: > property ([[Get]] is a Function, [[Set]] is a Function, [[Enumerable]] is false, [[Configurable]] is false) to different value -includes: [runTestCase.js] ---*/ -function testcase() { var obj = {}; var getFunc = function () { @@ -32,18 +30,15 @@ function testcase() { var result1 = obj.prop === 1001; var desc1 = Object.getOwnPropertyDescriptor(obj, "prop"); - - try { +assert.throws(TypeError, function() { Object.defineProperty(obj, "prop", { get: undefined }); - - return false; - } catch (e) { +}); var result2 = obj.prop === 1001; var desc2 = Object.getOwnPropertyDescriptor(obj, "prop"); - return result1 && result2 && desc1.get === getFunc && desc2.get === getFunc && e instanceof TypeError; - } - } -runTestCase(testcase); +assert(result1, 'result1 !== true'); +assert(result2, 'result2 !== true'); +assert.sameValue(desc1.get, getFunc, 'desc1.get'); +assert.sameValue(desc2.get, getFunc, 'desc2.get'); diff --git a/test/built-ins/Object/defineProperty/15.2.3.6-4-562.js b/test/built-ins/Object/defineProperty/15.2.3.6-4-562.js index c299ee088f187b3bea7fcadf358b98d7316f6066..874f22ea29f7143830e75675898a6e840cf48756 100644 --- a/test/built-ins/Object/defineProperty/15.2.3.6-4-562.js +++ b/test/built-ins/Object/defineProperty/15.2.3.6-4-562.js @@ -8,10 +8,8 @@ description: > property ([[Get]] is a Function, [[Set]] is a Function, [[Enumerable]] is false, [[Configurable]] is false) to different value -includes: [runTestCase.js] ---*/ -function testcase() { var obj = {}; var getFunc = function () { @@ -31,17 +29,12 @@ function testcase() { }); var desc1 = Object.getOwnPropertyDescriptor(obj, "prop"); - - try { +assert.throws(TypeError, function() { Object.defineProperty(obj, "prop", { set: undefined }); - - return false; - } catch (e) { +}); var desc2 = Object.getOwnPropertyDescriptor(obj, "prop"); - return desc1.set === setFunc && desc2.set === setFunc && e instanceof TypeError; - } - } -runTestCase(testcase); +assert.sameValue(desc1.set, setFunc, 'desc1.set'); +assert.sameValue(desc2.set, setFunc, 'desc2.set'); diff --git a/test/built-ins/Object/defineProperty/15.2.3.6-4-563.js b/test/built-ins/Object/defineProperty/15.2.3.6-4-563.js index 921fd22d6ce84e9536965ab2d39942cd956676fe..56423191a57013d4c1b115c71810cdab8c1c4ad5 100644 --- a/test/built-ins/Object/defineProperty/15.2.3.6-4-563.js +++ b/test/built-ins/Object/defineProperty/15.2.3.6-4-563.js @@ -8,10 +8,8 @@ description: > accessor property ([[Get]] is a Function, [[Set]] is a Function, [[Enumerable]] is false, [[Configurable]] is false) to different value -includes: [runTestCase.js] ---*/ -function testcase() { var obj = {}; var getFunc = function () { @@ -36,14 +34,11 @@ function testcase() { result1 = true; } } - - try { +assert.throws(TypeError, function() { Object.defineProperty(obj, "prop", { enumerable: true }); - - return false; - } catch (e) { +}); var result2 = false; var desc2 = Object.getOwnPropertyDescriptor(obj, "prop"); for (var p2 in obj) { @@ -52,7 +47,7 @@ function testcase() { } } - return !result1 && !result2 && desc1.enumerable === false && desc2.enumerable === false && e instanceof TypeError; - } - } -runTestCase(testcase); +assert.sameValue(result1, false, 'result1'); +assert.sameValue(result2, false, 'result2'); +assert.sameValue(desc1.enumerable, false, 'desc1.enumerable'); +assert.sameValue(desc2.enumerable, false, 'desc2.enumerable'); diff --git a/test/built-ins/Object/defineProperty/15.2.3.6-4-565.js b/test/built-ins/Object/defineProperty/15.2.3.6-4-565.js index d52f342c55b353b06777208ab477186452ed9a0f..6876df4153ea1daea56f7b7f9812ceba7b49fbd8 100644 --- a/test/built-ins/Object/defineProperty/15.2.3.6-4-565.js +++ b/test/built-ins/Object/defineProperty/15.2.3.6-4-565.js @@ -7,10 +7,8 @@ description: > ES5 Attributes - fail to update the accessor property ([[Get]] is a Function, [[Set]] is a Function, [[Enumerable]] is false, [[Configurable]] is false) to a data property -includes: [runTestCase.js] ---*/ -function testcase() { var obj = {}; var getFunc = function () { @@ -29,17 +27,12 @@ function testcase() { configurable: false }); var desc1 = Object.getOwnPropertyDescriptor(obj, "prop"); - - try { +assert.throws(TypeError, function() { Object.defineProperty(obj, "prop", { value: 1001 }); - - return false; - } catch (e) { +}); var desc2 = Object.getOwnPropertyDescriptor(obj, "prop"); - return desc1.hasOwnProperty("get") && !desc2.hasOwnProperty("value") && e instanceof TypeError; - } - } -runTestCase(testcase); +assert(desc1.hasOwnProperty("get"), 'desc1.hasOwnProperty("get") !== true'); +assert.sameValue(desc2.hasOwnProperty("value"), false, 'desc2.hasOwnProperty("value")'); diff --git a/test/built-ins/Object/defineProperty/15.2.3.6-4-7.js b/test/built-ins/Object/defineProperty/15.2.3.6-4-7.js index d874014a575889a317f9aaae275de4752ffd3212..14bf5ed3606a471eb1a2c061fb5909a0dec2eff8 100644 --- a/test/built-ins/Object/defineProperty/15.2.3.6-4-7.js +++ b/test/built-ins/Object/defineProperty/15.2.3.6-4-7.js @@ -10,10 +10,8 @@ es5id: 15.2.3.6-4-7 description: > Object.defineProperty throws TypeError when changing [[Configurable]] from false to true -includes: [runTestCase.js] ---*/ -function testcase() { var o = {}; // create a data valued property; all other attributes default to false. @@ -21,19 +19,10 @@ function testcase() { Object.defineProperty(o, "foo", d1); var desc = { value: 101, configurable: true }; - - try { +assert.throws(TypeError, function() { Object.defineProperty(o, "foo", desc); - } - catch (e) { - if (e instanceof TypeError) { +}); // the property should remain unchanged. var d2 = Object.getOwnPropertyDescriptor(o, "foo"); - if (d2.value === 101 && - d2.configurable === false) { - return true; - } - } - } - } -runTestCase(testcase); +assert.sameValue(d2.value, 101, 'd2.value'); +assert.sameValue(d2.configurable, false, 'd2.configurable'); diff --git a/test/built-ins/Object/defineProperty/15.2.3.6-4-8.js b/test/built-ins/Object/defineProperty/15.2.3.6-4-8.js index 43c626922baf288810d9dda9a5a90e15dc82d56d..e94862560b1afd0dcca2e4ec9c30ce88c151dfd6 100644 --- a/test/built-ins/Object/defineProperty/15.2.3.6-4-8.js +++ b/test/built-ins/Object/defineProperty/15.2.3.6-4-8.js @@ -12,10 +12,8 @@ description: > Object.defineProperty throws TypeError when changing [[Enumerable]] from false to true on non-configurable data properties -includes: [runTestCase.js] ---*/ -function testcase() { var o = {}; // create a data valued property; all other attributes default to false. @@ -25,20 +23,11 @@ function testcase() { // now, setting enumerable to true should fail, since [[Configurable]] // on the original property will be false. var desc = { value: 101, enumerable: true }; - - try { +assert.throws(TypeError, function() { Object.defineProperty(o, "foo", desc); - } - catch (e) { - if (e instanceof TypeError) { +}); // the property should remain unchanged. var d2 = Object.getOwnPropertyDescriptor(o, "foo"); - if (d2.value === 101 && - d2.enumerable === false && - d2.configurable === false) { - return true; - } - } - } - } -runTestCase(testcase); +assert.sameValue(d2.value, 101, 'd2.value'); +assert.sameValue(d2.enumerable, false, 'd2.enumerable'); +assert.sameValue(d2.configurable, false, 'd2.configurable'); diff --git a/test/built-ins/Object/defineProperty/15.2.3.6-4-9.js b/test/built-ins/Object/defineProperty/15.2.3.6-4-9.js index 97bb0005ec74f8263e0972dc646361d72cc08241..6f35edc3489cabbaecf5493fe7f9339bc24b4280 100644 --- a/test/built-ins/Object/defineProperty/15.2.3.6-4-9.js +++ b/test/built-ins/Object/defineProperty/15.2.3.6-4-9.js @@ -12,10 +12,8 @@ description: > Object.defineProperty throws TypeError when changing [[Enumerable]] from true to false on non-configurable data properties -includes: [runTestCase.js] ---*/ -function testcase() { var o = {}; // create a data valued property with [[Enumerable]] explicitly set to true; @@ -26,20 +24,11 @@ function testcase() { // now, setting enumerable to false should fail, since [[Configurable]] // on the original property will be false. var desc = { value: 101, enumerable: false }; - - try { +assert.throws(TypeError, function() { Object.defineProperty(o, "foo", desc); - } - catch (e) { - if (e instanceof TypeError) { +}); // the property should remain unchanged. var d2 = Object.getOwnPropertyDescriptor(o, "foo"); - if (d2.value === 101 && - d2.enumerable === true && - d2.configurable === false) { - return true; - } - } - } - } -runTestCase(testcase); +assert.sameValue(d2.value, 101, 'd2.value'); +assert.sameValue(d2.enumerable, true, 'd2.enumerable'); +assert.sameValue(d2.configurable, false, 'd2.configurable'); diff --git a/test/built-ins/Object/getOwnPropertyDescriptor/15.2.3.3-1-1.js b/test/built-ins/Object/getOwnPropertyDescriptor/15.2.3.3-1-1.js index 35ddf60308ab1cb44f44f3cc8e5ee3bb0266aa29..bc63911fa321c31e7ef8a001e23e1ffe1df2549e 100644 --- a/test/built-ins/Object/getOwnPropertyDescriptor/15.2.3.3-1-1.js +++ b/test/built-ins/Object/getOwnPropertyDescriptor/15.2.3.3-1-1.js @@ -6,14 +6,9 @@ es5id: 15.2.3.3-1-1 description: > Object.getOwnPropertyDescriptor - TypeError is thrown when first param is undefined -includes: [runTestCase.js] ---*/ -function testcase() { - try { + +assert.throws(TypeError, function() { Object.getOwnPropertyDescriptor(undefined, "foo"); - } catch (e) { - return (e instanceof TypeError); - } - } -runTestCase(testcase); +}); diff --git a/test/built-ins/Object/getOwnPropertyDescriptor/15.2.3.3-1-2.js b/test/built-ins/Object/getOwnPropertyDescriptor/15.2.3.3-1-2.js index 1a6ba1417c4f4fa702205b2f7e975cc405033ee2..09b8587145bf8948dbba89a4ddfcf5febbb96b68 100644 --- a/test/built-ins/Object/getOwnPropertyDescriptor/15.2.3.3-1-2.js +++ b/test/built-ins/Object/getOwnPropertyDescriptor/15.2.3.3-1-2.js @@ -6,14 +6,9 @@ es5id: 15.2.3.3-1-2 description: > Object.getOwnPropertyDescriptor - TypeError is thrown when first param is null -includes: [runTestCase.js] ---*/ -function testcase() { - try { + +assert.throws(TypeError, function() { Object.getOwnPropertyDescriptor(null, "foo"); - } catch (e) { - return (e instanceof TypeError); - } - } -runTestCase(testcase); +}); diff --git a/test/built-ins/Object/getOwnPropertyDescriptor/15.2.3.3-2-46.js b/test/built-ins/Object/getOwnPropertyDescriptor/15.2.3.3-2-46.js index 5c894608aca831d9be588c6a0a62768d7f94e799..4527a76d35913a34f019876449e1218d92d71687 100644 --- a/test/built-ins/Object/getOwnPropertyDescriptor/15.2.3.3-2-46.js +++ b/test/built-ins/Object/getOwnPropertyDescriptor/15.2.3.3-2-46.js @@ -7,10 +7,8 @@ description: > Object.getOwnPropertyDescriptor - TypeError exception was thrown when 'P' is an object that both toString and valueOf wouldn't return primitive value -includes: [runTestCase.js] ---*/ -function testcase() { var obj = { "1": 1 }; var toStringAccessed = false; var valueOfAccessed = false; @@ -25,12 +23,8 @@ function testcase() { return [1]; } }; - - try { +assert.throws(TypeError, function() { Object.getOwnPropertyDescriptor(obj, ownProp); - return false; - } catch (e) { - return toStringAccessed && valueOfAccessed && e instanceof TypeError; - } - } -runTestCase(testcase); +}); +assert(toStringAccessed, 'toStringAccessed !== true'); +assert(valueOfAccessed, 'valueOfAccessed !== true'); diff --git a/test/built-ins/Object/getOwnPropertyNames/15.2.3.4-1-2.js b/test/built-ins/Object/getOwnPropertyNames/15.2.3.4-1-2.js index 764259971f368f0ad95bb1b58da98022b1c201d1..51ce6f35f013be330e17781ca3c1fe509b629773 100644 --- a/test/built-ins/Object/getOwnPropertyNames/15.2.3.4-1-2.js +++ b/test/built-ins/Object/getOwnPropertyNames/15.2.3.4-1-2.js @@ -4,15 +4,9 @@ /*--- es5id: 15.2.3.4-1-2 description: Object.getOwnPropertyNames throws TypeError if 'O' is undefined -includes: [runTestCase.js] ---*/ -function testcase() { - try { + +assert.throws(TypeError, function() { Object.getOwnPropertyNames(undefined); - return false; - } catch (e) { - return e instanceof TypeError; - } - } -runTestCase(testcase); +}); diff --git a/test/built-ins/Object/getOwnPropertyNames/15.2.3.4-1-3.js b/test/built-ins/Object/getOwnPropertyNames/15.2.3.4-1-3.js index cab3a3d00ca4277a3667d1a7d46d24476b7b3672..4a9ac3a33f61424f28fad2c0d633701d16538db6 100644 --- a/test/built-ins/Object/getOwnPropertyNames/15.2.3.4-1-3.js +++ b/test/built-ins/Object/getOwnPropertyNames/15.2.3.4-1-3.js @@ -4,15 +4,9 @@ /*--- es5id: 15.2.3.4-1-3 description: Object.getOwnPropertyNames throws TypeError if 'O' is null -includes: [runTestCase.js] ---*/ -function testcase() { - try { + +assert.throws(TypeError, function() { Object.getOwnPropertyNames(null); - return false; - } catch (e) { - return e instanceof TypeError; - } - } -runTestCase(testcase); +}); diff --git a/test/built-ins/Object/getPrototypeOf/15.2.3.2-0-3.js b/test/built-ins/Object/getPrototypeOf/15.2.3.2-0-3.js index e36abd84648c883047d9a2b44397456626ccef9e..9f8eb76e027166e336d721e9393e421b2dc0d040 100644 --- a/test/built-ins/Object/getPrototypeOf/15.2.3.2-0-3.js +++ b/test/built-ins/Object/getPrototypeOf/15.2.3.2-0-3.js @@ -4,18 +4,9 @@ /*--- es5id: 15.2.3.2-0-3 description: Object.getPrototypeOf must take 1 parameter -includes: [runTestCase.js] ---*/ -function testcase() { - try - { + +assert.throws(TypeError, function() { Object.getPrototypeOf(); - } - catch(e) - { - if(e instanceof TypeError) - return true; - } - } -runTestCase(testcase); +}); diff --git a/test/built-ins/Object/getPrototypeOf/15.2.3.2-1-2.js b/test/built-ins/Object/getPrototypeOf/15.2.3.2-1-2.js index 8e2835a3208c835ac676f74360d880a4b33c8265..3f73a4c073e687cd24675765af43af4fec2eadbf 100644 --- a/test/built-ins/Object/getPrototypeOf/15.2.3.2-1-2.js +++ b/test/built-ins/Object/getPrototypeOf/15.2.3.2-1-2.js @@ -4,15 +4,9 @@ /*--- es5id: 15.2.3.2-1-2 description: Object.getPrototypeOf throws TypeError if 'O' is null -includes: [runTestCase.js] ---*/ -function testcase() { - try { + +assert.throws(TypeError, function() { Object.getPrototypeOf(null); - return false; - } catch (e) { - return (e instanceof TypeError); - } - } -runTestCase(testcase); +}); diff --git a/test/built-ins/Object/keys/15.2.3.14-1-4.js b/test/built-ins/Object/keys/15.2.3.14-1-4.js index 10d7acf2ab3a459dc49729c1a231627ad7591e6d..fdc5d31eecbf4853fc98019c84b7561606da81e3 100644 --- a/test/built-ins/Object/keys/15.2.3.14-1-4.js +++ b/test/built-ins/Object/keys/15.2.3.14-1-4.js @@ -6,17 +6,9 @@ es5id: 15.2.3.14-1-4 description: > Object.keys throws TypeError if type of first param is not Object (null) -includes: [runTestCase.js] ---*/ -function testcase() { - try { + +assert.throws(TypeError, function() { Object.keys(null); - } - catch (e) { - if (e instanceof TypeError) { - return true; - } - } - } -runTestCase(testcase); +}); diff --git a/test/built-ins/Object/keys/15.2.3.14-1-5.js b/test/built-ins/Object/keys/15.2.3.14-1-5.js index deac600fc7cf75b3a3da54e119b8db43185b27a5..fa00eb9e0de00bdde8857cbfc2f795295c99da39 100644 --- a/test/built-ins/Object/keys/15.2.3.14-1-5.js +++ b/test/built-ins/Object/keys/15.2.3.14-1-5.js @@ -6,17 +6,9 @@ es5id: 15.2.3.14-1-5 description: > Object.keys throws TypeError if type of first param is not Object (undefined) -includes: [runTestCase.js] ---*/ -function testcase() { - try { + +assert.throws(TypeError, function() { Object.keys(undefined); - } - catch (e) { - if (e instanceof TypeError) { - return true; - } - } - } -runTestCase(testcase); +}); diff --git a/test/built-ins/Object/preventExtensions/15.2.3.10-3-5.js b/test/built-ins/Object/preventExtensions/15.2.3.10-3-5.js index 4539ae6d80f75c573084a7b8e9fbae8ffbd308ff..def72f4f6d33d6c32f766f9205f58f1b767fd7de 100644 --- a/test/built-ins/Object/preventExtensions/15.2.3.10-3-5.js +++ b/test/built-ins/Object/preventExtensions/15.2.3.10-3-5.js @@ -6,19 +6,14 @@ es5id: 15.2.3.10-3-5 description: > Object.preventExtensions - indexed properties cannot be added into a String object -includes: [runTestCase.js] ---*/ -function testcase() { var strObj = new String(); var preCheck = Object.isExtensible(strObj); Object.preventExtensions(strObj); - try { +assert.throws(TypeError, function() { Object.defineProperty(strObj, "0", { value: "c" }); - return false; - } catch (e) { - return e instanceof TypeError && preCheck && - !strObj.hasOwnProperty("0") && typeof strObj[0] === "undefined"; - } - } -runTestCase(testcase); +}); +assert(preCheck, 'preCheck !== true'); +assert.sameValue(strObj.hasOwnProperty("0"), false, 'strObj.hasOwnProperty("0")'); +assert.sameValue(typeof strObj[0], "undefined", 'typeof strObj[0]'); diff --git a/test/built-ins/RegExp/prototype/global/15.10.7.2-1.js b/test/built-ins/RegExp/prototype/global/15.10.7.2-1.js index a3580558616994317e9deff6dad4a1799747c78b..6360511a45de50fac5cab2fccfdea97dae45805e 100644 --- a/test/built-ins/RegExp/prototype/global/15.10.7.2-1.js +++ b/test/built-ins/RegExp/prototype/global/15.10.7.2-1.js @@ -4,17 +4,9 @@ /*--- es5id: 15.10.7.2-1 description: RegExp.prototype.global is a non-generic accessor property -includes: [runTestCase.js] ---*/ -function testcase() { - try { + +assert.throws(TypeError, function() { RegExp.prototype.global; - } catch (e) { - if (e instanceof TypeError) { - return true; - } - } - return false; -} -runTestCase(testcase); +}); diff --git a/test/built-ins/RegExp/prototype/ignoreCase/15.10.7.3-1.js b/test/built-ins/RegExp/prototype/ignoreCase/15.10.7.3-1.js index 46e538c803fffd2c840d4f9b858a871d85c1a92b..53eb90a90b610c024f085b120e4c0c760fa4a0fe 100644 --- a/test/built-ins/RegExp/prototype/ignoreCase/15.10.7.3-1.js +++ b/test/built-ins/RegExp/prototype/ignoreCase/15.10.7.3-1.js @@ -4,17 +4,9 @@ /*--- es5id: 15.10.7.3-1 description: RegExp.prototype.ignoreCase is a non-generic accessor property -includes: [runTestCase.js] ---*/ -function testcase() { - try { + +assert.throws(TypeError, function() { RegExp.prototype.ignoreCase; - } catch (e) { - if (e instanceof TypeError) { - return true; - } - } - return false; -} -runTestCase(testcase); +}); diff --git a/test/built-ins/RegExp/prototype/multiline/15.10.7.4-1.js b/test/built-ins/RegExp/prototype/multiline/15.10.7.4-1.js index 147c86586332bfa82481ae5d3d65987f29212d3a..d0721f8f554154c2980555e07a41e749a731b01c 100644 --- a/test/built-ins/RegExp/prototype/multiline/15.10.7.4-1.js +++ b/test/built-ins/RegExp/prototype/multiline/15.10.7.4-1.js @@ -4,17 +4,9 @@ /*--- es5id: 15.10.7.4-1 description: RegExp.prototype.multiline is a non-generic accessor property -includes: [runTestCase.js] ---*/ -function testcase() { - try { + +assert.throws(TypeError, function() { RegExp.prototype.multiline; - } catch (e) { - if (e instanceof TypeError) { - return true; - } - } - return false; -} -runTestCase(testcase); +}); diff --git a/test/built-ins/RegExp/prototype/source/15.10.7.1-1.js b/test/built-ins/RegExp/prototype/source/15.10.7.1-1.js index 7e41735ae04dabab273b8767cd73078a7e4a6590..3a6b8130b02ef31a5d02af6bce3ea20b173d3089 100644 --- a/test/built-ins/RegExp/prototype/source/15.10.7.1-1.js +++ b/test/built-ins/RegExp/prototype/source/15.10.7.1-1.js @@ -4,17 +4,9 @@ /*--- es5id: 15.10.7.1-1 description: RegExp.prototype.source is a non-generic accessor property -includes: [runTestCase.js] ---*/ -function testcase() { - try { + +assert.throws(TypeError, function() { RegExp.prototype.source; - } catch (e) { - if (e instanceof TypeError) { - return true; - } - } - return false; -} -runTestCase(testcase); +}); diff --git a/test/built-ins/String/prototype/trim/15.5.4.20-1-1.js b/test/built-ins/String/prototype/trim/15.5.4.20-1-1.js index 3d658468660c23415fff72737081a83ac8312618..bd0bcaa1f5030bdebbcd36acf744bdedb5e4b12c 100644 --- a/test/built-ins/String/prototype/trim/15.5.4.20-1-1.js +++ b/test/built-ins/String/prototype/trim/15.5.4.20-1-1.js @@ -4,18 +4,9 @@ /*--- es5id: 15.5.4.20-1-1 description: String.prototype.trim throws TypeError when string is undefined -includes: [runTestCase.js] ---*/ -function testcase() { - try - { - String.prototype.trim.call(undefined); - return false; - } - catch(e) - { - return e instanceof TypeError; - } - } -runTestCase(testcase); + +assert.throws(TypeError, function() { + String.prototype.trim.call(undefined); +}); diff --git a/test/built-ins/String/prototype/trim/15.5.4.20-1-2.js b/test/built-ins/String/prototype/trim/15.5.4.20-1-2.js index b58e81ac9b31d991f418788880136c2aa7c0ffc0..d91241da246fe1756b0e08c25fc284438b8827da 100644 --- a/test/built-ins/String/prototype/trim/15.5.4.20-1-2.js +++ b/test/built-ins/String/prototype/trim/15.5.4.20-1-2.js @@ -4,18 +4,9 @@ /*--- es5id: 15.5.4.20-1-2 description: String.prototype.trim throws TypeError when string is null -includes: [runTestCase.js] ---*/ -function testcase() { - try - { - String.prototype.trim.call(null); - return false; - } - catch(e) - { - return e instanceof TypeError; - } - } -runTestCase(testcase); + +assert.throws(TypeError, function() { + String.prototype.trim.call(null); +}); diff --git a/test/built-ins/String/prototype/trim/15.5.4.20-2-42.js b/test/built-ins/String/prototype/trim/15.5.4.20-2-42.js index 03e0bc9d9675642cb36bb017d28cdf0625014ffc..393625ce0f7db40f1cab4a41f21c9c39bae64d2a 100644 --- a/test/built-ins/String/prototype/trim/15.5.4.20-2-42.js +++ b/test/built-ins/String/prototype/trim/15.5.4.20-2-42.js @@ -7,10 +7,8 @@ description: > String.prototype.trim - TypeError exception was thrown when 'this' is an object that both toString and valueOf wouldn't return primitive value. -includes: [runTestCase.js] ---*/ -function testcase() { var toStringAccessed = false; var valueOfAccessed = false; var obj = { @@ -23,11 +21,8 @@ function testcase() { return {}; } }; - try { +assert.throws(TypeError, function() { String.prototype.trim.call(obj); - return false; - } catch (e) { - return valueOfAccessed && toStringAccessed && (e instanceof TypeError); - } - } -runTestCase(testcase); +}); +assert(valueOfAccessed, 'valueOfAccessed !== true'); +assert(toStringAccessed, 'toStringAccessed !== true'); diff --git a/test/built-ins/global/10.2.1.1.3-4-16-s.js b/test/built-ins/global/10.2.1.1.3-4-16-s.js index afd320e23179f8266608ea3871c902b01d1aefe3..b5cf69ff5f391c5c5da3ec7f8b5902b537822ba3 100644 --- a/test/built-ins/global/10.2.1.1.3-4-16-s.js +++ b/test/built-ins/global/10.2.1.1.3-4-16-s.js @@ -7,15 +7,9 @@ description: > Strict Mode - TypeError is thrown when changing the value of a Value Property of the Global Object under strict mode (NaN) flags: [onlyStrict] -includes: [runTestCase.js] ---*/ -function testcase() { - try { + +assert.throws(TypeError, function() { NaN = 12; - return false; - } catch (e) { - return e instanceof TypeError; - } - } -runTestCase(testcase); +}); diff --git a/test/built-ins/global/10.2.1.1.3-4-18-s.js b/test/built-ins/global/10.2.1.1.3-4-18-s.js index 5454aba1adcfc2f78d37b5679aed25e8bdef3ddf..6a3e87eaa0cb41631c504a11be1a7c53c548ed66 100644 --- a/test/built-ins/global/10.2.1.1.3-4-18-s.js +++ b/test/built-ins/global/10.2.1.1.3-4-18-s.js @@ -7,15 +7,9 @@ description: > Strict Mode - TypeError is thrown when changing the value of a Value Property of the Global Object under strict mode (undefined) flags: [onlyStrict] -includes: [runTestCase.js] ---*/ -function testcase() { - try { + +assert.throws(TypeError, function() { undefined = 12; - return false; - } catch (e) { - return e instanceof TypeError; - } - } -runTestCase(testcase); +}); diff --git a/test/language/arguments-object/10.5-1-s.js b/test/language/arguments-object/10.5-1-s.js index bd88ae9f32733325b955567a9f3d5eba882565a2..7123cdbed664fa31076d13dc489073851f789ec0 100644 --- a/test/language/arguments-object/10.5-1-s.js +++ b/test/language/arguments-object/10.5-1-s.js @@ -5,17 +5,11 @@ es5id: 10.5-1-s description: Strict Mode - arguments object is immutable flags: [onlyStrict] -includes: [runTestCase.js] ---*/ -function testcase() { - try { + +assert.throws(SyntaxError, function() { (function fun() { eval("arguments = 10"); })(30); - return false; - } catch (e) { - return (e instanceof SyntaxError); - } - } -runTestCase(testcase); +}); diff --git a/test/language/arguments-object/10.5-7-b-1-s.js b/test/language/arguments-object/10.5-7-b-1-s.js index 48da093b19c47132a94894cc2d289940d0f3905a..e02db4dd87fe28423e02233eb4a165c53005af55 100644 --- a/test/language/arguments-object/10.5-7-b-1-s.js +++ b/test/language/arguments-object/10.5-7-b-1-s.js @@ -5,15 +5,9 @@ es5id: 10.5-7-b-1-s description: Strict Mode - arguments object is immutable in eval'ed functions flags: [onlyStrict] -includes: [runTestCase.js] ---*/ -function testcase() { - try { + +assert.throws(SyntaxError, function() { eval("(function _10_5_7_b_1_fun() { arguments = 10;} ());"); - return false; - } catch (e) { - return e instanceof SyntaxError; - } - } -runTestCase(testcase); +}); diff --git a/test/language/arguments-object/10.6-13-b-1-s.js b/test/language/arguments-object/10.6-13-b-1-s.js index b590b2b1ff1266eb7c433471ee78265a0f973391..efa479cf3f7223915e583e01df0ec271eefb7ba5 100644 --- a/test/language/arguments-object/10.6-13-b-1-s.js +++ b/test/language/arguments-object/10.6-13-b-1-s.js @@ -7,17 +7,9 @@ description: > Accessing caller property of Arguments object throws TypeError in strict mode flags: [onlyStrict] -includes: [runTestCase.js] ---*/ -function testcase() { - try - { + +assert.throws(TypeError, function() { arguments.caller; - } - catch (e) { - if(e instanceof TypeError) - return true; - } - } -runTestCase(testcase); +}); diff --git a/test/language/arguments-object/10.6-13-c-1-s.js b/test/language/arguments-object/10.6-13-c-1-s.js index 88c3187c629d99b1fadf3ad05ae4216c039f4159..aa4b245adba897ac581b17c6a8aa41e390501443 100644 --- a/test/language/arguments-object/10.6-13-c-1-s.js +++ b/test/language/arguments-object/10.6-13-c-1-s.js @@ -7,17 +7,9 @@ description: > Accessing callee property of Arguments object throws TypeError in strict mode flags: [onlyStrict] -includes: [runTestCase.js] ---*/ -function testcase() { - try - { + +assert.throws(TypeError, function() { arguments.callee; - return false; - } - catch (e) { - return (e instanceof TypeError); - } - } -runTestCase(testcase); +}); diff --git a/test/language/arguments-object/10.6-14-b-4-s.js b/test/language/arguments-object/10.6-14-b-4-s.js index bc0da52882f10ce3b12e29de8d7dfa8625228955..2ac9023bb92feb046e59cfccab205ea8b3bfd47a 100644 --- a/test/language/arguments-object/10.6-14-b-4-s.js +++ b/test/language/arguments-object/10.6-14-b-4-s.js @@ -7,19 +7,11 @@ description: > Strict Mode - TypeError is thrown when accessing the [[Set]] attribute in 'caller' under strict mode flags: [onlyStrict] -includes: [runTestCase.js] ---*/ -function testcase() { var argObj = function () { return arguments; } (); - - try { +assert.throws(TypeError, function() { argObj.caller = {}; - return false; - } catch (e) { - return e instanceof TypeError; - } - } -runTestCase(testcase); +}); diff --git a/test/language/arguments-object/10.6-14-c-4-s.js b/test/language/arguments-object/10.6-14-c-4-s.js index 4d7c42220efb2d4c3698fe3dc7565ffb14af878b..fbd4b155013250c92ebb772489ebb97d04ad9b0f 100644 --- a/test/language/arguments-object/10.6-14-c-4-s.js +++ b/test/language/arguments-object/10.6-14-c-4-s.js @@ -7,19 +7,11 @@ description: > Strict Mode - TypeError is thrown when accessing the [[Set]] attribute in 'callee' under strict mode flags: [onlyStrict] -includes: [runTestCase.js] ---*/ -function testcase() { var argObj = function () { return arguments; } (); - - try { +assert.throws(TypeError, function() { argObj.callee = {}; - return false; - } catch (e) { - return e instanceof TypeError; - } - } -runTestCase(testcase); +}); diff --git a/test/language/directive-prologue/10.1.1-25-s.js b/test/language/directive-prologue/10.1.1-25-s.js index 85d0ea15e310d112ff5711a9f51841702a36e261..e726cd7f8137922ab7919c0be9b3d1be693463f4 100644 --- a/test/language/directive-prologue/10.1.1-25-s.js +++ b/test/language/directive-prologue/10.1.1-25-s.js @@ -8,11 +8,10 @@ description: > contains Use Strict Directive which appears at the start of the block(getter) flags: [noStrict] -includes: [runTestCase.js] ---*/ -function testcase() { - try { + +assert.throws(SyntaxError, function() { var obj = {}; Object.defineProperty(obj, "accProperty", { get: function () { @@ -22,9 +21,4 @@ function testcase() { } }); var temp = obj.accProperty === 11; - return false; - } catch (e) { - return e instanceof SyntaxError; - } - } -runTestCase(testcase); +}); diff --git a/test/language/directive-prologue/10.1.1-30-s.js b/test/language/directive-prologue/10.1.1-30-s.js index ae39d87ccee57fed85a259bbd62ef35424d791f5..cd5b01f0a27fcf06ccdedde45797eb4578449209 100644 --- a/test/language/directive-prologue/10.1.1-30-s.js +++ b/test/language/directive-prologue/10.1.1-30-s.js @@ -8,16 +8,10 @@ description: > contains Use Strict Directive which appears at the start of the block flags: [noStrict] -includes: [runTestCase.js] ---*/ -function testcase() { - try { + +assert.throws(SyntaxError, function() { var funObj = new Function("a", "'use strict'; eval('public = 1;');"); funObj(); - return false; - } catch (e) { - return e instanceof SyntaxError; - } - } -runTestCase(testcase); +}); diff --git a/test/language/expressions/assignment/11.13.1-1-1.js b/test/language/expressions/assignment/11.13.1-1-1.js index 4832a073ca6ef800440c59043f83f64563e75f17..5bc0891b1568b12de2dbffc146fbe6394958ff59 100644 --- a/test/language/expressions/assignment/11.13.1-1-1.js +++ b/test/language/expressions/assignment/11.13.1-1-1.js @@ -7,17 +7,9 @@ es5id: 11.13.1-1-1 description: > simple assignment throws ReferenceError if LeftHandSide is not a reference (number) -includes: [runTestCase.js] ---*/ -function testcase() { - try { + +assert.throws(ReferenceError, function() { eval("42 = 42"); - } - catch (e) { - if (e instanceof ReferenceError) { - return true; - } - } - } -runTestCase(testcase); +}); diff --git a/test/language/expressions/assignment/11.13.1-1-2.js b/test/language/expressions/assignment/11.13.1-1-2.js index 4ef12ab7d5cc6cb16cee05d6ad7e75064ec4ad83..8f42ba35b2a65ff7e725deb5b05428432b06ecee 100644 --- a/test/language/expressions/assignment/11.13.1-1-2.js +++ b/test/language/expressions/assignment/11.13.1-1-2.js @@ -7,17 +7,9 @@ es5id: 11.13.1-1-2 description: > simple assignment throws ReferenceError if LeftHandSide is not a reference (string) -includes: [runTestCase.js] ---*/ -function testcase() { - try { + +assert.throws(ReferenceError, function() { eval("'x' = 42"); - } - catch (e) { - if (e instanceof ReferenceError) { - return true; - } - } - } -runTestCase(testcase); +}); diff --git a/test/language/expressions/assignment/11.13.1-1-3.js b/test/language/expressions/assignment/11.13.1-1-3.js index 1969b2a7f85a61a3e1bd7514d13dc9a60b5c7227..196821e97b679663e0bd101e143731bc8eddca0b 100644 --- a/test/language/expressions/assignment/11.13.1-1-3.js +++ b/test/language/expressions/assignment/11.13.1-1-3.js @@ -7,17 +7,9 @@ es5id: 11.13.1-1-3 description: > simple assignment throws ReferenceError if LeftHandSide is not a reference (boolean) -includes: [runTestCase.js] ---*/ -function testcase() { - try { + +assert.throws(ReferenceError, function() { eval("true = 42"); - } - catch (e) { - if (e instanceof ReferenceError) { - return true; - } - } - } -runTestCase(testcase); +}); diff --git a/test/language/expressions/assignment/11.13.1-1-4.js b/test/language/expressions/assignment/11.13.1-1-4.js index 8b0dc8eb4525b8b1d15abbd987d106f7944a4cb3..4a5cb16340f7046e13e8c5395e29629837ab3bba 100644 --- a/test/language/expressions/assignment/11.13.1-1-4.js +++ b/test/language/expressions/assignment/11.13.1-1-4.js @@ -7,17 +7,9 @@ es5id: 11.13.1-1-4 description: > simple assignment throws ReferenceError if LeftHandSide is not a reference (null) -includes: [runTestCase.js] ---*/ -function testcase() { - try { + +assert.throws(ReferenceError, function() { eval("null = 42"); - } - catch (e) { - if (e instanceof ReferenceError) { - return true; - } - } - } -runTestCase(testcase); +}); diff --git a/test/language/expressions/assignment/11.13.1-1-6-s.js b/test/language/expressions/assignment/11.13.1-1-6-s.js index 5a112ff1d09062e1b2b6b7d933257b254242e828..5da54baf4f42edd6199a17b8478fb3d044d78dd2 100644 --- a/test/language/expressions/assignment/11.13.1-1-6-s.js +++ b/test/language/expressions/assignment/11.13.1-1-6-s.js @@ -7,17 +7,9 @@ es5id: 11.13.1-1-6-s description: > simple assignment throws ReferenceError if LeftHandSide is an unresolvable reference (base obj undefined) -includes: [runTestCase.js] ---*/ -function testcase() { - try { +assert.throws(ReferenceError, function() { __ES3_1_test_suite_test_11_13_1_unique_id_0__.x = 42; - return false; - } - catch (e) { - return (e instanceof ReferenceError); - } - } -runTestCase(testcase); +}); diff --git a/test/language/expressions/assignment/11.13.1-1-s.js b/test/language/expressions/assignment/11.13.1-1-s.js index 9c8f508be07525bb545aa26ef4ca49a8e36a6c03..380814a0035ac183844b4be186b6a522b71b007a 100644 --- a/test/language/expressions/assignment/11.13.1-1-s.js +++ b/test/language/expressions/assignment/11.13.1-1-s.js @@ -8,10 +8,8 @@ description: > reference to a data property with the attribute value {[[Writable]]:false} under strict mode flags: [onlyStrict] -includes: [runTestCase.js] ---*/ -function testcase() { var obj = {}; Object.defineProperty(obj, "prop", { value: 10, @@ -19,12 +17,7 @@ function testcase() { enumerable: true, configurable: true }); - - try { +assert.throws(TypeError, function() { obj.prop = 20; - return false; - } catch (e) { - return e instanceof TypeError && obj.prop === 10; - } - } -runTestCase(testcase); +}); +assert.sameValue(obj.prop, 10, 'obj.prop'); diff --git a/test/language/expressions/assignment/11.13.1-2-s.js b/test/language/expressions/assignment/11.13.1-2-s.js index ee005def69f8892cbd193a9e476f96e3e7d152f5..f0869cb85030799984262c9bec8cfc62a0b2d691 100644 --- a/test/language/expressions/assignment/11.13.1-2-s.js +++ b/test/language/expressions/assignment/11.13.1-2-s.js @@ -8,10 +8,8 @@ description: > reference to an accessor property with the attribute value {[[Set]]:undefined} under strict mode flags: [onlyStrict] -includes: [runTestCase.js] ---*/ -function testcase() { var obj = {}; Object.defineProperty(obj, "prop", { get: function () { @@ -21,12 +19,7 @@ function testcase() { enumerable: true, configurable: true }); - - try { +assert.throws(TypeError, function() { obj.prop = 20; - return false; - } catch (e) { - return e instanceof TypeError && obj.prop === 11; - } - } -runTestCase(testcase); +}); +assert.sameValue(obj.prop, 11, 'obj.prop'); diff --git a/test/language/expressions/assignment/11.13.1-3-s.js b/test/language/expressions/assignment/11.13.1-3-s.js index 4f3e5e8a322d6332b62946db7afe5c557528efa4..deee7fc8d1fe49b8302bbcb12ad0a83583d77f35 100644 --- a/test/language/expressions/assignment/11.13.1-3-s.js +++ b/test/language/expressions/assignment/11.13.1-3-s.js @@ -9,18 +9,10 @@ description: > [[Extensible]] internal property has the value false under strict mode flags: [onlyStrict] -includes: [runTestCase.js] ---*/ -function testcase() { var obj = {}; Object.preventExtensions(obj); - - try { +assert.throws(TypeError, function() { obj.len = 10; - return false; - } catch (e) { - return e instanceof TypeError; - } - } -runTestCase(testcase); +}); diff --git a/test/language/expressions/assignment/11.13.1-4-14-s.js b/test/language/expressions/assignment/11.13.1-4-14-s.js index 6193954958a35e95eedfa85fb739f75ddcc01a20..ee6899aaff67f20251907c9742c4f3a0adb0fda4 100644 --- a/test/language/expressions/assignment/11.13.1-4-14-s.js +++ b/test/language/expressions/assignment/11.13.1-4-14-s.js @@ -7,16 +7,9 @@ description: > simple assignment throws TypeError if LeftHandSide is a readonly property in strict mode (Number.MAX_VALUE) flags: [onlyStrict] -includes: [runTestCase.js] ---*/ -function testcase() { - try { + +assert.throws(TypeError, function() { Number.MAX_VALUE = 42; - return false; - } - catch (e) { - return (e instanceof TypeError); - } - } -runTestCase(testcase); +}); diff --git a/test/language/expressions/assignment/11.13.1-4-3-s.js b/test/language/expressions/assignment/11.13.1-4-3-s.js index 22d88388bb65ea0b5aed81e09cdc765731bec455..20d175c7d77deebe38d37a60e0755a5333bf857a 100644 --- a/test/language/expressions/assignment/11.13.1-4-3-s.js +++ b/test/language/expressions/assignment/11.13.1-4-3-s.js @@ -7,18 +7,10 @@ description: > simple assignment throws TypeError if LeftHandSide is a readonly property in strict mode (Global.Infinity) flags: [onlyStrict] -includes: - - runTestCase.js - - fnGlobalObject.js +includes: [fnGlobalObject.js] ---*/ -function testcase() { - try { + +assert.throws(TypeError, function() { fnGlobalObject().Infinity = 42; - return false; - } - catch (e) { - return (e instanceof TypeError); - } - } -runTestCase(testcase); +}); diff --git a/test/language/expressions/assignment/11.13.1-4-30-s.js b/test/language/expressions/assignment/11.13.1-4-30-s.js index 242f96d10af4d67e82d1a55cf1b521b6e96ef3a6..70cdcd0af6b5901821a43552d98ebc8d0bed54f3 100644 --- a/test/language/expressions/assignment/11.13.1-4-30-s.js +++ b/test/language/expressions/assignment/11.13.1-4-30-s.js @@ -8,16 +8,10 @@ description: > appears as the LeftHandSideExpression (PrimaryExpression) of simple assignment(=) under strict mode flags: [onlyStrict] -includes: [runTestCase.js] ---*/ -function testcase() { var blah = eval; - try { +assert.throws(SyntaxError, function() { eval("(eval) = 20;"); - return false; - } catch (e) { - return e instanceof SyntaxError && blah === eval; - } -} -runTestCase(testcase); +}); +assert.sameValue(blah, eval, 'blah'); diff --git a/test/language/expressions/assignment/11.13.1-4-6-s.js b/test/language/expressions/assignment/11.13.1-4-6-s.js index bd35f51f4f8ce06acfe75bf7a43ba2ae4219b0f1..7778e254d6a09550fda08a076ae542b89bfe408f 100644 --- a/test/language/expressions/assignment/11.13.1-4-6-s.js +++ b/test/language/expressions/assignment/11.13.1-4-6-s.js @@ -7,16 +7,9 @@ description: > simple assignment throws TypeError if LeftHandSide is a readonly property in strict mode (Function.length) flags: [onlyStrict] -includes: [runTestCase.js] ---*/ -function testcase() { - try { + +assert.throws(TypeError, function() { Function.length = 42; - return false; - } - catch (e) { - return (e instanceof TypeError); - } - } -runTestCase(testcase); +}); diff --git a/test/language/expressions/assignment/8.14.4-8-b_2.js b/test/language/expressions/assignment/8.14.4-8-b_2.js index 61c1f3f402e020a2368017727f33fe21ac545997..1223afeab59e77372b4b2875ee543a6e951d9ec6 100644 --- a/test/language/expressions/assignment/8.14.4-8-b_2.js +++ b/test/language/expressions/assignment/8.14.4-8-b_2.js @@ -5,19 +5,13 @@ es5id: 8.14.4-8-b_2 description: Non-writable property on a prototype written to in strict mode. flags: [onlyStrict] -includes: [runTestCase.js] ---*/ -function testcase() { function foo() {}; Object.defineProperty(foo.prototype, "bar", {value: "unwritable"}); var o = new foo(); - try { - o.bar = "overridden"; - return false; - } catch(e) { - return (e instanceof TypeError) && (o.bar==="unwritable"); - } -} -runTestCase(testcase); +assert.throws(TypeError, function() { + o.bar = "overridden"; +}); +assert.sameValue(o.bar, "unwritable", 'o.bar'); diff --git a/test/language/expressions/call/11.2.3-3_1.js b/test/language/expressions/call/11.2.3-3_1.js index 4ae4848421c7e83a0d4e6d2677f217c55b5b3e63..e3299dc9ed8530811b03f710516f4db696d6b6cc 100644 --- a/test/language/expressions/call/11.2.3-3_1.js +++ b/test/language/expressions/call/11.2.3-3_1.js @@ -6,19 +6,14 @@ es5id: 11.2.3-3_1 description: > Call arguments are evaluated before the check is made to see if the object is actually callable (FunctionDeclaration) -includes: [runTestCase.js] ---*/ -function testcase() { var fooCalled = false; function foo(){ fooCalled = true; } var o = { }; - try { +assert.throws(TypeError, function() { o.bar( foo() ); $ERROR("o.bar does not exist!"); - } catch(e) { - return (e instanceof TypeError) && (fooCalled===true); - } -} -runTestCase(testcase); +}); +assert.sameValue(fooCalled, true, 'fooCalled'); diff --git a/test/language/expressions/call/11.2.3-3_2.js b/test/language/expressions/call/11.2.3-3_2.js index 0de02c677e8266a3dded0eee212c5eb87a98c4e7..d99eedfcb15d1b934665c01956ae4b5545d32763 100644 --- a/test/language/expressions/call/11.2.3-3_2.js +++ b/test/language/expressions/call/11.2.3-3_2.js @@ -6,19 +6,14 @@ es5id: 11.2.3-3_2 description: > Call arguments are evaluated before the check is made to see if the object is actually callable (FunctionExpression) -includes: [runTestCase.js] ---*/ -function testcase() { var fooCalled = false; var foo = function (){ fooCalled = true; } var o = { }; - try { +assert.throws(TypeError, function() { o.bar( foo() ); $ERROR("o.bar does not exist!"); - } catch(e) { - return (e instanceof TypeError) && (fooCalled===true); - } -} -runTestCase(testcase); +}); +assert.sameValue(fooCalled, true, 'fooCalled'); diff --git a/test/language/expressions/call/11.2.3-3_3.js b/test/language/expressions/call/11.2.3-3_3.js index ef652bbd93821abb325ad16f08cba549bdb90f72..25d26bc709e43e61c23d6a5bec29f89bd210aba4 100644 --- a/test/language/expressions/call/11.2.3-3_3.js +++ b/test/language/expressions/call/11.2.3-3_3.js @@ -6,19 +6,14 @@ es5id: 11.2.3-3_3 description: > Call arguments are not evaluated before the check is made to see if the object is actually callable (undefined member) -includes: [runTestCase.js] ---*/ -function testcase() { var fooCalled = false; function foo(){ fooCalled = true; } var o = { }; - try { +assert.throws(TypeError, function() { o.bar.gar( foo() ); $ERROR("o.bar does not exist!"); - } catch(e) { - return (e instanceof TypeError) && (fooCalled===false); - } -} -runTestCase(testcase); +}); +assert.sameValue(fooCalled, false, 'fooCalled'); diff --git a/test/language/expressions/call/11.2.3-3_4.js b/test/language/expressions/call/11.2.3-3_4.js index 99a7c543e83304655e5118c73da71ef42e5d19a0..3a01ef550a46160aa725dbed294df55371b438b3 100644 --- a/test/language/expressions/call/11.2.3-3_4.js +++ b/test/language/expressions/call/11.2.3-3_4.js @@ -6,21 +6,18 @@ es5id: 11.2.3-3_4 description: > Call arguments are evaluated before the check is made to see if the object is actually callable (property) -includes: [runTestCase.js] ---*/ -function testcase() { var fooCalled = false; function foo(){ fooCalled = true; } var o = { }; Object.defineProperty(o, "bar", {get: function() {this.barGetter = true; return 42;}, set: function(x) {this.barSetter = true; }}); - try { +assert.throws(TypeError, function() { o.bar( foo() ); $ERROR("o.bar does not exist!"); - } catch(e) { - return (e instanceof TypeError) && (fooCalled===true) && (o.barGetter===true) && (o.barSetter===undefined); - } -} -runTestCase(testcase); +}); +assert.sameValue(fooCalled, true, 'fooCalled'); +assert.sameValue(o.barGetter, true, 'o.barGetter'); +assert.sameValue(o.barSetter, undefined, 'o.barSetter'); diff --git a/test/language/expressions/call/11.2.3-3_5.js b/test/language/expressions/call/11.2.3-3_5.js index f3e58fa1b4bf3ce2b52ae0bfed1a547cabb85785..c8efb1a0bf6218f0e2f1de1a949e7745b46785af 100644 --- a/test/language/expressions/call/11.2.3-3_5.js +++ b/test/language/expressions/call/11.2.3-3_5.js @@ -6,19 +6,14 @@ es5id: 11.2.3-3_5 description: > Call arguments are evaluated before the check is made to see if the object is actually callable (eval'ed) -includes: [runTestCase.js] ---*/ -function testcase() { var fooCalled = false; function foo(){ fooCalled = true; } var o = { }; - try { +assert.throws(TypeError, function() { eval("o.bar( foo() );"); $ERROR("o.bar does not exist!"); - } catch(e) { - return (e instanceof TypeError) && (fooCalled===true); - } -} -runTestCase(testcase); +}); +assert.sameValue(fooCalled, true, 'fooCalled'); diff --git a/test/language/expressions/call/11.2.3-3_6.js b/test/language/expressions/call/11.2.3-3_6.js index b302abac7151b5334cd3546e284828ca91e31412..18b59596d38dec6e3bbf9c60aaa54a92fe89fedc 100644 --- a/test/language/expressions/call/11.2.3-3_6.js +++ b/test/language/expressions/call/11.2.3-3_6.js @@ -6,18 +6,14 @@ es5id: 11.2.3-3_6 description: > Call arguments are evaluated before the check is made to see if the object is actually callable (getter called) -includes: [runTestCase.js] ---*/ -function testcase() { var o = { }; Object.defineProperty(o, "bar", {get: function() {this.barGetter = true; return 42;}, set: function(x) {this.barSetter = true; }}); - try { +assert.throws(TypeError, function() { o.foo( o.bar ); $ERROR("o.foo does not exist!"); - } catch(e) { - return (e instanceof TypeError) && (o.barGetter===true) && (o.barSetter===undefined); - } -} -runTestCase(testcase); +}); +assert.sameValue(o.barGetter, true, 'o.barGetter'); +assert.sameValue(o.barSetter, undefined, 'o.barSetter'); diff --git a/test/language/expressions/call/11.2.3-3_7.js b/test/language/expressions/call/11.2.3-3_7.js index 318413d92743d623a17b78e02deb5c226e40ac44..b56ca7e6f4ebdc4b1ff0769ebdabb20794c25508 100644 --- a/test/language/expressions/call/11.2.3-3_7.js +++ b/test/language/expressions/call/11.2.3-3_7.js @@ -6,18 +6,14 @@ es5id: 11.2.3-3_7 description: > Call arguments are evaluated before the check is made to see if the object is actually callable (getter called as indexed property) -includes: [runTestCase.js] ---*/ -function testcase() { var o = { }; Object.defineProperty(o, "bar", {get: function() {this.barGetter = true; return 42;}, set: function(x) {this.barSetter = true; }}); - try { +assert.throws(TypeError, function() { o.foo( o["bar"] ); $ERROR("o.foo does not exist!"); - } catch(e) { - return (e instanceof TypeError) && (o.barGetter===true) && (o.barSetter===undefined); - } -} -runTestCase(testcase); +}); +assert.sameValue(o.barGetter, true, 'o.barGetter'); +assert.sameValue(o.barSetter, undefined, 'o.barSetter'); diff --git a/test/language/expressions/call/11.2.3-3_8.js b/test/language/expressions/call/11.2.3-3_8.js index b0f4677b90b0a9e987e2645a00dea580a32f7894..bc35ec06c8a2ac9518586015a0ab9ad798a19218 100644 --- a/test/language/expressions/call/11.2.3-3_8.js +++ b/test/language/expressions/call/11.2.3-3_8.js @@ -7,19 +7,12 @@ description: > Call arguments are evaluated before the check is made to see if the object is actually callable (global object) flags: [noStrict] -includes: - - runTestCase.js ---*/ -function testcase() { var fooCalled = false; function foo(){ fooCalled = true; } - - try { +assert.throws(TypeError, function() { this.bar( foo() ); $ERROR("this.bar does not exist!"); - } catch(e) { - return (e instanceof TypeError) && (fooCalled===true); - } -} -runTestCase(testcase); +}); +assert.sameValue(fooCalled, true, 'fooCalled'); diff --git a/test/language/expressions/compound-assignment/11.13.2-1-s.js b/test/language/expressions/compound-assignment/11.13.2-1-s.js index 159b17bfc9b2738dd9bd8e8f5cfc8d1eedd4d53d..446461885f9d6446f37357883ea8375cf045548d 100644 --- a/test/language/expressions/compound-assignment/11.13.2-1-s.js +++ b/test/language/expressions/compound-assignment/11.13.2-1-s.js @@ -6,15 +6,9 @@ es5id: 11.13.2-1-s description: > ReferenceError is thrown if the LeftHandSideExpression of a Compound Assignment operator(*=) evaluates to an unresolvable reference -includes: [runTestCase.js] ---*/ -function testcase() { - try { + +assert.throws(ReferenceError, function() { eval("_11_13_2_1 *= 1;"); - return false; - } catch (e) { - return e instanceof ReferenceError; - } - } -runTestCase(testcase); +}); diff --git a/test/language/expressions/compound-assignment/11.13.2-10-s.js b/test/language/expressions/compound-assignment/11.13.2-10-s.js index b5726c941eab0f08dfee66276ec278e301486f04..1e652ce26f30944126764e40c19ff94a93b3ae73 100644 --- a/test/language/expressions/compound-assignment/11.13.2-10-s.js +++ b/test/language/expressions/compound-assignment/11.13.2-10-s.js @@ -6,15 +6,9 @@ es5id: 11.13.2-10-s description: > ReferenceError is thrown if the LeftHandSideExpression of a Compound Assignment operator(^=) evaluates to an unresolvable reference -includes: [runTestCase.js] ---*/ -function testcase() { - try { + +assert.throws(ReferenceError, function() { eval("_11_13_2_10 ^= 1;"); - return false; - } catch (e) { - return e instanceof ReferenceError; - } - } -runTestCase(testcase); +}); diff --git a/test/language/expressions/compound-assignment/11.13.2-11-s.js b/test/language/expressions/compound-assignment/11.13.2-11-s.js index a55be9a4cc457e6f84529bbc75ced5abed8a3b88..73286235122e77b0b1fce5b64a3552d7cfb114e9 100644 --- a/test/language/expressions/compound-assignment/11.13.2-11-s.js +++ b/test/language/expressions/compound-assignment/11.13.2-11-s.js @@ -6,15 +6,9 @@ es5id: 11.13.2-11-s description: > ReferenceError is thrown if the LeftHandSideExpression of a Compound Assignment operator(|=) evaluates to an unresolvable reference -includes: [runTestCase.js] ---*/ -function testcase() { - try { + +assert.throws(ReferenceError, function() { eval("_11_13_2_11 |= 1;"); - return false; - } catch (e) { - return e instanceof ReferenceError; - } - } -runTestCase(testcase); +}); diff --git a/test/language/expressions/compound-assignment/11.13.2-2-s.js b/test/language/expressions/compound-assignment/11.13.2-2-s.js index 78ea77f01c6c328e2ab24b0e780139ddcd829242..1a66d33b12a258e3bfd1c3099a3baba3d5b91f6c 100644 --- a/test/language/expressions/compound-assignment/11.13.2-2-s.js +++ b/test/language/expressions/compound-assignment/11.13.2-2-s.js @@ -6,15 +6,9 @@ es5id: 11.13.2-2-s description: > Strict Mode - ReferenceError is thrown if the LeftHandSideExpression of a Compound Assignment operator(/=) evaluates to an unresolvable reference -includes: [runTestCase.js] ---*/ -function testcase() { - try { + +assert.throws(ReferenceError, function() { eval("_11_13_2_2 /= 1;"); - return false; - } catch (e) { - return e instanceof ReferenceError; - } - } -runTestCase(testcase); +}); diff --git a/test/language/expressions/compound-assignment/11.13.2-23-s.js b/test/language/expressions/compound-assignment/11.13.2-23-s.js index 739f623725a0903cdb772bf2c948fa032aada5b1..d209ecbf51eec3c31aa2da8f8985c95de8a75f9f 100644 --- a/test/language/expressions/compound-assignment/11.13.2-23-s.js +++ b/test/language/expressions/compound-assignment/11.13.2-23-s.js @@ -8,10 +8,8 @@ description: > Compound Assignment operator(*=) is a reference to a data property with the attribute value {[[Writable]]:false} flags: [onlyStrict] -includes: [runTestCase.js] ---*/ -function testcase() { var obj = {}; Object.defineProperty(obj, "prop", { value: 10, @@ -19,12 +17,7 @@ function testcase() { enumerable: true, configurable: true }); - - try { +assert.throws(TypeError, function() { obj.prop *= 20; - return false; - } catch (e) { - return e instanceof TypeError && obj.prop === 10; - } - } -runTestCase(testcase); +}); +assert.sameValue(obj.prop, 10, 'obj.prop'); diff --git a/test/language/expressions/compound-assignment/11.13.2-24-s.js b/test/language/expressions/compound-assignment/11.13.2-24-s.js index a4042bc4f8a43d8b0548a8968610aa2399ef5d4d..42bec67e91f75f72e97d585f8fd746093342d2a4 100644 --- a/test/language/expressions/compound-assignment/11.13.2-24-s.js +++ b/test/language/expressions/compound-assignment/11.13.2-24-s.js @@ -8,10 +8,8 @@ description: > Compound Assignment operator(/=) is a reference to a data property with the attribute value {[[Writable]]:false} flags: [onlyStrict] -includes: [runTestCase.js] ---*/ -function testcase() { var obj = {}; Object.defineProperty(obj, "prop", { value: 10, @@ -19,12 +17,7 @@ function testcase() { enumerable: true, configurable: true }); - - try { +assert.throws(TypeError, function() { obj.prop /= 20; - return false; - } catch (e) { - return e instanceof TypeError && obj.prop === 10; - } - } -runTestCase(testcase); +}); +assert.sameValue(obj.prop, 10, 'obj.prop'); diff --git a/test/language/expressions/compound-assignment/11.13.2-25-s.js b/test/language/expressions/compound-assignment/11.13.2-25-s.js index 3a0955547fbaddd5af3bcfad7bfebaf8a6447794..f3c4b11c3aa356c82082f5bcb6757b230ed2f871 100644 --- a/test/language/expressions/compound-assignment/11.13.2-25-s.js +++ b/test/language/expressions/compound-assignment/11.13.2-25-s.js @@ -8,10 +8,8 @@ description: > Compound Assignment operator(%=) is a reference to a data property with the attribute value {[[Writable]]:false} flags: [onlyStrict] -includes: [runTestCase.js] ---*/ -function testcase() { var obj = {}; Object.defineProperty(obj, "prop", { value: 10, @@ -19,12 +17,7 @@ function testcase() { enumerable: true, configurable: true }); - - try { +assert.throws(TypeError, function() { obj.prop %= 20; - return false; - } catch (e) { - return e instanceof TypeError && obj.prop === 10; - } - } -runTestCase(testcase); +}); +assert.sameValue(obj.prop, 10, 'obj.prop'); diff --git a/test/language/expressions/compound-assignment/11.13.2-26-s.js b/test/language/expressions/compound-assignment/11.13.2-26-s.js index 53fae86891da4cd49ea26d07bf5119c27e0ef349..bdd0e68a3163181f7c844c4e2dde9077a497814b 100644 --- a/test/language/expressions/compound-assignment/11.13.2-26-s.js +++ b/test/language/expressions/compound-assignment/11.13.2-26-s.js @@ -8,10 +8,8 @@ description: > Compound Assignment operator(+=) is a reference to a data property with the attribute value {[[Writable]]:false} flags: [onlyStrict] -includes: [runTestCase.js] ---*/ -function testcase() { var obj = {}; Object.defineProperty(obj, "prop", { value: 10, @@ -19,12 +17,7 @@ function testcase() { enumerable: true, configurable: true }); - - try { +assert.throws(TypeError, function() { obj.prop += 20; - return false; - } catch (e) { - return e instanceof TypeError && obj.prop === 10; - } - } -runTestCase(testcase); +}); +assert.sameValue(obj.prop, 10, 'obj.prop'); diff --git a/test/language/expressions/compound-assignment/11.13.2-27-s.js b/test/language/expressions/compound-assignment/11.13.2-27-s.js index d4d92cf0be6bda4671e1dca57b8ca417b660b001..f87a5a2dfdd66dff2abd318c8628c22b1733d927 100644 --- a/test/language/expressions/compound-assignment/11.13.2-27-s.js +++ b/test/language/expressions/compound-assignment/11.13.2-27-s.js @@ -8,10 +8,8 @@ description: > Compound Assignment operator(-=) is a reference to a data property with the attribute value {[[Writable]]:false} flags: [onlyStrict] -includes: [runTestCase.js] ---*/ -function testcase() { var obj = {}; Object.defineProperty(obj, "prop", { value: 10, @@ -19,12 +17,7 @@ function testcase() { enumerable: true, configurable: true }); - - try { +assert.throws(TypeError, function() { obj.prop -= 20; - return false; - } catch (e) { - return e instanceof TypeError && obj.prop === 10; - } - } -runTestCase(testcase); +}); +assert.sameValue(obj.prop, 10, 'obj.prop'); diff --git a/test/language/expressions/compound-assignment/11.13.2-28-s.js b/test/language/expressions/compound-assignment/11.13.2-28-s.js index d65fcbefcf041d082b561d93caa15dab2951b7d2..3bf144daeb0b89637364255daf104cc673574934 100644 --- a/test/language/expressions/compound-assignment/11.13.2-28-s.js +++ b/test/language/expressions/compound-assignment/11.13.2-28-s.js @@ -8,10 +8,8 @@ description: > Compound Assignment operator(<<=) is a reference to a data property with the attribute value {[[Writable]]:false} flags: [onlyStrict] -includes: [runTestCase.js] ---*/ -function testcase() { var obj = {}; Object.defineProperty(obj, "prop", { value: 10, @@ -19,12 +17,7 @@ function testcase() { enumerable: true, configurable: true }); - - try { +assert.throws(TypeError, function() { obj.prop <<= 20; - return false; - } catch (e) { - return e instanceof TypeError && obj.prop === 10; - } - } -runTestCase(testcase); +}); +assert.sameValue(obj.prop, 10, 'obj.prop'); diff --git a/test/language/expressions/compound-assignment/11.13.2-29-s.js b/test/language/expressions/compound-assignment/11.13.2-29-s.js index 8974a1615f01288a4068bf98bf32d11a89e68ee0..ed8091fcfedc4da6f81b1d02f792897093321887 100644 --- a/test/language/expressions/compound-assignment/11.13.2-29-s.js +++ b/test/language/expressions/compound-assignment/11.13.2-29-s.js @@ -8,10 +8,8 @@ description: > Compound Assignment operator(>>=) is a reference to a data property with the attribute value {[[Writable]]:false} flags: [onlyStrict] -includes: [runTestCase.js] ---*/ -function testcase() { var obj = {}; Object.defineProperty(obj, "prop", { value: 10, @@ -19,12 +17,7 @@ function testcase() { enumerable: true, configurable: true }); - - try { +assert.throws(TypeError, function() { obj.prop >>= 20; - return false; - } catch (e) { - return e instanceof TypeError && obj.prop === 10; - } - } -runTestCase(testcase); +}); +assert.sameValue(obj.prop, 10, 'obj.prop'); diff --git a/test/language/expressions/compound-assignment/11.13.2-3-s.js b/test/language/expressions/compound-assignment/11.13.2-3-s.js index 8eb11c9d05c813699cef1669c7f697b21c256c01..93b23a3ccdd41c521fef7914419b9c6e9c23c93c 100644 --- a/test/language/expressions/compound-assignment/11.13.2-3-s.js +++ b/test/language/expressions/compound-assignment/11.13.2-3-s.js @@ -8,15 +8,9 @@ description: > LeftHandSideExpression of a Compound Assignment operator(%=) evaluates to an unresolvable reference flags: [onlyStrict] -includes: [runTestCase.js] ---*/ -function testcase() { - try { + +assert.throws(ReferenceError, function() { eval("_11_13_2_3 %= 1;"); - return false; - } catch (e) { - return e instanceof ReferenceError; - } - } -runTestCase(testcase); +}); diff --git a/test/language/expressions/compound-assignment/11.13.2-30-s.js b/test/language/expressions/compound-assignment/11.13.2-30-s.js index ab927ad0d0a39e022522787fb1a093adbf7e0381..26f120d3f5cf268de1eb004c3b00c8fa0466ba4f 100644 --- a/test/language/expressions/compound-assignment/11.13.2-30-s.js +++ b/test/language/expressions/compound-assignment/11.13.2-30-s.js @@ -8,10 +8,8 @@ description: > Compound Assignment operator(>>>=) is a reference to a data property with the attribute value {[[Writable]]:false} flags: [onlyStrict] -includes: [runTestCase.js] ---*/ -function testcase() { var obj = {}; Object.defineProperty(obj, "prop", { value: 10, @@ -19,12 +17,7 @@ function testcase() { enumerable: true, configurable: true }); - - try { +assert.throws(TypeError, function() { obj.prop >>>= 20; - return false; - } catch (e) { - return e instanceof TypeError && obj.prop === 10; - } - } -runTestCase(testcase); +}); +assert.sameValue(obj.prop, 10, 'obj.prop'); diff --git a/test/language/expressions/compound-assignment/11.13.2-31-s.js b/test/language/expressions/compound-assignment/11.13.2-31-s.js index 878ed63e3b689fc55f05bfc7be1bf14989daf92f..0d6786620878e27ab00d3c0d80e1d20b624d2e6a 100644 --- a/test/language/expressions/compound-assignment/11.13.2-31-s.js +++ b/test/language/expressions/compound-assignment/11.13.2-31-s.js @@ -8,10 +8,8 @@ description: > Compound Assignment operator(&=) is a reference to a data property with the attribute value {[[Writable]]:false} flags: [onlyStrict] -includes: [runTestCase.js] ---*/ -function testcase() { var obj = {}; Object.defineProperty(obj, "prop", { value: 10, @@ -19,12 +17,7 @@ function testcase() { enumerable: true, configurable: true }); - - try { +assert.throws(TypeError, function() { obj.prop &= 20; - return false; - } catch (e) { - return e instanceof TypeError && obj.prop === 10; - } - } -runTestCase(testcase); +}); +assert.sameValue(obj.prop, 10, 'obj.prop'); diff --git a/test/language/expressions/compound-assignment/11.13.2-32-s.js b/test/language/expressions/compound-assignment/11.13.2-32-s.js index 96f1ad9df29b20d206e9eb4bf4f1271f4eb605dd..8182307d6088a9c453dac84ee7a8987208565488 100644 --- a/test/language/expressions/compound-assignment/11.13.2-32-s.js +++ b/test/language/expressions/compound-assignment/11.13.2-32-s.js @@ -8,10 +8,8 @@ description: > Compound Assignment operator(^=) is a reference to a data property with the attribute value {[[Writable]]:false} flags: [onlyStrict] -includes: [runTestCase.js] ---*/ -function testcase() { var obj = {}; Object.defineProperty(obj, "prop", { value: 10, @@ -19,12 +17,7 @@ function testcase() { enumerable: true, configurable: true }); - - try { +assert.throws(TypeError, function() { obj.prop ^= 20; - return false; - } catch (e) { - return e instanceof TypeError && obj.prop === 10; - } - } -runTestCase(testcase); +}); +assert.sameValue(obj.prop, 10, 'obj.prop'); diff --git a/test/language/expressions/compound-assignment/11.13.2-33-s.js b/test/language/expressions/compound-assignment/11.13.2-33-s.js index f1aa5b365b9913a65c78456721be3468ba6250b9..c0883a6e5665b1303e40520ee04b011e8c1b66e3 100644 --- a/test/language/expressions/compound-assignment/11.13.2-33-s.js +++ b/test/language/expressions/compound-assignment/11.13.2-33-s.js @@ -8,10 +8,8 @@ description: > Compound Assignment operator(|=) is a reference to a data property with the attribute value {[[Writable]]:false} flags: [onlyStrict] -includes: [runTestCase.js] ---*/ -function testcase() { var obj = {}; Object.defineProperty(obj, "prop", { value: 10, @@ -19,12 +17,7 @@ function testcase() { enumerable: true, configurable: true }); - - try { +assert.throws(TypeError, function() { obj.prop |= 20; - return false; - } catch (e) { - return e instanceof TypeError && obj.prop === 10; - } - } -runTestCase(testcase); +}); +assert.sameValue(obj.prop, 10, 'obj.prop'); diff --git a/test/language/expressions/compound-assignment/11.13.2-34-s.js b/test/language/expressions/compound-assignment/11.13.2-34-s.js index 5ae15b667497dfc26741e6e053263234f95eef37..b4becc6d0b44bbf244a89a93b98adc9d7fc37b67 100644 --- a/test/language/expressions/compound-assignment/11.13.2-34-s.js +++ b/test/language/expressions/compound-assignment/11.13.2-34-s.js @@ -8,10 +8,8 @@ description: > Compound Assignment operator(*=) is a reference to an accessor property with the attribute value {[[Set]]:undefined} flags: [onlyStrict] -includes: [runTestCase.js] ---*/ -function testcase() { var obj = {}; Object.defineProperty(obj, "prop", { get: function () { @@ -21,12 +19,7 @@ function testcase() { enumerable: true, configurable: true }); - - try { +assert.throws(TypeError, function() { obj.prop *= 20; - return false; - } catch (e) { - return e instanceof TypeError && obj.prop === 11; - } - } -runTestCase(testcase); +}); +assert.sameValue(obj.prop, 11, 'obj.prop'); diff --git a/test/language/expressions/compound-assignment/11.13.2-35-s.js b/test/language/expressions/compound-assignment/11.13.2-35-s.js index 78aec217b4a0527d3f9970f2d152b54aafeb7944..81829ff160113b62f35cb1e5a69bc77a548277a6 100644 --- a/test/language/expressions/compound-assignment/11.13.2-35-s.js +++ b/test/language/expressions/compound-assignment/11.13.2-35-s.js @@ -8,10 +8,8 @@ description: > Compound Assignment operator(/=) is a reference to an accessor property with the attribute value {[[Set]]:undefined} flags: [onlyStrict] -includes: [runTestCase.js] ---*/ -function testcase() { var obj = {}; Object.defineProperty(obj, "prop", { get: function () { @@ -21,12 +19,7 @@ function testcase() { enumerable: true, configurable: true }); - - try { +assert.throws(TypeError, function() { obj.prop /= 20; - return false; - } catch (e) { - return e instanceof TypeError && obj.prop === 11; - } - } -runTestCase(testcase); +}); +assert.sameValue(obj.prop, 11, 'obj.prop'); diff --git a/test/language/expressions/compound-assignment/11.13.2-36-s.js b/test/language/expressions/compound-assignment/11.13.2-36-s.js index 3d771cff676bf09ef8f85c69c1469da34b50e3d4..7eb331477ca0ca99080bd66a446ba503117eec00 100644 --- a/test/language/expressions/compound-assignment/11.13.2-36-s.js +++ b/test/language/expressions/compound-assignment/11.13.2-36-s.js @@ -8,10 +8,8 @@ description: > Compound Assignment operator(%=) is a reference to an accessor property with the attribute value {[[Set]]:undefined} flags: [onlyStrict] -includes: [runTestCase.js] ---*/ -function testcase() { var obj = {}; Object.defineProperty(obj, "prop", { get: function () { @@ -21,12 +19,7 @@ function testcase() { enumerable: true, configurable: true }); - - try { +assert.throws(TypeError, function() { obj.prop %= 20; - return false; - } catch (e) { - return e instanceof TypeError && obj.prop === 11; - } - } -runTestCase(testcase); +}); +assert.sameValue(obj.prop, 11, 'obj.prop'); diff --git a/test/language/expressions/compound-assignment/11.13.2-37-s.js b/test/language/expressions/compound-assignment/11.13.2-37-s.js index c21c84a7b01d2d73611faacfd0951580ac42f3f6..4d8aa3b8f3676f8744247f375531aeb3012cf854 100644 --- a/test/language/expressions/compound-assignment/11.13.2-37-s.js +++ b/test/language/expressions/compound-assignment/11.13.2-37-s.js @@ -8,10 +8,8 @@ description: > Compound Assignment operator(+=) is a reference to an accessor property with the attribute value {[[Set]]:undefined} flags: [onlyStrict] -includes: [runTestCase.js] ---*/ -function testcase() { var obj = {}; Object.defineProperty(obj, "prop", { get: function () { @@ -21,12 +19,7 @@ function testcase() { enumerable: true, configurable: true }); - - try { +assert.throws(TypeError, function() { obj.prop += 20; - return false; - } catch (e) { - return e instanceof TypeError && obj.prop === 11; - } - } -runTestCase(testcase); +}); +assert.sameValue(obj.prop, 11, 'obj.prop'); diff --git a/test/language/expressions/compound-assignment/11.13.2-38-s.js b/test/language/expressions/compound-assignment/11.13.2-38-s.js index 6e637599aa08c14862c6ff6bb46e5a2cfa5919e3..9b39dca4fb59d0af6f56e2aafdd541853ffa160a 100644 --- a/test/language/expressions/compound-assignment/11.13.2-38-s.js +++ b/test/language/expressions/compound-assignment/11.13.2-38-s.js @@ -8,10 +8,8 @@ description: > Compound Assignment operator(-=) is a reference to an accessor property with the attribute value {[[Set]]:undefined} flags: [onlyStrict] -includes: [runTestCase.js] ---*/ -function testcase() { var obj = {}; Object.defineProperty(obj, "prop", { get: function () { @@ -21,12 +19,7 @@ function testcase() { enumerable: true, configurable: true }); - - try { +assert.throws(TypeError, function() { obj.prop -= 20; - return false; - } catch (e) { - return e instanceof TypeError && obj.prop === 11; - } - } -runTestCase(testcase); +}); +assert.sameValue(obj.prop, 11, 'obj.prop'); diff --git a/test/language/expressions/compound-assignment/11.13.2-39-s.js b/test/language/expressions/compound-assignment/11.13.2-39-s.js index 3b78d131eca422d6d9eec4ae5f199311fd39abe9..ebd44377c6924339305a6e4af5e4ea04b2219b26 100644 --- a/test/language/expressions/compound-assignment/11.13.2-39-s.js +++ b/test/language/expressions/compound-assignment/11.13.2-39-s.js @@ -8,10 +8,8 @@ description: > Compound Assignment operator(<<=) is a reference to an accessor property with the attribute value {[[Set]]:undefined} flags: [onlyStrict] -includes: [runTestCase.js] ---*/ -function testcase() { var obj = {}; Object.defineProperty(obj, "prop", { get: function () { @@ -21,12 +19,7 @@ function testcase() { enumerable: true, configurable: true }); - - try { +assert.throws(TypeError, function() { obj.prop <<= 20; - return false; - } catch (e) { - return e instanceof TypeError && obj.prop === 11; - } - } -runTestCase(testcase); +}); +assert.sameValue(obj.prop, 11, 'obj.prop'); diff --git a/test/language/expressions/compound-assignment/11.13.2-4-s.js b/test/language/expressions/compound-assignment/11.13.2-4-s.js index 3370fe1878088618dd472b4d55fd28b75432ddd8..aeecd46c7a0bfbf0932d9e0101798cbc204383e1 100644 --- a/test/language/expressions/compound-assignment/11.13.2-4-s.js +++ b/test/language/expressions/compound-assignment/11.13.2-4-s.js @@ -7,15 +7,9 @@ description: > Strict Mode - ReferenceError is thrown if the LeftHandSideExpression of a Compound Assignment operator(+=) evaluates to an unresolvable reference -includes: [runTestCase.js] ---*/ -function testcase() { - try { + +assert.throws(ReferenceError, function() { eval("_11_13_2_4 += 1;"); - return false; - } catch (e) { - return e instanceof ReferenceError; - } - } -runTestCase(testcase); +}); diff --git a/test/language/expressions/compound-assignment/11.13.2-40-s.js b/test/language/expressions/compound-assignment/11.13.2-40-s.js index ac6cd92e6ec5846ffee953265852e53ce5ec3c80..28f57bd4c33b86e73d383f39f6cedb700018c422 100644 --- a/test/language/expressions/compound-assignment/11.13.2-40-s.js +++ b/test/language/expressions/compound-assignment/11.13.2-40-s.js @@ -8,10 +8,8 @@ description: > Compound Assignment operator(>>=) is a reference to an accessor property with the attribute value {[[Set]]:undefined} flags: [onlyStrict] -includes: [runTestCase.js] ---*/ -function testcase() { var obj = {}; Object.defineProperty(obj, "prop", { get: function () { @@ -21,12 +19,7 @@ function testcase() { enumerable: true, configurable: true }); - - try { +assert.throws(TypeError, function() { obj.prop >>= 20; - return false; - } catch (e) { - return e instanceof TypeError && obj.prop === 11; - } - } -runTestCase(testcase); +}); +assert.sameValue(obj.prop, 11, 'obj.prop'); diff --git a/test/language/expressions/compound-assignment/11.13.2-41-s.js b/test/language/expressions/compound-assignment/11.13.2-41-s.js index 707032af8756e5c43333c966d21fc26c5409adb3..d5d567d97c42f4fdaec2f1e2c24c329d338e3e7b 100644 --- a/test/language/expressions/compound-assignment/11.13.2-41-s.js +++ b/test/language/expressions/compound-assignment/11.13.2-41-s.js @@ -8,10 +8,8 @@ description: > Compound Assignment operator(>>>=) is a reference to an accessor property with the attribute value {[[Set]]:undefined} flags: [onlyStrict] -includes: [runTestCase.js] ---*/ -function testcase() { var obj = {}; Object.defineProperty(obj, "prop", { get: function () { @@ -21,12 +19,7 @@ function testcase() { enumerable: true, configurable: true }); - - try { +assert.throws(TypeError, function() { obj.prop >>>= 20; - return false; - } catch (e) { - return e instanceof TypeError && obj.prop === 11; - } - } -runTestCase(testcase); +}); +assert.sameValue(obj.prop, 11, 'obj.prop'); diff --git a/test/language/expressions/compound-assignment/11.13.2-42-s.js b/test/language/expressions/compound-assignment/11.13.2-42-s.js index 5d81a5130ac3efb804e55ce18a08c6af81f65c65..860fefca8d258c62ae638a1dad89272b0acc9cfe 100644 --- a/test/language/expressions/compound-assignment/11.13.2-42-s.js +++ b/test/language/expressions/compound-assignment/11.13.2-42-s.js @@ -8,10 +8,8 @@ description: > Compound Assignment operator(&=) is a reference to an accessor property with the attribute value {[[Set]]:undefined} flags: [onlyStrict] -includes: [runTestCase.js] ---*/ -function testcase() { var obj = {}; Object.defineProperty(obj, "prop", { get: function () { @@ -21,12 +19,7 @@ function testcase() { enumerable: true, configurable: true }); - - try { +assert.throws(TypeError, function() { obj.prop &= 20; - return false; - } catch (e) { - return e instanceof TypeError && obj.prop === 11; - } - } -runTestCase(testcase); +}); +assert.sameValue(obj.prop, 11, 'obj.prop'); diff --git a/test/language/expressions/compound-assignment/11.13.2-43-s.js b/test/language/expressions/compound-assignment/11.13.2-43-s.js index b3c1e38b38788bd8befed2388cbe6dd19582bb7d..b25ca2ba1b4ddef9ad1f9055888f3b6dba521ebe 100644 --- a/test/language/expressions/compound-assignment/11.13.2-43-s.js +++ b/test/language/expressions/compound-assignment/11.13.2-43-s.js @@ -8,10 +8,8 @@ description: > Compound Assignment operator(^=) is a reference to an accessor property with the attribute value {[[Set]]:undefined} flags: [onlyStrict] -includes: [runTestCase.js] ---*/ -function testcase() { var obj = {}; Object.defineProperty(obj, "prop", { get: function () { @@ -21,12 +19,7 @@ function testcase() { enumerable: true, configurable: true }); - - try { +assert.throws(TypeError, function() { obj.prop ^= 20; - return false; - } catch (e) { - return e instanceof TypeError && obj.prop === 11; - } - } -runTestCase(testcase); +}); +assert.sameValue(obj.prop, 11, 'obj.prop'); diff --git a/test/language/expressions/compound-assignment/11.13.2-44-s.js b/test/language/expressions/compound-assignment/11.13.2-44-s.js index 75808f9ac19f210fa98c2a09c0df2e505f753c78..9489059879a6593679f3758310f3ff17c11b7c90 100644 --- a/test/language/expressions/compound-assignment/11.13.2-44-s.js +++ b/test/language/expressions/compound-assignment/11.13.2-44-s.js @@ -8,10 +8,8 @@ description: > Compound Assignment operator(|=) is a reference of to an accessor property with the attribute value {[[Set]]:undefined} flags: [onlyStrict] -includes: [runTestCase.js] ---*/ -function testcase() { var obj = {}; Object.defineProperty(obj, "prop", { get: function () { @@ -21,12 +19,7 @@ function testcase() { enumerable: true, configurable: true }); - - try { +assert.throws(TypeError, function() { obj.prop |= 20; - return false; - } catch (e) { - return e instanceof TypeError && obj.prop === 11; - } - } -runTestCase(testcase); +}); +assert.sameValue(obj.prop, 11, 'obj.prop'); diff --git a/test/language/expressions/compound-assignment/11.13.2-45-s.js b/test/language/expressions/compound-assignment/11.13.2-45-s.js index b912bfd9da403bff9c0be75a3d80eac43cf5ba38..93cfaa2490ec82c867e899a221213163b9c562fb 100644 --- a/test/language/expressions/compound-assignment/11.13.2-45-s.js +++ b/test/language/expressions/compound-assignment/11.13.2-45-s.js @@ -9,18 +9,10 @@ description: > property of an object whose [[Extensible]] internal property is false flags: [onlyStrict] -includes: [runTestCase.js] ---*/ -function testcase() { var obj = {}; Object.preventExtensions(obj); - - try { +assert.throws(TypeError, function() { obj.len *= 10; - return false; - } catch (e) { - return e instanceof TypeError; - } - } -runTestCase(testcase); +}); diff --git a/test/language/expressions/compound-assignment/11.13.2-46-s.js b/test/language/expressions/compound-assignment/11.13.2-46-s.js index 81af78fd79796079e74af19ce601e4e4dfcfc999..26bc4c6e7d2f197cbcb807db3b1e2e1437bc6b17 100644 --- a/test/language/expressions/compound-assignment/11.13.2-46-s.js +++ b/test/language/expressions/compound-assignment/11.13.2-46-s.js @@ -9,18 +9,10 @@ description: > property of an object whose [[Extensible]] internal property is false flags: [onlyStrict] -includes: [runTestCase.js] ---*/ -function testcase() { var obj = {}; Object.preventExtensions(obj); - - try { +assert.throws(TypeError, function() { obj.len /= 10; - return false; - } catch (e) { - return e instanceof TypeError; - } - } -runTestCase(testcase); +}); diff --git a/test/language/expressions/compound-assignment/11.13.2-47-s.js b/test/language/expressions/compound-assignment/11.13.2-47-s.js index bd195e5eb589e9eb3abc02758d0960cb78c20aed..75805899fe69000aa88790bd72ebb8897c535561 100644 --- a/test/language/expressions/compound-assignment/11.13.2-47-s.js +++ b/test/language/expressions/compound-assignment/11.13.2-47-s.js @@ -9,18 +9,10 @@ description: > property of an object whose [[Extensible]] internal property is false flags: [onlyStrict] -includes: [runTestCase.js] ---*/ -function testcase() { var obj = {}; Object.preventExtensions(obj); - - try { +assert.throws(TypeError, function() { obj.len %= 10; - return false; - } catch (e) { - return e instanceof TypeError; - } - } -runTestCase(testcase); +}); diff --git a/test/language/expressions/compound-assignment/11.13.2-48-s.js b/test/language/expressions/compound-assignment/11.13.2-48-s.js index a6f09bfe956ef236e1f1f9bc8405b7e0872a575d..920b643ccbf901094e3828be4c1b148bd6d71135 100644 --- a/test/language/expressions/compound-assignment/11.13.2-48-s.js +++ b/test/language/expressions/compound-assignment/11.13.2-48-s.js @@ -9,18 +9,10 @@ description: > property of an object whose [[Extensible]] internal property is false flags: [onlyStrict] -includes: [runTestCase.js] ---*/ -function testcase() { var obj = {}; Object.preventExtensions(obj); - - try { +assert.throws(TypeError, function() { obj.len += 10; - return false; - } catch (e) { - return e instanceof TypeError; - } - } -runTestCase(testcase); +}); diff --git a/test/language/expressions/compound-assignment/11.13.2-49-s.js b/test/language/expressions/compound-assignment/11.13.2-49-s.js index fc5dff939baf2beb93220f3f2ccbfc420f0a1a28..48f3aedbf5654c7074e842f67a3e883ac789f8cd 100644 --- a/test/language/expressions/compound-assignment/11.13.2-49-s.js +++ b/test/language/expressions/compound-assignment/11.13.2-49-s.js @@ -9,18 +9,10 @@ description: > property of an object whose [[Extensible]] internal property is false flags: [onlyStrict] -includes: [runTestCase.js] ---*/ -function testcase() { var obj = {}; Object.preventExtensions(obj); - - try { +assert.throws(TypeError, function() { obj.len -= 10; - return false; - } catch (e) { - return e instanceof TypeError; - } - } -runTestCase(testcase); +}); diff --git a/test/language/expressions/compound-assignment/11.13.2-5-s.js b/test/language/expressions/compound-assignment/11.13.2-5-s.js index 6c9bc27a6b1b0be58f60dde7586e6982124edc24..16654674aa065c3fa25f92c5d0dfe2e8fa5a4db0 100644 --- a/test/language/expressions/compound-assignment/11.13.2-5-s.js +++ b/test/language/expressions/compound-assignment/11.13.2-5-s.js @@ -7,15 +7,9 @@ description: > Strict Mode - ReferenceError is thrown if the LeftHandSideExpression of a Compound Assignment operator(-=) evaluates to an unresolvable reference -includes: [runTestCase.js] ---*/ -function testcase() { - try { + +assert.throws(ReferenceError, function() { eval("_11_13_2_5 -= 1;"); - return false; - } catch (e) { - return e instanceof ReferenceError; - } - } -runTestCase(testcase); +}); diff --git a/test/language/expressions/compound-assignment/11.13.2-50-s.js b/test/language/expressions/compound-assignment/11.13.2-50-s.js index bca80fc10020ef754810dad5c225c30b44d756dd..2e46189b66c52b96e63d961ee3c708ed9cdaa09c 100644 --- a/test/language/expressions/compound-assignment/11.13.2-50-s.js +++ b/test/language/expressions/compound-assignment/11.13.2-50-s.js @@ -9,18 +9,10 @@ description: > property of an object whose [[Extensible]] internal property is false flags: [onlyStrict] -includes: [runTestCase.js] ---*/ -function testcase() { var obj = {}; Object.preventExtensions(obj); - - try { +assert.throws(TypeError, function() { obj.len <<= 10; - return false; - } catch (e) { - return e instanceof TypeError; - } - } -runTestCase(testcase); +}); diff --git a/test/language/expressions/compound-assignment/11.13.2-51-s.js b/test/language/expressions/compound-assignment/11.13.2-51-s.js index 1700bb52d10e90ea2db7ed041858d9a2f8fa847f..53d27cb234daa80271371e8f78e69fbc1be5f6cc 100644 --- a/test/language/expressions/compound-assignment/11.13.2-51-s.js +++ b/test/language/expressions/compound-assignment/11.13.2-51-s.js @@ -9,18 +9,10 @@ description: > property of an object whose [[Extensible]] internal property is false flags: [onlyStrict] -includes: [runTestCase.js] ---*/ -function testcase() { var obj = {}; Object.preventExtensions(obj); - - try { +assert.throws(TypeError, function() { obj.len >>= 10; - return false; - } catch (e) { - return e instanceof TypeError; - } - } -runTestCase(testcase); +}); diff --git a/test/language/expressions/compound-assignment/11.13.2-52-s.js b/test/language/expressions/compound-assignment/11.13.2-52-s.js index 903fe627ceea15c446cf52a9610356e233b3109b..e0f5b604e9473d4d68c448a43e496fa845a30961 100644 --- a/test/language/expressions/compound-assignment/11.13.2-52-s.js +++ b/test/language/expressions/compound-assignment/11.13.2-52-s.js @@ -9,18 +9,10 @@ description: > non-existent property of an object whose [[Extensible]] internal property if false flags: [onlyStrict] -includes: [runTestCase.js] ---*/ -function testcase() { var obj = {}; Object.preventExtensions(obj); - - try { +assert.throws(TypeError, function() { obj.len >>>= 10; - return false; - } catch (e) { - return e instanceof TypeError; - } - } -runTestCase(testcase); +}); diff --git a/test/language/expressions/compound-assignment/11.13.2-53-s.js b/test/language/expressions/compound-assignment/11.13.2-53-s.js index e806f5c7f05630621afbbff8850d3ef262b22b69..335a8ba0a7172cb2a040ee82429367dec97f9e38 100644 --- a/test/language/expressions/compound-assignment/11.13.2-53-s.js +++ b/test/language/expressions/compound-assignment/11.13.2-53-s.js @@ -9,18 +9,10 @@ description: > property of an object whose [[Extensible]] internal property is false flags: [onlyStrict] -includes: [runTestCase.js] ---*/ -function testcase() { var obj = {}; Object.preventExtensions(obj); - - try { +assert.throws(TypeError, function() { obj.len &= 10; - return false; - } catch (e) { - return e instanceof TypeError; - } - } -runTestCase(testcase); +}); diff --git a/test/language/expressions/compound-assignment/11.13.2-54-s.js b/test/language/expressions/compound-assignment/11.13.2-54-s.js index 3ea74293a3ab4fe63dd5df73174914a697c0b1d2..f0c9a4930292a3efb7c20fdcbec7317048d85b58 100644 --- a/test/language/expressions/compound-assignment/11.13.2-54-s.js +++ b/test/language/expressions/compound-assignment/11.13.2-54-s.js @@ -9,18 +9,10 @@ description: > property of an object whose [[Extensible]] internal property is false flags: [onlyStrict] -includes: [runTestCase.js] ---*/ -function testcase() { var obj = {}; Object.preventExtensions(obj); - - try { +assert.throws(TypeError, function() { obj.len ^= 10; - return false; - } catch (e) { - return e instanceof TypeError; - } - } -runTestCase(testcase); +}); diff --git a/test/language/expressions/compound-assignment/11.13.2-55-s.js b/test/language/expressions/compound-assignment/11.13.2-55-s.js index 572557313210c31aea47ea37f6a2c1608e11ff20..9a56c0a23687b4be682b1a63f5ada0630d15eec8 100644 --- a/test/language/expressions/compound-assignment/11.13.2-55-s.js +++ b/test/language/expressions/compound-assignment/11.13.2-55-s.js @@ -9,18 +9,10 @@ description: > property of an object whose [[Extensible]] internal property is false flags: [onlyStrict] -includes: [runTestCase.js] ---*/ -function testcase() { var obj = {}; Object.preventExtensions(obj); - - try { +assert.throws(TypeError, function() { obj.len |= 10; - return false; - } catch (e) { - return e instanceof TypeError; - } - } -runTestCase(testcase); +}); diff --git a/test/language/expressions/compound-assignment/11.13.2-6-1-s.js b/test/language/expressions/compound-assignment/11.13.2-6-1-s.js index cc66c4642ad0ba0461e032f7c08f52fff84dd963..2e8f1b9c883c6467f510637f46a9a1fde227a11d 100644 --- a/test/language/expressions/compound-assignment/11.13.2-6-1-s.js +++ b/test/language/expressions/compound-assignment/11.13.2-6-1-s.js @@ -7,16 +7,10 @@ description: > Strict Mode - SyntaxError is thrown if the identifier eval appear as the LeftHandSideExpression of a Compound Assignment operator(*=) flags: [onlyStrict] -includes: [runTestCase.js] ---*/ -function testcase() { var blah = eval; - try { +assert.throws(SyntaxError, function() { eval("eval *= 20;"); - return false; - } catch (e) { - return e instanceof SyntaxError && blah === eval; - } - } -runTestCase(testcase); +}); +assert.sameValue(blah, eval, 'blah'); diff --git a/test/language/expressions/compound-assignment/11.13.2-6-10-s.js b/test/language/expressions/compound-assignment/11.13.2-6-10-s.js index e126407e213103808381988893099494897303e5..aa3ff2c02f8b427cd9957e07b3a6f3cdee302e13 100644 --- a/test/language/expressions/compound-assignment/11.13.2-6-10-s.js +++ b/test/language/expressions/compound-assignment/11.13.2-6-10-s.js @@ -7,16 +7,10 @@ description: > Strict Mode - SyntaxError is thrown if the identifier eval appear as the LeftHandSideExpression of a Compound Assignment operator(^=) flags: [onlyStrict] -includes: [runTestCase.js] ---*/ -function testcase() { var blah = eval; - try { +assert.throws(SyntaxError, function() { eval("eval ^= 20;"); - return false; - } catch (e) { - return e instanceof SyntaxError && blah === eval; - } - } -runTestCase(testcase); +}); +assert.sameValue(blah, eval, 'blah'); diff --git a/test/language/expressions/compound-assignment/11.13.2-6-11-s.js b/test/language/expressions/compound-assignment/11.13.2-6-11-s.js index ea5caeca817e56488b10e33b070d439f58440b66..a6bd1295a6912f53b106e81623f5db4ae8df1e75 100644 --- a/test/language/expressions/compound-assignment/11.13.2-6-11-s.js +++ b/test/language/expressions/compound-assignment/11.13.2-6-11-s.js @@ -7,16 +7,10 @@ description: > Strict Mode - SyntaxError is thrown if the identifier eval appear as the LeftHandSideExpression of a Compound Assignment operator(|=) flags: [onlyStrict] -includes: [runTestCase.js] ---*/ -function testcase() { var blah = eval; - try { - eval("eval |= 20;"); - return false; - } catch (e) { - return e instanceof SyntaxError && blah === eval; - } - } -runTestCase(testcase); +assert.throws(SyntaxError, function() { + eval("eval |= 20;"); +}); +assert.sameValue(blah, eval, 'blah'); diff --git a/test/language/expressions/compound-assignment/11.13.2-6-2-s.js b/test/language/expressions/compound-assignment/11.13.2-6-2-s.js index 3be6d709f971e71f4b9d11d1bcbb13853c2665f8..e2e549c3d8b8f57c64b350b368db9cbad39d6b13 100644 --- a/test/language/expressions/compound-assignment/11.13.2-6-2-s.js +++ b/test/language/expressions/compound-assignment/11.13.2-6-2-s.js @@ -7,16 +7,10 @@ description: > Strict Mode - SyntaxError is thrown if the identifier eval appear as the LeftHandSideExpression of a Compound Assignment operator(/=) flags: [onlyStrict] -includes: [runTestCase.js] ---*/ -function testcase() { var blah = eval; - try { +assert.throws(SyntaxError, function() { eval("eval /= 20;"); - return false; - } catch (e) { - return e instanceof SyntaxError && blah === eval; - } - } -runTestCase(testcase); +}); +assert.sameValue(blah, eval, 'blah'); diff --git a/test/language/expressions/compound-assignment/11.13.2-6-3-s.js b/test/language/expressions/compound-assignment/11.13.2-6-3-s.js index 0612d5364f49ab8d94240fa5d544091fd9299340..6e79a2089c35061a393b7d0219740a1839906709 100644 --- a/test/language/expressions/compound-assignment/11.13.2-6-3-s.js +++ b/test/language/expressions/compound-assignment/11.13.2-6-3-s.js @@ -7,16 +7,10 @@ description: > Strict Mode - SyntaxError is thrown if the identifier eval appear as the LeftHandSideExpression of a Compound Assignment operator(%=) flags: [onlyStrict] -includes: [runTestCase.js] ---*/ -function testcase() { var blah = eval; - try { +assert.throws(SyntaxError, function() { eval("eval %= 20;"); - return false; - } catch (e) { - return e instanceof SyntaxError && blah === eval; - } - } -runTestCase(testcase); +}); +assert.sameValue(blah, eval, 'blah'); diff --git a/test/language/expressions/compound-assignment/11.13.2-6-4-s.js b/test/language/expressions/compound-assignment/11.13.2-6-4-s.js index eab0d354ce5aa83044d5044bae254b6dd20ce8cf..fbff6abb72ec4bca60795afa4b2c9869e6dee2ae 100644 --- a/test/language/expressions/compound-assignment/11.13.2-6-4-s.js +++ b/test/language/expressions/compound-assignment/11.13.2-6-4-s.js @@ -7,16 +7,10 @@ description: > Strict Mode - SyntaxError is thrown if the identifier eval appear as the LeftHandSideExpression of a Compound Assignment operator(+=) flags: [onlyStrict] -includes: [runTestCase.js] ---*/ -function testcase() { var blah = eval; - try { +assert.throws(SyntaxError, function() { eval("eval += 20;"); - return false; - } catch (e) { - return e instanceof SyntaxError && blah === eval; - } - } -runTestCase(testcase); +}); +assert.sameValue(blah, eval, 'blah'); diff --git a/test/language/expressions/compound-assignment/11.13.2-6-5-s.js b/test/language/expressions/compound-assignment/11.13.2-6-5-s.js index 93389778e8ddc14fdcf0c5d5e572b9f114027ac6..a01ada3635946effed0216f859f20bd9ca521f91 100644 --- a/test/language/expressions/compound-assignment/11.13.2-6-5-s.js +++ b/test/language/expressions/compound-assignment/11.13.2-6-5-s.js @@ -7,16 +7,10 @@ description: > Strict Mode - SyntaxError is thrown if the identifier eval appear as the LeftHandSideExpression of a Compound Assignment operator(-=) flags: [onlyStrict] -includes: [runTestCase.js] ---*/ -function testcase() { var blah = eval; - try { +assert.throws(SyntaxError, function() { eval("eval -= 20;"); - return false; - } catch (e) { - return e instanceof SyntaxError && blah === eval; - } - } -runTestCase(testcase); +}); +assert.sameValue(blah, eval, 'blah'); diff --git a/test/language/expressions/compound-assignment/11.13.2-6-6-s.js b/test/language/expressions/compound-assignment/11.13.2-6-6-s.js index b57fed01017ba33be14a661040df0b27a0085eb1..c4c7360c80166f0c64b3914adc08848a50faf54d 100644 --- a/test/language/expressions/compound-assignment/11.13.2-6-6-s.js +++ b/test/language/expressions/compound-assignment/11.13.2-6-6-s.js @@ -8,16 +8,10 @@ description: > as the LeftHandSideExpression of a Compound Assignment operator(<<=) flags: [onlyStrict] -includes: [runTestCase.js] ---*/ -function testcase() { var blah = eval; - try { +assert.throws(SyntaxError, function() { eval("eval <<= 20;"); - return false; - } catch (e) { - return e instanceof SyntaxError && blah === eval; - } - } -runTestCase(testcase); +}); +assert.sameValue(blah, eval, 'blah'); diff --git a/test/language/expressions/compound-assignment/11.13.2-6-7-s.js b/test/language/expressions/compound-assignment/11.13.2-6-7-s.js index 1599e4f899bcb75449620464a29fc7bbe14006f0..8778fbdf1f08d92bc41129c60c2faae5f86c1f44 100644 --- a/test/language/expressions/compound-assignment/11.13.2-6-7-s.js +++ b/test/language/expressions/compound-assignment/11.13.2-6-7-s.js @@ -8,16 +8,10 @@ description: > as the LeftHandSideExpression of a Compound Assignment operator(>>=) flags: [onlyStrict] -includes: [runTestCase.js] ---*/ -function testcase() { var blah = eval; - try { +assert.throws(SyntaxError, function() { eval("eval >>= 20;"); - return false; - } catch (e) { - return e instanceof SyntaxError && blah === eval; - } - } -runTestCase(testcase); +}); +assert.sameValue(blah, eval, 'blah'); diff --git a/test/language/expressions/compound-assignment/11.13.2-6-8-s.js b/test/language/expressions/compound-assignment/11.13.2-6-8-s.js index 66519aa72a9da624a558a1d5ee053bfffea19a95..f67a3b7ffc25d0323e96f2e0831e4d291318e6fd 100644 --- a/test/language/expressions/compound-assignment/11.13.2-6-8-s.js +++ b/test/language/expressions/compound-assignment/11.13.2-6-8-s.js @@ -8,16 +8,10 @@ description: > as the LeftHandSideExpression of a Compound Assignment operator(>>>=) flags: [onlyStrict] -includes: [runTestCase.js] ---*/ -function testcase() { var blah = eval; - try { +assert.throws(SyntaxError, function() { eval("eval >>>= 20;"); - return false; - } catch (e) { - return e instanceof SyntaxError && blah === eval; - } - } -runTestCase(testcase); +}); +assert.sameValue(blah, eval, 'blah'); diff --git a/test/language/expressions/compound-assignment/11.13.2-6-9-s.js b/test/language/expressions/compound-assignment/11.13.2-6-9-s.js index 098cca5865d74f0a9478a190feef8c79957dd10d..4db6cba4ad666f0b5b9c5852f83fa125e22f5407 100644 --- a/test/language/expressions/compound-assignment/11.13.2-6-9-s.js +++ b/test/language/expressions/compound-assignment/11.13.2-6-9-s.js @@ -7,16 +7,10 @@ description: > Strict Mode - SyntaxError is thrown if the identifier eval appear as the LeftHandSideExpression of a Compound Assignment operator(&=) flags: [onlyStrict] -includes: [runTestCase.js] ---*/ -function testcase() { var blah = eval; - try { +assert.throws(SyntaxError, function() { eval("eval &= 20;"); - return false; - } catch (e) { - return e instanceof SyntaxError && blah === eval; - } - } -runTestCase(testcase); +}); +assert.sameValue(blah, eval, 'blah'); diff --git a/test/language/expressions/compound-assignment/11.13.2-6-s.js b/test/language/expressions/compound-assignment/11.13.2-6-s.js index 563676a9af142737b8d332606700d9b5404984ff..14084ba7e2fc3aa2b6f3512e647b739758740402 100644 --- a/test/language/expressions/compound-assignment/11.13.2-6-s.js +++ b/test/language/expressions/compound-assignment/11.13.2-6-s.js @@ -7,15 +7,9 @@ description: > Strict Mode - ReferenceError is thrown if the LeftHandSideExpression of a Compound Assignment operator(<<=) evaluates to an unresolvable reference -includes: [runTestCase.js] ---*/ -function testcase() { - try { + +assert.throws(ReferenceError, function() { eval("_11_13_2_6 <<= 1;"); - return false; - } catch (e) { - return e instanceof ReferenceError; - } - } -runTestCase(testcase); +}); diff --git a/test/language/expressions/compound-assignment/11.13.2-7-s.js b/test/language/expressions/compound-assignment/11.13.2-7-s.js index f6a6fa948e3d64c71611c995ced9090f58af8ee5..ae8d2b19219ccf5e2d489f0e48b7fb5fe2795cad 100644 --- a/test/language/expressions/compound-assignment/11.13.2-7-s.js +++ b/test/language/expressions/compound-assignment/11.13.2-7-s.js @@ -8,15 +8,9 @@ description: > LeftHandSideExpression of a Compound Assignment operator(>>=) evaluates to an unresolvable reference flags: [onlyStrict] -includes: [runTestCase.js] ---*/ -function testcase() { - try { + +assert.throws(ReferenceError, function() { eval("_11_13_2_7 >>= 1;"); - return false; - } catch (e) { - return e instanceof ReferenceError; - } - } -runTestCase(testcase); +}); diff --git a/test/language/expressions/compound-assignment/11.13.2-8-s.js b/test/language/expressions/compound-assignment/11.13.2-8-s.js index d37ef25a6a5e5236676b3afe2f06ecd74d0453ae..ecd1cd83265accfb739a6bb012fefd20216ee373 100644 --- a/test/language/expressions/compound-assignment/11.13.2-8-s.js +++ b/test/language/expressions/compound-assignment/11.13.2-8-s.js @@ -7,15 +7,9 @@ description: > Strict Mode - ReferenceError is thrown if the LeftHandSideExpression of a Compound Assignment operator(>>>=) evaluates to an unresolvable reference -includes: [runTestCase.js] ---*/ -function testcase() { - try { + +assert.throws(ReferenceError, function() { eval("_11_13_2_8 >>>= 1;"); - return false; - } catch (e) { - return e instanceof ReferenceError; - } - } -runTestCase(testcase); +}); diff --git a/test/language/expressions/compound-assignment/11.13.2-9-s.js b/test/language/expressions/compound-assignment/11.13.2-9-s.js index b58701da848942a99aed3e3606e3c75dd3be9934..50836f4f629626f9749a2af19cbd943668550253 100644 --- a/test/language/expressions/compound-assignment/11.13.2-9-s.js +++ b/test/language/expressions/compound-assignment/11.13.2-9-s.js @@ -7,15 +7,9 @@ description: > Strict Mode - ReferenceError is thrown if the LeftHandSideExpression of a Compound Assignment operator(&=) evaluates to an unresolvable reference -includes: [runTestCase.js] ---*/ -function testcase() { - try { + +assert.throws(ReferenceError, function() { eval("_11_13_2_9 &= 1;"); - return false; - } catch (e) { - return e instanceof ReferenceError; - } - } -runTestCase(testcase); +}); diff --git a/test/language/expressions/delete/11.4.1-3-2.js b/test/language/expressions/delete/11.4.1-3-2.js index df1c3f612e36be43b667d3f1da57f1dc18ae5ce1..608468319bda2ba415b028271c38c05f34cb83b0 100644 --- a/test/language/expressions/delete/11.4.1-3-2.js +++ b/test/language/expressions/delete/11.4.1-3-2.js @@ -6,19 +6,9 @@ es5id: 11.4.1-3-2 description: > delete operator throws ReferenceError when deleting an explicitly qualified yet unresolvable reference (base obj undefined) -includes: [runTestCase.js] ---*/ -function testcase() { // just cooking up a long/veryLikely unique name - try - { +assert.throws(ReferenceError, function() { var d = delete __ES3_1_test_suite_test_11_4_1_3_unique_id_2__.x; - } - catch(e) - { - if (e instanceof ReferenceError) - return true; - } - } -runTestCase(testcase); +}); diff --git a/test/language/expressions/delete/11.4.1-3-a-1-s.js b/test/language/expressions/delete/11.4.1-3-a-1-s.js index fd3db626cc345df39b25e1526f92235810cd4d97..cb66ac0321d0e2d61f264a6629154d8b697be373 100644 --- a/test/language/expressions/delete/11.4.1-3-a-1-s.js +++ b/test/language/expressions/delete/11.4.1-3-a-1-s.js @@ -7,16 +7,9 @@ description: > Strict Mode - SyntaxError is thrown when deleting an un-resolvable reference flags: [onlyStrict] -includes: [runTestCase.js] ---*/ -function testcase() { - try { +assert.throws(SyntaxError, function() { eval("delete obj"); - return false; - } catch (e) { - return e instanceof SyntaxError; - } - } -runTestCase(testcase); +}); diff --git a/test/language/expressions/delete/11.4.1-4-a-1-s.js b/test/language/expressions/delete/11.4.1-4-a-1-s.js index cd5b561e9eab5b829039c7b4e1fc45a6921652ea..73544a0fd4dd1ba973174fa560b9851e21463981 100644 --- a/test/language/expressions/delete/11.4.1-4-a-1-s.js +++ b/test/language/expressions/delete/11.4.1-4-a-1-s.js @@ -7,21 +7,14 @@ description: > Strict Mode - TypeError is thrown when deleting non-configurable data property flags: [onlyStrict] -includes: [runTestCase.js] ---*/ -function testcase() { var obj = {}; Object.defineProperty(obj, "prop", { value: "abc", configurable: false }); - - try { +assert.throws(TypeError, function() { delete obj.prop; - return false; - } catch (e) { - return e instanceof TypeError && obj.prop === "abc"; - } - } -runTestCase(testcase); +}); +assert.sameValue(obj.prop, "abc", 'obj.prop'); diff --git a/test/language/expressions/delete/11.4.1-4-a-2-s.js b/test/language/expressions/delete/11.4.1-4-a-2-s.js index b61a6c0e69769b6350f1ed7fd0fd946782772e5a..431d61f1c2e39a8fff2d29cb2e9fec2f0a96340f 100644 --- a/test/language/expressions/delete/11.4.1-4-a-2-s.js +++ b/test/language/expressions/delete/11.4.1-4-a-2-s.js @@ -7,10 +7,8 @@ description: > Strict Mode - TypeError is thrown when deleting non-configurable accessor property flags: [onlyStrict] -includes: [runTestCase.js] ---*/ -function testcase() { var obj = {}; Object.defineProperty(obj, "prop", { get: function () { @@ -18,12 +16,7 @@ function testcase() { }, configurable: false }); - - try { +assert.throws(TypeError, function() { delete obj.prop; - return false; - } catch (e) { - return e instanceof TypeError && obj.prop === "abc"; - } - } -runTestCase(testcase); +}); +assert.sameValue(obj.prop, "abc", 'obj.prop'); diff --git a/test/language/expressions/delete/11.4.1-4.a-3-s.js b/test/language/expressions/delete/11.4.1-4.a-3-s.js index 501f3162e779af03a0e9807e10a75ce5bfa83c71..1ea95a6b7c6547277f476dce73f27bfe002ed4f3 100644 --- a/test/language/expressions/delete/11.4.1-4.a-3-s.js +++ b/test/language/expressions/delete/11.4.1-4.a-3-s.js @@ -10,21 +10,13 @@ description: > delete operator throws TypeError when deleting a non-configurable data property in strict mode flags: [onlyStrict] -includes: [runTestCase.js] ---*/ -function testcase() { var o = {}; var desc = { value : 1 }; // all other attributes default to false Object.defineProperty(o, "foo", desc); // Now, deleting o.foo should throw TypeError because [[Configurable]] on foo is false. - try { +assert.throws(TypeError, function() { delete o.foo; - return false; - } - catch (e) { - return (e instanceof TypeError); - } - } -runTestCase(testcase); +}); diff --git a/test/language/expressions/delete/11.4.1-4.a-8-s.js b/test/language/expressions/delete/11.4.1-4.a-8-s.js index 69bb9fa51e6caaf2ccebd28e6f77ad275bf3da02..a0dd257efe0411fdf48e7501de371949d49096cc 100644 --- a/test/language/expressions/delete/11.4.1-4.a-8-s.js +++ b/test/language/expressions/delete/11.4.1-4.a-8-s.js @@ -10,19 +10,10 @@ description: > delete operator throws TypeError when deleting a non-configurable data property in strict mode flags: [onlyStrict] -includes: - - runTestCase.js - - fnGlobalObject.js +includes: [fnGlobalObject.js] ---*/ -function testcase() { // NaN (15.1.1.1) has [[Configurable]] set to false. - try { +assert.throws(TypeError, function() { delete fnGlobalObject().NaN; - return false; - } - catch (e) { - return (e instanceof TypeError); - } - } -runTestCase(testcase); +}); diff --git a/test/language/expressions/delete/11.4.1-4.a-9-s.js b/test/language/expressions/delete/11.4.1-4.a-9-s.js index 197d0769eb004ff7cb123c9a3dbc89a9d768f249..f4cefb2cadd6c20398f522aad228ebd8464525a5 100644 --- a/test/language/expressions/delete/11.4.1-4.a-9-s.js +++ b/test/language/expressions/delete/11.4.1-4.a-9-s.js @@ -10,16 +10,9 @@ description: > delete operator throws TypeError when deleting a non-configurable data property (Math.LN2) in strict mode flags: [onlyStrict] -includes: [runTestCase.js] ---*/ -function testcase() { - try { + +assert.throws(TypeError, function() { delete Math.LN2; - return false; - } - catch (e) { - return (e instanceof TypeError); - } - } -runTestCase(testcase); +}); diff --git a/test/language/expressions/delete/11.4.1-5-a-1-s.js b/test/language/expressions/delete/11.4.1-5-a-1-s.js index b7200bc3e7f3a874539deaa6cd37cf646b5832d4..86575dd324628a11c93fcc58e39a4025bad74574 100644 --- a/test/language/expressions/delete/11.4.1-5-a-1-s.js +++ b/test/language/expressions/delete/11.4.1-5-a-1-s.js @@ -7,17 +7,9 @@ description: > Strict Mode - SyntaxError is thrown when deleting a variable which is a primitive value type (number) flags: [onlyStrict] -includes: [runTestCase.js] ---*/ -function testcase() { var _11_4_1_5 = 5; - - try { +assert.throws(SyntaxError, function() { eval("delete _11_4_1_5;"); - return false; - } catch (e) { - return e instanceof SyntaxError; - } - } -runTestCase(testcase); +}); diff --git a/test/language/expressions/delete/11.4.1-5-a-10-s.js b/test/language/expressions/delete/11.4.1-5-a-10-s.js index 5b23498a975ddef755b5d542ecd296c4109e725b..a48304837a33bcd9bc06c8ee36034ecefb72f823 100644 --- a/test/language/expressions/delete/11.4.1-5-a-10-s.js +++ b/test/language/expressions/delete/11.4.1-5-a-10-s.js @@ -7,17 +7,9 @@ description: > Strict Mode - SyntaxError is thrown when deleting a variable of type Array flags: [onlyStrict] -includes: [runTestCase.js] ---*/ -function testcase() { var arrObj = [1,2,3]; - - try { +assert.throws(SyntaxError, function() { eval("delete arrObj;"); - return false; - } catch (e) { - return e instanceof SyntaxError; - } - } -runTestCase(testcase); +}); diff --git a/test/language/expressions/delete/11.4.1-5-a-11-s.js b/test/language/expressions/delete/11.4.1-5-a-11-s.js index 57f22f6c904575a888d106fb055d3abd8d290568..49c29c283f7dd038578501e17fb37c8ebc4d459b 100644 --- a/test/language/expressions/delete/11.4.1-5-a-11-s.js +++ b/test/language/expressions/delete/11.4.1-5-a-11-s.js @@ -7,17 +7,9 @@ description: > Strict Mode - SyntaxError is thrown when deleting a variable of type String flags: [onlyStrict] -includes: [runTestCase.js] ---*/ -function testcase() { var strObj = new String("abc"); - - try { +assert.throws(SyntaxError, function() { eval("delete strObj;"); - return false; - } catch (e) { - return e instanceof SyntaxError; - } - } -runTestCase(testcase); +}); diff --git a/test/language/expressions/delete/11.4.1-5-a-12-s.js b/test/language/expressions/delete/11.4.1-5-a-12-s.js index e292408768cb36f86ce42fe101e7362c84e69402..1b6c4d62b62b66349a43c37c5d644aba4b42ef2f 100644 --- a/test/language/expressions/delete/11.4.1-5-a-12-s.js +++ b/test/language/expressions/delete/11.4.1-5-a-12-s.js @@ -7,17 +7,9 @@ description: > Strict Mode - SyntaxError is thrown when deleting a variable of type Boolean flags: [onlyStrict] -includes: [runTestCase.js] ---*/ -function testcase() { var boolObj = new Boolean(false); - - try { +assert.throws(SyntaxError, function() { eval("delete boolObj;"); - return false; - } catch (e) { - return e instanceof SyntaxError; - } - } -runTestCase(testcase); +}); diff --git a/test/language/expressions/delete/11.4.1-5-a-13-s.js b/test/language/expressions/delete/11.4.1-5-a-13-s.js index aeb96027b871df1542dab291b1b6cb8c043b3364..7fd02683808440733d46b674aef6feb3118d494f 100644 --- a/test/language/expressions/delete/11.4.1-5-a-13-s.js +++ b/test/language/expressions/delete/11.4.1-5-a-13-s.js @@ -7,17 +7,9 @@ description: > Strict Mode - SyntaxError is thrown when deleting a variable of type Number flags: [onlyStrict] -includes: [runTestCase.js] ---*/ -function testcase() { var numObj = new Number(0); - - try { +assert.throws(SyntaxError, function() { eval("delete numObj;"); - return false; - } catch (e) { - return e instanceof SyntaxError; - } - } -runTestCase(testcase); +}); diff --git a/test/language/expressions/delete/11.4.1-5-a-14-s.js b/test/language/expressions/delete/11.4.1-5-a-14-s.js index c39db53a43ff8c4648a977557b772b5a7e5a5e49..f9f20d490db24d72670c2faa836d3dee3634fdeb 100644 --- a/test/language/expressions/delete/11.4.1-5-a-14-s.js +++ b/test/language/expressions/delete/11.4.1-5-a-14-s.js @@ -7,17 +7,9 @@ description: > Strict Mode - SyntaxError is thrown when deleting a variable of type Date flags: [onlyStrict] -includes: [runTestCase.js] ---*/ -function testcase() { var dateObj = new Date(); - - try { +assert.throws(SyntaxError, function() { eval("delete dateObj;"); - return false; - } catch (e) { - return e instanceof SyntaxError; - } - } -runTestCase(testcase); +}); diff --git a/test/language/expressions/delete/11.4.1-5-a-15-s.js b/test/language/expressions/delete/11.4.1-5-a-15-s.js index f3f54e138c7c706a488875d22a2239e02ae143cd..38e873065adceedcca662184623234d09b8af28e 100644 --- a/test/language/expressions/delete/11.4.1-5-a-15-s.js +++ b/test/language/expressions/delete/11.4.1-5-a-15-s.js @@ -7,17 +7,9 @@ description: > Strict Mode - SyntaxError is thrown when deleting a variable of type RegExp flags: [onlyStrict] -includes: [runTestCase.js] ---*/ -function testcase() { var regObj = new RegExp(); - - try { +assert.throws(SyntaxError, function() { eval("delete regObj;"); - return false; - } catch (e) { - return e instanceof SyntaxError; - } - } -runTestCase(testcase); +}); diff --git a/test/language/expressions/delete/11.4.1-5-a-16-s.js b/test/language/expressions/delete/11.4.1-5-a-16-s.js index 876760d2ab07bdccc7e6344f6d25f0ea5ec201e6..cf730de501be7e93e8f9d5612f1ef6159ba29ace 100644 --- a/test/language/expressions/delete/11.4.1-5-a-16-s.js +++ b/test/language/expressions/delete/11.4.1-5-a-16-s.js @@ -7,17 +7,9 @@ description: > Strict Mode - SyntaxError is thrown when deleting a variable of type Error flags: [onlyStrict] -includes: [runTestCase.js] ---*/ -function testcase() { var errObj = new Error(); - - try { +assert.throws(SyntaxError, function() { eval("delete errObj;"); - return false; - } catch (e) { - return e instanceof SyntaxError; - } - } -runTestCase(testcase); +}); diff --git a/test/language/expressions/delete/11.4.1-5-a-17-s.js b/test/language/expressions/delete/11.4.1-5-a-17-s.js index 502b09219d973fd3581856fc9725ee6f15af7254..55ebf2e489e00528bbd4538893d03761010381b2 100644 --- a/test/language/expressions/delete/11.4.1-5-a-17-s.js +++ b/test/language/expressions/delete/11.4.1-5-a-17-s.js @@ -7,16 +7,9 @@ description: > Strict Mode - SyntaxError is thrown when deleting a variable of type Arguments flags: [onlyStrict] -includes: [runTestCase.js] ---*/ -function testcase() { - try { - eval("var argObj = (function (a, b) { delete arguments; }(1, 2));"); - return false; - } catch (e) { - return e instanceof SyntaxError; - } - } -runTestCase(testcase); +assert.throws(SyntaxError, function() { + eval("var argObj = (function (a, b) { delete arguments; }(1, 2));"); +}); diff --git a/test/language/expressions/delete/11.4.1-5-a-18-s.js b/test/language/expressions/delete/11.4.1-5-a-18-s.js index c370de06f168bc41bf75ad4995782ef5b77cebbf..eb1af56e10d583876cda1b7dfa94ac2d8ded7590 100644 --- a/test/language/expressions/delete/11.4.1-5-a-18-s.js +++ b/test/language/expressions/delete/11.4.1-5-a-18-s.js @@ -7,15 +7,9 @@ description: > Strict Mode - SyntaxError is thrown when deleting a built-in (Object) flags: [onlyStrict] -includes: [runTestCase.js] ---*/ -function testcase() { - try { + +assert.throws(SyntaxError, function() { eval("delete Object;"); - return false; - } catch (e) { - return e instanceof SyntaxError; - } - } -runTestCase(testcase); +}); diff --git a/test/language/expressions/delete/11.4.1-5-a-19-s.js b/test/language/expressions/delete/11.4.1-5-a-19-s.js index f960f9032f8c114c1612ba4bf2285264117ac3e6..442e22f0b9dcf3a8e9b194c0251a13cd4b09cdb4 100644 --- a/test/language/expressions/delete/11.4.1-5-a-19-s.js +++ b/test/language/expressions/delete/11.4.1-5-a-19-s.js @@ -7,15 +7,9 @@ description: > Strict Mode - SyntaxError is thrown when deleting a built-in (Function) flags: [onlyStrict] -includes: [runTestCase.js] ---*/ -function testcase() { - try { + +assert.throws(SyntaxError, function() { eval("delete Function;"); - return false; - } catch (e) { - return e instanceof SyntaxError; - } - } -runTestCase(testcase); +}); diff --git a/test/language/expressions/delete/11.4.1-5-a-2-s.js b/test/language/expressions/delete/11.4.1-5-a-2-s.js index 1d39f9a2d51c65eb2f69c0981d0a1da0aa5e8524..b9afc1edf2b9dcd97bf6011bb723da7ad1cbb904 100644 --- a/test/language/expressions/delete/11.4.1-5-a-2-s.js +++ b/test/language/expressions/delete/11.4.1-5-a-2-s.js @@ -7,19 +7,11 @@ description: > Strict Mode - SyntaxError is thrown when deleting a function parameter flags: [onlyStrict] -includes: [runTestCase.js] ---*/ -function testcase() { function funObj(x) { eval("delete x;"); } - - try { +assert.throws(SyntaxError, function() { funObj(1); - return false; - } catch (e) { - return e instanceof SyntaxError; - } - } -runTestCase(testcase); +}); diff --git a/test/language/expressions/delete/11.4.1-5-a-20-s.js b/test/language/expressions/delete/11.4.1-5-a-20-s.js index 2f66bd7ed9b4ef9ad0c764a42211f300b23fea0a..456c4b3f07bd4099cb469a026095fbfb0fa924e0 100644 --- a/test/language/expressions/delete/11.4.1-5-a-20-s.js +++ b/test/language/expressions/delete/11.4.1-5-a-20-s.js @@ -7,15 +7,9 @@ description: > Strict Mode - SyntaxError is thrown when deleting a built-in (Array) flags: [onlyStrict] -includes: [runTestCase.js] ---*/ -function testcase() { - try { + +assert.throws(SyntaxError, function() { eval("delete Array;"); - return false; - } catch (e) { - return e instanceof SyntaxError; - } - } -runTestCase(testcase); +}); diff --git a/test/language/expressions/delete/11.4.1-5-a-21-s.js b/test/language/expressions/delete/11.4.1-5-a-21-s.js index 43d29cb98ba9b585b646a0e32bfd8f75747dc4ba..1bf9bd3ce12addf71db80a0300240fc3140b7b50 100644 --- a/test/language/expressions/delete/11.4.1-5-a-21-s.js +++ b/test/language/expressions/delete/11.4.1-5-a-21-s.js @@ -7,15 +7,9 @@ description: > Strict Mode - SyntaxError is thrown when deleting a built-in (String) flags: [onlyStrict] -includes: [runTestCase.js] ---*/ -function testcase() { - try { + +assert.throws(SyntaxError, function() { eval("delete String;"); - return false; - } catch (e) { - return e instanceof SyntaxError; - } - } -runTestCase(testcase); +}); diff --git a/test/language/expressions/delete/11.4.1-5-a-22-s.js b/test/language/expressions/delete/11.4.1-5-a-22-s.js index acab4ea75628c357304bb98500a08bf655527d04..1e02b15aa77d7917d5bb57ba7c3bf3c2936d4133 100644 --- a/test/language/expressions/delete/11.4.1-5-a-22-s.js +++ b/test/language/expressions/delete/11.4.1-5-a-22-s.js @@ -7,15 +7,9 @@ description: > Strict Mode - SyntaxError is thrown when deleting a built-in (Boolean) flags: [onlyStrict] -includes: [runTestCase.js] ---*/ -function testcase() { - try { + +assert.throws(SyntaxError, function() { eval("delete Boolean;"); - return false; - } catch (e) { - return e instanceof SyntaxError; - } - } -runTestCase(testcase); +}); diff --git a/test/language/expressions/delete/11.4.1-5-a-23-s.js b/test/language/expressions/delete/11.4.1-5-a-23-s.js index 1eb2eb08dff20a669dcc95bc73ea85641522c92f..e383430d8bb0e92ca011fd7d75d6ca86ae9d74c1 100644 --- a/test/language/expressions/delete/11.4.1-5-a-23-s.js +++ b/test/language/expressions/delete/11.4.1-5-a-23-s.js @@ -7,15 +7,9 @@ description: > Strict Mode - SyntaxError is thrown when deleting a built-in (Number) flags: [onlyStrict] -includes: [runTestCase.js] ---*/ -function testcase() { - try { + +assert.throws(SyntaxError, function() { eval("delete Number;"); - return false; - } catch (e) { - return e instanceof SyntaxError; - } - } -runTestCase(testcase); +}); diff --git a/test/language/expressions/delete/11.4.1-5-a-24-s.js b/test/language/expressions/delete/11.4.1-5-a-24-s.js index e3782a273b6f86aaffedecc26e6080fc5a020c0a..ef63b0579dd10ff37f0ae0700f1702438c969407 100644 --- a/test/language/expressions/delete/11.4.1-5-a-24-s.js +++ b/test/language/expressions/delete/11.4.1-5-a-24-s.js @@ -5,15 +5,9 @@ es5id: 11.4.1-5-a-24-s description: Strict Mode - SyntaxError is thrown when deleting a built-in (Date) flags: [onlyStrict] -includes: [runTestCase.js] ---*/ -function testcase() { - try { + +assert.throws(SyntaxError, function() { eval("delete Date;"); - return false; - } catch (e) { - return e instanceof SyntaxError; - } - } -runTestCase(testcase); +}); diff --git a/test/language/expressions/delete/11.4.1-5-a-25-s.js b/test/language/expressions/delete/11.4.1-5-a-25-s.js index dcbf2ccb44eaf20008be5a6d54eab965e32795e3..8484c985a3c61360953fc9d74d419786711c0542 100644 --- a/test/language/expressions/delete/11.4.1-5-a-25-s.js +++ b/test/language/expressions/delete/11.4.1-5-a-25-s.js @@ -7,15 +7,9 @@ description: > Strict Mode - SyntaxError is thrown when deleting a built-in (RegExp) flags: [onlyStrict] -includes: [runTestCase.js] ---*/ -function testcase() { - try { + +assert.throws(SyntaxError, function() { eval("delete RegExp;"); - return false; - } catch (e) { - return e instanceof SyntaxError; - } - } -runTestCase(testcase); +}); diff --git a/test/language/expressions/delete/11.4.1-5-a-27-s.js b/test/language/expressions/delete/11.4.1-5-a-27-s.js index 04e2a9e76c893a1d417936f14795f434e934c5b9..b2bd6258854a65c6f743c70efbf05bf13d15425a 100644 --- a/test/language/expressions/delete/11.4.1-5-a-27-s.js +++ b/test/language/expressions/delete/11.4.1-5-a-27-s.js @@ -7,18 +7,11 @@ description: > Strict Mode - TypeError is thrown after deleting a property, calling preventExtensions, and attempting to reassign the property flags: [onlyStrict] -includes: [runTestCase.js] ---*/ -function testcase() { var a = {x:0, get y() { return 0;}}; delete a.x; Object.preventExtensions(a); - try { +assert.throws(TypeError, function() { a.x = 1; - return false; - } catch (e) { - return e instanceof TypeError; - } -} -runTestCase(testcase); +}); diff --git a/test/language/expressions/delete/11.4.1-5-a-3-s.js b/test/language/expressions/delete/11.4.1-5-a-3-s.js index 7780f4ddc2dfeed8f7600d37bd821d6bcf7cf87a..224dd524e3a81aa744f2ba895dbca7dac4a1cdf2 100644 --- a/test/language/expressions/delete/11.4.1-5-a-3-s.js +++ b/test/language/expressions/delete/11.4.1-5-a-3-s.js @@ -5,17 +5,9 @@ es5id: 11.4.1-5-a-3-s description: Strict Mode - SyntaxError is thrown when deleting a function name flags: [onlyStrict] -includes: [runTestCase.js] ---*/ -function testcase() { function funObj () { } - - try { +assert.throws(SyntaxError, function() { eval("delete funObj"); - return false; - } catch (e) { - return e instanceof SyntaxError; - } - } -runTestCase(testcase); +}); diff --git a/test/language/expressions/delete/11.4.1-5-a-4-s.js b/test/language/expressions/delete/11.4.1-5-a-4-s.js index 51714eba872fed7ca0c3a74c14d3820e7bd0f153..93138ea90c730bc3261ad8f4784d27a53f0a8039 100644 --- a/test/language/expressions/delete/11.4.1-5-a-4-s.js +++ b/test/language/expressions/delete/11.4.1-5-a-4-s.js @@ -7,19 +7,11 @@ description: > Strict Mode - SyntaxError is thrown when deleting a function parameter flags: [onlyStrict] -includes: [runTestCase.js] ---*/ -function testcase() { function funObj(x, y, z) { eval("delete y;"); } - - try { +assert.throws(SyntaxError, function() { funObj(1); - return false; - } catch (e) { - return e instanceof SyntaxError; - } - } -runTestCase(testcase); +}); diff --git a/test/language/expressions/delete/11.4.1-5-a-5-s.js b/test/language/expressions/delete/11.4.1-5-a-5-s.js index 88020733c1b7ba26912215fd103d898674235088..b6b12cc04cb2210b4679ffe53df88e76ef1fd4eb 100644 --- a/test/language/expressions/delete/11.4.1-5-a-5-s.js +++ b/test/language/expressions/delete/11.4.1-5-a-5-s.js @@ -7,17 +7,9 @@ description: > Strict Mode - SyntaxError is thrown when deleting a variable which is a primitive type (boolean) flags: [onlyStrict] -includes: [runTestCase.js] ---*/ -function testcase() { var _11_4_1_5 = true; - - try { +assert.throws(SyntaxError, function() { eval("delete _11_4_1_5;"); - return false; - } catch (e) { - return e instanceof SyntaxError; - } - } -runTestCase(testcase); +}); diff --git a/test/language/expressions/delete/11.4.1-5-a-6-s.js b/test/language/expressions/delete/11.4.1-5-a-6-s.js index 4a4cd5ee0ba2b1e60dbce0e9bf5103ba72f51912..1d30df158bad2e4440e6a85c7adc887e88681efe 100644 --- a/test/language/expressions/delete/11.4.1-5-a-6-s.js +++ b/test/language/expressions/delete/11.4.1-5-a-6-s.js @@ -7,17 +7,9 @@ description: > Strict Mode - SyntaxError is thrown when deleting a variable which is a primitive type (string) flags: [onlyStrict] -includes: [runTestCase.js] ---*/ -function testcase() { var _11_4_1_5 = "abc"; - - try { +assert.throws(SyntaxError, function() { eval("delete _11_4_1_5;"); - return false; - } catch (e) { - return e instanceof SyntaxError; - } - } -runTestCase(testcase); +}); diff --git a/test/language/expressions/delete/11.4.1-5-a-7-s.js b/test/language/expressions/delete/11.4.1-5-a-7-s.js index a9dd1f76f9740b7ee6e1db51235f710f7abfc059..b29661e7ec8669435d584455b305bc8c8f01c5c2 100644 --- a/test/language/expressions/delete/11.4.1-5-a-7-s.js +++ b/test/language/expressions/delete/11.4.1-5-a-7-s.js @@ -7,17 +7,9 @@ description: > Strict Mode - SyntaxError is thrown when deleting a variable of type Object flags: [onlyStrict] -includes: [runTestCase.js] ---*/ -function testcase() { var obj = new Object(); - - try { +assert.throws(SyntaxError, function() { eval("delete obj;"); - return false; - } catch (e) { - return e instanceof SyntaxError; - } - } -runTestCase(testcase); +}); diff --git a/test/language/expressions/delete/11.4.1-5-a-8-s.js b/test/language/expressions/delete/11.4.1-5-a-8-s.js index ee7fabd4c26c626f87a362f66a433c0b83c8aa59..721bae15fd75f60e8631100320a07b207de479d3 100644 --- a/test/language/expressions/delete/11.4.1-5-a-8-s.js +++ b/test/language/expressions/delete/11.4.1-5-a-8-s.js @@ -5,17 +5,9 @@ es5id: 11.4.1-5-a-8-s description: Strict Mode - SyntaxError is thrown when deleting a function object flags: [onlyStrict] -includes: [runTestCase.js] ---*/ -function testcase() { var funObj = function () { }; - - try { +assert.throws(SyntaxError, function() { eval("delete funObj;"); - return false; - } catch (e) { - return e instanceof SyntaxError; - } - } -runTestCase(testcase); +}); diff --git a/test/language/expressions/delete/11.4.1-5-a-9-s.js b/test/language/expressions/delete/11.4.1-5-a-9-s.js index 4f511027121fd3faa9b4a697157da4e0f7273587..0a5cf3622aa271dbdb2286e1762481ddd43500c3 100644 --- a/test/language/expressions/delete/11.4.1-5-a-9-s.js +++ b/test/language/expressions/delete/11.4.1-5-a-9-s.js @@ -7,17 +7,9 @@ description: > Strict Mode - SyntaxError is thrown when deleting a variable of type function (declaration) flags: [onlyStrict] -includes: [runTestCase.js] ---*/ -function testcase() { function funObj () { }; - - try { +assert.throws(SyntaxError, function() { eval("delete funObj;"); - return false; - } catch (e) { - return e instanceof SyntaxError; - } - } -runTestCase(testcase); +}); diff --git a/test/language/expressions/delete/11.4.4-4.a-3-s.js b/test/language/expressions/delete/11.4.4-4.a-3-s.js index 8f9455fc5d8d22eb087f42390494135b7b4abb7f..72c7a0ad74087862a34500c9d3fa54b88201050d 100644 --- a/test/language/expressions/delete/11.4.4-4.a-3-s.js +++ b/test/language/expressions/delete/11.4.4-4.a-3-s.js @@ -10,21 +10,13 @@ description: > delete operator throws TypeError when deleting a non-configurable data property in strict mode flags: [onlyStrict] -includes: [runTestCase.js] ---*/ -function testcase() { var o = {}; var desc = { value : 1 }; // all other attributes default to false Object.defineProperty(o, "foo", desc); // Now, deleting o.foo should throw TypeError because [[Configurable]] on foo is false. - try { +assert.throws(TypeError, function() { delete o.foo; - return false; - } - catch (e) { - return (e instanceof TypeError); - } - } -runTestCase(testcase); +}); diff --git a/test/language/expressions/object/11.1.5-1-s.js b/test/language/expressions/object/11.1.5-1-s.js index 865f4d7dffce2993e7c858a116e3f2953c42e37e..abc491dcbe2fabd3da88ff90c9db63e085c0baa0 100644 --- a/test/language/expressions/object/11.1.5-1-s.js +++ b/test/language/expressions/object/11.1.5-1-s.js @@ -8,15 +8,9 @@ description: > Identifier in a PropertySetParameterList of a PropertyAssignment that is contained in strict code flags: [onlyStrict] -includes: [runTestCase.js] ---*/ -function testcase() { - try { + +assert.throws(SyntaxError, function() { eval("var obj = {set _11_1_5_1_fun(eval) {}};"); - return false; - } catch (e) { - return (e instanceof SyntaxError); - } - } -runTestCase(testcase); +}); diff --git a/test/language/expressions/object/11.1.5-2-s.js b/test/language/expressions/object/11.1.5-2-s.js index 604191572ecb44ceeab8974a14493c5e268c1094..7a4c054df9974164b024125027a952b50d1181cf 100644 --- a/test/language/expressions/object/11.1.5-2-s.js +++ b/test/language/expressions/object/11.1.5-2-s.js @@ -8,15 +8,9 @@ description: > Identifier in a PropertySetParameterList of a PropertyAssignment that is contained in strict code flags: [onlyStrict] -includes: [runTestCase.js] ---*/ -function testcase() { - try { + +assert.throws(SyntaxError, function() { eval("var obj = {set _11_1_5_2_fun(arguments) {} };"); - return false; - } catch (e) { - return (e instanceof SyntaxError); - } - } -runTestCase(testcase); +}); diff --git a/test/language/expressions/object/11.1.5-3-s.js b/test/language/expressions/object/11.1.5-3-s.js index 7817fcea21d184ed298266bda508f83d35cc110f..831a8019443e715a498b69c983928dcba0a0c32b 100644 --- a/test/language/expressions/object/11.1.5-3-s.js +++ b/test/language/expressions/object/11.1.5-3-s.js @@ -8,16 +8,9 @@ description: > Identifier in a PropertySetParameterList of a PropertyAssignment if its FunctionBody is strict code flags: [noStrict] -includes: [runTestCase.js] ---*/ -function testcase() { - try { +assert.throws(SyntaxError, function() { eval("var obj = {set _11_1_5_3_fun(eval) { \"use strict\"; }};"); - return false; - } catch (e) { - return (e instanceof SyntaxError); - } - } -runTestCase(testcase); +}); diff --git a/test/language/expressions/object/11.1.5-4-s.js b/test/language/expressions/object/11.1.5-4-s.js index 422416f0cdfa0797e3a1d16428e743f7c1b01f96..dc1613906276c1bf30dd5d465892301c45faff66 100644 --- a/test/language/expressions/object/11.1.5-4-s.js +++ b/test/language/expressions/object/11.1.5-4-s.js @@ -8,16 +8,9 @@ description: > the Identifier in a PropertySetParameterList of a PropertyAssignment if its FunctionBody is strict code flags: [noStrict] -includes: [runTestCase.js] ---*/ -function testcase() { - try { +assert.throws(SyntaxError, function() { eval("var obj = {set _11_1_5_4_fun(arguments) {\"use strict\";}};"); - return false; - } catch (e) { - return (e instanceof SyntaxError); - } - } -runTestCase(testcase); +}); diff --git a/test/language/expressions/object/11.1.5_6-2-1-s.js b/test/language/expressions/object/11.1.5_6-2-1-s.js index 589a2075e683ea7a5af546c4a30c0e3c3a85271c..65035c0eacf39887f9d900ba72c9b3100d13b609 100644 --- a/test/language/expressions/object/11.1.5_6-2-1-s.js +++ b/test/language/expressions/object/11.1.5_6-2-1-s.js @@ -7,11 +7,10 @@ description: > Strict Mode - SyntaxError is thrown when an assignment to a reserved word or a future reserved word is contained in strict code flags: [onlyStrict] -includes: [runTestCase.js] ---*/ -function testcase() { - try { + +assert.throws(SyntaxError, function() { eval("var obj = {\ get _11_1_5_6_2_1() {\ public = 42;\ @@ -20,9 +19,4 @@ function testcase() { };"); var _11_1_5_6_2_1 = obj._11_1_5_6_2_1; - return false; - } catch (e) { - return e instanceof SyntaxError; - } - } -runTestCase(testcase); +}); diff --git a/test/language/expressions/object/11.1.5_6-2-2-s.js b/test/language/expressions/object/11.1.5_6-2-2-s.js index d52470741da41ab3c6a2c2c41fa260c2a5bd9654..9ae348ff548de82caae8b53d1a76e40e82c5ba47 100644 --- a/test/language/expressions/object/11.1.5_6-2-2-s.js +++ b/test/language/expressions/object/11.1.5_6-2-2-s.js @@ -8,12 +8,10 @@ description: > reserved word or a future reserved word is made inside a strict mode FunctionBody of a PropertyAssignment flags: [noStrict] -includes: [runTestCase.js] ---*/ -function testcase() { - try { +assert.throws(SyntaxError, function() { eval("var obj = {\ get _11_1_5_6_2_2() {\ \"use strict\";\ @@ -22,9 +20,4 @@ function testcase() { }\ };\ var _11_1_5_6_2_2 = obj._11_1_5_6_2_2;"); - return false; - } catch (e) { - return e instanceof SyntaxError; - } - } -runTestCase(testcase); +}); diff --git a/test/language/expressions/object/11.1.5_7-2-1-s.js b/test/language/expressions/object/11.1.5_7-2-1-s.js index e0361fc5db5b6bdfa1759c66ab0f160c3b63cace..f71697741698b585650d63232a14f7a9428e0e45 100644 --- a/test/language/expressions/object/11.1.5_7-2-1-s.js +++ b/test/language/expressions/object/11.1.5_7-2-1-s.js @@ -7,11 +7,10 @@ description: > Strict Mode - SyntaxError is thrown when an assignment to a reserved word is contained in strict code flags: [onlyStrict] -includes: [runTestCase.js] ---*/ -function testcase() { - try { + +assert.throws(SyntaxError, function() { eval("var data = \"data\";\ var obj = {\ set _11_1_5_7_2_1(value) {\ @@ -20,9 +19,4 @@ function testcase() { }\ };\ obj._11_1_5_7_2_1 = 1;"); - return false; - } catch (e) { - return e instanceof SyntaxError; - } - } -runTestCase(testcase); +}); diff --git a/test/language/expressions/object/11.1.5_7-2-2-s.js b/test/language/expressions/object/11.1.5_7-2-2-s.js index 84b0ac3a136ed587986b02ae859f2b80d9890e2f..08cfe79dfc650ad3a04c99b6e8224a4d04d2a2a3 100644 --- a/test/language/expressions/object/11.1.5_7-2-2-s.js +++ b/test/language/expressions/object/11.1.5_7-2-2-s.js @@ -8,11 +8,10 @@ description: > reserved word is made in a strict FunctionBody of a PropertyAssignment flags: [onlyStrict] -includes: [runTestCase.js] ---*/ -function testcase() { - try { + +assert.throws(SyntaxError, function() { eval("var data = \"data\";\ var obj = {\ set _11_1_5_7_2_2(value) {\ @@ -21,9 +20,4 @@ function testcase() { }\ };\ obj._11_1_5_7_2_2 = 1;"); - return false; - } catch (e) { - return e instanceof SyntaxError; - } - } -runTestCase(testcase); +}); diff --git a/test/language/expressions/postfix-decrement/11.3.2-2-2-s.js b/test/language/expressions/postfix-decrement/11.3.2-2-2-s.js index 0fc15b17a1336eeae3943578b65f4b313f35d526..526318e0e7a1f61009b21f752da46d5f8c4d71d3 100644 --- a/test/language/expressions/postfix-decrement/11.3.2-2-2-s.js +++ b/test/language/expressions/postfix-decrement/11.3.2-2-2-s.js @@ -7,16 +7,10 @@ description: > Strict Mode - SyntaxError is thrown if the identifier 'eval' appear as a PostfixExpression(eval--) flags: [onlyStrict] -includes: [runTestCase.js] ---*/ -function testcase() { var blah = eval; - try { +assert.throws(SyntaxError, function() { eval("eval--;"); - return false; - } catch (e) { - return e instanceof SyntaxError && blah === eval; - } - } -runTestCase(testcase); +}); +assert.sameValue(blah, eval, 'blah'); diff --git a/test/language/expressions/postfix-increment/11.3.1-2-2-s.js b/test/language/expressions/postfix-increment/11.3.1-2-2-s.js index 56aaa3d1a805cdad029fbf8ae18e72d9d3acbd7a..54e117f989b098b508fab8cb1db4a2ea736db200 100644 --- a/test/language/expressions/postfix-increment/11.3.1-2-2-s.js +++ b/test/language/expressions/postfix-increment/11.3.1-2-2-s.js @@ -7,16 +7,10 @@ description: > Strict Mode - SyntaxError is thrown if the identifier 'eval' appear as a PostfixExpression(eval++) flags: [onlyStrict] -includes: [runTestCase.js] ---*/ -function testcase() { var blah = eval; - try { +assert.throws(SyntaxError, function() { eval("eval++;"); - return false; - } catch (e) { - return e instanceof SyntaxError && blah === eval; - } - } -runTestCase(testcase); +}); +assert.sameValue(blah, eval, 'blah'); diff --git a/test/language/expressions/prefix-decrement/11.4.5-2-1-s.js b/test/language/expressions/prefix-decrement/11.4.5-2-1-s.js index fbbf882999c8932bcff062ab9c383679a2971261..5c1058187d7f1d64a6ead26468f0edbc85cc6638 100644 --- a/test/language/expressions/prefix-decrement/11.4.5-2-1-s.js +++ b/test/language/expressions/prefix-decrement/11.4.5-2-1-s.js @@ -5,16 +5,10 @@ es5id: 11.4.5-2-1-s description: Strict Mode - SyntaxError is thrown for --eval flags: [onlyStrict] -includes: [runTestCase.js] ---*/ -function testcase() { var blah = eval; - try { +assert.throws(SyntaxError, function() { eval("--eval;"); - return false; - } catch (e) { - return e instanceof SyntaxError && blah === eval; - } - } -runTestCase(testcase); +}); +assert.sameValue(blah, eval, 'blah'); diff --git a/test/language/expressions/prefix-increment/11.4.4-2-1-s.js b/test/language/expressions/prefix-increment/11.4.4-2-1-s.js index 9ff404bdc955a0934e1888f8fa4b718e5e314b49..35f72e827d3e340b77a14498e059c73583e66f28 100644 --- a/test/language/expressions/prefix-increment/11.4.4-2-1-s.js +++ b/test/language/expressions/prefix-increment/11.4.4-2-1-s.js @@ -5,16 +5,10 @@ es5id: 11.4.4-2-1-s description: Strict Mode - SyntaxError is thrown for ++eval flags: [onlyStrict] -includes: [runTestCase.js] ---*/ -function testcase() { var blah = eval; - try { +assert.throws(SyntaxError, function() { eval("++eval;"); - return false; - } catch (e) { - return e instanceof SyntaxError && blah === eval; - } - } -runTestCase(testcase); +}); +assert.sameValue(blah, eval, 'blah'); diff --git a/test/language/future-reserved-words/7.6.1-17-s.js b/test/language/future-reserved-words/7.6.1-17-s.js index c4c6a0c5bb05035beb59e645ed6dccc4361e9430..114a6beca9321661596dd8360592ba3844c8c313 100644 --- a/test/language/future-reserved-words/7.6.1-17-s.js +++ b/test/language/future-reserved-words/7.6.1-17-s.js @@ -7,16 +7,9 @@ description: > 7.6 - SyntaxError expected: reserved words used as Identifier Names in UTF8: implements (implements) flags: [onlyStrict] -includes: [runTestCase.js] ---*/ -function testcase() { - try { - eval("var \u0069mplements = 123;"); - return false; - } catch (e) { - return e instanceof SyntaxError; - } - } -runTestCase(testcase); +assert.throws(SyntaxError, function() { + eval("var \u0069mplements = 123;"); +}); diff --git a/test/language/future-reserved-words/7.6.1-18-s.js b/test/language/future-reserved-words/7.6.1-18-s.js index 1b9d7b87471492edcc7009a8e3ff04de6891b0b6..0512a03ad9e65d03f4b9634ddd78c78d182b4c91 100644 --- a/test/language/future-reserved-words/7.6.1-18-s.js +++ b/test/language/future-reserved-words/7.6.1-18-s.js @@ -7,15 +7,9 @@ description: > 7.6 - SyntaxError expected: reserved words used as Identifier Names in UTF8: l\u0065t (let) flags: [onlyStrict] -includes: [runTestCase.js] ---*/ -function testcase() { - try { - eval("var l\u0065t = 123;"); - return false; - } catch (e) { - return e instanceof SyntaxError; - } -} -runTestCase(testcase); + +assert.throws(SyntaxError, function() { + eval("var l\u0065t = 123;"); +}); diff --git a/test/language/future-reserved-words/7.6.1-19-s.js b/test/language/future-reserved-words/7.6.1-19-s.js index 7a9386884272a17b315ebc1faf964813856f7583..c3c33f5503a6a2c2822a81f91012af1e7c55dfb3 100644 --- a/test/language/future-reserved-words/7.6.1-19-s.js +++ b/test/language/future-reserved-words/7.6.1-19-s.js @@ -7,15 +7,9 @@ description: > 7.6 - SyntaxError expected: reserved words used as Identifier Names in UTF8: privat\u0065 (private) flags: [onlyStrict] -includes: [runTestCase.js] ---*/ -function testcase() { - try { - eval("var privat\u0065 = 123;"); - return false; - } catch (e) { - return e instanceof SyntaxError; - } -} -runTestCase(testcase); + +assert.throws(SyntaxError, function() { + eval("var privat\u0065 = 123;"); +}); diff --git a/test/language/future-reserved-words/7.6.1-20-s.js b/test/language/future-reserved-words/7.6.1-20-s.js index 355293f23c45c4625b13ca25b93534469e9fe968..e0b1db3653465f5ab76f1b3e18af3fc0caf1e3c3 100644 --- a/test/language/future-reserved-words/7.6.1-20-s.js +++ b/test/language/future-reserved-words/7.6.1-20-s.js @@ -7,15 +7,9 @@ description: > 7.6 - SyntaxError expected: reserved words used as Identifier Names in UTF8: \u0070\u0075\u0062\u006c\u0069\u0063 (public) flags: [onlyStrict] -includes: [runTestCase.js] ---*/ -function testcase() { - try { - eval("var \u0070\u0075\u0062\u006c\u0069\u0063 = 123;"); - return false; - } catch (e) { - return e instanceof SyntaxError; - } -} -runTestCase(testcase); + +assert.throws(SyntaxError, function() { + eval("var \u0070\u0075\u0062\u006c\u0069\u0063 = 123;"); +}); diff --git a/test/language/future-reserved-words/7.6.1-21-s.js b/test/language/future-reserved-words/7.6.1-21-s.js index 3052cda095898407a6258d804a6410d9ee7e2a20..c37c35c1a04526dc41f15e600cc9a25ce48f3ef5 100644 --- a/test/language/future-reserved-words/7.6.1-21-s.js +++ b/test/language/future-reserved-words/7.6.1-21-s.js @@ -7,15 +7,9 @@ description: > 7.6 - SyntaxError expected: reserved words used as Identifier Names in UTF8: \u0079ield (yield) flags: [onlyStrict] -includes: [runTestCase.js] ---*/ -function testcase() { - try { - eval("var \u0079ield = 123;"); - return false; - } catch (e) { - return e instanceof SyntaxError; - } -} -runTestCase(testcase); + +assert.throws(SyntaxError, function() { + eval("var \u0079ield = 123;"); +}); diff --git a/test/language/future-reserved-words/7.6.1-22-s.js b/test/language/future-reserved-words/7.6.1-22-s.js index 290f8677897e270144184dd20c078459b88a80f9..0bca6b3f5d14fc65a65edde05449a5bdd3dbe07f 100644 --- a/test/language/future-reserved-words/7.6.1-22-s.js +++ b/test/language/future-reserved-words/7.6.1-22-s.js @@ -7,15 +7,9 @@ description: > 7.6 - SyntaxError expected: reserved words used as Identifier Names in UTF8: inte\u0072face (interface) flags: [onlyStrict] -includes: [runTestCase.js] ---*/ -function testcase() { - try { - eval("var inte\u0072face = 123;"); - return false; - } catch (e) { - return e instanceof SyntaxError; - } -} -runTestCase(testcase); + +assert.throws(SyntaxError, function() { + eval("var inte\u0072face = 123;"); +}); diff --git a/test/language/future-reserved-words/7.6.1-23-s.js b/test/language/future-reserved-words/7.6.1-23-s.js index 7514efbf5bb1457d6e7b43b564a360bf0ed9e43b..72ecb0c4817441417e7d79af64903126dde605b6 100644 --- a/test/language/future-reserved-words/7.6.1-23-s.js +++ b/test/language/future-reserved-words/7.6.1-23-s.js @@ -7,15 +7,9 @@ description: > 7.6 - SyntaxError expected: reserved words used as Identifier Names in UTF8: packag\u0065 (package) flags: [onlyStrict] -includes: [runTestCase.js] ---*/ -function testcase() { - try { - eval("var packag\u0065 = 123;"); - return false; - } catch (e) { - return e instanceof SyntaxError; - } -} -runTestCase(testcase); + +assert.throws(SyntaxError, function() { + eval("var packag\u0065 = 123;"); +}); diff --git a/test/language/future-reserved-words/7.6.1-24-s.js b/test/language/future-reserved-words/7.6.1-24-s.js index df90c3f272762e3d0d96c7b582b1bf4a225be4c5..d422e14b7baf8f01797eab0cdf630ed7bc3e7647 100644 --- a/test/language/future-reserved-words/7.6.1-24-s.js +++ b/test/language/future-reserved-words/7.6.1-24-s.js @@ -8,15 +8,9 @@ description: > Names in UTF8: \u0070\u0072\u006f\u0074\u0065\u0063\u0074\u0065\u0064 (protected) flags: [onlyStrict] -includes: [runTestCase.js] ---*/ -function testcase() { - try { - eval("var \u0070\u0072\u006f\u0074\u0065\u0063\u0074\u0065\u0064 = 123;"); - return false; - } catch (e) { - return e instanceof SyntaxError; - } -} -runTestCase(testcase); + +assert.throws(SyntaxError, function() { + eval("var \u0070\u0072\u006f\u0074\u0065\u0063\u0074\u0065\u0064 = 123;"); +}); diff --git a/test/language/future-reserved-words/7.6.1-25-s.js b/test/language/future-reserved-words/7.6.1-25-s.js index 9003e3aec8eb8cb67eb2cf356ff28cb6f8047486..47efc0d07c811a3117433f1917df3309cb07eaad 100644 --- a/test/language/future-reserved-words/7.6.1-25-s.js +++ b/test/language/future-reserved-words/7.6.1-25-s.js @@ -7,15 +7,9 @@ description: > 7.6 - SyntaxError expected: reserved words used as Identifier Names in UTF8: \u0073\u0074\u0061\u0074\u0069\u0063 (static) flags: [onlyStrict] -includes: [runTestCase.js] ---*/ -function testcase() { - try { - eval("var \u0073\u0074\u0061\u0074\u0069\u0063 = 123;"); - return false; - } catch (e) { - return e instanceof SyntaxError; - } -} -runTestCase(testcase); + +assert.throws(SyntaxError, function() { + eval("var \u0073\u0074\u0061\u0074\u0069\u0063 = 123;"); +}); diff --git a/test/language/future-reserved-words/7.6.1.2-1-s.js b/test/language/future-reserved-words/7.6.1.2-1-s.js index d5018237d34049c58dc39d701adb4404f0e945e0..85f9b58b5d5d5478836ad3d3db5943ac0e4ee792 100644 --- a/test/language/future-reserved-words/7.6.1.2-1-s.js +++ b/test/language/future-reserved-words/7.6.1.2-1-s.js @@ -7,15 +7,9 @@ description: > Strict Mode - SyntaxError is thrown when FutureReservedWord 'implements' occurs in strict mode code flags: [onlyStrict] -includes: [runTestCase.js] ---*/ -function testcase() { - try { - eval("var implements = 1;"); - return false; - } catch (e) { - return e instanceof SyntaxError; - } - } -runTestCase(testcase); + +assert.throws(SyntaxError, function() { + eval("var implements = 1;"); +}); diff --git a/test/language/future-reserved-words/7.6.1.2-2-s.js b/test/language/future-reserved-words/7.6.1.2-2-s.js index eacb04891c92fbf5c0f51c1488c789ab06f717fd..0c2ac187ac33b34b52fc0967ed61d84a65ce5127 100644 --- a/test/language/future-reserved-words/7.6.1.2-2-s.js +++ b/test/language/future-reserved-words/7.6.1.2-2-s.js @@ -7,15 +7,9 @@ description: > Strict Mode - SyntaxError is thrown when FutureReservedWord 'let' occurs in strict mode code flags: [onlyStrict] -includes: [runTestCase.js] ---*/ -function testcase() { - try { - eval("var let = 1;"); - return false; - } catch (e) { - return e instanceof SyntaxError; - } -} -runTestCase(testcase); + +assert.throws(SyntaxError, function() { + eval("var let = 1;"); +}); diff --git a/test/language/future-reserved-words/7.6.1.2-3-s.js b/test/language/future-reserved-words/7.6.1.2-3-s.js index eccde4173525f679bcd327adfc8da62f64b13e65..27c338641a1a37bd7a6391ef95cd30386546c018 100644 --- a/test/language/future-reserved-words/7.6.1.2-3-s.js +++ b/test/language/future-reserved-words/7.6.1.2-3-s.js @@ -7,15 +7,9 @@ description: > Strict Mode - SyntaxError is thrown when FutureReservedWord 'private' occurs in strict mode code flags: [onlyStrict] -includes: [runTestCase.js] ---*/ -function testcase() { - try { - eval("var private = 1;"); - return false; - } catch (e) { - return e instanceof SyntaxError; - } -} -runTestCase(testcase); + +assert.throws(SyntaxError, function() { + eval("var private = 1;"); +}); diff --git a/test/language/future-reserved-words/7.6.1.2-4-s.js b/test/language/future-reserved-words/7.6.1.2-4-s.js index 4cd3556e8042753c112fa0aca46c44ffb6157d8a..b215af858ca40ce18f94fcea1719991b93e3f0e0 100644 --- a/test/language/future-reserved-words/7.6.1.2-4-s.js +++ b/test/language/future-reserved-words/7.6.1.2-4-s.js @@ -7,15 +7,9 @@ description: > Strict Mode - SyntaxError is thrown when FutureReservedWord 'public' occurs in strict mode code flags: [onlyStrict] -includes: [runTestCase.js] ---*/ -function testcase() { - try { - eval("var public = 1;"); - return false; - } catch (e) { - return e instanceof SyntaxError; - } -} -runTestCase(testcase); + +assert.throws(SyntaxError, function() { + eval("var public = 1;"); +}); diff --git a/test/language/future-reserved-words/7.6.1.2-5-s.js b/test/language/future-reserved-words/7.6.1.2-5-s.js index 5e7b0eea946adb2e2506f4b464c4bc31343da6d8..aa2d106b465a73d955df992b30923c82eb08c6ce 100644 --- a/test/language/future-reserved-words/7.6.1.2-5-s.js +++ b/test/language/future-reserved-words/7.6.1.2-5-s.js @@ -7,15 +7,9 @@ description: > Strict Mode - SyntaxError is thrown when FutureReservedWord 'yield' occurs in strict mode code flags: [onlyStrict] -includes: [runTestCase.js] ---*/ -function testcase() { - try { - eval("var yield = 1;") - return false; - } catch (e) { - return e instanceof SyntaxError; - } -} -runTestCase(testcase); + +assert.throws(SyntaxError, function() { + eval("var yield = 1;") +}); diff --git a/test/language/future-reserved-words/7.6.1.2-6-s.js b/test/language/future-reserved-words/7.6.1.2-6-s.js index ed8a7affa4a4e22a3a86a49ee60e0f52de7a5144..01c84246e010943679c76d75d66a40f69f2bae22 100644 --- a/test/language/future-reserved-words/7.6.1.2-6-s.js +++ b/test/language/future-reserved-words/7.6.1.2-6-s.js @@ -7,15 +7,9 @@ description: > Strict Mode - SyntaxError is thrown when FutureReservedWord 'interface' occurs in strict mode code flags: [onlyStrict] -includes: [runTestCase.js] ---*/ -function testcase() { - try { - eval("var interface = 1;") - return false; - } catch (e) { - return e instanceof SyntaxError; - } -} -runTestCase(testcase); + +assert.throws(SyntaxError, function() { + eval("var interface = 1;") +}); diff --git a/test/language/future-reserved-words/7.6.1.2-7-s.js b/test/language/future-reserved-words/7.6.1.2-7-s.js index 6b3c4b98174f7414d12c5b86bf512287c98ac3e5..f074d354207985cd958cf37ff38888a191fadffd 100644 --- a/test/language/future-reserved-words/7.6.1.2-7-s.js +++ b/test/language/future-reserved-words/7.6.1.2-7-s.js @@ -7,15 +7,9 @@ description: > Strict Mode - SyntaxError is thrown when FutureReservedWord 'package' occurs in strict mode code flags: [onlyStrict] -includes: [runTestCase.js] ---*/ -function testcase() { - try { - eval("var package = 1;"); - return false; - } catch (e) { - return e instanceof SyntaxError; - } -} -runTestCase(testcase); + +assert.throws(SyntaxError, function() { + eval("var package = 1;"); +}); diff --git a/test/language/future-reserved-words/7.6.1.2-8-s.js b/test/language/future-reserved-words/7.6.1.2-8-s.js index fdc92ecb683e6b1b67f23fee0fdb3b1d883a0b8f..6e08bd214ad4564e7393c3aa30e9b68d1d10ba7f 100644 --- a/test/language/future-reserved-words/7.6.1.2-8-s.js +++ b/test/language/future-reserved-words/7.6.1.2-8-s.js @@ -7,15 +7,9 @@ description: > Strict Mode - SyntaxError is thrown when FutureReservedWord 'protected' occurs in strict mode code flags: [onlyStrict] -includes: [runTestCase.js] ---*/ -function testcase() { - try { - eval("var protected = 1;"); - return false; - } catch (e) { - return e instanceof SyntaxError; - } -} -runTestCase(testcase); + +assert.throws(SyntaxError, function() { + eval("var protected = 1;"); +}); diff --git a/test/language/future-reserved-words/7.6.1.2-9-s.js b/test/language/future-reserved-words/7.6.1.2-9-s.js index 4fe80505bb20cdf91bd8ec909fe3a9dd40c4b1a1..0354bd57d82f1a093cff2af4ef8059067374945f 100644 --- a/test/language/future-reserved-words/7.6.1.2-9-s.js +++ b/test/language/future-reserved-words/7.6.1.2-9-s.js @@ -7,15 +7,9 @@ description: > Strict Mode - SyntaxError is thrown when FutureReservedWord 'static' occurs in strict mode code flags: [onlyStrict] -includes: [runTestCase.js] ---*/ -function testcase() { - try { - eval("var static = 1;"); - return false; - } catch (e) { - return e instanceof SyntaxError; - } -} -runTestCase(testcase); + +assert.throws(SyntaxError, function() { + eval("var static = 1;"); +}); diff --git a/test/language/line-terminators/7.3-10.js b/test/language/line-terminators/7.3-10.js index d70a321947bd5fa52588c91546f3fa6b6b8f6875..91ed519db9640d71f8928e9a8db361be7fff8aec 100644 --- a/test/language/line-terminators/7.3-10.js +++ b/test/language/line-terminators/7.3-10.js @@ -6,15 +6,9 @@ es5id: 7.3-10 description: > 7.3 - ES5 recognizes the character <PS> (\u2029) as a NonEscapeCharacter -includes: [runTestCase.js] ---*/ -function testcase() { - try { - eval("var prop = \\u2029;"); - return false; - } catch (e) { - return e instanceof SyntaxError; - } - } -runTestCase(testcase); + +assert.throws(SyntaxError, function() { + eval("var prop = \\u2029;"); +}); diff --git a/test/language/line-terminators/7.3-3.js b/test/language/line-terminators/7.3-3.js index ff7bd8cb6a7262456b5207fa18100eb85268327f..1e176b858053cb2f9869e22bfe9e8bfc6bb69aa5 100644 --- a/test/language/line-terminators/7.3-3.js +++ b/test/language/line-terminators/7.3-3.js @@ -6,15 +6,9 @@ es5id: 7.3-3 description: > 7.3 - ES5 recognizes the character <LS> (\u2028) as terminating SingleLineComments -includes: [runTestCase.js] ---*/ -function testcase() { - try { - eval("//Single Line Comments\u2028 var =;"); - return false; - } catch (e) { - return e instanceof SyntaxError; - } - } -runTestCase(testcase); + +assert.throws(SyntaxError, function() { + eval("//Single Line Comments\u2028 var =;"); +}); diff --git a/test/language/line-terminators/7.3-4.js b/test/language/line-terminators/7.3-4.js index 6450c77ad5786a57c8b45599cb6fd316b49edcbf..b882828e563b1b9ebaea0d90c9189bde4fa576f1 100644 --- a/test/language/line-terminators/7.3-4.js +++ b/test/language/line-terminators/7.3-4.js @@ -6,15 +6,9 @@ es5id: 7.3-4 description: > 7.3 - ES5 recognizes the character <PS> (\u2029) as terminating SingleLineComments -includes: [runTestCase.js] ---*/ -function testcase() { - try { - eval("//Single Line Comments\u2029 var =;"); - return false; - } catch (e) { - return e instanceof SyntaxError; - } - } -runTestCase(testcase); + +assert.throws(SyntaxError, function() { + eval("//Single Line Comments\u2029 var =;"); +}); diff --git a/test/language/line-terminators/7.3-7.js b/test/language/line-terminators/7.3-7.js index 3a1a65a5900ec201a475c0fe8e27319598d53c6e..ceff108155299d2d033ed29c6b53f9bea12e6459 100644 --- a/test/language/line-terminators/7.3-7.js +++ b/test/language/line-terminators/7.3-7.js @@ -6,15 +6,9 @@ es5id: 7.3-7 description: > 7.3 - ES5 recognizes the character <LS> (\u2028) as terminating regular expression literals -includes: [runTestCase.js] ---*/ -function testcase() { - try { - eval("var regExp = /[\u2028]/"); - return false; - } catch (e) { - return e instanceof SyntaxError; - } - } -runTestCase(testcase); + +assert.throws(SyntaxError, function() { + eval("var regExp = /[\u2028]/"); +}); diff --git a/test/language/line-terminators/7.3-8.js b/test/language/line-terminators/7.3-8.js index 28ae25916be7c78da7a74e1c176fd6cb43041f13..2d1160e70fa19e799ad915fd50b1690a68fec346 100644 --- a/test/language/line-terminators/7.3-8.js +++ b/test/language/line-terminators/7.3-8.js @@ -6,15 +6,9 @@ es5id: 7.3-8 description: > 7.3 - ES5 recognizes the character <PS> (\u2029) as terminating regular expression literals -includes: [runTestCase.js] ---*/ -function testcase() { - try { - eval("var regExp = /[\u2029]/"); - return false; - } catch (e) { - return e instanceof SyntaxError; - } - } -runTestCase(testcase); + +assert.throws(SyntaxError, function() { + eval("var regExp = /[\u2029]/"); +}); diff --git a/test/language/line-terminators/7.3-9.js b/test/language/line-terminators/7.3-9.js index 49a55382c86271a0fefa17134aa7af8f300cb7b6..55645b1fe2bd98366a507476009756540a4898fc 100644 --- a/test/language/line-terminators/7.3-9.js +++ b/test/language/line-terminators/7.3-9.js @@ -6,15 +6,9 @@ es5id: 7.3-9 description: > 7.3 - ES5 recognizes the character <LS> (\u2028) as a NonEscapeCharacter -includes: [runTestCase.js] ---*/ -function testcase() { - try { - eval("var prop = \\u2028;"); - return false; - } catch (e) { - return e instanceof SyntaxError; - } - } -runTestCase(testcase); + +assert.throws(SyntaxError, function() { + eval("var prop = \\u2028;"); +}); diff --git a/test/language/literals/regexp/7.8.5-1.js b/test/language/literals/regexp/7.8.5-1.js index 78ed6df6848b2c1ce292de5c62559df42e335b3c..5e37755d8220adda91d65ebb250e5b5d3fb8137c 100644 --- a/test/language/literals/regexp/7.8.5-1.js +++ b/test/language/literals/regexp/7.8.5-1.js @@ -7,15 +7,9 @@ description: > Literal RegExp Objects - SyntaxError exception is thrown if the RegularExpressionNonTerminator position of a RegularExpressionBackslashSequence is a LineTerminator. -includes: [runTestCase.js] ---*/ -function testcase() { - try { - eval("var regExp = /\\\rn/;"); - return false; - } catch (e) { - return e instanceof SyntaxError; - } - } -runTestCase(testcase); + +assert.throws(SyntaxError, function() { + eval("var regExp = /\\\rn/;"); +}); diff --git a/test/language/literals/string/7.8.4-1-s.js b/test/language/literals/string/7.8.4-1-s.js index 27ce14ca70e601888dd1d621443d30f03e916721..b28c833069dbbd0b28ff37c4a290133a883261fa 100644 --- a/test/language/literals/string/7.8.4-1-s.js +++ b/test/language/literals/string/7.8.4-1-s.js @@ -6,18 +6,9 @@ es5id: 7.8.4-1-s description: > A directive preceeding an 'use strict' directive may not contain an OctalEscapeSequence -includes: [runTestCase.js] ---*/ -function testcase() -{ - try - { - eval(' "asterisk: \\052" /* octal escape sequences forbidden in strict mode*/ ; "use strict";'); - return false; - } - catch (e) { - return (e instanceof SyntaxError); - } - } -runTestCase(testcase); + +assert.throws(SyntaxError, function() { + eval(' "asterisk: \\052" /* octal escape sequences forbidden in strict mode*/ ; "use strict";'); +}); diff --git a/test/language/literals/string/7.8.4-10-s.js b/test/language/literals/string/7.8.4-10-s.js index b794457f2af3a0339d172ab4a0d4e2781853c5f5..3017105e1f51a8ac8b2e21dbf7c0c4ea5fea984e 100644 --- a/test/language/literals/string/7.8.4-10-s.js +++ b/test/language/literals/string/7.8.4-10-s.js @@ -5,18 +5,9 @@ es5id: 7.8.4-10-s description: An OctalEscapeSequence is not allowed in a String under Strict Mode flags: [onlyStrict] -includes: [runTestCase.js] ---*/ -function testcase() -{ - try - { - eval('var x = " \\10 ";'); - return false; - } - catch (e) { - return (e instanceof SyntaxError); - } - } -runTestCase(testcase); + +assert.throws(SyntaxError, function() { + eval('var x = " \\10 ";'); +}); diff --git a/test/language/literals/string/7.8.4-11-s.js b/test/language/literals/string/7.8.4-11-s.js index 2d9b2762d40276fff67b1e919292e2c6529553c3..5951af19ae993076608e9e3ee3a429e645ab87a3 100644 --- a/test/language/literals/string/7.8.4-11-s.js +++ b/test/language/literals/string/7.8.4-11-s.js @@ -5,18 +5,9 @@ es5id: 7.8.4-11-s description: An OctalEscapeSequence is not allowed in a String under Strict Mode flags: [onlyStrict] -includes: [runTestCase.js] ---*/ -function testcase() -{ - try - { - eval('var x = "\\16";'); - return false; - } - catch (e) { - return (e instanceof SyntaxError); - } -} -runTestCase(testcase); + +assert.throws(SyntaxError, function() { + eval('var x = "\\16";'); +}); diff --git a/test/language/literals/string/7.8.4-12-s.js b/test/language/literals/string/7.8.4-12-s.js index 39bb3ad9e4ccc090c827c1cc8df03c16c64bad2e..f61136a835a3158ffa838313bb0ff14ac0bc2291 100644 --- a/test/language/literals/string/7.8.4-12-s.js +++ b/test/language/literals/string/7.8.4-12-s.js @@ -5,18 +5,9 @@ es5id: 7.8.4-12-s description: An OctalEscapeSequence is not allowed in a String under Strict Mode flags: [onlyStrict] -includes: [runTestCase.js] ---*/ -function testcase() -{ - try - { - eval('var x = "\\17";'); - return false; - } - catch (e) { - return (e instanceof SyntaxError); - } -} -runTestCase(testcase); + +assert.throws(SyntaxError, function() { + eval('var x = "\\17";'); +}); diff --git a/test/language/literals/string/7.8.4-13-s.js b/test/language/literals/string/7.8.4-13-s.js index 828c061ab47362ee95bd44ac383d33175d0bad4e..8b564b1bfaa9b0d4169782e8ef961550e7db057e 100644 --- a/test/language/literals/string/7.8.4-13-s.js +++ b/test/language/literals/string/7.8.4-13-s.js @@ -5,18 +5,9 @@ es5id: 7.8.4-13-s description: An OctalEscapeSequence is not allowed in a String under Strict Mode flags: [onlyStrict] -includes: [runTestCase.js] ---*/ -function testcase() -{ - try - { - eval('var x = "\\30";'); - return false; - } - catch (e) { - return (e instanceof SyntaxError); - } -} -runTestCase(testcase); + +assert.throws(SyntaxError, function() { + eval('var x = "\\30";'); +}); diff --git a/test/language/literals/string/7.8.4-14-s.js b/test/language/literals/string/7.8.4-14-s.js index 575d1f12d5b1bb48b92e960d5b63a2770013f579..5cc403611b2356f91bffc633d60d85f5ce9c0f43 100644 --- a/test/language/literals/string/7.8.4-14-s.js +++ b/test/language/literals/string/7.8.4-14-s.js @@ -5,18 +5,9 @@ es5id: 7.8.4-14-s description: An OctalEscapeSequence is not allowed in a String under Strict Mode flags: [onlyStrict] -includes: [runTestCase.js] ---*/ -function testcase() -{ - try - { - eval('var x = "\\31";'); - return false; - } - catch (e) { - return (e instanceof SyntaxError); - } -} -runTestCase(testcase); + +assert.throws(SyntaxError, function() { + eval('var x = "\\31";'); +}); diff --git a/test/language/literals/string/7.8.4-15-s.js b/test/language/literals/string/7.8.4-15-s.js index 129fb9d1b96d97289351541d29ae740747bb8b29..ed0bd5971bd101c62de14e8522e21d41318add3b 100644 --- a/test/language/literals/string/7.8.4-15-s.js +++ b/test/language/literals/string/7.8.4-15-s.js @@ -5,18 +5,9 @@ es5id: 7.8.4-15-s description: An OctalEscapeSequence is not allowed in a String under Strict Mode flags: [onlyStrict] -includes: [runTestCase.js] ---*/ -function testcase() -{ - try - { - eval('var x = "\\37";'); - return false; - } - catch (e) { - return (e instanceof SyntaxError); - } -} -runTestCase(testcase); + +assert.throws(SyntaxError, function() { + eval('var x = "\\37";'); +}); diff --git a/test/language/literals/string/7.8.4-16-s.js b/test/language/literals/string/7.8.4-16-s.js index e83d7a05d087e49c15b121cbc4ea908b19c277f4..8f12c523353e620a1f5c565a08d773c929f10a19 100644 --- a/test/language/literals/string/7.8.4-16-s.js +++ b/test/language/literals/string/7.8.4-16-s.js @@ -5,18 +5,9 @@ es5id: 7.8.4-16-s description: An OctalEscapeSequence is not allowed in a String under Strict Mode flags: [onlyStrict] -includes: [runTestCase.js] ---*/ -function testcase() -{ - try - { - eval('var x = "\\400";'); - return false; - } - catch (e) { - return (e instanceof SyntaxError); - } -} -runTestCase(testcase); + +assert.throws(SyntaxError, function() { + eval('var x = "\\400";'); +}); diff --git a/test/language/literals/string/7.8.4-17-s.js b/test/language/literals/string/7.8.4-17-s.js index 9876a5d1ce93cdcdcf52e4374085e4cdb90cf2bd..6941de1e85562729d6b9b211ed40f68898a070b0 100644 --- a/test/language/literals/string/7.8.4-17-s.js +++ b/test/language/literals/string/7.8.4-17-s.js @@ -5,18 +5,9 @@ es5id: 7.8.4-17-s description: An OctalEscapeSequence is not allowed in a String under Strict Mode flags: [onlyStrict] -includes: [runTestCase.js] ---*/ -function testcase() -{ - try - { - eval('var x = "\\411";'); - return false; - } - catch (e) { - return (e instanceof SyntaxError); - } -} -runTestCase(testcase); + +assert.throws(SyntaxError, function() { + eval('var x = "\\411";'); +}); diff --git a/test/language/literals/string/7.8.4-18-s.js b/test/language/literals/string/7.8.4-18-s.js index ebd8582cda3dde884de43f84bae366283ba4b639..274ab6874bfac3d5f35a0e2cf6bf2d3006ca28ee 100644 --- a/test/language/literals/string/7.8.4-18-s.js +++ b/test/language/literals/string/7.8.4-18-s.js @@ -5,18 +5,9 @@ es5id: 7.8.4-18-s description: An OctalEscapeSequence is not allowed in a String under Strict Mode flags: [onlyStrict] -includes: [runTestCase.js] ---*/ -function testcase() -{ - try - { - eval('var x = "\\43a";'); - return false; - } - catch (e) { - return (e instanceof SyntaxError); - } -} -runTestCase(testcase); + +assert.throws(SyntaxError, function() { + eval('var x = "\\43a";'); +}); diff --git a/test/language/literals/string/7.8.4-19-s.js b/test/language/literals/string/7.8.4-19-s.js index afc2316c270723a3927271b3a62dbf1971d2a63b..d2ccf583603f742e6b0e7f7a8dc1dc1b24109d83 100644 --- a/test/language/literals/string/7.8.4-19-s.js +++ b/test/language/literals/string/7.8.4-19-s.js @@ -5,18 +5,9 @@ es5id: 7.8.4-19-s description: An OctalEscapeSequence is not allowed in a String under Strict Mode flags: [onlyStrict] -includes: [runTestCase.js] ---*/ -function testcase() -{ - try - { - eval('var x = "\\463";'); - return false; - } - catch (e) { - return (e instanceof SyntaxError); - } -} -runTestCase(testcase); + +assert.throws(SyntaxError, function() { + eval('var x = "\\463";'); +}); diff --git a/test/language/literals/string/7.8.4-2-s.js b/test/language/literals/string/7.8.4-2-s.js index 835ca46bd2a7f19c989316e4a742d73ee4326c54..6c20f946410f993713e6239b9598f3c51cd644ae 100644 --- a/test/language/literals/string/7.8.4-2-s.js +++ b/test/language/literals/string/7.8.4-2-s.js @@ -5,18 +5,9 @@ es5id: 7.8.4-2-s description: An OctalEscapeSequence is not allowed in a String under Strict Mode flags: [onlyStrict] -includes: [runTestCase.js] ---*/ -function testcase() -{ - try - { - eval('var x = "\\1";'); - return false; - } - catch (e) { - return (e instanceof SyntaxError); - } - } -runTestCase(testcase); + +assert.throws(SyntaxError, function() { + eval('var x = "\\1";'); +}); diff --git a/test/language/literals/string/7.8.4-20-s.js b/test/language/literals/string/7.8.4-20-s.js index ad5ac5fe5602166375b891a2be901e2258f9868d..1294acb063dd07280af2e6b5bc63c1fc45127c23 100644 --- a/test/language/literals/string/7.8.4-20-s.js +++ b/test/language/literals/string/7.8.4-20-s.js @@ -5,18 +5,9 @@ es5id: 7.8.4-20-s description: An OctalEscapeSequence is not allowed in a String under Strict Mode flags: [onlyStrict] -includes: [runTestCase.js] ---*/ -function testcase() -{ - try - { - eval('var x = "\\474";'); - return false; - } - catch (e) { - return (e instanceof SyntaxError); - } -} -runTestCase(testcase); + +assert.throws(SyntaxError, function() { + eval('var x = "\\474";'); +}); diff --git a/test/language/literals/string/7.8.4-21-s.js b/test/language/literals/string/7.8.4-21-s.js index 8a69f30c5327570ecb1330ad5429a7cf7ff5a271..49ba276d90e1f4e99c2de82c7f7787dc3e353b46 100644 --- a/test/language/literals/string/7.8.4-21-s.js +++ b/test/language/literals/string/7.8.4-21-s.js @@ -5,18 +5,9 @@ es5id: 7.8.4-21-s description: An OctalEscapeSequence is not allowed in a String under Strict Mode flags: [onlyStrict] -includes: [runTestCase.js] ---*/ -function testcase() -{ - try - { - eval('var x = "\\77";'); - return false; - } - catch (e) { - return (e instanceof SyntaxError); - } -} -runTestCase(testcase); + +assert.throws(SyntaxError, function() { + eval('var x = "\\77";'); +}); diff --git a/test/language/literals/string/7.8.4-22-s.js b/test/language/literals/string/7.8.4-22-s.js index de4bff9c53d1acf305cb5a42a434c740923f9eb6..4bba3fa449f237e3565ce40870249d5b457b63cb 100644 --- a/test/language/literals/string/7.8.4-22-s.js +++ b/test/language/literals/string/7.8.4-22-s.js @@ -5,18 +5,9 @@ es5id: 7.8.4-22-s description: An OctalEscapeSequence is not allowed in a String under Strict Mode flags: [onlyStrict] -includes: [runTestCase.js] ---*/ -function testcase() -{ - try - { - eval('var x = "\\777";'); - return false; - } - catch (e) { - return (e instanceof SyntaxError); - } -} -runTestCase(testcase); + +assert.throws(SyntaxError, function() { + eval('var x = "\\777";'); +}); diff --git a/test/language/literals/string/7.8.4-23-s.js b/test/language/literals/string/7.8.4-23-s.js index c0833852034f3fdc074e1ce332b15df79e679bfa..56ede23c3ae77f3d2058194d286a0df1bdfc414d 100644 --- a/test/language/literals/string/7.8.4-23-s.js +++ b/test/language/literals/string/7.8.4-23-s.js @@ -5,18 +5,9 @@ es5id: 7.8.4-23-s description: An OctalEscapeSequence is not allowed in a String under Strict Mode flags: [onlyStrict] -includes: [runTestCase.js] ---*/ -function testcase() -{ - try - { - eval('var x = "\\000";'); - return false; - } - catch (e) { - return (e instanceof SyntaxError); - } -} -runTestCase(testcase); + +assert.throws(SyntaxError, function() { + eval('var x = "\\000";'); +}); diff --git a/test/language/literals/string/7.8.4-24-s.js b/test/language/literals/string/7.8.4-24-s.js index adfd4d57445f20b7795baa16af47938f566a56b1..401c59d9dbf1989dc9ea965923d4af4ad9948d72 100644 --- a/test/language/literals/string/7.8.4-24-s.js +++ b/test/language/literals/string/7.8.4-24-s.js @@ -5,18 +5,9 @@ es5id: 7.8.4-24-s description: An OctalEscapeSequence is not allowed in a String under Strict Mode flags: [onlyStrict] -includes: [runTestCase.js] ---*/ -function testcase() -{ - try - { - eval('var x = "\\001";'); - return false; - } - catch (e) { - return (e instanceof SyntaxError); - } -} -runTestCase(testcase); + +assert.throws(SyntaxError, function() { + eval('var x = "\\001";'); +}); diff --git a/test/language/literals/string/7.8.4-25-s.js b/test/language/literals/string/7.8.4-25-s.js index c8f398569ca0af83b86d6f37a513e5b74ec63767..c6bc83cffc3731de8a5912fff6bc6c6898f1c770 100644 --- a/test/language/literals/string/7.8.4-25-s.js +++ b/test/language/literals/string/7.8.4-25-s.js @@ -5,18 +5,9 @@ es5id: 7.8.4-25-s description: An OctalEscapeSequence is not allowed in a String under Strict Mode flags: [onlyStrict] -includes: [runTestCase.js] ---*/ -function testcase() -{ - try - { - eval('var x = "\\106";'); - return false; - } - catch (e) { - return (e instanceof SyntaxError); - } -} -runTestCase(testcase); + +assert.throws(SyntaxError, function() { + eval('var x = "\\106";'); +}); diff --git a/test/language/literals/string/7.8.4-26-s.js b/test/language/literals/string/7.8.4-26-s.js index 9299663fb6cdcede4fe33c77074e2038ffc87d9b..a350166d7a0886ab55f2a0b2208791a93d51ae9d 100644 --- a/test/language/literals/string/7.8.4-26-s.js +++ b/test/language/literals/string/7.8.4-26-s.js @@ -5,18 +5,9 @@ es5id: 7.8.4-26-s description: An OctalEscapeSequence is not allowed in a String under Strict Mode flags: [onlyStrict] -includes: [runTestCase.js] ---*/ -function testcase() -{ - try - { - eval('var x = "\\207";'); - return false; - } - catch (e) { - return (e instanceof SyntaxError); - } -} -runTestCase(testcase); + +assert.throws(SyntaxError, function() { + eval('var x = "\\207";'); +}); diff --git a/test/language/literals/string/7.8.4-27-s.js b/test/language/literals/string/7.8.4-27-s.js index ff8ab93d8d3e4e5a1f687a4820f0813762fc1283..9a1c6ad828ecb58ef67e203288629b4476066b04 100644 --- a/test/language/literals/string/7.8.4-27-s.js +++ b/test/language/literals/string/7.8.4-27-s.js @@ -5,18 +5,9 @@ es5id: 7.8.4-27-s description: An OctalEscapeSequence is not allowed in a String under Strict Mode flags: [onlyStrict] -includes: [runTestCase.js] ---*/ -function testcase() -{ - try - { - eval('var x = "\\377";'); - return false; - } - catch (e) { - return (e instanceof SyntaxError); - } -} -runTestCase(testcase); + +assert.throws(SyntaxError, function() { + eval('var x = "\\377";'); +}); diff --git a/test/language/literals/string/7.8.4-28-s.js b/test/language/literals/string/7.8.4-28-s.js index 1a1175ece7c4e4a7f54d76ad6856e358d6193697..c0729ad57319f91f6180c746f4b9dc6a89cea631 100644 --- a/test/language/literals/string/7.8.4-28-s.js +++ b/test/language/literals/string/7.8.4-28-s.js @@ -5,18 +5,9 @@ es5id: 7.8.4-28-s description: An OctalEscapeSequence is not allowed in a String under Strict Mode flags: [onlyStrict] -includes: [runTestCase.js] ---*/ -function testcase() -{ - try - { - eval('var x = "\\376";'); - return false; - } - catch (e) { - return (e instanceof SyntaxError); - } -} -runTestCase(testcase); + +assert.throws(SyntaxError, function() { + eval('var x = "\\376";'); +}); diff --git a/test/language/literals/string/7.8.4-29-s.js b/test/language/literals/string/7.8.4-29-s.js index 1814443ef8cc09c585fded6826bc39d2e2285850..e0ef1906ac24d16288b70e63f815907d6deae5c8 100644 --- a/test/language/literals/string/7.8.4-29-s.js +++ b/test/language/literals/string/7.8.4-29-s.js @@ -5,18 +5,9 @@ es5id: 7.8.4-29-s description: An OctalEscapeSequence is not allowed in a String under Strict Mode flags: [onlyStrict] -includes: [runTestCase.js] ---*/ -function testcase() -{ - try - { - eval('var x = "\\3760";'); - return false; - } - catch (e) { - return (e instanceof SyntaxError); - } -} -runTestCase(testcase); + +assert.throws(SyntaxError, function() { + eval('var x = "\\3760";'); +}); diff --git a/test/language/literals/string/7.8.4-3-s.js b/test/language/literals/string/7.8.4-3-s.js index 0b8906e0ae4bffbc9180209d23587a25b7990521..7c37c0e242488b9d2978507148f4f87e2f3668e1 100644 --- a/test/language/literals/string/7.8.4-3-s.js +++ b/test/language/literals/string/7.8.4-3-s.js @@ -5,18 +5,9 @@ es5id: 7.8.4-3-s description: An OctalEscapeSequence is not allowed in a String under Strict Mode flags: [onlyStrict] -includes: [runTestCase.js] ---*/ -function testcase() -{ - try - { - eval('var x = "a\\4";'); - return false; - } - catch (e) { - return (e instanceof SyntaxError); - } - } -runTestCase(testcase); + +assert.throws(SyntaxError, function() { + eval('var x = "a\\4";'); +}); diff --git a/test/language/literals/string/7.8.4-30-s.js b/test/language/literals/string/7.8.4-30-s.js index 6c8069c3e5f66f798f5a41586b698f66d038b539..3d9c1debbaaac74881a359c341071b52d29a2e21 100644 --- a/test/language/literals/string/7.8.4-30-s.js +++ b/test/language/literals/string/7.8.4-30-s.js @@ -5,18 +5,9 @@ es5id: 7.8.4-30-s description: An OctalEscapeSequence is not allowed in a String under Strict Mode flags: [onlyStrict] -includes: [runTestCase.js] ---*/ -function testcase() -{ - try - { - eval('var x = "\\' + '1";'); - return false; - } - catch (e) { - return (e instanceof SyntaxError); - } - } -runTestCase(testcase); + +assert.throws(SyntaxError, function() { + eval('var x = "\\' + '1";'); +}); diff --git a/test/language/literals/string/7.8.4-31-s.js b/test/language/literals/string/7.8.4-31-s.js index 6dcd4a2917c8fe71abeb0abaa067f17a0a5ca7f6..f4c3a2fc238802f5ee4996d6064dac29488169b9 100644 --- a/test/language/literals/string/7.8.4-31-s.js +++ b/test/language/literals/string/7.8.4-31-s.js @@ -5,18 +5,9 @@ es5id: 7.8.4-31-s description: An OctalEscapeSequence is not allowed in a String under Strict Mode flags: [onlyStrict] -includes: [runTestCase.js] ---*/ -function testcase() -{ - try - { - eval('var x = "\\" + "1";'); - return false; - } - catch (e) { - return (e instanceof SyntaxError); - } - } -runTestCase(testcase); + +assert.throws(SyntaxError, function() { + eval('var x = "\\" + "1";'); +}); diff --git a/test/language/literals/string/7.8.4-32-s.js b/test/language/literals/string/7.8.4-32-s.js index 7835690bd5b485f96f982a98c675008803c3574b..763452a6409f07e3034a4557d418aaf67e46b554 100644 --- a/test/language/literals/string/7.8.4-32-s.js +++ b/test/language/literals/string/7.8.4-32-s.js @@ -7,18 +7,9 @@ description: > Two OctalEscapeSequences in a String are not allowed in a String under Strict Mode flags: [onlyStrict] -includes: [runTestCase.js] ---*/ -function testcase() -{ - try - { - eval('var x = "\\1\\1";'); - return false; - } - catch (e) { - return (e instanceof SyntaxError); - } - } -runTestCase(testcase); + +assert.throws(SyntaxError, function() { + eval('var x = "\\1\\1";'); +}); diff --git a/test/language/literals/string/7.8.4-33-s.js b/test/language/literals/string/7.8.4-33-s.js index d7c4ab29e1ffecba096a5caee8c1078efe90363b..dca45c76437662f98c6517a129c38fd89ffca69c 100644 --- a/test/language/literals/string/7.8.4-33-s.js +++ b/test/language/literals/string/7.8.4-33-s.js @@ -7,18 +7,9 @@ description: > Three OctalEscapeSequences in a String are not allowed in a String under Strict Mode flags: [onlyStrict] -includes: [runTestCase.js] ---*/ -function testcase() -{ - try - { - eval('var x = "\\1\\2\\7";'); - return false; - } - catch (e) { - return (e instanceof SyntaxError); - } - } -runTestCase(testcase); + +assert.throws(SyntaxError, function() { + eval('var x = "\\1\\2\\7";'); +}); diff --git a/test/language/literals/string/7.8.4-4-s.js b/test/language/literals/string/7.8.4-4-s.js index 3286cdc609a68fa921a3d5d8add979fec421c285..f5e6a074d4d999af98fff1acdde3c42679d12428 100644 --- a/test/language/literals/string/7.8.4-4-s.js +++ b/test/language/literals/string/7.8.4-4-s.js @@ -5,18 +5,9 @@ es5id: 7.8.4-4-s description: An OctalEscapeSequence is not allowed in a String under Strict Mode flags: [onlyStrict] -includes: [runTestCase.js] ---*/ -function testcase() -{ - try - { - eval('var x = "z\\7";'); - return false; - } - catch (e) { - return (e instanceof SyntaxError); - } - } -runTestCase(testcase); + +assert.throws(SyntaxError, function() { + eval('var x = "z\\7";'); +}); diff --git a/test/language/literals/string/7.8.4-5-s.js b/test/language/literals/string/7.8.4-5-s.js index 5fe162f90b2ba49deba84a8a923263fa1cb1be2e..1461207647eedf112c895ee83faa747c6146063e 100644 --- a/test/language/literals/string/7.8.4-5-s.js +++ b/test/language/literals/string/7.8.4-5-s.js @@ -5,18 +5,9 @@ es5id: 7.8.4-5-s description: An OctalEscapeSequence is not allowed in a String under Strict Mode flags: [onlyStrict] -includes: [runTestCase.js] ---*/ -function testcase() -{ - try - { - eval('var x = "\\00a";'); - return false; - } - catch (e) { - return (e instanceof SyntaxError); - } - } -runTestCase(testcase); + +assert.throws(SyntaxError, function() { + eval('var x = "\\00a";'); +}); diff --git a/test/language/literals/string/7.8.4-6-s.js b/test/language/literals/string/7.8.4-6-s.js index a0c59b147c93af549a104955e168b3b551595cfb..0aafa302b8f0e0d2191e7765403f8329d946f258 100644 --- a/test/language/literals/string/7.8.4-6-s.js +++ b/test/language/literals/string/7.8.4-6-s.js @@ -5,18 +5,9 @@ es5id: 7.8.4-6-s description: An OctalEscapeSequence is not allowed in a String under Strict Mode flags: [onlyStrict] -includes: [runTestCase.js] ---*/ -function testcase() -{ - try - { - eval('var x = "\\01z";'); - return false; - } - catch (e) { - return (e instanceof SyntaxError); - } - } -runTestCase(testcase); + +assert.throws(SyntaxError, function() { + eval('var x = "\\01z";'); +}); diff --git a/test/language/literals/string/7.8.4-7-s.js b/test/language/literals/string/7.8.4-7-s.js index 31367bb44c9ac8477aa021e0be9ebbc631f25e45..19ddade40364b43b989fdb7dce585bacf8bbc995 100644 --- a/test/language/literals/string/7.8.4-7-s.js +++ b/test/language/literals/string/7.8.4-7-s.js @@ -5,18 +5,9 @@ es5id: 7.8.4-7-s description: An OctalEscapeSequence is not allowed in a String under Strict Mode flags: [onlyStrict] -includes: [runTestCase.js] ---*/ -function testcase() -{ - try - { - eval('var x = "a\\03z";'); - return false; - } - catch (e) { - return (e instanceof SyntaxError); - } - } -runTestCase(testcase); + +assert.throws(SyntaxError, function() { + eval('var x = "a\\03z";'); +}); diff --git a/test/language/literals/string/7.8.4-8-s.js b/test/language/literals/string/7.8.4-8-s.js index aee66238a53102cb2e254b5fb0494fea0e431881..c1b0ce4e1f70cfdb282eb07061e7615cb19c3db9 100644 --- a/test/language/literals/string/7.8.4-8-s.js +++ b/test/language/literals/string/7.8.4-8-s.js @@ -5,18 +5,9 @@ es5id: 7.8.4-8-s description: An OctalEscapeSequence is not allowed in a String under Strict Mode flags: [onlyStrict] -includes: [runTestCase.js] ---*/ -function testcase() -{ - try - { - eval('var x = " \\06";'); - return false; - } - catch (e) { - return (e instanceof SyntaxError); - } - } -runTestCase(testcase); + +assert.throws(SyntaxError, function() { + eval('var x = " \\06";'); +}); diff --git a/test/language/literals/string/7.8.4-9-s.js b/test/language/literals/string/7.8.4-9-s.js index 3697a5f4dee432806c8aa3334be85175973a1cd2..6c491d01165460af52f92706ff1985876966f57b 100644 --- a/test/language/literals/string/7.8.4-9-s.js +++ b/test/language/literals/string/7.8.4-9-s.js @@ -5,18 +5,9 @@ es5id: 7.8.4-9-s description: An OctalEscapeSequence is not allowed in a String under Strict Mode flags: [onlyStrict] -includes: [runTestCase.js] ---*/ -function testcase() -{ - try - { - eval('var x = "\\07 ";'); - return false; - } - catch (e) { - return (e instanceof SyntaxError); - } - } -runTestCase(testcase); + +assert.throws(SyntaxError, function() { + eval('var x = "\\07 ";'); +}); diff --git a/test/language/statements/block/12.1-1.js b/test/language/statements/block/12.1-1.js index 5655c14fb49581ecb8c34ca704912d22daf8747e..0f1ddd02375f497b9a7b9067d45586ab894b2fe8 100644 --- a/test/language/statements/block/12.1-1.js +++ b/test/language/statements/block/12.1-1.js @@ -4,15 +4,9 @@ /*--- es5id: 12.1-1 description: "12.1 - block '{ StatementListopt };' is not allowed: try-catch" -includes: [runTestCase.js] ---*/ -function testcase() { - try { + +assert.throws(SyntaxError, function() { eval("try{};catch(){}"); - return false; - } catch (e) { - return e instanceof SyntaxError; - } - } -runTestCase(testcase); +}); diff --git a/test/language/statements/block/12.1-2.js b/test/language/statements/block/12.1-2.js index 3e402038510b185fe2c8ef5449258d72ec44ba68..b0b41000c48df7a8467f0de6464ecb1258b92bc1 100644 --- a/test/language/statements/block/12.1-2.js +++ b/test/language/statements/block/12.1-2.js @@ -6,15 +6,9 @@ es5id: 12.1-2 description: > 12.1 - block '{ StatementListopt };' is not allowed: try-catch-finally -includes: [runTestCase.js] ---*/ -function testcase() { - try { + +assert.throws(SyntaxError, function() { eval("try{};catch{};finally{}"); - return false; - } catch (e) { - return e instanceof SyntaxError; - } - } -runTestCase(testcase); +}); diff --git a/test/language/statements/block/12.1-3.js b/test/language/statements/block/12.1-3.js index ad2b8d8411958ebe6a92537d080b95cd9cee0c71..a7fb97e72ef2f7d49dcf43d7f531b6f733c8b4a6 100644 --- a/test/language/statements/block/12.1-3.js +++ b/test/language/statements/block/12.1-3.js @@ -4,15 +4,9 @@ /*--- es5id: 12.1-3 description: "12.1 - block '{ StatementListopt };' is not allowed: try-finally" -includes: [runTestCase.js] ---*/ -function testcase() { - try { + +assert.throws(SyntaxError, function() { eval("try{};finally{}"); - return false; - } catch (e) { - return e instanceof SyntaxError; - } - } -runTestCase(testcase); +}); diff --git a/test/language/statements/block/12.1-4.js b/test/language/statements/block/12.1-4.js index b7284151fad615bcc3c697d9cae77ee216735acc..bf130e45941a258e68c436ca3be88424121feeda 100644 --- a/test/language/statements/block/12.1-4.js +++ b/test/language/statements/block/12.1-4.js @@ -4,15 +4,9 @@ /*--- es5id: 12.1-4 description: "12.1 - block '{ StatementListopt };' is not allowed: if-else" -includes: [runTestCase.js] ---*/ -function testcase() { - try { + +assert.throws(SyntaxError, function() { eval("if{};else{}"); - return false; - } catch (e) { - return e instanceof SyntaxError; - } - } -runTestCase(testcase); +}); diff --git a/test/language/statements/block/12.1-5.js b/test/language/statements/block/12.1-5.js index 908ddcda1ace2bca208f95650c557338b50332d9..2ac6f4608547ad88c71f3b7aa71e8ab65a2eb256 100644 --- a/test/language/statements/block/12.1-5.js +++ b/test/language/statements/block/12.1-5.js @@ -4,15 +4,9 @@ /*--- es5id: 12.1-5 description: "12.1 - block '{ StatementListopt };' is not allowed: if-else-if" -includes: [runTestCase.js] ---*/ -function testcase() { - try { + +assert.throws(SyntaxError, function() { eval("if{};else if{}"); - return false; - } catch (e) { - return e instanceof SyntaxError; - } - } -runTestCase(testcase); +}); diff --git a/test/language/statements/block/12.1-6.js b/test/language/statements/block/12.1-6.js index f46fd216958230ea1cf2e988b88ca3921789931c..deeffa17105bde5db3e60884fc5a39b22c29d7aa 100644 --- a/test/language/statements/block/12.1-6.js +++ b/test/language/statements/block/12.1-6.js @@ -6,15 +6,9 @@ es5id: 12.1-6 description: > 12.1 - block '{ StatementListopt };' is not allowed: if-else-if-else -includes: [runTestCase.js] ---*/ -function testcase() { - try { + +assert.throws(SyntaxError, function() { eval("if{};else if{};else{}"); - return false; - } catch (e) { - return e instanceof SyntaxError; - } - } -runTestCase(testcase); +}); diff --git a/test/language/statements/block/12.1-7.js b/test/language/statements/block/12.1-7.js index c251e8f930c125988cf5752e282592462e367b0d..ee5c6acdfcc1b011d656f2989e49e590ae7a71fe 100644 --- a/test/language/statements/block/12.1-7.js +++ b/test/language/statements/block/12.1-7.js @@ -4,15 +4,9 @@ /*--- es5id: 12.1-7 description: "12.1 - block '{ StatementListopt };' is not allowed: do-while" -includes: [runTestCase.js] ---*/ -function testcase() { - try { + +assert.throws(SyntaxError, function() { eval("do{};while()"); - return false; - } catch (e) { - return e instanceof SyntaxError; - } - } -runTestCase(testcase); +}); diff --git a/test/language/statements/function/13.0-1.js b/test/language/statements/function/13.0-1.js index 7e0e308ce07d733fac9731e552190155d82b1d88..33b5fd66e84d0e06049f5503c681a976e6431347 100644 --- a/test/language/statements/function/13.0-1.js +++ b/test/language/statements/function/13.0-1.js @@ -6,15 +6,9 @@ es5id: 13.0-1 description: > 13.0 - multiple names in one function declaration is not allowed, two function names -includes: [runTestCase.js] ---*/ -function testcase() { - try { + +assert.throws(SyntaxError, function() { eval("function x, y() {}"); - return false; - } catch (e) { - return e instanceof SyntaxError; - } - } -runTestCase(testcase); +}); diff --git a/test/language/statements/function/13.0-10-s.js b/test/language/statements/function/13.0-10-s.js index 9368a83bc1378bc8ece9d0093326e563050a7728..5964e461f13c97e0e0a17298c99b4125d07936cb 100644 --- a/test/language/statements/function/13.0-10-s.js +++ b/test/language/statements/function/13.0-10-s.js @@ -11,11 +11,8 @@ description: > the code of this FunctionBody with an inner function contains a Use Strict Directive flags: [noStrict] -includes: [runTestCase.js] ---*/ -function testcase() { - function _13_0_10_fun() { function _13_0_10_inner() { "use strict"; @@ -23,11 +20,6 @@ function testcase() { } _13_0_10_inner(); }; - try { +assert.throws(SyntaxError, function() { _13_0_10_fun(); - return false; - } catch (e) { - return e instanceof SyntaxError; - } - } -runTestCase(testcase); +}); diff --git a/test/language/statements/function/13.0-11-s.js b/test/language/statements/function/13.0-11-s.js index 5686b6e1b35bca2c08ae12ac98fb2f2648a6bb28..5a7684a8227f18284cb36311ddf8901bb687698a 100644 --- a/test/language/statements/function/13.0-11-s.js +++ b/test/language/statements/function/13.0-11-s.js @@ -11,11 +11,8 @@ description: > the code of this FunctionBody with an inner function which is in strict mode flags: [noStrict] -includes: [runTestCase.js] ---*/ -function testcase() { - function _13_0_11_fun() { "use strict"; function _13_0_11_inner() { @@ -23,11 +20,6 @@ function testcase() { } _13_0_11_inner(); }; - try { +assert.throws(SyntaxError, function() { _13_0_11_fun(); - return false; - } catch (e) { - return e instanceof SyntaxError; - } - } -runTestCase(testcase); +}); diff --git a/test/language/statements/function/13.0-13-s.js b/test/language/statements/function/13.0-13-s.js index 0615fe02015ae3b8f3154a3f79e52a365d7fe173..d5f73e2c508b69c6cd52e5bbcb9cf78f05415435 100644 --- a/test/language/statements/function/13.0-13-s.js +++ b/test/language/statements/function/13.0-13-s.js @@ -11,16 +11,9 @@ description: > the function body of a Function constructor begins with a Strict Directive flags: [noStrict] -includes: [runTestCase.js] ---*/ -function testcase() { - try { +assert.throws(SyntaxError, function() { eval("var _13_0_13_fun = new Function(\" \", \"'use strict'; eval = 42;\"); _13_0_13_fun();"); - return false; - } catch (e) { - return e instanceof SyntaxError; - } - } -runTestCase(testcase); +}); diff --git a/test/language/statements/function/13.0-14-s.js b/test/language/statements/function/13.0-14-s.js index 22bcc0d763745d1da3bdf35a8d3d17f6c7e793a9..5a518430ab661d231f8da7f3ee26ea4fb914c51e 100644 --- a/test/language/statements/function/13.0-14-s.js +++ b/test/language/statements/function/13.0-14-s.js @@ -11,17 +11,10 @@ description: > the function body of a Function constructor contains a Strict Directive flags: [noStrict] -includes: [runTestCase.js] ---*/ -function testcase() { - try { +assert.throws(SyntaxError, function() { var _13_0_14_fun = new Function(" ", "'use strict'; eval = 42; "); _13_0_14_fun(); - return false; - } catch (e) { - return e instanceof SyntaxError; - } - } -runTestCase(testcase); +}); diff --git a/test/language/statements/function/13.0-15-s.js b/test/language/statements/function/13.0-15-s.js index 728dcb034e6791eeeedf5d6cafa4b6191001c3d3..6281c22c3874eefa0679dd533c76bb81c40f82ae 100644 --- a/test/language/statements/function/13.0-15-s.js +++ b/test/language/statements/function/13.0-15-s.js @@ -11,17 +11,10 @@ description: > a FunctionDeclaration is contained in strict mode code within eval code flags: [noStrict] -includes: [runTestCase.js] ---*/ -function testcase() { - try { +assert.throws(SyntaxError, function() { eval("'use strict'; function _13_0_15_fun() {eval = 42;};"); _13_0_15_fun(); - return false; - } catch (e) { - return e instanceof SyntaxError; - } - } -runTestCase(testcase); +}); diff --git a/test/language/statements/function/13.0-16-s.js b/test/language/statements/function/13.0-16-s.js index 3eefb46e3256244938a8b8e1044a36654cbf8a5f..c825848e2c35e9afad12a6a28aa565270bef6f92 100644 --- a/test/language/statements/function/13.0-16-s.js +++ b/test/language/statements/function/13.0-16-s.js @@ -11,17 +11,10 @@ description: > a FunctionExpression is contained in strict mode code within eval code flags: [noStrict] -includes: [runTestCase.js] ---*/ -function testcase() { - try { +assert.throws(SyntaxError, function() { eval("'use strict'; var _13_0_16_fun = function () {eval = 42;};"); _13_0_16_fun(); - return false; - } catch (e) { - return e instanceof SyntaxError; - } - } -runTestCase(testcase); +}); diff --git a/test/language/statements/function/13.0-2.js b/test/language/statements/function/13.0-2.js index f2baa5a68d79e2ac9638239a936a33dd00d63ef3..7a3712f061c747daeea46ae2ab4433280bfd8fe5 100644 --- a/test/language/statements/function/13.0-2.js +++ b/test/language/statements/function/13.0-2.js @@ -6,15 +6,9 @@ es5id: 13.0-2 description: > 13.0 - multiple names in one function declaration is not allowed, three function names -includes: [runTestCase.js] ---*/ -function testcase() { - try { + +assert.throws(SyntaxError, function() { eval("function x,y,z(){}"); - return false; - } catch (e) { - return e instanceof SyntaxError; - } - } -runTestCase(testcase); +}); diff --git a/test/language/statements/function/13.0-3.js b/test/language/statements/function/13.0-3.js index 7ffb99d438d79ed361304974d8f048ddd8e4b018..f4eab6a1c8b8819b5c064f0046d2017489fbb2b8 100644 --- a/test/language/statements/function/13.0-3.js +++ b/test/language/statements/function/13.0-3.js @@ -6,16 +6,9 @@ es5id: 13.0-3 description: > 13.0 - property names in function definition is not allowed, add a new property into object -includes: [runTestCase.js] ---*/ -function testcase() { var obj = {}; - try { +assert.throws(SyntaxError, function() { eval("function obj.tt() {};"); - return false; - } catch (e) { - return e instanceof SyntaxError; - } - } -runTestCase(testcase); +}); diff --git a/test/language/statements/function/13.0-4.js b/test/language/statements/function/13.0-4.js index 56225bf7d8a80a062b9453dd7ab901f5c203edd5..ace2f52e131e7ead1ad23588bf456548a7e0f045 100644 --- a/test/language/statements/function/13.0-4.js +++ b/test/language/statements/function/13.0-4.js @@ -6,17 +6,10 @@ es5id: 13.0-4 description: > 13.0 - multiple names in one function declaration is not allowed, add a new property into a property which is a object -includes: [runTestCase.js] ---*/ -function testcase() { var obj = {}; obj.tt = { len: 10 }; - try { +assert.throws(SyntaxError, function() { eval("function obj.tt.ss() {};"); - return false; - } catch (e) { - return e instanceof SyntaxError; - } - } -runTestCase(testcase); +}); diff --git a/test/language/statements/function/13.0-7-s.js b/test/language/statements/function/13.0-7-s.js index 0c6ae6cfd984cf1b83d309eac23a38a3afba3a5b..9e280a909ad7c7c2d6a93eaf1e22dc1cd1c1536b 100644 --- a/test/language/statements/function/13.0-7-s.js +++ b/test/language/statements/function/13.0-7-s.js @@ -11,17 +11,10 @@ description: > the code of this FunctionDeclaration is contained in non-strict mode but the call to eval is a direct call in strict mode code flags: [noStrict] -includes: [runTestCase.js] ---*/ -function testcase() { - try { +assert.throws(SyntaxError, function() { eval("'use strict'; function _13_0_7_fun() {eval = 42;};"); _13_0_7_fun(); - return false; - } catch (e) { - return e instanceof SyntaxError; - } - } -runTestCase(testcase); +}); diff --git a/test/language/statements/function/13.0-9-s.js b/test/language/statements/function/13.0-9-s.js index c2b1bf20f911478bfcb0d2432d7712767cfc5d1d..15145ababaae84a3a5c66cf067b8e6c8a45186fa 100644 --- a/test/language/statements/function/13.0-9-s.js +++ b/test/language/statements/function/13.0-9-s.js @@ -11,19 +11,12 @@ description: > a FunctionDeclaration that is contained in strict mode code has an inner function flags: [onlyStrict] -includes: [runTestCase.js] ---*/ -function testcase() { var _13_0_9_fun = function () { function _13_0_9_inner() { eval("eval = 42;"); } _13_0_9_inner(); }; - try { +assert.throws(SyntaxError, function() { _13_0_9_fun(); - return false; - } catch (e) { - return e instanceof SyntaxError; - } - } -runTestCase(testcase); +}); diff --git a/test/language/statements/function/13.1-1-s.js b/test/language/statements/function/13.1-1-s.js index 077414ba0c78d0f09d5298a51d12829754c70034..cb5ad0aea6bc768a0ef99576d660d6630f64efef 100644 --- a/test/language/statements/function/13.1-1-s.js +++ b/test/language/statements/function/13.1-1-s.js @@ -12,15 +12,9 @@ description: > appears within a FormalParameterList of a strict mode FunctionDeclaration flags: [onlyStrict] -includes: [runTestCase.js] ---*/ -function testcase() { - try { + +assert.throws(SyntaxError, function() { eval("function _13_1_1_fun(eval) { }"); - return false; - } catch (e) { - return e instanceof SyntaxError; - } - } -runTestCase(testcase); +}); diff --git a/test/language/statements/function/13.1-10-s.js b/test/language/statements/function/13.1-10-s.js index 41acf78913f8683b83b6e924921bc9043fb4cb68..a57ddb8efd157a085ca01713aa5aa096560f9371 100644 --- a/test/language/statements/function/13.1-10-s.js +++ b/test/language/statements/function/13.1-10-s.js @@ -12,15 +12,9 @@ description: > 'strict mode' using a FunctionExpression and the function has three identical parameters flags: [onlyStrict] -includes: [runTestCase.js] ---*/ -function testcase() { - try { + +assert.throws(SyntaxError, function() { eval("var _13_1_10_fun = function (param, param, param) { };") - return false; - } catch (e) { - return e instanceof SyntaxError; - } - } -runTestCase(testcase); +}); diff --git a/test/language/statements/function/13.1-11-s.js b/test/language/statements/function/13.1-11-s.js index 4d64d256d2e81bdefdde37b856ccfda933333a2b..f518e3e3ec61762fd94744040dd9e1318d15ece5 100644 --- a/test/language/statements/function/13.1-11-s.js +++ b/test/language/statements/function/13.1-11-s.js @@ -7,15 +7,9 @@ description: > StrictMode - SyntaxError is thrown if 'eval' occurs as the function name of a FunctionDeclaration in strict mode flags: [onlyStrict] -includes: [runTestCase.js] ---*/ -function testcase() { - try { + +assert.throws(SyntaxError, function() { eval("function eval() { };") - return false; - } catch (e) { - return e instanceof SyntaxError; - } - } -runTestCase(testcase); +}); diff --git a/test/language/statements/function/13.1-12-s.js b/test/language/statements/function/13.1-12-s.js index 8f0e24d6f18ac5f09c161defb6b21edbb83febc9..9ab5a3d72769c8684bac882fed0fe9596c92c0c5 100644 --- a/test/language/statements/function/13.1-12-s.js +++ b/test/language/statements/function/13.1-12-s.js @@ -7,17 +7,9 @@ description: > StrictMode - SyntaxError is thrown if 'eval' occurs as the Identifier of a FunctionExpression in strict mode flags: [onlyStrict] -includes: [runTestCase.js] ---*/ -function testcase() { var _13_1_12_s = {}; - - try { +assert.throws(SyntaxError, function() { eval("_13_1_12_s.x = function eval() {};"); - return false; - } catch (e) { - return e instanceof SyntaxError; - } - } -runTestCase(testcase); +}); diff --git a/test/language/statements/function/13.1-13-s.js b/test/language/statements/function/13.1-13-s.js index 290904800b7115b56c873a9d64253a6a8b1d1b25..ca4217170489b89667ea67c6e193295f3467e9b0 100644 --- a/test/language/statements/function/13.1-13-s.js +++ b/test/language/statements/function/13.1-13-s.js @@ -7,15 +7,9 @@ description: > StrictMode - SyntaxError is thrown if 'arguments' occurs as the function name of a FunctionDeclaration in strict mode flags: [onlyStrict] -includes: [runTestCase.js] ---*/ -function testcase() { - try { + +assert.throws(SyntaxError, function() { eval("function arguments() { };") - return false; - } catch (e) { - return e instanceof SyntaxError; - } - } -runTestCase(testcase); +}); diff --git a/test/language/statements/function/13.1-14-s.js b/test/language/statements/function/13.1-14-s.js index d639eb202c58adf801ed9baceb0dc6caca836e97..902419038bdfb71a90541aa91e984d5bf806c915 100644 --- a/test/language/statements/function/13.1-14-s.js +++ b/test/language/statements/function/13.1-14-s.js @@ -7,17 +7,9 @@ description: > StrictMode - SyntaxError is thrown if 'arguments' occurs as the Identifier of a FunctionExpression in strict mode flags: [onlyStrict] -includes: [runTestCase.js] ---*/ -function testcase() { var _13_1_14_s = {}; - - try { +assert.throws(SyntaxError, function() { eval("_13_1_14_s.x = function arguments() {};"); - return false; - } catch (e) { - return e instanceof SyntaxError; - } - } -runTestCase(testcase); +}); diff --git a/test/language/statements/function/13.1-15-s.js b/test/language/statements/function/13.1-15-s.js index 1ee28524d8eb1782c865ed178c6d5623ecf2437e..6d47b948d793c5e4e10ba1549efdd9805f47b610 100644 --- a/test/language/statements/function/13.1-15-s.js +++ b/test/language/statements/function/13.1-15-s.js @@ -12,16 +12,9 @@ description: > appears within a FormalParameterList of a strict mode FunctionDeclaration in strict eval code flags: [noStrict] -includes: [runTestCase.js] ---*/ -function testcase() { - try { +assert.throws(SyntaxError, function() { eval("'use strict';function _13_1_15_fun(eval) { }"); - return false; - } catch (e) { - return e instanceof SyntaxError; - } - } -runTestCase(testcase); +}); diff --git a/test/language/statements/function/13.1-16-s.js b/test/language/statements/function/13.1-16-s.js index 0522c9b1eb4e31c5e243bda90dd287ae178f8f2e..a2e2c4999db130d24e60f32457967edc71c90863 100644 --- a/test/language/statements/function/13.1-16-s.js +++ b/test/language/statements/function/13.1-16-s.js @@ -12,16 +12,9 @@ description: > appears within a FormalParameterList of a strict mode FunctionDeclaration when FuctionBody is strict code flags: [noStrict] -includes: [runTestCase.js] ---*/ -function testcase() { - try { +assert.throws(SyntaxError, function() { eval("function _13_1_16_fun(eval) { 'use strict'; }"); - return false; - } catch (e) { - return e instanceof SyntaxError; - } - } -runTestCase(testcase); +}); diff --git a/test/language/statements/function/13.1-17-s.js b/test/language/statements/function/13.1-17-s.js index 6d1dd8dcd411c41432a90e412a15a23768ec866f..9c08d093410502df7d4ba710079a98f1f9f15daa 100644 --- a/test/language/statements/function/13.1-17-s.js +++ b/test/language/statements/function/13.1-17-s.js @@ -12,16 +12,9 @@ description: > appears within a FormalParameterList of a strict mode FunctionExpression in strict eval code flags: [noStrict] -includes: [runTestCase.js] ---*/ -function testcase() { - try { +assert.throws(SyntaxError, function() { eval("'use strict'; var _13_1_17_fun = function (eval) { }"); - return false; - } catch (e) { - return e instanceof SyntaxError; - } - } -runTestCase(testcase); +}); diff --git a/test/language/statements/function/13.1-18-s.js b/test/language/statements/function/13.1-18-s.js index 92a0c07fdf9cc21dea25da9320eb61bcc58067fe..1ff8d869974b76dd09d18fece188628899c5b467 100644 --- a/test/language/statements/function/13.1-18-s.js +++ b/test/language/statements/function/13.1-18-s.js @@ -12,16 +12,9 @@ description: > appears within a FormalParameterList of a strict mode FunctionExpression when FuctionBody is strict code flags: [noStrict] -includes: [runTestCase.js] ---*/ -function testcase() { - try { +assert.throws(SyntaxError, function() { eval("var _13_1_18_fun = function (eval) { 'use strict'; }"); - return false; - } catch (e) { - return e instanceof SyntaxError; - } - } -runTestCase(testcase); +}); diff --git a/test/language/statements/function/13.1-19-s.js b/test/language/statements/function/13.1-19-s.js index 5cbf661565cb693232f6e7b5dd86dfa207084ea3..3dce5196fe47dbf86e2e4f57a8866a0f843ec4f0 100644 --- a/test/language/statements/function/13.1-19-s.js +++ b/test/language/statements/function/13.1-19-s.js @@ -12,16 +12,9 @@ description: > appears within a FormalParameterList of a strict mode FunctionDeclaration in strict eval code flags: [noStrict] -includes: [runTestCase.js] ---*/ -function testcase() { - try { +assert.throws(SyntaxError, function() { eval("'use strict';function _13_1_19_fun(arguments) { }"); - return false; - } catch (e) { - return e instanceof SyntaxError; - } - } -runTestCase(testcase); +}); diff --git a/test/language/statements/function/13.1-2-s.js b/test/language/statements/function/13.1-2-s.js index dfda3645f5ccf495543e9fdc393cc50640bc8ea4..07a657bd378abe45baf57687d313033599d78101 100644 --- a/test/language/statements/function/13.1-2-s.js +++ b/test/language/statements/function/13.1-2-s.js @@ -12,15 +12,9 @@ description: > appears within a FormalParameterList of a strict mode FunctionExpression flags: [onlyStrict] -includes: [runTestCase.js] ---*/ -function testcase() { - try { + +assert.throws(SyntaxError, function() { eval("var _13_1_2_fun = function (eval) { }"); - return false; - } catch (e) { - return e instanceof SyntaxError; - } - } -runTestCase(testcase); +}); diff --git a/test/language/statements/function/13.1-20-s.js b/test/language/statements/function/13.1-20-s.js index 44265dbb9936e3d2578a8dff9888e2c44ba2ca91..8c57d7a6225ba2d7e3feef658455ff7d8a49f479 100644 --- a/test/language/statements/function/13.1-20-s.js +++ b/test/language/statements/function/13.1-20-s.js @@ -12,16 +12,9 @@ description: > appears within a FormalParameterList of a strict mode FunctionDeclaration when FuctionBody is strict code flags: [noStrict] -includes: [runTestCase.js] ---*/ -function testcase() { - try { +assert.throws(SyntaxError, function() { eval("function _13_1_20_fun(arguments) { 'use strict'; }"); - return false; - } catch (e) { - return e instanceof SyntaxError; - } - } -runTestCase(testcase); +}); diff --git a/test/language/statements/function/13.1-21-s.js b/test/language/statements/function/13.1-21-s.js index cb4421f62b803ddf360111d1fa2cfec82414ce7a..4e79bace1400429ade77eeda97b4ece6cdc6c53e 100644 --- a/test/language/statements/function/13.1-21-s.js +++ b/test/language/statements/function/13.1-21-s.js @@ -12,16 +12,9 @@ description: > appears within a FormalParameterList of a strict mode FunctionExpression in strict eval code flags: [noStrict] -includes: [runTestCase.js] ---*/ -function testcase() { - try { +assert.throws(SyntaxError, function() { eval("'use strict'; var _13_1_21_fun = function (arguments) { }"); - return false; - } catch (e) { - return e instanceof SyntaxError; - } - } -runTestCase(testcase); +}); diff --git a/test/language/statements/function/13.1-22-s.js b/test/language/statements/function/13.1-22-s.js index 3243a96f249da56efe4f3f1f3285c26daf76cca2..ac3417cb86b82ffd00b86b59baaaff7cfb46eb71 100644 --- a/test/language/statements/function/13.1-22-s.js +++ b/test/language/statements/function/13.1-22-s.js @@ -12,16 +12,9 @@ description: > appears within a FormalParameterList of a strict mode FunctionExpression when FuctionBody is strict code flags: [noStrict] -includes: [runTestCase.js] ---*/ -function testcase() { - try { +assert.throws(SyntaxError, function() { eval("var _13_1_22_fun = function (arguments) { 'use strict'; }"); - return false; - } catch (e) { - return e instanceof SyntaxError; - } - } -runTestCase(testcase); +}); diff --git a/test/language/statements/function/13.1-23-s.js b/test/language/statements/function/13.1-23-s.js index fedc7a34288ff77d160f99ffb4e2636e92930f89..36008957f90b9f4236fd5ffe5106118fe2e7c1fd 100644 --- a/test/language/statements/function/13.1-23-s.js +++ b/test/language/statements/function/13.1-23-s.js @@ -12,16 +12,9 @@ description: > a FunctionDeclaration that is contained in eval strict code and the function has two identical parameters flags: [noStrict] -includes: [runTestCase.js] ---*/ -function testcase() { - try { +assert.throws(SyntaxError, function() { eval("'use strict'; function _13_1_23_fun(param, param) { }"); - return false; - } catch (e) { - return e instanceof SyntaxError; - } - } -runTestCase(testcase); +}); diff --git a/test/language/statements/function/13.1-24-s.js b/test/language/statements/function/13.1-24-s.js index de66d85783567191a1df5dde1b007eb91559c18b..fc459cd93ed978e5ef6de766c5fedb5bb6608933 100644 --- a/test/language/statements/function/13.1-24-s.js +++ b/test/language/statements/function/13.1-24-s.js @@ -12,16 +12,9 @@ description: > a FunctionDeclaration whose FunctionBody is contained in strict code and the function has two identical parameters flags: [noStrict] -includes: [runTestCase.js] ---*/ -function testcase() { - try { +assert.throws(SyntaxError, function() { eval("function _13_1_24_fun(param, param) { 'use strict'; }"); - return false; - } catch (e) { - return e instanceof SyntaxError; - } - } -runTestCase(testcase); +}); diff --git a/test/language/statements/function/13.1-25-s.js b/test/language/statements/function/13.1-25-s.js index e470eb4ae6c00459bb589da0700055737b863120..7bc1c7b082e9707fc865ef4666b8580cbb174941 100644 --- a/test/language/statements/function/13.1-25-s.js +++ b/test/language/statements/function/13.1-25-s.js @@ -13,16 +13,9 @@ description: > the function has two identical parameters which are separated by a unique parameter name flags: [noStrict] -includes: [runTestCase.js] ---*/ -function testcase() { - try { +assert.throws(SyntaxError, function() { eval("'use strict'; function _13_1_25_fun(param1, param2, param1) { }"); - return false; - } catch (e) { - return e instanceof SyntaxError; - } - } -runTestCase(testcase); +}); diff --git a/test/language/statements/function/13.1-26-s.js b/test/language/statements/function/13.1-26-s.js index dd16e5f1134f9bf0ece8d349261be1a4eea436af..f44b94490487db803e25f7b3f6fbafef0f3bfb8b 100644 --- a/test/language/statements/function/13.1-26-s.js +++ b/test/language/statements/function/13.1-26-s.js @@ -13,16 +13,9 @@ description: > code and the function has two identical parameters which are separated by a unique parameter name flags: [noStrict] -includes: [runTestCase.js] ---*/ -function testcase() { - try { +assert.throws(SyntaxError, function() { eval("function _13_1_26_fun(param1, param2, param1) { 'use strict'; }"); - return false; - } catch (e) { - return e instanceof SyntaxError; - } - } -runTestCase(testcase); +}); diff --git a/test/language/statements/function/13.1-27-s.js b/test/language/statements/function/13.1-27-s.js index b9cf0eb5347ca9d5d6cead8c8b1dadfec46b8a1f..3ad0c92061e6d1d6c4dc229a5dba52aba3ff257f 100644 --- a/test/language/statements/function/13.1-27-s.js +++ b/test/language/statements/function/13.1-27-s.js @@ -12,16 +12,9 @@ description: > a FunctionDeclaration that is contained in eval strict code and the function has three identical parameters flags: [noStrict] -includes: [runTestCase.js] ---*/ -function testcase() { - try { +assert.throws(SyntaxError, function() { eval("'use strict'; function _13_1_27_fun(param, param, param) { }"); - return false; - } catch (e) { - return e instanceof SyntaxError; - } - } -runTestCase(testcase); +}); diff --git a/test/language/statements/function/13.1-28-s.js b/test/language/statements/function/13.1-28-s.js index f87d2d17069a922910f0d654a20a7609ff56b996..61d6e3f31118dad3ab1a8864f26520874557f60d 100644 --- a/test/language/statements/function/13.1-28-s.js +++ b/test/language/statements/function/13.1-28-s.js @@ -12,17 +12,9 @@ description: > a FunctionDeclaration whose FunctionBody is contained in strict code and the function has three identical parameters flags: [noStrict] -includes: [runTestCase.js] ---*/ -function testcase() { - - try { +assert.throws(SyntaxError, function() { eval("function _13_1_28_fun(param, param, param) { 'use strict'; }"); - return false; - } catch (e) { - return e instanceof SyntaxError; - } - } -runTestCase(testcase); +}); diff --git a/test/language/statements/function/13.1-29-s.js b/test/language/statements/function/13.1-29-s.js index 9c0cc7171b307a06ebe2b43a032b20c6de66fbe5..0dd41865e62a04a0f43ddb319f594152d973d167 100644 --- a/test/language/statements/function/13.1-29-s.js +++ b/test/language/statements/function/13.1-29-s.js @@ -12,16 +12,9 @@ description: > a FunctionExpression that is contained in eval strict code and the function has two identical parameters flags: [noStrict] -includes: [runTestCase.js] ---*/ -function testcase() { - try { +assert.throws(SyntaxError, function() { eval("'use strict'; var _13_1_29_fun = function (param, param) { };"); - return false; - } catch (e) { - return e instanceof SyntaxError; - } - } -runTestCase(testcase); +}); diff --git a/test/language/statements/function/13.1-3-s.js b/test/language/statements/function/13.1-3-s.js index baa9c16c4312fdf349db1063e64c3ad0b3c23ed8..803e5986c2b732e4550d19241df2f098ef2f5b5a 100644 --- a/test/language/statements/function/13.1-3-s.js +++ b/test/language/statements/function/13.1-3-s.js @@ -12,15 +12,9 @@ description: > appears within a FormalParameterList of a strict mode FunctionDeclaration flags: [onlyStrict] -includes: [runTestCase.js] ---*/ -function testcase() { - try { + +assert.throws(SyntaxError, function() { eval("function _13_1_3_fun(arguments) { }"); - return false; - } catch (e) { - return e instanceof SyntaxError; - } - } -runTestCase(testcase); +}); diff --git a/test/language/statements/function/13.1-30-s.js b/test/language/statements/function/13.1-30-s.js index 0fbae1edeb6ed113e1d8b8582d35b762ac03e5f5..d7fa8d644faed7fe3a8fe5eddfb64af99f94d1ad 100644 --- a/test/language/statements/function/13.1-30-s.js +++ b/test/language/statements/function/13.1-30-s.js @@ -12,16 +12,9 @@ description: > a FunctionExpression whose FunctionBody is contained in strict code and the function has two identical parameters flags: [noStrict] -includes: [runTestCase.js] ---*/ -function testcase() { - try { +assert.throws(SyntaxError, function() { eval("var _13_1_30_fun = function (param, param) { 'use strict'; };"); - return false; - } catch (e) { - return e instanceof SyntaxError; - } - } -runTestCase(testcase); +}); diff --git a/test/language/statements/function/13.1-31-s.js b/test/language/statements/function/13.1-31-s.js index 4aba0e054270a91294d89a0055f0f95e3fdd5902..911588b63330f88da1df8c1e4e2f575c45e8d087 100644 --- a/test/language/statements/function/13.1-31-s.js +++ b/test/language/statements/function/13.1-31-s.js @@ -13,16 +13,9 @@ description: > function has two identical parameters, which are separated by a unique parameter name flags: [noStrict] -includes: [runTestCase.js] ---*/ -function testcase() { - try { +assert.throws(SyntaxError, function() { eval("'use strict'; var _13_1_31_fun = function (param1, param2, param1) { };"); - return false; - } catch (e) { - return e instanceof SyntaxError; - } - } -runTestCase(testcase); +}); diff --git a/test/language/statements/function/13.1-32-s.js b/test/language/statements/function/13.1-32-s.js index e46f50f783053d53f5c7c6aaaa96033fbbd1101f..486c55391991b7c8c60e7eed30e439991565d742 100644 --- a/test/language/statements/function/13.1-32-s.js +++ b/test/language/statements/function/13.1-32-s.js @@ -13,16 +13,9 @@ description: > has two identical parameters, which are separated by a unique parameter name flags: [noStrict] -includes: [runTestCase.js] ---*/ -function testcase() { - try { +assert.throws(SyntaxError, function() { eval("var _13_1_32_fun = function (param1, param2, param1) { 'use strict'; };"); - return false; - } catch (e) { - return e instanceof SyntaxError; - } - } -runTestCase(testcase); +}); diff --git a/test/language/statements/function/13.1-33-s.js b/test/language/statements/function/13.1-33-s.js index 3d9b3112872b697716bd5f4ce2bb5191593f253f..cdccca76ad69beed4e7c9ce9fa93873c294f6d91 100644 --- a/test/language/statements/function/13.1-33-s.js +++ b/test/language/statements/function/13.1-33-s.js @@ -12,16 +12,9 @@ description: > FunctionExpression that is contained in eval strict code and the function has three identical parameters flags: [noStrict] -includes: [runTestCase.js] ---*/ -function testcase() { - try { +assert.throws(SyntaxError, function() { eval("'use strict'; var _13_1_33_fun = function (param, param, param) { };") - return false; - } catch (e) { - return e instanceof SyntaxError; - } - } -runTestCase(testcase); +}); diff --git a/test/language/statements/function/13.1-34-s.js b/test/language/statements/function/13.1-34-s.js index 4bedc599195743315b679f09e2f9471e7a987808..e3d9c6f400aa9ed202a3528adfee6a201da9af01 100644 --- a/test/language/statements/function/13.1-34-s.js +++ b/test/language/statements/function/13.1-34-s.js @@ -11,16 +11,9 @@ description: > Strict Mode - SyntaxError is thrown if a function declaration has three identical parameters with a strict mode body flags: [noStrict] -includes: [runTestCase.js] ---*/ -function testcase() { - try { +assert.throws(SyntaxError, function() { eval("var _13_1_34_fun = function (param, param, param) { 'use strict'; };") - return false; - } catch (e) { - return e instanceof SyntaxError; - } - } -runTestCase(testcase); +}); diff --git a/test/language/statements/function/13.1-35-s.js b/test/language/statements/function/13.1-35-s.js index 53f6bb730d8b7ee8aa2ce0d59e9be82828ac337a..ca9376953a80ca69bf4dabd77112a6c06961c52d 100644 --- a/test/language/statements/function/13.1-35-s.js +++ b/test/language/statements/function/13.1-35-s.js @@ -7,16 +7,9 @@ description: > StrictMode - SyntaxError is thrown if 'eval' occurs as the function name of a FunctionDeclaration in strict eval code flags: [noStrict] -includes: [runTestCase.js] ---*/ -function testcase() { - try { +assert.throws(SyntaxError, function() { eval("'use strict'; function eval() { };") - return false; - } catch (e) { - return e instanceof SyntaxError; - } - } -runTestCase(testcase); +}); diff --git a/test/language/statements/function/13.1-36-s.js b/test/language/statements/function/13.1-36-s.js index 0d09fef4e918d8b46b73edc873efe391d83b3c65..ce5c98ec0d880b12f4708613de503042b82df124 100644 --- a/test/language/statements/function/13.1-36-s.js +++ b/test/language/statements/function/13.1-36-s.js @@ -8,16 +8,9 @@ description: > function name of a FunctionDeclaration whose FunctionBody is in strict mode flags: [noStrict] -includes: [runTestCase.js] ---*/ -function testcase() { - try { +assert.throws(SyntaxError, function() { eval("function eval() { 'use strict'; };") - return false; - } catch (e) { - return e instanceof SyntaxError; - } - } -runTestCase(testcase); +}); diff --git a/test/language/statements/function/13.1-37-s.js b/test/language/statements/function/13.1-37-s.js index 031782a57bbb3073d4bf1bbdc0f76d339ebecb32..5b2c1db6b4495c1e7788939c109c1deda2e405f2 100644 --- a/test/language/statements/function/13.1-37-s.js +++ b/test/language/statements/function/13.1-37-s.js @@ -7,16 +7,9 @@ description: > StrictMode - SyntaxError is thrown if 'eval' occurs as the Identifier of a FunctionExpression in strict eval code flags: [noStrict] -includes: [runTestCase.js] ---*/ -function testcase() { var _13_1_37_s = {}; - try { +assert.throws(SyntaxError, function() { eval("'use strict'; _13_1_37_s.x = function eval() {};"); - return false; - } catch (e) { - return e instanceof SyntaxError; - } - } -runTestCase(testcase); +}); diff --git a/test/language/statements/function/13.1-38-s.js b/test/language/statements/function/13.1-38-s.js index bc5c1a49e50c2ac302b110e912ecda5e6a940986..ac4db793ddef2f6b14506bb0fbe76b59238e106e 100644 --- a/test/language/statements/function/13.1-38-s.js +++ b/test/language/statements/function/13.1-38-s.js @@ -8,16 +8,9 @@ description: > Identifier of a FunctionExpression whose FunctionBody is contained in strict code flags: [noStrict] -includes: [runTestCase.js] ---*/ -function testcase() { var _13_1_38_s = {}; - try { +assert.throws(SyntaxError, function() { eval("_13_1_38_s.x = function eval() {'use strict'; };"); - return false; - } catch (e) { - return e instanceof SyntaxError; - } - } -runTestCase(testcase); +}); diff --git a/test/language/statements/function/13.1-39-s.js b/test/language/statements/function/13.1-39-s.js index bdbde71c60dadb9852097c091d4de9e6e8b987f8..633be9641d61ce67ccccd5ec54a2405fbe45f726 100644 --- a/test/language/statements/function/13.1-39-s.js +++ b/test/language/statements/function/13.1-39-s.js @@ -7,16 +7,9 @@ description: > StrictMode - SyntaxError is thrown if 'arguments' occurs as the function name of a FunctionDeclaration in strict eval code flags: [noStrict] -includes: [runTestCase.js] ---*/ -function testcase() { - try { +assert.throws(SyntaxError, function() { eval("'use strict'; function arguments() { };") - return false; - } catch (e) { - return e instanceof SyntaxError; - } - } -runTestCase(testcase); +}); diff --git a/test/language/statements/function/13.1-4-s.js b/test/language/statements/function/13.1-4-s.js index 71729cf40e262aeff0c17b43a9e875c3b9d1785b..092aaee0df8edd5d963e467a7b16a876b12abb09 100644 --- a/test/language/statements/function/13.1-4-s.js +++ b/test/language/statements/function/13.1-4-s.js @@ -12,15 +12,9 @@ description: > appears within a FormalParameterList of a strict mode FunctionExpression flags: [onlyStrict] -includes: [runTestCase.js] ---*/ -function testcase() { - try { + +assert.throws(SyntaxError, function() { eval("var _13_1_4_fun = function (arguments) { };"); - return false; - } catch (e) { - return e instanceof SyntaxError; - } - } -runTestCase(testcase); +}); diff --git a/test/language/statements/function/13.1-40-s.js b/test/language/statements/function/13.1-40-s.js index d29ce3e5d30b5b9ab51dca77c2a37ad23fe25e18..8c77046075104706bb33379a7b012ea6566f828b 100644 --- a/test/language/statements/function/13.1-40-s.js +++ b/test/language/statements/function/13.1-40-s.js @@ -8,16 +8,9 @@ description: > Identifier of a FunctionDeclaration whose FunctionBody is contained in strict code flags: [noStrict] -includes: [runTestCase.js] ---*/ -function testcase() { - try { +assert.throws(SyntaxError, function() { eval("function arguments() { 'use strict'; };") - return false; - } catch (e) { - return e instanceof SyntaxError; - } - } -runTestCase(testcase); +}); diff --git a/test/language/statements/function/13.1-41-s.js b/test/language/statements/function/13.1-41-s.js index f59b4aeb073139d8c1d296b8f46849362c61cb81..a6e246177a4fabb8b3f55447fda333132d7a4b4a 100644 --- a/test/language/statements/function/13.1-41-s.js +++ b/test/language/statements/function/13.1-41-s.js @@ -7,16 +7,9 @@ description: > StrictMode - SyntaxError is thrown if 'arguments' occurs as the Identifier of a FunctionExpression in strict eval code flags: [noStrict] -includes: [runTestCase.js] ---*/ -function testcase() { var _13_1_41_s = {}; - try { +assert.throws(SyntaxError, function() { eval("'use strict'; _13_1_41_s.x = function arguments() {};"); - return false; - } catch (e) { - return e instanceof SyntaxError; - } - } -runTestCase(testcase); +}); diff --git a/test/language/statements/function/13.1-42-s.js b/test/language/statements/function/13.1-42-s.js index eee56516fe60504ffd09cdf3922271a8e26e1120..8e9a3fccb80c0794bb956486969212910c92f0d8 100644 --- a/test/language/statements/function/13.1-42-s.js +++ b/test/language/statements/function/13.1-42-s.js @@ -8,16 +8,9 @@ description: > Identifier of a FunctionExpression whose FunctionBody is contained in strict code flags: [noStrict] -includes: [runTestCase.js] ---*/ -function testcase() { var _13_1_42_s = {}; - try { +assert.throws(SyntaxError, function() { eval("_13_1_42_s.x = function arguments() {'use strict';};"); - return false; - } catch (e) { - return e instanceof SyntaxError; - } - } -runTestCase(testcase); +}); diff --git a/test/language/statements/function/13.1-5-s.js b/test/language/statements/function/13.1-5-s.js index a0dd7d482d53085746f0cacf7a9ff9bd764cb1ad..65a010a6c126a3194f027a3f2281cc96deac3320 100644 --- a/test/language/statements/function/13.1-5-s.js +++ b/test/language/statements/function/13.1-5-s.js @@ -12,15 +12,9 @@ description: > 'strict mode' using a FunctionDeclaration and the function has two identical parameters flags: [onlyStrict] -includes: [runTestCase.js] ---*/ -function testcase() { - try { + +assert.throws(SyntaxError, function() { eval("function _13_1_5_fun(param, param) { }"); - return false; - } catch (e) { - return e instanceof SyntaxError; - } - } -runTestCase(testcase); +}); diff --git a/test/language/statements/function/13.1-6-s.js b/test/language/statements/function/13.1-6-s.js index 24f7542da2a3ed874ae5b94be4e94c5dc378cdae..d02d720914030c29c8f2528b5e80473b219a9873 100644 --- a/test/language/statements/function/13.1-6-s.js +++ b/test/language/statements/function/13.1-6-s.js @@ -13,15 +13,9 @@ description: > identical parameters, which are separated by a unique parameter name flags: [onlyStrict] -includes: [runTestCase.js] ---*/ -function testcase() { - try { + +assert.throws(SyntaxError, function() { eval("function _13_1_6_fun(param1, param2, param1) { }"); - return false; - } catch (e) { - return e instanceof SyntaxError; - } - } -runTestCase(testcase); +}); diff --git a/test/language/statements/function/13.1-7-s.js b/test/language/statements/function/13.1-7-s.js index 64e4b17217ead4cedb6773deba823577c33f5278..b42b13e82384722bc78d0def28494aa284ac7de2 100644 --- a/test/language/statements/function/13.1-7-s.js +++ b/test/language/statements/function/13.1-7-s.js @@ -12,15 +12,9 @@ description: > 'strict mode' using a FunctionDeclaration and the function has three identical parameters flags: [onlyStrict] -includes: [runTestCase.js] ---*/ -function testcase() { - try { + +assert.throws(SyntaxError, function() { eval("function _13_1_7_fun(param, param, param) { }"); - return false; - } catch (e) { - return e instanceof SyntaxError; - } - } -runTestCase(testcase); +}); diff --git a/test/language/statements/function/13.1-8-s.js b/test/language/statements/function/13.1-8-s.js index 9ab6acd8030e652bf1e57bfa8b35c2906ad77bce..42f977405afe6f6acb1b50852f60dfbc10936a96 100644 --- a/test/language/statements/function/13.1-8-s.js +++ b/test/language/statements/function/13.1-8-s.js @@ -12,15 +12,9 @@ description: > 'strict mode' using a FunctionExpression and the function has two identical parameters flags: [onlyStrict] -includes: [runTestCase.js] ---*/ -function testcase() { - try { + +assert.throws(SyntaxError, function() { eval("var _13_1_8_fun = function (param, param) { };"); - return false; - } catch (e) { - return e instanceof SyntaxError; - } - } -runTestCase(testcase); +}); diff --git a/test/language/statements/function/13.1-9-s.js b/test/language/statements/function/13.1-9-s.js index 551a6f61c746a0e3deea17a19a13963063ffb95f..a8284132c150df540f0479628a3d58214a898b03 100644 --- a/test/language/statements/function/13.1-9-s.js +++ b/test/language/statements/function/13.1-9-s.js @@ -13,15 +13,9 @@ description: > identical parameters, which are separated by a unique parameter name flags: [onlyStrict] -includes: [runTestCase.js] ---*/ -function testcase() { - try { + +assert.throws(SyntaxError, function() { eval("var _13_1_9_fun = function (param1, param2, param1) { };"); - return false; - } catch (e) { - return e instanceof SyntaxError; - } - } -runTestCase(testcase); +}); diff --git a/test/language/statements/function/13.2-10-s.js b/test/language/statements/function/13.2-10-s.js index 4687488f61c696aa3f88548b10141ae4d22cd5cc..6cefcc79d757aa2e4f4a051a597303e1f8568308 100644 --- a/test/language/statements/function/13.2-10-s.js +++ b/test/language/statements/function/13.2-10-s.js @@ -6,17 +6,9 @@ es5id: 13.2-10-s description: > StrictMode - writing a property named 'caller' of function objects is not allowed outside the function -includes: [runTestCase.js] ---*/ -function testcase() { var foo = Function("'use strict';"); - try { +assert.throws(TypeError, function() { foo.caller = 41; - return false; - } - catch (e) { - return e instanceof TypeError; - } -} -runTestCase(testcase); +}); diff --git a/test/language/statements/function/13.2-13-s.js b/test/language/statements/function/13.2-13-s.js index ae3d1800f1c89d0d0e9bd761fb5fcdad78cc7253..3fb244f9e19dee432bd8babc9fc888a7a550036e 100644 --- a/test/language/statements/function/13.2-13-s.js +++ b/test/language/statements/function/13.2-13-s.js @@ -6,17 +6,9 @@ es5id: 13.2-13-s description: > StrictMode - reading a property named 'arguments' of function objects is not allowed outside the function -includes: [runTestCase.js] ---*/ -function testcase() { var foo = new Function("'use strict';"); - try { +assert.throws(TypeError, function() { var temp = foo.arguments; - return false; - } - catch (e) { - return e instanceof TypeError; - } -} -runTestCase(testcase); +}); diff --git a/test/language/statements/function/13.2-14-s.js b/test/language/statements/function/13.2-14-s.js index 08e623791e305c4885b18ed84afe841b4ba53210..06073a4bd725884fefdcf1e08242749efd557b91 100644 --- a/test/language/statements/function/13.2-14-s.js +++ b/test/language/statements/function/13.2-14-s.js @@ -6,17 +6,9 @@ es5id: 13.2-14-s description: > StrictMode - writing a property named 'arguments' of function objects is not allowed outside the function -includes: [runTestCase.js] ---*/ -function testcase() { var foo = new Function("'use strict';"); - try { +assert.throws(TypeError, function() { foo.arguments = 41; - return false; - } - catch (e) { - return e instanceof TypeError; - } -} -runTestCase(testcase); +}); diff --git a/test/language/statements/function/13.2-17-s.js b/test/language/statements/function/13.2-17-s.js index 5354731b2b77e5ae24a1160b208668aab9de09a2..df7a22e2e1226524eafcdc2171b31a851a76d185 100644 --- a/test/language/statements/function/13.2-17-s.js +++ b/test/language/statements/function/13.2-17-s.js @@ -6,17 +6,9 @@ es5id: 13.2-17-s description: > StrictMode - reading a property named 'arguments' of function objects is not allowed outside the function -includes: [runTestCase.js] ---*/ -function testcase() { var foo = Function("'use strict';"); - try { +assert.throws(TypeError, function() { var temp = foo.arguments; - return false; - } - catch (e) { - return e instanceof TypeError; - } -} -runTestCase(testcase); +}); diff --git a/test/language/statements/function/13.2-18-s.js b/test/language/statements/function/13.2-18-s.js index 6ea8865190dc08a0f503e4c7b51c440813d5aa01..77b646722793e99ad0863f6948f8e72685e1245f 100644 --- a/test/language/statements/function/13.2-18-s.js +++ b/test/language/statements/function/13.2-18-s.js @@ -6,17 +6,9 @@ es5id: 13.2-18-s description: > StrictMode - writing a property named 'arguments' of function objects is not allowed outside the function -includes: [runTestCase.js] ---*/ -function testcase() { var foo = Function("'use strict';"); - try { +assert.throws(TypeError, function() { foo.arguments = 41; - return false; - } - catch (e) { - return e instanceof TypeError; - } -} -runTestCase(testcase); +}); diff --git a/test/language/statements/function/13.2-2-s.js b/test/language/statements/function/13.2-2-s.js index d47478316c1a57ff45358ec5dad105b885073644..77e670e9f19628d492734a397fc2e61810168e50 100644 --- a/test/language/statements/function/13.2-2-s.js +++ b/test/language/statements/function/13.2-2-s.js @@ -7,17 +7,11 @@ description: > StrictMode - A TypeError is thrown when a strict mode code writes to properties named 'caller' of function instances. flags: [onlyStrict] -includes: [runTestCase.js] ---*/ -function testcase() { - try { + +assert.throws(TypeError, function() { var foo = function () { } foo.caller = 20; - return false; - } catch (ex) { - return ex instanceof TypeError; - } - } -runTestCase(testcase); +}); diff --git a/test/language/statements/function/13.2-21-s.js b/test/language/statements/function/13.2-21-s.js index c7b5ac37b83afe7edc891d29b3b181862a8058f9..34b13e98ae2907f860e80ce0c633d8974805356d 100644 --- a/test/language/statements/function/13.2-21-s.js +++ b/test/language/statements/function/13.2-21-s.js @@ -7,17 +7,9 @@ description: > StrictMode - reading a property named 'caller' of function objects is not allowed outside the function flags: [noStrict] -includes: [runTestCase.js] ---*/ -function testcase() { function foo () {"use strict";} - try { +assert.throws(TypeError, function() { var temp = foo.caller; - return false; - } - catch (e) { - return e instanceof TypeError; - } -} -runTestCase(testcase); +}); diff --git a/test/language/statements/function/13.2-22-s.js b/test/language/statements/function/13.2-22-s.js index 55a1a34a3260800801e9aa9cfc8f95a7d86b0e0b..a3955d8710027b1f7fcdf261455853cc234ff552 100644 --- a/test/language/statements/function/13.2-22-s.js +++ b/test/language/statements/function/13.2-22-s.js @@ -7,17 +7,9 @@ description: > StrictMode - writing a property named 'caller' of function objects is not allowed outside the function flags: [noStrict] -includes: [runTestCase.js] ---*/ -function testcase() { function foo () {"use strict";} - try { +assert.throws(TypeError, function() { foo.caller = 41; - return false; - } - catch (e) { - return e instanceof TypeError; - } -} -runTestCase(testcase); +}); diff --git a/test/language/statements/function/13.2-25-s.js b/test/language/statements/function/13.2-25-s.js index 05906597655c31d35f983e7e39db80da5eda4a20..b4a46bd72ff4c297f12cb2cbfb15f353894aa01a 100644 --- a/test/language/statements/function/13.2-25-s.js +++ b/test/language/statements/function/13.2-25-s.js @@ -7,17 +7,9 @@ description: > StrictMode - reading a property named 'arguments' of function objects is not allowed outside the function flags: [noStrict] -includes: [runTestCase.js] ---*/ -function testcase() { function foo () {"use strict";} - try { +assert.throws(TypeError, function() { var temp = foo.arguments; - return false; - } - catch (e) { - return e instanceof TypeError; - } -} -runTestCase(testcase); +}); diff --git a/test/language/statements/function/13.2-26-s.js b/test/language/statements/function/13.2-26-s.js index 33f2f1840d826e07506d5b8b8db659f48bc706cd..371af059c7983ec7b23b5b16bc5cc3e18ed9885f 100644 --- a/test/language/statements/function/13.2-26-s.js +++ b/test/language/statements/function/13.2-26-s.js @@ -7,17 +7,9 @@ description: > StrictMode - writing a property named 'arguments' of function objects is not allowed outside the function flags: [noStrict] -includes: [runTestCase.js] ---*/ -function testcase() { function foo () {"use strict";} - try { +assert.throws(TypeError, function() { foo.arguments = 41; - return false; - } - catch (e) { - return e instanceof TypeError; - } -} -runTestCase(testcase); +}); diff --git a/test/language/statements/function/13.2-4-s.js b/test/language/statements/function/13.2-4-s.js index 68a1b0a7a53da96b0475d400ab6121114c4ac32b..8ff3f336fc9aa4adf32bb7da0e975794bdb38cb3 100644 --- a/test/language/statements/function/13.2-4-s.js +++ b/test/language/statements/function/13.2-4-s.js @@ -7,17 +7,11 @@ description: > StrictMode - A TypeError is thrown when a code in strict mode tries to write to 'arguments' of function instances. flags: [onlyStrict] -includes: [runTestCase.js] ---*/ -function testcase() { - try { + +assert.throws(TypeError, function() { var foo = function () { } foo.arguments = 20; - return false; - } catch (ex) { - return ex instanceof TypeError; - } - } -runTestCase(testcase); +}); diff --git a/test/language/statements/function/13.2-5-s.js b/test/language/statements/function/13.2-5-s.js index 2000a444885114400d0c9f70967fe674b8770fcb..a617e305bb79e9da26e6c6fbe67e4740095b60fa 100644 --- a/test/language/statements/function/13.2-5-s.js +++ b/test/language/statements/function/13.2-5-s.js @@ -7,17 +7,9 @@ description: > StrictMode - reading a property named 'caller' of function objects is not allowed outside the function flags: [noStrict] -includes: [runTestCase.js] ---*/ -function testcase() { var foo = new Function("'use strict';"); - try { +assert.throws(TypeError, function() { var temp = foo.caller; - return false; - } - catch (e) { - return e instanceof TypeError; - } - } -runTestCase(testcase); +}); diff --git a/test/language/statements/function/13.2-6-s.js b/test/language/statements/function/13.2-6-s.js index d751d08041e8b110bbdc5256dd5e075d86f56441..ffe989f44d7edc6860b15d8a949e2bd048f58ec3 100644 --- a/test/language/statements/function/13.2-6-s.js +++ b/test/language/statements/function/13.2-6-s.js @@ -7,17 +7,9 @@ description: > StrictMode - writing a property named 'caller' of function objects is not allowed outside the function flags: [noStrict] -includes: [runTestCase.js] ---*/ -function testcase() { var foo = new Function("'use strict';"); - try { +assert.throws(TypeError, function() { foo.caller = 41; - return false; - } - catch (e) { - return e instanceof TypeError; - } -} -runTestCase(testcase); +}); diff --git a/test/language/statements/function/13.2-9-s.js b/test/language/statements/function/13.2-9-s.js index 9594fbb11208608bd577bbfe3affe6eba4858ba2..756d0e1a21911eb548264ec31d3a8febc4a37e10 100644 --- a/test/language/statements/function/13.2-9-s.js +++ b/test/language/statements/function/13.2-9-s.js @@ -7,17 +7,9 @@ description: > StrictMode - reading a property named 'caller' of function objects is not allowed outside the function flags: [noStrict] -includes: [runTestCase.js] ---*/ -function testcase() { var foo = Function("'use strict';"); - try { +assert.throws(TypeError, function() { var temp = foo.caller; - return false; - } - catch (e) { - return e instanceof TypeError; - } -} -runTestCase(testcase); +}); diff --git a/test/language/statements/try/12.14.1-1-s.js b/test/language/statements/try/12.14.1-1-s.js index e88f976ae791bafe62b1ae70ebf7e7b8430dd907..688e10439d239fec34031958d9f3974aecec8b6c 100644 --- a/test/language/statements/try/12.14.1-1-s.js +++ b/test/language/statements/try/12.14.1-1-s.js @@ -8,17 +8,10 @@ description: > occurs within strict code and the Identifier of the Catch production is eval flags: [onlyStrict] -includes: [runTestCase.js] ---*/ -function testcase() { - try { +assert.throws(SyntaxError, function() { eval("\ try {} catch (eval) { }\ "); - return false; - } catch (e) { - return e instanceof SyntaxError; - } - } -runTestCase(testcase); +}); diff --git a/test/language/statements/try/12.14.1-2-s.js b/test/language/statements/try/12.14.1-2-s.js index 0fe35a999522106f37c2e10cdbc0a874c7918213..7977218340902d3d973ef264360870f070a81d13 100644 --- a/test/language/statements/try/12.14.1-2-s.js +++ b/test/language/statements/try/12.14.1-2-s.js @@ -8,17 +8,10 @@ description: > occurs within strict code and the Identifier of the Catch production is arguments flags: [onlyStrict] -includes: [runTestCase.js] ---*/ -function testcase() { - try { +assert.throws(SyntaxError, function() { eval("\ try {} catch (arguments) { }\ "); - return false; - } catch (e) { - return e instanceof SyntaxError; - } - } -runTestCase(testcase); +}); diff --git a/test/language/statements/try/12.14.1-3-s.js b/test/language/statements/try/12.14.1-3-s.js index 29e75f7ceb9d54179a4015fe2b0002230b632c0c..7223984812aca05889d3108fed959b1c7ed95852 100644 --- a/test/language/statements/try/12.14.1-3-s.js +++ b/test/language/statements/try/12.14.1-3-s.js @@ -8,11 +8,10 @@ description: > Catch occurs within strict code and the Identifier of the Catch production is EVAL but throws SyntaxError if it is eval flags: [onlyStrict] -includes: [runTestCase.js] ---*/ -function testcase() { - try{ eval(" try { \ +assert.throws(SyntaxError, function() { + eval(" try { \ throw new Error(\"...\");\ return false;\ } catch (EVAL) {\ @@ -24,9 +23,4 @@ function testcase() { return EVAL instanceof Error;\ }\ }"); - return false; - } catch(e) { - return e instanceof SyntaxError; - } - } -runTestCase(testcase); +}); diff --git a/test/language/statements/variable/12.2.1-1-s.js b/test/language/statements/variable/12.2.1-1-s.js index 448ebb28b6c83170cfdd23b9e9b78d19cd495c9d..bdf44cea2b9b40647fe764aaf94d0fd94a37aa50 100644 --- a/test/language/statements/variable/12.2.1-1-s.js +++ b/test/language/statements/variable/12.2.1-1-s.js @@ -7,16 +7,9 @@ description: > eval - a function declaring a var named 'eval' throws SyntaxError in strict mode flags: [onlyStrict] -includes: [runTestCase.js] ---*/ -function testcase() { - try { + +assert.throws(SyntaxError, function() { eval('function foo() { var eval; }'); - return false; - } - catch (e) { - return (e instanceof SyntaxError); - } - } -runTestCase(testcase); +}); diff --git a/test/language/statements/variable/12.2.1-12-s.js b/test/language/statements/variable/12.2.1-12-s.js index 8028f64738bdd17e69c42b4233be3162ba57dcb5..50ffbfef3cc6ebc09b9c06b095f857c70e10b8e2 100644 --- a/test/language/statements/variable/12.2.1-12-s.js +++ b/test/language/statements/variable/12.2.1-12-s.js @@ -5,16 +5,9 @@ es5id: 12.2.1-12-s description: arguments as local var identifier throws SyntaxError in strict mode flags: [onlyStrict] -includes: [runTestCase.js] ---*/ -function testcase() { - try { + +assert.throws(SyntaxError, function() { eval('function foo() { var arguments;}'); - return false; - } - catch (e) { - return (e instanceof SyntaxError); - } - } -runTestCase(testcase); +}); diff --git a/test/language/statements/variable/12.2.1-13-s.js b/test/language/statements/variable/12.2.1-13-s.js index 8de3ada3ff485b0e9e923775b9c164375554f059..5e9fc3a6d5ae1dce6d48ecbeb354f8f5b4a19ae7 100644 --- a/test/language/statements/variable/12.2.1-13-s.js +++ b/test/language/statements/variable/12.2.1-13-s.js @@ -5,16 +5,9 @@ es5id: 12.2.1-13-s description: arguments assignment throws SyntaxError in strict mode flags: [onlyStrict] -includes: [runTestCase.js] ---*/ -function testcase() { - try { + +assert.throws(SyntaxError, function() { eval('function foo() { arguments = 42; }; foo()'); - return false; - } - catch (e) { - return (e instanceof SyntaxError); - } - } -runTestCase(testcase); +}); diff --git a/test/language/statements/variable/12.2.1-14-s.js b/test/language/statements/variable/12.2.1-14-s.js index 0f43c2824b5c3aaa064cd48ef7e06ef5d39cc573..06cf5eba8d9ccd0bb015ebd2e5a3f1febb8f2b68 100644 --- a/test/language/statements/variable/12.2.1-14-s.js +++ b/test/language/statements/variable/12.2.1-14-s.js @@ -7,16 +7,9 @@ description: > arguments - a function expr declaring a var named 'arguments' throws SyntaxError in strict mode flags: [onlyStrict] -includes: [runTestCase.js] ---*/ -function testcase() { - try { + +assert.throws(SyntaxError, function() { eval('(function (){var arguments;});'); - return false; - } - catch (e) { - return (e instanceof SyntaxError); - } -} -runTestCase(testcase); +}); diff --git a/test/language/statements/variable/12.2.1-15-s.js b/test/language/statements/variable/12.2.1-15-s.js index 2da7a85230a150ad97ef6332ff9e322f8d91d965..8447267316ec452963c338aed1bfd979bcb98efe 100644 --- a/test/language/statements/variable/12.2.1-15-s.js +++ b/test/language/statements/variable/12.2.1-15-s.js @@ -7,16 +7,9 @@ description: > arguments - a function expr assigning into 'arguments' throws a SyntaxError in strict mode flags: [onlyStrict] -includes: [runTestCase.js] ---*/ -function testcase() { - try { + +assert.throws(SyntaxError, function() { eval('(function () {arguments = 42;})()'); - return false; - } - catch (e) { - return (e instanceof SyntaxError); - } -} -runTestCase(testcase); +}); diff --git a/test/language/statements/variable/12.2.1-18-s.js b/test/language/statements/variable/12.2.1-18-s.js index 6e8c15b00db1ead1a1a13bb42d646cb788f894b6..88e1327365185bf32b86642ff9ebc166f7d58a78 100644 --- a/test/language/statements/variable/12.2.1-18-s.js +++ b/test/language/statements/variable/12.2.1-18-s.js @@ -7,16 +7,9 @@ description: > A direct eval declaring a var named 'arguments' throws SyntaxError in strict mode flags: [onlyStrict] -includes: [runTestCase.js] ---*/ -function testcase() { - try { + +assert.throws(SyntaxError, function() { eval('var arguments;'); - return false; - } - catch (e) { - return (e instanceof SyntaxError); - } -} -runTestCase(testcase); +}); diff --git a/test/language/statements/variable/12.2.1-19-s.js b/test/language/statements/variable/12.2.1-19-s.js index fd73916ddbd24074cc4ef1729a04ff1dde827c33..e750197fc34e1e6f419e31e6ee15b1a0ea7662d4 100644 --- a/test/language/statements/variable/12.2.1-19-s.js +++ b/test/language/statements/variable/12.2.1-19-s.js @@ -7,16 +7,9 @@ description: > A direct eval assigning into 'arguments' throws SyntaxError in strict mode flags: [onlyStrict] -includes: [runTestCase.js] ---*/ -function testcase() { - try { + +assert.throws(SyntaxError, function() { eval('arguments = 42;'); - return false; - } - catch (e) { - return (e instanceof SyntaxError) ; - } -} -runTestCase(testcase); +}); diff --git a/test/language/statements/variable/12.2.1-2-s.js b/test/language/statements/variable/12.2.1-2-s.js index d2e96976c789f64f92322d01f40e2ccaefb8a2a5..40da7f8923664017998bdff44467c79dafe5a161 100644 --- a/test/language/statements/variable/12.2.1-2-s.js +++ b/test/language/statements/variable/12.2.1-2-s.js @@ -7,16 +7,9 @@ description: > eval - a function assigning into 'eval' throws SyntaxError in strict mode flags: [onlyStrict] -includes: [runTestCase.js] ---*/ -function testcase() { - try { + +assert.throws(SyntaxError, function() { eval('function foo() { eval = 42; }; foo()'); - return false; - } - catch (e) { - return (e instanceof SyntaxError); - } - } -runTestCase(testcase); +}); diff --git a/test/language/statements/variable/12.2.1-22-s.js b/test/language/statements/variable/12.2.1-22-s.js index f84c20578c23ac7a89808ad538f71962fa70e040..4c737c6af5b66ede36802f9886ba7ac1616939ac 100644 --- a/test/language/statements/variable/12.2.1-22-s.js +++ b/test/language/statements/variable/12.2.1-22-s.js @@ -6,19 +6,9 @@ es5id: 12.2.1-22-s description: > arguments as global var identifier throws SyntaxError in strict mode -includes: [runTestCase.js] ---*/ -function testcase() { - var indirectEval = eval; - - try { +assert.throws(SyntaxError, function() { indirectEval("'use strict'; var arguments;"); - return false; - } - catch (e) { - return (e instanceof SyntaxError); - } -} -runTestCase(testcase); +}); diff --git a/test/language/statements/variable/12.2.1-23-s.js b/test/language/statements/variable/12.2.1-23-s.js index 3ee332933ed898653f459cbee8e31f77ab035073..45e3912de75c46d3480d1101464cf9ab4e4f938f 100644 --- a/test/language/statements/variable/12.2.1-23-s.js +++ b/test/language/statements/variable/12.2.1-23-s.js @@ -7,16 +7,9 @@ description: > arguments as local var identifier assigned to throws SyntaxError in strict mode flags: [onlyStrict] -includes: [runTestCase.js] ---*/ -function testcase() { - try { + +assert.throws(SyntaxError, function() { eval('function foo() { var arguments = 42;}'); - return false; - } - catch (e) { - return (e instanceof SyntaxError); - } -} -runTestCase(testcase); +}); diff --git a/test/language/statements/variable/12.2.1-24-s.js b/test/language/statements/variable/12.2.1-24-s.js index bac5088214ef854172e1903607e89b21c071ee8d..8e5818b10763c9e79c0a8bb587a0d23009d0772e 100644 --- a/test/language/statements/variable/12.2.1-24-s.js +++ b/test/language/statements/variable/12.2.1-24-s.js @@ -7,16 +7,9 @@ description: > eval as local var identifier assigned to throws SyntaxError in strict mode flags: [onlyStrict] -includes: [runTestCase.js] ---*/ -function testcase() { - try { + +assert.throws(SyntaxError, function() { eval('function foo() { var eval = 42;}'); - return false; - } - catch (e) { - return (e instanceof SyntaxError); - } -} -runTestCase(testcase); +}); diff --git a/test/language/statements/variable/12.2.1-25-s.js b/test/language/statements/variable/12.2.1-25-s.js index 826afe7a97cd3c3898b96c2db8eacd4817d28fb3..95712e37f407daff76f02bba2f7d849020b8ffc3 100644 --- a/test/language/statements/variable/12.2.1-25-s.js +++ b/test/language/statements/variable/12.2.1-25-s.js @@ -5,16 +5,9 @@ es5id: 12.2.1-25-s description: arguments as local var identifier throws SyntaxError in strict mode flags: [onlyStrict] -includes: [runTestCase.js] ---*/ -function testcase() { - try { + +assert.throws(SyntaxError, function() { eval('function foo() { var arguments, a;}'); - return false; - } - catch (e) { - return (e instanceof SyntaxError); - } -} -runTestCase(testcase); +}); diff --git a/test/language/statements/variable/12.2.1-26-s.js b/test/language/statements/variable/12.2.1-26-s.js index a12e454ffb8a207aac4a8953f5f3620a033fa53e..427689845b4e97d85a20f49ff3e7c9b2091d1275 100644 --- a/test/language/statements/variable/12.2.1-26-s.js +++ b/test/language/statements/variable/12.2.1-26-s.js @@ -5,16 +5,9 @@ es5id: 12.2.1-26-s description: eval as local var identifier throws SyntaxError in strict mode flags: [onlyStrict] -includes: [runTestCase.js] ---*/ -function testcase() { - try { + +assert.throws(SyntaxError, function() { eval('function foo() { var a, eval;}'); - return false; - } - catch (e) { - return (e instanceof SyntaxError); - } -} -runTestCase(testcase); +}); diff --git a/test/language/statements/variable/12.2.1-27-s.js b/test/language/statements/variable/12.2.1-27-s.js index cf6bbad494773a38e57e522b970165b2aadbc086..51b3bc1b322839755ce4c6d3dd426a361160f7ca 100644 --- a/test/language/statements/variable/12.2.1-27-s.js +++ b/test/language/statements/variable/12.2.1-27-s.js @@ -7,16 +7,9 @@ description: > eval as local var identifier assigned to throws SyntaxError in strict mode flags: [onlyStrict] -includes: [runTestCase.js] ---*/ -function testcase() { - try { + +assert.throws(SyntaxError, function() { eval('function foo() { var eval = 42, a;}'); - return false; - } - catch (e) { - return (e instanceof SyntaxError); - } -} -runTestCase(testcase); +}); diff --git a/test/language/statements/variable/12.2.1-28-s.js b/test/language/statements/variable/12.2.1-28-s.js index fcf7156af5f3508f1b52a1f28da07ac1a3a1e462..c06f66b58c73d03d33de09d750e6c5b76c0b47c9 100644 --- a/test/language/statements/variable/12.2.1-28-s.js +++ b/test/language/statements/variable/12.2.1-28-s.js @@ -7,16 +7,9 @@ description: > arguments as local var identifier assigned to throws SyntaxError in strict mode flags: [onlyStrict] -includes: [runTestCase.js] ---*/ -function testcase() { - try { + +assert.throws(SyntaxError, function() { eval('function foo() { var a, arguments = 42;}'); - return false; - } - catch (e) { - return (e instanceof SyntaxError); - } -} -runTestCase(testcase); +}); diff --git a/test/language/statements/variable/12.2.1-29-s.js b/test/language/statements/variable/12.2.1-29-s.js index 3470528578b1733dc325fe4419e11a02f1801c65..f188ae7196fef179f8c63740ccc4c5fdbb580610 100644 --- a/test/language/statements/variable/12.2.1-29-s.js +++ b/test/language/statements/variable/12.2.1-29-s.js @@ -5,16 +5,9 @@ es5id: 12.2.1-29-s description: eval as local var identifier throws SyntaxError in strict mode flags: [onlyStrict] -includes: [runTestCase.js] ---*/ -function testcase() { - try { + +assert.throws(SyntaxError, function() { eval('function foo() { var eval, a = 42;}'); - return false; - } - catch (e) { - return (e instanceof SyntaxError); - } -} -runTestCase(testcase); +}); diff --git a/test/language/statements/variable/12.2.1-3-s.js b/test/language/statements/variable/12.2.1-3-s.js index 75d700f5e0bbb5659a20762f7aa31d895ae1744d..19166749a4e3c22ceee398e35e226820d6a0d5b6 100644 --- a/test/language/statements/variable/12.2.1-3-s.js +++ b/test/language/statements/variable/12.2.1-3-s.js @@ -7,16 +7,9 @@ description: > eval - a function expr declaring a var named 'eval' throws SyntaxError in strict mode flags: [onlyStrict] -includes: [runTestCase.js] ---*/ -function testcase() { - try { + +assert.throws(SyntaxError, function() { eval('(function () { var eval; })'); - return false; - } - catch (e) { - return (e instanceof SyntaxError); - } - } -runTestCase(testcase); +}); diff --git a/test/language/statements/variable/12.2.1-30-s.js b/test/language/statements/variable/12.2.1-30-s.js index d66da4f82cd2334767a7e22fa0700b7df48bace3..2fb229dda08380606fc2fe80840f6dfca6831da5 100644 --- a/test/language/statements/variable/12.2.1-30-s.js +++ b/test/language/statements/variable/12.2.1-30-s.js @@ -5,16 +5,9 @@ es5id: 12.2.1-30-s description: arguments as local var identifier throws SyntaxError in strict mode flags: [onlyStrict] -includes: [runTestCase.js] ---*/ -function testcase() { - try { + +assert.throws(SyntaxError, function() { eval('function foo() { var a = 42, arguments;}'); - return false; - } - catch (e) { - return (e instanceof SyntaxError); - } -} -runTestCase(testcase); +}); diff --git a/test/language/statements/variable/12.2.1-31-s.js b/test/language/statements/variable/12.2.1-31-s.js index 7b45601ba5991359e101622498877aba43217aaf..937313d894e4d4add9a59747037080af10f79287 100644 --- a/test/language/statements/variable/12.2.1-31-s.js +++ b/test/language/statements/variable/12.2.1-31-s.js @@ -7,16 +7,9 @@ description: > eval as local var identifier defined twice throws SyntaxError in strict mode flags: [onlyStrict] -includes: [runTestCase.js] ---*/ -function testcase() { - try { + +assert.throws(SyntaxError, function() { eval('function foo() { var eval, eval;}'); - return false; - } - catch (e) { - return (e instanceof SyntaxError); - } -} -runTestCase(testcase); +}); diff --git a/test/language/statements/variable/12.2.1-32-s.js b/test/language/statements/variable/12.2.1-32-s.js index b0b17ce06066f0e067ae9311ee2a57daa065b5ea..12326d08bf9b987c1fd046e9b31fab4c1d042594 100644 --- a/test/language/statements/variable/12.2.1-32-s.js +++ b/test/language/statements/variable/12.2.1-32-s.js @@ -7,16 +7,9 @@ description: > arguments as local var identifier defined twice and assigned once throws SyntaxError in strict mode flags: [onlyStrict] -includes: [runTestCase.js] ---*/ -function testcase() { - try { + +assert.throws(SyntaxError, function() { eval('function foo() { var arguments, arguments = 42;}'); - return false; - } - catch (e) { - return (e instanceof SyntaxError); - } -} -runTestCase(testcase); +}); diff --git a/test/language/statements/variable/12.2.1-33-s.js b/test/language/statements/variable/12.2.1-33-s.js index 188ec7545886d8326a18eb0e56a7fdea945877ee..0b474dd519ac65b73fd62272a009cae9139d16a1 100644 --- a/test/language/statements/variable/12.2.1-33-s.js +++ b/test/language/statements/variable/12.2.1-33-s.js @@ -5,16 +5,9 @@ es5id: 12.2.1-33-s description: arguments as local var identifier throws SyntaxError in strict mode flags: [onlyStrict] -includes: [runTestCase.js] ---*/ -function testcase() { - try { + +assert.throws(SyntaxError, function() { eval('function foo() { var a, arguments, b;}'); - return false; - } - catch (e) { - return (e instanceof SyntaxError); - } -} -runTestCase(testcase); +}); diff --git a/test/language/statements/variable/12.2.1-34-s.js b/test/language/statements/variable/12.2.1-34-s.js index 2cdf1495bcbab5698e4d49fdf92f76882107b3b2..c7794514a1bbec25f4940957a2116ab7a2548f8c 100644 --- a/test/language/statements/variable/12.2.1-34-s.js +++ b/test/language/statements/variable/12.2.1-34-s.js @@ -5,16 +5,9 @@ es5id: 12.2.1-34-s description: "'for(var eval in ...) {...}' throws SyntaxError in strict mode" flags: [onlyStrict] -includes: [runTestCase.js] ---*/ -function testcase() { - try { + +assert.throws(SyntaxError, function() { eval('for (var eval in null) {};'); - return false; - } - catch (e) { - return (e instanceof SyntaxError); - } - } -runTestCase(testcase); +}); diff --git a/test/language/statements/variable/12.2.1-35-s.js b/test/language/statements/variable/12.2.1-35-s.js index c9f40642300e5cf615b645129b404f54ed47182b..5d8d17ce558431d38e4044ef487d3192017a94b5 100644 --- a/test/language/statements/variable/12.2.1-35-s.js +++ b/test/language/statements/variable/12.2.1-35-s.js @@ -5,16 +5,9 @@ es5id: 12.2.1-35-s description: "'for(var eval = 42 in ...) {...}' throws SyntaxError in strict mode" flags: [onlyStrict] -includes: [runTestCase.js] ---*/ -function testcase() { - try { + +assert.throws(SyntaxError, function() { eval('for (var eval = 42 in null) {};'); - return false; - } - catch (e) { - return (e instanceof SyntaxError); - } - } -runTestCase(testcase); +}); diff --git a/test/language/statements/variable/12.2.1-36-s.js b/test/language/statements/variable/12.2.1-36-s.js index de1dcab5197366a405c0338a427c1cbc69ef40c3..872d7c7c2a56f3039fb2c45f519ec485ac802dc5 100644 --- a/test/language/statements/variable/12.2.1-36-s.js +++ b/test/language/statements/variable/12.2.1-36-s.js @@ -5,16 +5,9 @@ es5id: 12.2.1-36-s description: "'for(var arguments in ...) {...}' throws SyntaxError in strict mode" flags: [onlyStrict] -includes: [runTestCase.js] ---*/ -function testcase() { - try { + +assert.throws(SyntaxError, function() { eval('for (var arguments in null) {};'); - return false; - } - catch (e) { - return (e instanceof SyntaxError); - } - } -runTestCase(testcase); +}); diff --git a/test/language/statements/variable/12.2.1-37-s.js b/test/language/statements/variable/12.2.1-37-s.js index 6e81d9702cb24da92a1f77d333416d3715a0d984..cf7227e630c7faba37983a2f21ab14e46349393c 100644 --- a/test/language/statements/variable/12.2.1-37-s.js +++ b/test/language/statements/variable/12.2.1-37-s.js @@ -7,16 +7,9 @@ description: > 'for(var arguments = 42 in ...) {...}' throws SyntaxError in strict mode flags: [onlyStrict] -includes: [runTestCase.js] ---*/ -function testcase() { - try { + +assert.throws(SyntaxError, function() { eval('for (var arguments = 42 in null) {};'); - return false; - } - catch (e) { - return (e instanceof SyntaxError); - } - } -runTestCase(testcase); +}); diff --git a/test/language/statements/variable/12.2.1-4-s.js b/test/language/statements/variable/12.2.1-4-s.js index ccdeec6ce75a58acd8c25bb0fd282495efc3d1c0..00fbcde7f80775dc35a6b6d162a132f15a220595 100644 --- a/test/language/statements/variable/12.2.1-4-s.js +++ b/test/language/statements/variable/12.2.1-4-s.js @@ -7,16 +7,9 @@ description: > eval - a function expr assigning into 'eval' throws a SyntaxError in strict mode flags: [onlyStrict] -includes: [runTestCase.js] ---*/ -function testcase() { - try { + +assert.throws(SyntaxError, function() { eval('(function () { eval = 42; })()'); - return false; - } - catch (e) { - return (e instanceof SyntaxError); - } - } -runTestCase(testcase); +}); diff --git a/test/language/statements/variable/12.2.1-7-s.js b/test/language/statements/variable/12.2.1-7-s.js index 2f16e64b4eecba0d94f75c8fb9113fb50b7cd2b1..723c5d221c0c5307e5283faeeba0218b6d2bf316 100644 --- a/test/language/statements/variable/12.2.1-7-s.js +++ b/test/language/statements/variable/12.2.1-7-s.js @@ -7,16 +7,9 @@ description: > eval - a direct eval declaring a var named 'eval' throws SyntaxError in strict mode flags: [onlyStrict] -includes: [runTestCase.js] ---*/ -function testcase() { - try { + +assert.throws(SyntaxError, function() { eval('var eval;'); - return false; - } - catch (e) { - return (e instanceof SyntaxError); - } - } -runTestCase(testcase); +}); diff --git a/test/language/statements/variable/12.2.1-8-s.js b/test/language/statements/variable/12.2.1-8-s.js index 5156674d832fdce1990fc674bb66cb531708f6da..aa75ccea9640f57c7f13e57099ba113b2edf4b2c 100644 --- a/test/language/statements/variable/12.2.1-8-s.js +++ b/test/language/statements/variable/12.2.1-8-s.js @@ -7,16 +7,9 @@ description: > eval - a direct eval assigning into 'eval' throws SyntaxError in strict mode flags: [onlyStrict] -includes: [runTestCase.js] ---*/ -function testcase() { - try { + +assert.throws(SyntaxError, function() { eval('eval = 42;'); - return false; - } - catch (e) { - return (e instanceof SyntaxError) ; - } - } -runTestCase(testcase); +}); diff --git a/test/language/statements/with/12.10.1-1-s.js b/test/language/statements/with/12.10.1-1-s.js index 634e2ffda1541f9a37d5b41f2c51961ed0cacf78..140771146996427815c7e42097b97567b8a80805 100644 --- a/test/language/statements/with/12.10.1-1-s.js +++ b/test/language/statements/with/12.10.1-1-s.js @@ -5,12 +5,10 @@ es5id: 12.10.1-1-s description: with statement in strict mode throws SyntaxError (strict function) flags: [noStrict] -includes: [runTestCase.js] ---*/ -function testcase() { - try { +assert.throws(SyntaxError, function() { // wrapping it in eval since this needs to be a syntax error. The // exception thrown must be a SyntaxError exception. eval("\ @@ -20,10 +18,4 @@ function testcase() { with (o) {};\ }\ "); - return false; - } - catch (e) { - return(e instanceof SyntaxError); - } - } -runTestCase(testcase); +}); diff --git a/test/language/statements/with/12.10.1-10-s.js b/test/language/statements/with/12.10.1-10-s.js index 00b713824d6ce36d3bcb04066bf3ddcc452d1eee..49553bee7235de23b3920e1f0c762ae378e824a8 100644 --- a/test/language/statements/with/12.10.1-10-s.js +++ b/test/language/statements/with/12.10.1-10-s.js @@ -7,22 +7,14 @@ description: > with statement in strict mode throws SyntaxError (eval, where the container function is strict) flags: [onlyStrict] -includes: [runTestCase.js] ---*/ -function testcase() { // wrapping it in eval since this needs to be a syntax error. The // exception thrown must be a SyntaxError exception. Note that eval // inherits the strictness of its calling context. - try { +assert.throws(SyntaxError, function() { eval("\ var o = {};\ with (o) {}\ "); - return false; - } - catch (e) { - return (e instanceof SyntaxError); - } - } -runTestCase(testcase); +}); diff --git a/test/language/statements/with/12.10.1-11-s.js b/test/language/statements/with/12.10.1-11-s.js index 5d03b9f6e7f94c72b4507988f1101ee787974125..1b4e2e1f3e0ad032b68fd4e8b5e2f471bbdb9ec1 100644 --- a/test/language/statements/with/12.10.1-11-s.js +++ b/test/language/statements/with/12.10.1-11-s.js @@ -7,16 +7,9 @@ description: > Strict Mode - SyntaxError is thrown when using WithStatement in strict mode code flags: [onlyStrict] -includes: [runTestCase.js] ---*/ -function testcase() { - try { - eval("with ({}) { throw new Error();}"); - return false; - } catch (e) { - return e instanceof SyntaxError; - } - } -runTestCase(testcase); +assert.throws(SyntaxError, function() { + eval("with ({}) { throw new Error();}"); +}); diff --git a/test/language/statements/with/12.10.1-12-s.js b/test/language/statements/with/12.10.1-12-s.js index c6a1cc6c0d851485dc92fd94955fcd58d312595a..fe450fac806ef6275db77f19b80109aba2522a40 100644 --- a/test/language/statements/with/12.10.1-12-s.js +++ b/test/language/statements/with/12.10.1-12-s.js @@ -5,20 +5,13 @@ es5id: 12.10.1-12-s description: with statement in strict mode throws SyntaxError (strict eval) flags: [noStrict] -includes: [runTestCase.js] ---*/ -function testcase() { - try { + +assert.throws(SyntaxError, function() { eval("\ 'use strict'; \ var o = {}; \ with (o) {}\ "); - return false; - } - catch (e) { - return (e instanceof SyntaxError) ; - } - } -runTestCase(testcase); +}); diff --git a/test/language/statements/with/12.10.1-14-s.js b/test/language/statements/with/12.10.1-14-s.js index 0078f1236662f2b8888995eb25e35878250166d9..8c825e74b861c87d0d0298f51d650793e5da8949 100644 --- a/test/language/statements/with/12.10.1-14-s.js +++ b/test/language/statements/with/12.10.1-14-s.js @@ -7,16 +7,9 @@ description: > Strict Mode - SyntaxError is thrown when the getter of a literal object utilizes WithStatement flags: [onlyStrict] -includes: [runTestCase.js] ---*/ -function testcase() { - try { - eval("var obj = { get(a) { with(a){} } }; "); - return false; - } catch (e) { - return e instanceof SyntaxError; - } - } -runTestCase(testcase); +assert.throws(SyntaxError, function() { + eval("var obj = { get(a) { with(a){} } }; "); +}); diff --git a/test/language/statements/with/12.10.1-15-s.js b/test/language/statements/with/12.10.1-15-s.js index 7191936831312dace2316e9330645f69a40da2d5..b552a9a762b797fb025fb419dc10f4cb878ed1d4 100644 --- a/test/language/statements/with/12.10.1-15-s.js +++ b/test/language/statements/with/12.10.1-15-s.js @@ -7,15 +7,9 @@ description: > Strict Mode - SyntaxError is thrown when the RHS of a dot property assignment utilizes WithStatement flags: [onlyStrict] -includes: [runTestCase.js] ---*/ -function testcase() { - try { + +assert.throws(SyntaxError, function() { eval("var obj = {}; obj.get = function (a) { with(a){} }; "); - return false; - } catch (e) { - return e instanceof SyntaxError; - } - } -runTestCase(testcase); +}); diff --git a/test/language/statements/with/12.10.1-16-s.js b/test/language/statements/with/12.10.1-16-s.js index 4bbd2d22bc90047ab78ec3859da1a908d16aebbb..5fe63c58faab60bae85ac6c87f7700f90d67cfce 100644 --- a/test/language/statements/with/12.10.1-16-s.js +++ b/test/language/statements/with/12.10.1-16-s.js @@ -7,15 +7,9 @@ description: > Strict Mode - SyntaxError is thrown when the RHS of an object indexer assignment utilizes WithStatement flags: [onlyStrict] -includes: [runTestCase.js] ---*/ -function testcase() { - try { + +assert.throws(SyntaxError, function() { eval("var obj = {}; obj['get'] = function (a) { with(a){} }; "); - return false; - } catch (e) { - return e instanceof SyntaxError; - } - } -runTestCase(testcase); +}); diff --git a/test/language/statements/with/12.10.1-2-s.js b/test/language/statements/with/12.10.1-2-s.js index 1fab7fe6d77eb220045055c2925965da814a7233..639f81413fa12e372e529c51b1a96215821cf346 100644 --- a/test/language/statements/with/12.10.1-2-s.js +++ b/test/language/statements/with/12.10.1-2-s.js @@ -7,11 +7,10 @@ description: > with statement in strict mode throws SyntaxError (nested function where container is strict) flags: [noStrict] -includes: [runTestCase.js] ---*/ -function testcase() { - try { + +assert.throws(SyntaxError, function() { // wrapping it in eval since this needs to be a syntax error. The // exception thrown must be a SyntaxError exception. eval("\ @@ -23,10 +22,4 @@ function testcase() { }\ }\ "); - return false; - } - catch (e) { - return (e instanceof SyntaxError); - } - } -runTestCase(testcase); +}); diff --git a/test/language/statements/with/12.10.1-3-s.js b/test/language/statements/with/12.10.1-3-s.js index 1a186ff2dca3ba73b0c80cace0ddf539cac0b1b9..922d035960cc32f5f8bca28e6f22ce79d8f0d0c3 100644 --- a/test/language/statements/with/12.10.1-3-s.js +++ b/test/language/statements/with/12.10.1-3-s.js @@ -7,11 +7,10 @@ description: > with statement in strict mode throws SyntaxError (nested strict function) flags: [noStrict] -includes: [runTestCase.js] ---*/ -function testcase() { - try { + +assert.throws(SyntaxError, function() { // wrapping it in eval since this needs to be a syntax error. The // exception thrown must be a SyntaxError exception. eval("\ @@ -23,10 +22,4 @@ function testcase() { }\ }\ "); - return false; - } - catch (e) { - return (e instanceof SyntaxError); - } - } -runTestCase(testcase); +}); diff --git a/test/language/statements/with/12.10.1-4-s.js b/test/language/statements/with/12.10.1-4-s.js index 0a1a151fc75a9b398407461ece52fbd100078e4f..04a25d49fbff038e56ee6c51cf1680d17abbc736 100644 --- a/test/language/statements/with/12.10.1-4-s.js +++ b/test/language/statements/with/12.10.1-4-s.js @@ -5,21 +5,13 @@ es5id: 12.10.1-4-s description: with statement in strict mode throws SyntaxError (strict Function) flags: [noStrict] -includes: [runTestCase.js] ---*/ -function testcase() { - try { + +assert.throws(SyntaxError, function() { var f = Function("\ \'use strict\'; \ var o = {}; \ with (o) {};\ "); - return false; - } - catch (e) { - return (e instanceof SyntaxError); - - } - } -runTestCase(testcase); +}); diff --git a/test/language/statements/with/12.10.1-7-s.js b/test/language/statements/with/12.10.1-7-s.js index d51fb001374122068301573ec70e72f0a8b71a67..35d562653db1c2857ceee236dec1cdbf8dae5941 100644 --- a/test/language/statements/with/12.10.1-7-s.js +++ b/test/language/statements/with/12.10.1-7-s.js @@ -8,20 +8,13 @@ description: > expression, where the container function is directly evaled from strict code) flags: [onlyStrict] -includes: [runTestCase.js] ---*/ -function testcase() { - try { + +assert.throws(SyntaxError, function() { eval("var f = function () {\ var o = {}; \ with (o) {}; \ }\ "); - return false; - } - catch (e) { - return (e instanceof SyntaxError); - } - } -runTestCase(testcase); +}); diff --git a/test/language/statements/with/12.10.1-8-s.js b/test/language/statements/with/12.10.1-8-s.js index 54779f38ceb7496d95e26c863184aa4733096dbb..3e1a8f52221c0ae9da938048a60970a512d4225b 100644 --- a/test/language/statements/with/12.10.1-8-s.js +++ b/test/language/statements/with/12.10.1-8-s.js @@ -7,11 +7,10 @@ description: > with statement in strict mode throws SyntaxError (function expression, where the container Function is strict) flags: [noStrict] -includes: [runTestCase.js] ---*/ -function testcase() { - try { + +assert.throws(SyntaxError, function() { Function("\ \'use strict\'; \ var f1 = function () {\ @@ -19,10 +18,4 @@ function testcase() { with (o) {}; \ }\ "); - return false; - } - catch (e) { - return (e instanceof SyntaxError); - } - } -runTestCase(testcase); +}); diff --git a/test/language/statements/with/12.10.1-9-s.js b/test/language/statements/with/12.10.1-9-s.js index d04d1f9079e028270b3e0c9ade4f7f80f1b6232a..614c0d64398d21bac8bb3985bcb8146704f28ea4 100644 --- a/test/language/statements/with/12.10.1-9-s.js +++ b/test/language/statements/with/12.10.1-9-s.js @@ -7,11 +7,10 @@ description: > with statement in strict mode throws SyntaxError (strict function expression) flags: [noStrict] -includes: [runTestCase.js] ---*/ -function testcase() { - try { + +assert.throws(SyntaxError, function() { eval("\ var f = function () {\ \'use strict\';\ @@ -19,10 +18,4 @@ function testcase() { with (o) {}; \ }\ "); - return false; - } - catch (e) { - return (e instanceof SyntaxError) ; - } - } -runTestCase(testcase); +}); diff --git a/test/language/types/reference/8.7.2-1-s.js b/test/language/types/reference/8.7.2-1-s.js index d9d2901081933a24caccb3ae26001951e6e1d5fb..702e61b1df496e2b6132210d1b57613463187aaf 100644 --- a/test/language/types/reference/8.7.2-1-s.js +++ b/test/language/types/reference/8.7.2-1-s.js @@ -7,15 +7,9 @@ description: > Strict Mode - ReferenceError is thrown if LeftHandSide evaluates to an unresolvable Reference flags: [onlyStrict] -includes: [runTestCase.js] ---*/ -function testcase() { - try { + +assert.throws(ReferenceError, function() { eval("_8_7_2_1 = 11;"); - return false; - } catch (e) { - return e instanceof ReferenceError; - } - } -runTestCase(testcase); +}); diff --git a/test/language/types/reference/8.7.2-3-s.js b/test/language/types/reference/8.7.2-3-s.js index c6471b43f15eb7664b5a5f8445aadca5c8aacf71..cee92c58b1749a92f226473794191d3833638a72 100644 --- a/test/language/types/reference/8.7.2-3-s.js +++ b/test/language/types/reference/8.7.2-3-s.js @@ -7,20 +7,12 @@ description: > Strict Mode - TypeError is thrown if LeftHandSide is a reference to a non-writable data property flags: [onlyStrict] -includes: [runTestCase.js] ---*/ -function testcase() { var _8_7_2_3 = {}; Object.defineProperty(_8_7_2_3, "b", { writable: false }); - - try { +assert.throws(TypeError, function() { _8_7_2_3.b = 11; - return false; - } catch (e) { - return e instanceof TypeError; - } - } -runTestCase(testcase); +}); diff --git a/test/language/types/reference/8.7.2-4-s.js b/test/language/types/reference/8.7.2-4-s.js index 899dcbf3fadfe2a404d2a7ea68bae05a853e76d0..4a33f5543c3aada54e72254aa795486fbea199b2 100644 --- a/test/language/types/reference/8.7.2-4-s.js +++ b/test/language/types/reference/8.7.2-4-s.js @@ -7,21 +7,13 @@ description: > Strict Mode - TypeError is thrown if LeftHandSide is a reference to an accessor property with no setter flags: [onlyStrict] -includes: [runTestCase.js] ---*/ -function testcase() { var _8_7_2_4 = {}; var _8_7_2_4_bValue = 1; Object.defineProperty(_8_7_2_4, "b", { get: function () { return _8_7_2_4_bValue; } }); - - try { +assert.throws(TypeError, function() { _8_7_2_4.b = 11; - return false; - } catch (e) { - return e instanceof TypeError; - } - } -runTestCase(testcase); +}); diff --git a/test/language/types/reference/8.7.2-5-s.js b/test/language/types/reference/8.7.2-5-s.js index f5dc14a5bf5280e900891777d7ce26efc74ae3a6..f7d41a4567b15d9b9b3b6b87feaa328aaf95e630 100644 --- a/test/language/types/reference/8.7.2-5-s.js +++ b/test/language/types/reference/8.7.2-5-s.js @@ -7,18 +7,10 @@ description: > Strict Mode - TypeError is thrown if LeftHandSide is a reference to a non-existent property of an non-extensible object flags: [onlyStrict] -includes: [runTestCase.js] ---*/ -function testcase() { var _8_7_2_5 = {}; Object.preventExtensions(_8_7_2_5); - - try { +assert.throws(TypeError, function() { _8_7_2_5.b = 11; - return false; - } catch (e) { - return e instanceof TypeError; - } - } -runTestCase(testcase); +});