| 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 |