(everyHelper, someHelper)
| 1284 | ArrayEntriesHelper, ArrayKeysHelper, ArrayValuesHelper); |
| 1285 | |
| 1286 | function EverySome(everyHelper, someHelper) { |
| 1287 | for (let ctor of ctors) { |
| 1288 | const gsab = CreateGrowableSharedArrayBuffer(4 * ctor.BYTES_PER_ELEMENT, |
| 1289 | 8 * ctor.BYTES_PER_ELEMENT); |
| 1290 | const fixedLength = new ctor(gsab, 0, 4); |
| 1291 | const fixedLengthWithOffset = new ctor(gsab, 2 * ctor.BYTES_PER_ELEMENT, 2); |
| 1292 | const lengthTracking = new ctor(gsab, 0); |
| 1293 | const lengthTrackingWithOffset = new ctor(gsab, 2 * ctor.BYTES_PER_ELEMENT); |
| 1294 | |
| 1295 | // Write some data into the array. |
| 1296 | const taWrite = new ctor(gsab); |
| 1297 | for (let i = 0; i < 4; ++i) { |
| 1298 | WriteToTypedArray(taWrite, i, 2 * i); |
| 1299 | } |
| 1300 | |
| 1301 | // Orig. array: [0, 2, 4, 6] |
| 1302 | // [0, 2, 4, 6] << fixedLength |
| 1303 | // [4, 6] << fixedLengthWithOffset |
| 1304 | // [0, 2, 4, 6, ...] << lengthTracking |
| 1305 | // [4, 6, ...] << lengthTrackingWithOffset |
| 1306 | |
| 1307 | function div3(n) { |
| 1308 | return Number(n) % 3 == 0; |
| 1309 | } |
| 1310 | |
| 1311 | function even(n) { |
| 1312 | return Number(n) % 2 == 0; |
| 1313 | } |
| 1314 | |
| 1315 | function over10(n) { |
| 1316 | return Number(n) > 10; |
| 1317 | } |
| 1318 | |
| 1319 | assertFalse(everyHelper(fixedLength, div3)); |
| 1320 | assertTrue(everyHelper(fixedLength, even)); |
| 1321 | assertTrue(someHelper(fixedLength, div3)); |
| 1322 | assertFalse(someHelper(fixedLength, over10)); |
| 1323 | |
| 1324 | assertFalse(everyHelper(fixedLengthWithOffset, div3)); |
| 1325 | assertTrue(everyHelper(fixedLengthWithOffset, even)); |
| 1326 | assertTrue(someHelper(fixedLengthWithOffset, div3)); |
| 1327 | assertFalse(someHelper(fixedLengthWithOffset, over10)); |
| 1328 | |
| 1329 | assertFalse(everyHelper(lengthTracking, div3)); |
| 1330 | assertTrue(everyHelper(lengthTracking, even)); |
| 1331 | assertTrue(someHelper(lengthTracking, div3)); |
| 1332 | assertFalse(someHelper(lengthTracking, over10)); |
| 1333 | |
| 1334 | assertFalse(everyHelper(lengthTrackingWithOffset, div3)); |
| 1335 | assertTrue(everyHelper(lengthTrackingWithOffset, even)); |
| 1336 | assertTrue(someHelper(lengthTrackingWithOffset, div3)); |
| 1337 | assertFalse(someHelper(lengthTrackingWithOffset, over10)); |
| 1338 | |
| 1339 | // Grow. |
| 1340 | gsab.grow(6 * ctor.BYTES_PER_ELEMENT); |
| 1341 | for (let i = 0; i < 6; ++i) { |
| 1342 | WriteToTypedArray(taWrite, i, 2 * i); |
| 1343 | } |
no test coverage detected
searching dependent graphs…