blob: f36d14d07422cb9849f395d8d36c05988522c434 [file] [log] [blame]
Ben Murdoch014dc512016-03-22 12:00:34 +00001// Copyright 2015 the V8 project authors. All rights reserved.
2// Use of this source code is governed by a BSD-style license that can be
3// found in the LICENSE file.
4
5(function TestConstants() {
6 var o = {
7 p: 1,
8 p: 2,
9 };
10 assertEquals(2, o.p);
11})();
12
13
14(function TestMaterialized() {
15 var o = {
16 p: [1],
17 p: [2],
18 };
19 assertEquals(2, o.p[0]);
20})();
21
22
23(function TestMaterialize2() {
24 var o = {
25 p: function() {},
26 p: 2,
27 };
28 assertEquals(2, o.p);
29})();
30
31
32
33(function TestComputed() {
34 var o = {
35 p: (function() { return 1; })(),
36 p: (function() { return 2; })(),
37 };
38 assertEquals(2, o.p);
39})();
40
41
42(function TestComputed2() {
43 var o = {
44 p: (function() { return 1; })(),
45 p: 2,
46 };
47 assertEquals(2, o.p);
48})();
49
50
51
52(function TestGetter() {
53 var o = {
54 get p() { return 1; },
55 get p() { return 2; },
56 };
57 assertEquals(2, o.p);
58})();
59
60
61(function TestGetterSetter() {
62 var o = {
63 get p() { return 1; },
64 set p(_) {},
65 };
66 assertEquals(1, o.p);
67
68 o = {
69 set p(_) {},
70 get p() { return 2; },
71 };
72 assertEquals(2, o.p);
73})();
74
75
76(function TestCombined() {
77 var o = {
78 get p() { return 1; },
79 p: 2,
80 };
81 assertEquals(2, o.p);
82
83 o = {
84 get p() { return 1; },
85 p: 2,
86 get p() { return 3; },
87 };
88 assertEquals(3, o.p);
89
90 o = {
91 get p() { return 1; },
92 p: 2,
93 set p(_) {},
94 };
95 assertEquals(undefined, o.p);
96})();