diff options
Diffstat (limited to 'js/src/tests/test262/language/statements/block/S12.1_A2.js')
-rw-r--r-- | js/src/tests/test262/language/statements/block/S12.1_A2.js | 38 |
1 files changed, 38 insertions, 0 deletions
diff --git a/js/src/tests/test262/language/statements/block/S12.1_A2.js b/js/src/tests/test262/language/statements/block/S12.1_A2.js new file mode 100644 index 0000000000..39fb4edb96 --- /dev/null +++ b/js/src/tests/test262/language/statements/block/S12.1_A2.js @@ -0,0 +1,38 @@ +// Copyright 2009 the Sputnik authors. All rights reserved. +// This code is governed by the BSD license found in the LICENSE file. + +/*--- +info: | + The production StatementList Statement is evaluated as follows + 1. Evaluate Statement. + 2. If an exception was thrown, return (throw, V, empty) where V is the exception +es5id: 12.1_A2 +description: Throwing exception within a Block +---*/ + +////////////////////////////////////////////////////////////////////////////// +//CHECK#1 +assert.throws(ReferenceError, function() { + { + x(); + } +}); + +// +////////////////////////////////////////////////////////////////////////////// + +////////////////////////////////////////////////////////////////////////////// +//CHECK#2 +try { + throw "catchme"; + throw new Test262Error('#2: throw "catchme" lead to throwing exception'); +} catch (e) { + if (e!=="catchme") { + throw new Test262Error('#2.1: Exception === "catchme". Actual: Exception ==='+ e ); + } +} + +// +////////////////////////////////////////////////////////////////////////////// + +reportCompare(0, 0); |