Index: test/mjsunit/harmony/typedarray-copywithin.js |
diff --git a/test/mjsunit/harmony/typedarray-copywithin.js b/test/mjsunit/harmony/typedarray-copywithin.js |
deleted file mode 100644 |
index cccbc42f5dd35384e124b703d0c1f1bd19964a70..0000000000000000000000000000000000000000 |
--- a/test/mjsunit/harmony/typedarray-copywithin.js |
+++ /dev/null |
@@ -1,175 +0,0 @@ |
-// Copyright 2015 the V8 project authors. All rights reserved. |
-// Use of this source code is governed by a BSD-style license that can be |
-// found in the LICENSE file. |
- |
-// Flags: --harmony-arrays |
- |
-var typedArrayConstructors = [ |
- Uint8Array, |
- Int8Array, |
- Uint16Array, |
- Int16Array, |
- Uint32Array, |
- Int32Array, |
- Uint8ClampedArray, |
- Float32Array, |
- Float64Array]; |
- |
-function CheckEachTypedArray(fn) { |
- typedArrayConstructors.forEach(fn); |
-} |
- |
-CheckEachTypedArray(function copyWithinArity(constructor) { |
- assertEquals(new constructor([]).copyWithin.length, 2); |
-}); |
- |
- |
-CheckEachTypedArray(function copyWithinTargetAndStart(constructor) { |
- // works with two arguments |
- assertArrayEquals([4, 5, 3, 4, 5], |
- new constructor([1, 2, 3, 4, 5]).copyWithin(0, 3)); |
- assertArrayEquals([1, 4, 5, 4, 5], |
- new constructor([1, 2, 3, 4, 5]).copyWithin(1, 3)); |
- assertArrayEquals([1, 3, 4, 5, 5], |
- new constructor([1, 2, 3, 4, 5]).copyWithin(1, 2)); |
- assertArrayEquals([1, 2, 3, 4, 5], |
- new constructor([1, 2, 3, 4, 5]).copyWithin(2, 2)); |
-}); |
- |
- |
-CheckEachTypedArray(function copyWithinTargetStartAndEnd(constructor) { |
- // works with three arguments |
- assertArrayEquals(new constructor([1, 2, 3, 4, 5]).copyWithin(0, 3, 4), |
- [4, 2, 3, 4, 5]); |
- assertArrayEquals(new constructor([1, 2, 3, 4, 5]).copyWithin(1, 3, 4), |
- [1, 4, 3, 4, 5]); |
- assertArrayEquals(new constructor([1, 2, 3, 4, 5]).copyWithin(1, 2, 4), |
- [1, 3, 4, 4, 5]); |
-}); |
- |
- |
-CheckEachTypedArray(function copyWithinNegativeRelativeOffsets(constructor) { |
- // works with negative arguments |
- assertArrayEquals([4, 5, 3, 4, 5], |
- new constructor([1, 2, 3, 4, 5]).copyWithin(0, -2)); |
- assertArrayEquals([4, 2, 3, 4, 5], |
- new constructor([1, 2, 3, 4, 5]).copyWithin(0, -2, -1)); |
- assertArrayEquals([1, 3, 3, 4, 5], |
- new constructor([1, 2, 3, 4, 5]).copyWithin(-4, -3, -2)); |
- assertArrayEquals([1, 3, 4, 4, 5], |
- new constructor([1, 2, 3, 4, 5]).copyWithin(-4, -3, -1)); |
- assertArrayEquals([1, 3, 4, 5, 5], |
- new constructor([1, 2, 3, 4, 5]).copyWithin(-4, -3)); |
- // test with arguments equal to -this.length |
- assertArrayEquals([1, 2, 3, 4, 5], |
- new constructor([1, 2, 3, 4, 5]).copyWithin(-5, 0)); |
-}); |
- |
- |
-CheckEachTypedArray(function mustBeTypedArray(constructor) { |
- // throws on non-TypedArray values |
- assertThrows(function() { |
- return constructor.prototype.copyWithin.call(null, 0, 3); |
- }, TypeError); |
- assertThrows(function() { |
- return constructor.prototype.copyWithin.call(undefined, 0, 3); |
- }, TypeError); |
- assertThrows(function() { |
- return constructor.prototype.copyWithin.call(34, 0, 3); |
- }, TypeError); |
- assertThrows(function() { |
- return constructor.prototype.copyWithin.call([1, 2, 3, 4, 5], 0, 3); |
- }, TypeError); |
-}); |
- |
- |
-CheckEachTypedArray(function copyWithinStartLessThanTarget(constructor) { |
- // test with target > start on 2 arguments |
- assertArrayEquals([1, 2, 3, 1, 2], |
- new constructor([1, 2, 3, 4, 5]).copyWithin(3, 0)); |
- |
- // test with target > start on 3 arguments |
- assertArrayEquals([1, 2, 3, 1, 2], |
- new constructor([1, 2, 3, 4, 5]).copyWithin(3, 0, 4)); |
-}); |
- |
-CheckEachTypedArray(function copyWithinNonIntegerRelativeOffsets(constructor) { |
- // test on fractional arguments |
- assertArrayEquals([4, 5, 3, 4, 5], |
- new constructor([1, 2, 3, 4, 5]).copyWithin(0.2, 3.9)); |
-}); |
- |
- |
-CheckEachTypedArray(function copyWithinNegativeZeroTarget(constructor) { |
- // test with -0 |
- assertArrayEquals([4, 5, 3, 4, 5], |
- new constructor([1, 2, 3, 4, 5]).copyWithin(-0, 3)); |
-}); |
- |
- |
-CheckEachTypedArray(function copyWithinTargetOutsideStart(constructor) { |
- // test with arguments more than this.length |
- assertArrayEquals([1, 2, 3, 4, 5], |
- new constructor([1, 2, 3, 4, 5]).copyWithin(0, 7)); |
- |
- // test with arguments less than -this.length |
- assertArrayEquals([1, 2, 3, 4, 5], |
- new constructor([1, 2, 3, 4, 5]).copyWithin(-7, 0)); |
-}); |
- |
- |
-CheckEachTypedArray(function copyWithinEmptyArray(constructor) { |
- // test on empty array |
- assertArrayEquals([], new constructor([]).copyWithin(0, 3)); |
-}); |
- |
- |
-CheckEachTypedArray(function copyWithinTargetCutOff(constructor) { |
- // test with target range being shorter than end - start |
- assertArrayEquals([1, 2, 2, 3, 4], [1, 2, 3, 4, 5].copyWithin(2, 1, 4)); |
-}); |
- |
- |
-CheckEachTypedArray(function copyWithinOverlappingRanges(constructor) { |
- // test overlapping ranges |
- var arr = [1, 2, 3, 4, 5]; |
- arr.copyWithin(2, 1, 4); |
- assertArrayEquals([1, 2, 2, 2, 3], arr.copyWithin(2, 1, 4)); |
-}); |
- |
- |
-CheckEachTypedArray(function copyWithinDefaultEnd(constructor) { |
- // undefined as third argument |
- assertArrayEquals([4, 5, 3, 4, 5], |
- new constructor([1, 2, 3, 4, 5]).copyWithin(0, 3, undefined)); |
-}); |
- |
- |
-CheckEachTypedArray(function copyWithinLargeArray(constructor) { |
- var large = 10000; |
- |
- // test on a large array |
- var arr = new constructor(large); |
- assertArrayEquals(arr, arr.copyWithin(45, 9000)); |
- |
- var expected = new Array(large); |
- // test on numbers |
- for (var i = 0; i < large; i++) { |
- arr[i] = Math.random() * 100; // May be cast to an int |
- expected[i] = arr[i]; |
- if (i >= 9000) { |
- expected[(i - 9000) + 45] = arr[i]; |
- } |
- } |
- assertArrayEquals(expected, arr.copyWithin(45, 9000)); |
- |
- // test array length remains same |
- assertEquals(large, arr.length); |
-}); |
- |
- |
-CheckEachTypedArray(function copyWithinNullEnd(constructor) { |
- // test null on third argument is converted to +0 |
- assertArrayEquals([1, 2, 3, 4, 5], |
- new constructor([1, 2, 3, 4, 5]).copyWithin(0, 3, null)); |
-}); |