~ubuntu-branches/ubuntu/saucy/mozjs17/saucy

« back to all changes in this revision

Viewing changes to js/src/jit-test/tests/basic/testInitSingletons.js

  • Committer: Package Import Robot
  • Author(s): Rico Tzschichholz
  • Date: 2013-05-25 12:24:23 UTC
  • Revision ID: package-import@ubuntu.com-20130525122423-zmxucrhtensw90xy
Tags: upstream-17.0.0
ImportĀ upstreamĀ versionĀ 17.0.0

Show diffs side-by-side

added added

removed removed

Lines of Context:
 
1
 
 
2
var x = [1,2.5,"three",true,false,null,[1,2,3],{a:0,b:1}];
 
3
assertEq(String(x), "1,2.5,three,true,false,,1,2,3,[object Object]");
 
4
assertEq(x.length, 8);
 
5
assertEq(x[7].a, 0);
 
6
assertEq(x[7].b, 1);
 
7
 
 
8
var y = {a:0,a:1,a:2};
 
9
assertEq(y.a,2);
 
10
 
 
11
var z = {a:0,b:1,__proto__:{c:2,d:3}};
 
12
assertEq(z.a,0);
 
13
assertEq(z.b,1);
 
14
assertEq(z.c,2);
 
15
assertEq(z.d,3);
 
16
 
 
17
function foo() {
 
18
  var q = eval("[1,2,3]");
 
19
  var r = eval("[1,2,3]");
 
20
  assertEq(q === r, false);
 
21
}
 
22
foo();
 
23
 
 
24
var q = {0x4fffffff: 0, 0x7fffffff: 1, 0xffffffff: 2};
 
25
assertEq(q[1342177279], 0);
 
26
assertEq(q[2147483647], 1);
 
27
assertEq(q[4294967295], 2);
 
28
 
 
29
try {
 
30
  [1,2,3,{a:0,b:1}].foo.bar;
 
31
} catch (e) { assertEq(e.message.search("\.foo is undefined") != -1, true); }
 
32
 
 
33
var a = [1 + 1, 3 * 2, 6 - 5, 14 % 6, 15 / 5, 1 << 3, 
 
34
         8 >> 2, 5 | 2, 5 ^ 3, ~3, -3,"a" + "b",  !true, !false];
 
35
assertEq(String(a), "2,6,1,2,3,8,2,7,6,-4,-3,ab,false,true");
 
36
assertEq(a.length, 14);
 
37
 
 
38
var b = {
 
39
    a: 1 + 1,
 
40
    b: 3 * 2,
 
41
    c: 6 - 5,
 
42
    d: 14 % 6,
 
43
    e: 15 / 5,
 
44
    f: 1 << 3,
 
45
    g: 8 >> 2,
 
46
    h: 5 | 2,
 
47
    i: 5 ^ 3,
 
48
    j: ~3,
 
49
    k: -3,
 
50
    l: "a" + "b",
 
51
    m: !true,
 
52
    n: !false,
 
53
}
 
54
 
 
55
var char = "a".charCodeAt(0);
 
56
for (var i = 0; i < a.length; i++) {
 
57
    assertEq(b[String.fromCharCode(char)], a[i]);
 
58
    char++;
 
59
}