diff options
Diffstat (limited to 'test/built-ins/TypedArray/prototype/filter/BigInt/values-are-not-cached.js')
-rw-r--r-- | test/built-ins/TypedArray/prototype/filter/BigInt/values-are-not-cached.js | 31 |
1 files changed, 31 insertions, 0 deletions
diff --git a/test/built-ins/TypedArray/prototype/filter/BigInt/values-are-not-cached.js b/test/built-ins/TypedArray/prototype/filter/BigInt/values-are-not-cached.js new file mode 100644 index 000000000..25b7eb24a --- /dev/null +++ b/test/built-ins/TypedArray/prototype/filter/BigInt/values-are-not-cached.js @@ -0,0 +1,31 @@ +// Copyright (C) 2016 the V8 project authors. All rights reserved. +// This code is governed by the BSD license found in the LICENSE file. +/*--- +esid: sec-%typedarray%.prototype.filter +description: > + Integer indexed values are not cached before interaction +info: | + 22.2.3.9 %TypedArray%.prototype.filter ( callbackfn [ , thisArg ] ) + + ... + 9. Repeat, while k < len + ... + c. Let selected be ToBoolean(? Call(callbackfn, T, « kValue, k, O »)). + ... +includes: [testBigIntTypedArray.js] +features: [BigInt, TypedArray] +---*/ + +testWithBigIntTypedArrayConstructors(function(TA) { + var sample = new TA(convertToBigInt([42, 43, 44])); + + sample.filter(function(v, i) { + if (i < sample.length - 1) { + sample[i+1] = convertToBigInt(42); + } + + assert.sameValue( + v, convertToBigInt(42), "method does not cache values before callbackfn calls" + ); + }); +}); |