diff options
Diffstat (limited to 'js/src/tests/test262/language/expressions/left-shift/S11.7.1_A3_T2.6.js')
-rw-r--r-- | js/src/tests/test262/language/expressions/left-shift/S11.7.1_A3_T2.6.js | 32 |
1 files changed, 32 insertions, 0 deletions
diff --git a/js/src/tests/test262/language/expressions/left-shift/S11.7.1_A3_T2.6.js b/js/src/tests/test262/language/expressions/left-shift/S11.7.1_A3_T2.6.js new file mode 100644 index 0000000000..1e41f5a234 --- /dev/null +++ b/js/src/tests/test262/language/expressions/left-shift/S11.7.1_A3_T2.6.js @@ -0,0 +1,32 @@ +// Copyright 2009 the Sputnik authors. All rights reserved. +// This code is governed by the BSD license found in the LICENSE file. + +/*--- +info: Operator x << y returns ToNumber(x) << ToNumber(y) +es5id: 11.7.1_A3_T2.6 +description: > + Type(x) is different from Type(y) and both types vary between + String (primitive or object) and Undefined +---*/ + +//CHECK#1 +if ("1" << undefined !== 1) { + throw new Test262Error('#1: "1" << undefined === 1. Actual: ' + ("1" << undefined)); +} + +//CHECK#2 +if (undefined << "1" !== 0) { + throw new Test262Error('#2: undefined << "1" === 0. Actual: ' + (undefined << "1")); +} + +//CHECK#3 +if (new String("1") << undefined !== 1) { + throw new Test262Error('#3: new String("1") << undefined === 1. Actual: ' + (new String("1") << undefined)); +} + +//CHECK#4 +if (undefined << new String("1") !== 0) { + throw new Test262Error('#4: undefined << new String("1") === 0. Actual: ' + (undefined << new String("1"))); +} + +reportCompare(0, 0); |