js/src/tests/test262/ch11/11.7/11.7.1/S11.7.1_A3_T2.2.js

branch
TOR_BUG_3246
changeset 6
8bccb770b82d
equal deleted inserted replaced
-1:000000000000 0:051bc67e1dba
1 // Copyright 2009 the Sputnik authors. All rights reserved.
2 // This code is governed by the BSD license found in the LICENSE file.
3
4 /**
5 * Operator x << y returns ToNumber(x) << ToNumber(y)
6 *
7 * @path ch11/11.7/11.7.1/S11.7.1_A3_T2.2.js
8 * @description Type(x) is different from Type(y) and both types vary between Number (primitive or object) and String (primitive and object)
9 */
10
11 //CHECK#1
12 if ("1" << 1 !== 2) {
13 $ERROR('#1: "1" << 1 === 2. Actual: ' + ("1" << 1));
14 }
15
16 //CHECK#2
17 if (1 << "1" !== 2) {
18 $ERROR('#2: 1 << "1" === 2. Actual: ' + (1 << "1"));
19 }
20
21 //CHECK#3
22 if (new String("1") << 1 !== 2) {
23 $ERROR('#3: new String("1") << 1 === 2. Actual: ' + (new String("1") << 1));
24 }
25
26 //CHECK#4
27 if (1 << new String("1") !== 2) {
28 $ERROR('#4: 1 << new String("1") === 2. Actual: ' + (1 << new String("1")));
29 }
30
31 //CHECK#5
32 if ("1" << new Number(1) !== 2) {
33 $ERROR('#5: "1" << new Number(1) === 2. Actual: ' + ("1" << new Number(1)));
34 }
35
36 //CHECK#6
37 if (new Number(1) << "1" !== 2) {
38 $ERROR('#6: new Number(1) << "1" === 2. Actual: ' + (new Number(1) << "1"));
39 }
40
41 //CHECK#7
42 if (new String("1") << new Number(1) !== 2) {
43 $ERROR('#7: new String("1") << new Number(1) === 2. Actual: ' + (new String("1") << new Number(1)));
44 }
45
46 //CHECK#8
47 if (new Number(1) << new String("1") !== 2) {
48 $ERROR('#8: new Number(1) << new String("1") === 2. Actual: ' + (new Number(1) << new String("1")));
49 }
50
51 //CHECK#9
52 if ("x" << 1 !== 0) {
53 $ERROR('#9: "x" << 1 === 0. Actual: ' + ("x" << 1));
54 }
55
56 //CHECK#10
57 if (1 << "x" !== 1) {
58 $ERROR('#10: 1 << "x" === 1. Actual: ' + (1 << "x"));
59 }
60

mercurial