Skip to content

Commit

Permalink
add some tests
Browse files Browse the repository at this point in the history
  • Loading branch information
zloirock committed Sep 4, 2022
1 parent 6e81045 commit 79ababc
Show file tree
Hide file tree
Showing 2 changed files with 16 additions and 0 deletions.
14 changes: 14 additions & 0 deletions tests/tests/es.typed-array.constructors.js
Expand Up @@ -109,6 +109,20 @@ if (DESCRIPTORS) {
assert.arrayEqual(array, [1, 2, 3, 4], 'correct values, passed iterable');
return true;
}, 'passed iterable');
assert.notThrows(() => {
array = new TypedArray([{ valueOf() { return 2; } }]);
assert.same(array.byteOffset, 0, '#byteOffset, passed array with object convertible to primitive');
assert.same(array.byteLength, bytes, '#byteLength, passed array with object convertible to primitive');
assert.arrayEqual(array, [2], 'correct values, passed array with object convertible to primitive');
return true;
}, 'passed array with object convertible to primitive');
assert.notThrows(() => {
array = new TypedArray(createIterable([{ valueOf() { return 2; } }]));
assert.same(array.byteOffset, 0, '#byteOffset, passed iterable with object convertible to primitive');
assert.same(array.byteLength, bytes, '#byteLength, passed iterable with object convertible to primitive');
assert.arrayEqual(array, [2], 'correct values, passed iterable with object convertible to primitive');
return true;
}, 'passed iterable with object convertible to primitive');
array = new TypedArray(new TypedArray([1, 2, 3, 4]));
assert.same(array.byteOffset, 0, '#byteOffset, passed typed array');
assert.same(array.byteLength, 4 * bytes, '#byteLength, passed typed array');
Expand Down
2 changes: 2 additions & 0 deletions tests/tests/es.typed-array.from.js
Expand Up @@ -24,6 +24,8 @@ if (DESCRIPTORS) QUnit.test('%TypedArray%.from', assert => {
assert.true(instance instanceof TypedArray, 'correct instance with iterable');
assert.arrayEqual(instance, [1, 2, 3], 'correct elements with iterable');
assert.arrayEqual(TypedArray.from([1, 2, 3], it => it * it), [1, 4, 9], 'accept callback');
assert.arrayEqual(TypedArray.from([{ valueOf() { return 2; } }]), [2], 'passed array with object convertible to primitive');
assert.arrayEqual(TypedArray.from(createIterable([{ valueOf() { return 2; } }])), [2], 'passed iterable with object convertible to primitive');
const context = {};
TypedArray.from([1], function (value, key) {
assert.same(arguments.length, 2, 'correct number of callback arguments');
Expand Down

0 comments on commit 79ababc

Please sign in to comment.