Changeset 215360 in webkit
- Timestamp:
- Apr 14, 2017 2:08:51 AM (7 years ago)
- Location:
- trunk/JSTests
- Files:
-
- 2 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/JSTests/ChangeLog
r215359 r215360 1 2017-04-14 Oleksandr Skachkov <gskachkov@gmail.com> 2 3 Safari 10.1 JSON.parse returns incorrect object for numeric keys with decimal values 4 https://bugs.webkit.org/show_bug.cgi?id=170442 5 6 Reviewed by Yusuke Suzuki. 7 8 * stress/object-number-properties.js: 9 1 10 2017-04-13 Yusuke Suzuki <utatane.tea@gmail.com> 2 11 -
trunk/JSTests/stress/object-number-properties.js
r214714 r215360 81 81 assert(baz[250], "A"); 82 82 assert(baz[1001], "B"); 83 84 var bar = JSON.parse('{"0":97.1,"1000":96.5,"2000":96.1,"3000":97.4,"4000":90.4}'); 85 86 assert(Object.keys(bar).length, 5); 87 assert(bar[0], 97.1); 88 assert(bar[1000], 96.5); 89 assert(bar[2000], 96.1); 90 assert(bar[3000], 97.4); 91 assert(bar[4000], 90.4); 92 93 bar = JSON.parse('{"0":97.1, "250": 65.3, "1000":96.5,"2000":96.1,"3000":97.4,"4000":90.4}'); 94 95 assert(Object.keys(bar).length, 6); 96 97 assert(bar[0], 97.1); 98 assert(bar[250], 65.3); 99 assert(bar[1000], 96.5); 100 assert(bar[2000], 96.1); 101 assert(bar[3000], 97.4); 102 assert(bar[4000], 90.4); 103 104 bar = JSON.parse('{"0":97.1, "250": null, "1000":96.5,"2000":96.1,"3000":97.4,"4000":90.4}'); 105 106 assert(Object.keys(bar).length, 6); 107 108 assert(bar[0], 97.1); 109 assert(bar[250], null); 110 assert(bar[1000], 96.5); 111 assert(bar[2000], 96.1); 112 assert(bar[3000], 97.4); 113 assert(bar[4000], 90.4); 114 115 116 bar = eval('(()=>({"0":97.1, "250": 65.3, "1000":96.5,"2000":96.1,"3000":97.4,"4000":90.4}))();'); 117 118 assert(Object.keys(bar).length, 6); 119 120 assert(bar[0], 97.1); 121 assert(bar[250], 65.3); 122 assert(bar[1000], 96.5); 123 assert(bar[2000], 96.1); 124 assert(bar[3000], 97.4); 125 assert(bar[4000], 90.4); 126 127 bar = eval('(()=>({"0":97.1, "250": null, "1000":96.5,"2000":96.1,"3000":97.4,"4000":90.4}))();'); 128 129 assert(Object.keys(bar).length, 6); 130 131 assert(bar[0], 97.1); 132 assert(bar[250], null); 133 assert(bar[1000], 96.5); 134 assert(bar[2000], 96.1); 135 assert(bar[3000], 97.4); 136 assert(bar[4000], 90.4); 137 138 139 bar = eval('(()=>({"0":97.1, "250": NaN, "1000":96.5,"2000":96.1,"3000":97.4,"4000":90.4}))();'); 140 141 assert(Object.keys(bar).length, 6); 142 143 assert(bar[0], 97.1); 144 assert(isNaN(bar[250]), true); 145 assert(bar[1000], 96.5); 146 assert(bar[2000], 96.1); 147 assert(bar[3000], 97.4); 148 assert(bar[4000], 90.4);
Note: See TracChangeset
for help on using the changeset viewer.