summaryrefslogtreecommitdiffstats
path: root/js/src/tests/test262/ch12/12.14/S12.14_A18_T6.js
diff options
context:
space:
mode:
authorMatt A. Tobin <mattatobin@localhost.localdomain>2018-02-02 04:16:08 -0500
committerMatt A. Tobin <mattatobin@localhost.localdomain>2018-02-02 04:16:08 -0500
commit5f8de423f190bbb79a62f804151bc24824fa32d8 (patch)
tree10027f336435511475e392454359edea8e25895d /js/src/tests/test262/ch12/12.14/S12.14_A18_T6.js
parent49ee0794b5d912db1f95dce6eb52d781dc210db5 (diff)
downloadUXP-5f8de423f190bbb79a62f804151bc24824fa32d8.tar
UXP-5f8de423f190bbb79a62f804151bc24824fa32d8.tar.gz
UXP-5f8de423f190bbb79a62f804151bc24824fa32d8.tar.lz
UXP-5f8de423f190bbb79a62f804151bc24824fa32d8.tar.xz
UXP-5f8de423f190bbb79a62f804151bc24824fa32d8.zip
Add m-esr52 at 52.6.0
Diffstat (limited to 'js/src/tests/test262/ch12/12.14/S12.14_A18_T6.js')
-rw-r--r--js/src/tests/test262/ch12/12.14/S12.14_A18_T6.js55
1 files changed, 55 insertions, 0 deletions
diff --git a/js/src/tests/test262/ch12/12.14/S12.14_A18_T6.js b/js/src/tests/test262/ch12/12.14/S12.14_A18_T6.js
new file mode 100644
index 000000000..ca17450b3
--- /dev/null
+++ b/js/src/tests/test262/ch12/12.14/S12.14_A18_T6.js
@@ -0,0 +1,55 @@
+// Copyright 2009 the Sputnik authors. All rights reserved.
+// This code is governed by the BSD license found in the LICENSE file.
+
+/**
+ * Catching objects with try/catch/finally statement
+ *
+ * @path ch12/12.14/S12.14_A18_T6.js
+ * @description Catching Object
+ */
+
+var myObj = {p1: 'a',
+ p2: 'b',
+ p3: 'c',
+ value: 'myObj_value',
+ valueOf : function(){return 'obj_valueOf';},
+ parseInt : function(){return 'obj_parseInt';},
+ NaN : 'obj_NaN',
+ Infinity : 'obj_Infinity',
+ eval : function(){return 'obj_eval';},
+ parseFloat : function(){return 'obj_parseFloat';},
+ isNaN : function(){return 'obj_isNaN';},
+ isFinite : function(){return 'obj_isFinite';},
+ i:7,
+}
+
+try{
+ throw myObj;
+}
+catch(e){
+// CHECK#1
+ if (e.p1!=="a") $ERROR('#1: e.p1==="a". Actual: e.p1==='+ e.p1 );
+// CHECK#2
+ if (e.value!=='myObj_value') $ERROR('#2: e.value===\'myObj_value\'. Actual: e.value==='+ e.value );
+// CHECK#3
+ if (e.eval()!=='obj_eval') $ERROR('#3: e.eval()===\'obj_eval\'. Actual: e.eval()==='+ e.eval() );
+}
+
+// CHECK#4
+myObj.i=6;
+try{
+ throw myObj;
+}
+catch(e){}
+if (myObj.i!==6) $ERROR('#4: Handling of catch must be correct');
+
+// CHECK#5
+myObj.i=6;
+try{
+ throw myObj;
+}
+catch(e){
+ e.i=10;
+}
+if (myObj.i!==10) $ERROR('#5: Handling of catch must be correct');
+