OLD | NEW |
1 # Copyright 2013 the V8 project authors. All rights reserved. | 1 # Copyright 2013 the V8 project authors. All rights reserved. |
2 # Copyright (C) 2005, 2006, 2007, 2008, 2009 Apple Inc. All rights reserved. | 2 # Copyright (C) 2005, 2006, 2007, 2008, 2009 Apple Inc. All rights reserved. |
3 # | 3 # |
4 # Redistribution and use in source and binary forms, with or without | 4 # Redistribution and use in source and binary forms, with or without |
5 # modification, are permitted provided that the following conditions | 5 # modification, are permitted provided that the following conditions |
6 # are met: | 6 # are met: |
7 # 1. Redistributions of source code must retain the above copyright | 7 # 1. Redistributions of source code must retain the above copyright |
8 # notice, this list of conditions and the following disclaimer. | 8 # notice, this list of conditions and the following disclaimer. |
9 # 2. Redistributions in binary form must reproduce the above copyright | 9 # 2. Redistributions in binary form must reproduce the above copyright |
10 # notice, this list of conditions and the following disclaimer in the | 10 # notice, this list of conditions and the following disclaimer in the |
(...skipping 28 matching lines...) Expand all Loading... |
39 PASS currentHolder[4] is "extra value" | 39 PASS currentHolder[4] is "extra value" |
40 | 40 |
41 Ensure the holder for our array is indeed an array | 41 Ensure the holder for our array is indeed an array |
42 PASS Array.isArray(currentHolder) is true | 42 PASS Array.isArray(currentHolder) is true |
43 PASS currentHolder.length is 5 | 43 PASS currentHolder.length is 5 |
44 | 44 |
45 Ensure that we always get the same holder | 45 Ensure that we always get the same holder |
46 PASS currentHolder is lastHolder | 46 PASS currentHolder is lastHolder |
47 | 47 |
48 Ensure that returning undefined has removed the property 0 from the holder durin
g filtering. | 48 Ensure that returning undefined has removed the property 0 from the holder durin
g filtering. |
49 FAIL currentHolder.hasOwnProperty(0) should be false. Was true. | 49 PASS currentHolder.hasOwnProperty(0) is false |
50 | 50 |
51 Ensure the holder for our array is indeed an array | 51 Ensure the holder for our array is indeed an array |
52 PASS Array.isArray(currentHolder) is true | 52 PASS Array.isArray(currentHolder) is true |
53 PASS currentHolder.length is 5 | 53 PASS currentHolder.length is 5 |
54 | 54 |
55 Ensure that we always get the same holder | 55 Ensure that we always get the same holder |
56 PASS currentHolder is lastHolder | 56 PASS currentHolder is lastHolder |
57 | 57 |
58 Ensure that changing the value of a property is reflected while filtering. | 58 Ensure that changing the value of a property is reflected while filtering. |
59 PASS currentHolder[2] is "a replaced value" | 59 PASS currentHolder[2] is "a replaced value" |
60 | 60 |
61 Ensure that the changed value is reflected in the arguments passed to the revive
r | 61 Ensure that the changed value is reflected in the arguments passed to the revive
r |
62 PASS value is currentHolder[2] | 62 PASS value is currentHolder[2] |
63 | 63 |
64 Ensure the holder for our array is indeed an array | 64 Ensure the holder for our array is indeed an array |
65 PASS Array.isArray(currentHolder) is true | 65 PASS Array.isArray(currentHolder) is true |
66 PASS currentHolder.length is 5 | 66 PASS currentHolder.length is 5 |
67 | 67 |
68 Ensure that we always get the same holder | 68 Ensure that we always get the same holder |
69 PASS currentHolder is lastHolder | 69 PASS currentHolder is lastHolder |
70 | 70 |
71 Ensure that we visited a value that we have deleted, and that deletion is reflec
ted while filtering. | 71 Ensure that we visited a value that we have deleted, and that deletion is reflec
ted while filtering. |
72 PASS currentHolder.hasOwnProperty(3) is false | 72 PASS currentHolder.hasOwnProperty(3) is false |
73 | 73 |
74 Ensure that when visiting a deleted property value is undefined | 74 Ensure that when visiting a deleted property value is undefined |
75 PASS value is undefined. | 75 PASS value is undefined. |
76 | 76 |
77 Ensure the holder for our array is indeed an array | 77 Ensure the holder for our array is indeed an array |
78 PASS Array.isArray(currentHolder) is true | 78 PASS Array.isArray(currentHolder) is true |
79 FAIL currentHolder.length should be 3. Was 4. | 79 PASS currentHolder.length is 4 |
80 | 80 |
81 Ensure that we always get the same holder | 81 Ensure that we always get the same holder |
82 PASS currentHolder is lastHolder | 82 PASS currentHolder is lastHolder |
83 FAIL Did not call reviver for deleted property | 83 PASS Ensured that property was visited despite Array length being reduced. |
| 84 PASS value is undefined. |
84 | 85 |
85 Ensure that we created the root holder as specified in ES5 | 86 Ensure that we created the root holder as specified in ES5 |
86 PASS '' in lastHolder is true | 87 PASS '' in lastHolder is true |
87 PASS result is lastHolder[''] | 88 PASS result is lastHolder[''] |
88 | 89 |
89 Ensure that a deleted value is revived if the reviver function returns a value | 90 Ensure that a deleted value is revived if the reviver function returns a value |
90 FAIL result.hasOwnProperty(3) should be true. Was false. | 91 PASS result.hasOwnProperty(3) is true |
91 | 92 |
92 Test behaviour of revivor used in conjunction with an object | 93 Test behaviour of revivor used in conjunction with an object |
93 PASS currentHolder != globalObject is true | 94 PASS currentHolder != globalObject is true |
94 | 95 |
95 Ensure that the holder already has all the properties present at the start of fi
ltering | 96 Ensure that the holder already has all the properties present at the start of fi
ltering |
96 PASS currentHolder['a property'] is "a value" | 97 PASS currentHolder['a property'] is "a value" |
97 PASS currentHolder['another property'] is "another value" | 98 PASS currentHolder['another property'] is "another value" |
98 PASS currentHolder['and another property'] is "and another value" | 99 PASS currentHolder['and another property'] is "and another value" |
99 PASS currentHolder['to delete'] is "will be deleted" | 100 PASS currentHolder['to delete'] is "will be deleted" |
100 PASS currentHolder != globalObject is true | 101 PASS currentHolder != globalObject is true |
101 | 102 |
102 Ensure that we get the same holder object for each property | 103 Ensure that we get the same holder object for each property |
103 PASS currentHolder is lastHolder | 104 PASS currentHolder is lastHolder |
104 | 105 |
105 Ensure that returning undefined has correctly removed the property 'a property'
from the holder object | 106 Ensure that returning undefined has correctly removed the property 'a property'
from the holder object |
106 PASS currentHolder.hasOwnProperty('a property') is false | 107 PASS currentHolder.hasOwnProperty('a property') is false |
107 PASS currentHolder != globalObject is true | 108 PASS currentHolder != globalObject is true |
108 | 109 |
109 Ensure that we get the same holder object for each property | 110 Ensure that we get the same holder object for each property |
110 PASS currentHolder is lastHolder | 111 PASS currentHolder is lastHolder |
111 Ensure that changing the value of a property is reflected while filtering. | 112 Ensure that changing the value of a property is reflected while filtering. |
112 PASS currentHolder['and another property'] is "a replaced value" | 113 PASS currentHolder['and another property'] is "a replaced value" |
113 | 114 |
114 Ensure that the changed value is reflected in the arguments passed to the revive
r | 115 Ensure that the changed value is reflected in the arguments passed to the revive
r |
115 PASS value is "a replaced value" | 116 PASS value is "a replaced value" |
| 117 PASS currentHolder != globalObject is true |
| 118 |
| 119 Ensure that we get the same holder object for each property |
| 120 PASS currentHolder is lastHolder |
| 121 |
| 122 Ensure that we visited a value that we have deleted, and that deletion is reflec
ted while filtering. |
| 123 PASS currentHolder.hasOwnProperty('to delete') is false |
| 124 |
| 125 Ensure that when visiting a deleted property value is undefined |
| 126 PASS value is undefined. |
116 | 127 |
117 Ensure that we created the root holder as specified in ES5 | 128 Ensure that we created the root holder as specified in ES5 |
118 PASS lastHolder.hasOwnProperty('') is true | 129 PASS lastHolder.hasOwnProperty('') is true |
119 PASS result.hasOwnProperty('a property') is false | 130 PASS result.hasOwnProperty('a property') is false |
120 FAIL result.hasOwnProperty('to delete') should be true. Was false. | 131 PASS result.hasOwnProperty('to delete') is true |
121 PASS result is lastHolder[''] | 132 PASS result is lastHolder[''] |
122 | 133 |
123 Test behaviour of revivor that introduces a cycle | 134 Test behaviour of revivor that introduces a cycle |
124 PASS JSON.parse("[0,1]", reviveAddsCycle) threw exception RangeError: Maximum ca
ll stack size exceeded. | 135 PASS JSON.parse("[0,1]", reviveAddsCycle) threw exception RangeError: Maximum ca
ll stack size exceeded. |
125 | 136 |
126 Test behaviour of revivor that introduces a new array classed object (the result
of a regex) | 137 Test behaviour of revivor that introduces a new array classed object (the result
of a regex) |
127 PASS JSON.stringify(JSON.parse("[0,1]", reviveIntroducesNewArrayLikeObject)) is
'[0,["a","a"]]' | 138 PASS JSON.stringify(JSON.parse("[0,1]", reviveIntroducesNewArrayLikeObject)) is
'[0,["a","a"]]' |
128 PASS successfullyParsed is true | 139 PASS successfullyParsed is true |
129 | 140 |
130 TEST COMPLETE | 141 TEST COMPLETE |
131 | 142 |
OLD | NEW |