Update TypedArray internals methods (#4653)

releated test262 test-cases has been removed from the skip list.

JerryScript-DCO-1.0-Signed-off-by: bence gabor kis kisbg@inf.u-szeged.hu
This commit is contained in:
kisbg
2021-04-27 09:45:26 +02:00
committed by GitHub
parent 823a8b128d
commit a58884c169
9 changed files with 294 additions and 282 deletions
+7 -1
View File
@@ -28,7 +28,13 @@ var typedarrays = [
for (let ta of typedarrays) {
for (let prop_name of [2, 5.1]) {
let set_value = 4.2;
var set_value = 4.2;
if (ta.constructor === BigInt64Array || ta.constructor === BigUint64Array)
{
set_value = 4n;
}
(function () {
"use strict";
let set_result = ta[prop_name] = set_value;
-85
View File
@@ -105,48 +105,7 @@
<test id="built-ins/String/prototype/toLocaleLowerCase/special_casing_conditional.js"><reason></reason></test>
<test id="built-ins/String/prototype/toLowerCase/Final_Sigma_U180E.js"><reason></reason></test>
<test id="built-ins/String/prototype/toLowerCase/special_casing_conditional.js"><reason></reason></test>
<test id="built-ins/TypedArray/prototype/join/BigInt/get-length-uses-internal-arraylength.js"><reason></reason></test>
<test id="built-ins/TypedArray/prototype/join/BigInt/return-abrupt-from-separator-symbol.js"><reason></reason></test>
<test id="built-ins/TypedArray/prototype/join/BigInt/return-abrupt-from-separator.js"><reason></reason></test>
<test id="built-ins/TypedArray/prototype/join/get-length-uses-internal-arraylength.js"><reason></reason></test>
<test id="built-ins/TypedArray/prototype/join/return-abrupt-from-separator-symbol.js"><reason></reason></test>
<test id="built-ins/TypedArray/prototype/join/return-abrupt-from-separator.js"><reason></reason></test>
<test id="built-ins/TypedArray/prototype/slice/set-values-from-different-ctor-type.js"><reason></reason></test>
<test id="built-ins/TypedArray/prototype/sort/sorted-values.js"><reason></reason></test>
<test id="built-ins/TypedArrayConstructors/ctors-bigint/buffer-arg/byteoffset-is-negative-zero.js"><reason></reason></test>
<test id="built-ins/TypedArrayConstructors/ctors-bigint/buffer-arg/defined-negative-length.js"><reason></reason></test>
<test id="built-ins/TypedArrayConstructors/ctors-bigint/buffer-arg/toindex-byteoffset.js"><reason></reason></test>
<test id="built-ins/TypedArrayConstructors/ctors-bigint/length-arg/toindex-length.js"><reason></reason></test>
<test id="built-ins/TypedArrayConstructors/ctors/buffer-arg/byteoffset-is-negative-zero.js"><reason></reason></test>
<test id="built-ins/TypedArrayConstructors/ctors/buffer-arg/defined-negative-length.js"><reason></reason></test>
<test id="built-ins/TypedArrayConstructors/ctors/buffer-arg/toindex-byteoffset.js"><reason></reason></test>
<test id="built-ins/TypedArrayConstructors/ctors/length-arg/toindex-length.js"><reason></reason></test>
<test id="built-ins/TypedArrayConstructors/internals/DefineOwnProperty/BigInt/key-is-minus-zero.js"><reason></reason></test>
<test id="built-ins/TypedArrayConstructors/internals/DefineOwnProperty/key-is-minus-zero.js"><reason></reason></test>
<test id="built-ins/TypedArrayConstructors/internals/Get/BigInt/key-is-not-minus-zero.js"><reason></reason></test>
<test id="built-ins/TypedArrayConstructors/internals/Get/key-is-not-minus-zero.js"><reason></reason></test>
<test id="built-ins/TypedArrayConstructors/internals/HasProperty/BigInt/abrupt-from-ordinary-has-parent-hasproperty.js"><reason></reason></test>
<test id="built-ins/TypedArrayConstructors/internals/HasProperty/BigInt/inherited-property.js"><reason></reason></test>
<test id="built-ins/TypedArrayConstructors/internals/HasProperty/BigInt/key-is-greater-than-last-index.js"><reason></reason></test>
<test id="built-ins/TypedArrayConstructors/internals/HasProperty/BigInt/key-is-lower-than-zero.js"><reason></reason></test>
<test id="built-ins/TypedArrayConstructors/internals/HasProperty/BigInt/key-is-minus-zero.js"><reason></reason></test>
<test id="built-ins/TypedArrayConstructors/internals/HasProperty/BigInt/key-is-not-integer.js"><reason></reason></test>
<test id="built-ins/TypedArrayConstructors/internals/HasProperty/abrupt-from-ordinary-has-parent-hasproperty.js"><reason></reason></test>
<test id="built-ins/TypedArrayConstructors/internals/HasProperty/inherited-property.js"><reason></reason></test>
<test id="built-ins/TypedArrayConstructors/internals/HasProperty/key-is-greater-than-last-index.js"><reason></reason></test>
<test id="built-ins/TypedArrayConstructors/internals/HasProperty/key-is-lower-than-zero.js"><reason></reason></test>
<test id="built-ins/TypedArrayConstructors/internals/HasProperty/key-is-minus-zero.js"><reason></reason></test>
<test id="built-ins/TypedArrayConstructors/internals/HasProperty/key-is-not-integer.js"><reason></reason></test>
<test id="built-ins/TypedArrayConstructors/internals/Set/BigInt/key-is-minus-zero.js"><reason></reason></test>
<test id="built-ins/TypedArrayConstructors/internals/Set/BigInt/tonumber-value-throws.js"><reason></reason></test>
<test id="built-ins/TypedArrayConstructors/internals/Set/key-is-minus-zero.js"><reason></reason></test>
<test id="built-ins/TypedArrayConstructors/internals/Set/tonumber-value-throws.js"><reason></reason></test>
<test id="built-ins/TypedArrayConstructors/of/BigInt/custom-ctor-returns-other-instance.js"><reason></reason></test>
<test id="built-ins/TypedArrayConstructors/of/BigInt/custom-ctor.js"><reason></reason></test>
<test id="built-ins/TypedArrayConstructors/of/BigInt/new-instance-using-custom-ctor.js"><reason></reason></test>
<test id="built-ins/TypedArrayConstructors/of/custom-ctor-returns-other-instance.js"><reason></reason></test>
<test id="built-ins/TypedArrayConstructors/of/custom-ctor.js"><reason></reason></test>
<test id="built-ins/TypedArrayConstructors/of/new-instance-using-custom-ctor.js"><reason></reason></test>
<test id="language/block-scope/syntax/redeclaration/async-function-name-redeclaration-attempt-with-async-function.js"><reason></reason></test>
<test id="language/block-scope/syntax/redeclaration/async-function-name-redeclaration-attempt-with-function.js"><reason></reason></test>
<test id="language/block-scope/syntax/redeclaration/async-function-name-redeclaration-attempt-with-generator.js"><reason></reason></test>
@@ -8330,16 +8289,6 @@
<test id="built-ins/SharedArrayBuffer/proto-from-ctor-realm.js"><reason></reason></test>
<test id="built-ins/TypedArrayConstructors/ctors-bigint/buffer-arg/proto-from-ctor-realm-sab.js"><reason></reason></test>
<test id="built-ins/TypedArrayConstructors/ctors/buffer-arg/proto-from-ctor-realm-sab.js"><reason></reason></test>
<test id="built-ins/TypedArrayConstructors/internals/DefineOwnProperty/BigInt/detached-buffer-realm.js"><reason></reason></test>
<test id="built-ins/TypedArrayConstructors/internals/DefineOwnProperty/detached-buffer-realm.js"><reason></reason></test>
<test id="built-ins/TypedArrayConstructors/internals/Get/BigInt/detached-buffer-realm.js"><reason></reason></test>
<test id="built-ins/TypedArrayConstructors/internals/Get/detached-buffer-realm.js"><reason></reason></test>
<test id="built-ins/TypedArrayConstructors/internals/GetOwnProperty/BigInt/detached-buffer-realm.js"><reason></reason></test>
<test id="built-ins/TypedArrayConstructors/internals/GetOwnProperty/detached-buffer-realm.js"><reason></reason></test>
<test id="built-ins/TypedArrayConstructors/internals/HasProperty/BigInt/detached-buffer-realm.js"><reason></reason></test>
<test id="built-ins/TypedArrayConstructors/internals/HasProperty/detached-buffer-realm.js"><reason></reason></test>
<test id="built-ins/TypedArrayConstructors/internals/Set/BigInt/detached-buffer-realm.js"><reason></reason></test>
<test id="built-ins/TypedArrayConstructors/internals/Set/detached-buffer-realm.js"><reason></reason></test>
<test id="intl402/Collator/proto-from-ctor-realm.js"><reason></reason></test>
<test id="intl402/DateTimeFormat/proto-from-ctor-realm.js"><reason></reason></test>
<test id="intl402/DisplayNames/proto-from-ctor-realm.js"><reason></reason></test>
@@ -8381,39 +8330,5 @@
<test id="built-ins/Atomics/wait/null-bufferdata-throws.js"><reason></reason></test>
<test id="built-ins/Atomics/waitAsync/bigint/null-bufferdata-throws.js"><reason></reason></test>
<test id="built-ins/Atomics/waitAsync/null-bufferdata-throws.js"><reason></reason></test>
<test id="built-ins/TypedArrayConstructors/ctors-bigint/typedarray-arg/detached-when-species-retrieved-different-type.js"><reason></reason></test>
<test id="built-ins/TypedArrayConstructors/ctors-bigint/typedarray-arg/detached-when-species-retrieved-same-type.js"><reason></reason></test>
<test id="built-ins/TypedArrayConstructors/ctors/typedarray-arg/detached-when-species-retrieved-different-type.js"><reason></reason></test>
<test id="built-ins/TypedArrayConstructors/ctors/typedarray-arg/detached-when-species-retrieved-same-type.js"><reason></reason></test>
<test id="built-ins/TypedArrayConstructors/internals/DefineOwnProperty/BigInt/detached-buffer-realm.js"><reason></reason></test>
<test id="built-ins/TypedArrayConstructors/internals/DefineOwnProperty/BigInt/detached-buffer.js"><reason></reason></test>
<test id="built-ins/TypedArrayConstructors/internals/DefineOwnProperty/BigInt/tonumber-value-detached-buffer.js"><reason></reason></test>
<test id="built-ins/TypedArrayConstructors/internals/DefineOwnProperty/detached-buffer-realm.js"><reason></reason></test>
<test id="built-ins/TypedArrayConstructors/internals/DefineOwnProperty/detached-buffer.js"><reason></reason></test>
<test id="built-ins/TypedArrayConstructors/internals/DefineOwnProperty/tonumber-value-detached-buffer.js"><reason></reason></test>
<test id="built-ins/TypedArrayConstructors/internals/Get/BigInt/detached-buffer-realm.js"><reason></reason></test>
<test id="built-ins/TypedArrayConstructors/internals/Get/BigInt/detached-buffer.js"><reason></reason></test>
<test id="built-ins/TypedArrayConstructors/internals/Get/BigInt/infinity-detached-buffer.js"><reason></reason></test>
<test id="built-ins/TypedArrayConstructors/internals/Get/detached-buffer-realm.js"><reason></reason></test>
<test id="built-ins/TypedArrayConstructors/internals/Get/detached-buffer.js"><reason></reason></test>
<test id="built-ins/TypedArrayConstructors/internals/Get/infinity-detached-buffer.js"><reason></reason></test>
<test id="built-ins/TypedArrayConstructors/internals/GetOwnProperty/BigInt/detached-buffer-realm.js"><reason></reason></test>
<test id="built-ins/TypedArrayConstructors/internals/GetOwnProperty/BigInt/detached-buffer.js"><reason></reason></test>
<test id="built-ins/TypedArrayConstructors/internals/GetOwnProperty/BigInt/enumerate-detached-buffer.js"><reason></reason></test>
<test id="built-ins/TypedArrayConstructors/internals/GetOwnProperty/detached-buffer-realm.js"><reason></reason></test>
<test id="built-ins/TypedArrayConstructors/internals/GetOwnProperty/detached-buffer.js"><reason></reason></test>
<test id="built-ins/TypedArrayConstructors/internals/GetOwnProperty/enumerate-detached-buffer.js"><reason></reason></test>
<test id="built-ins/TypedArrayConstructors/internals/HasProperty/BigInt/detached-buffer-realm.js"><reason></reason></test>
<test id="built-ins/TypedArrayConstructors/internals/HasProperty/BigInt/detached-buffer.js"><reason></reason></test>
<test id="built-ins/TypedArrayConstructors/internals/HasProperty/BigInt/infinity-with-detached-buffer.js"><reason></reason></test>
<test id="built-ins/TypedArrayConstructors/internals/HasProperty/detached-buffer-realm.js"><reason></reason></test>
<test id="built-ins/TypedArrayConstructors/internals/HasProperty/detached-buffer.js"><reason></reason></test>
<test id="built-ins/TypedArrayConstructors/internals/HasProperty/infinity-with-detached-buffer.js"><reason></reason></test>
<test id="built-ins/TypedArrayConstructors/internals/Set/BigInt/detached-buffer-realm.js"><reason></reason></test>
<test id="built-ins/TypedArrayConstructors/internals/Set/BigInt/detached-buffer.js"><reason></reason></test>
<test id="built-ins/TypedArrayConstructors/internals/Set/BigInt/tonumber-value-detached-buffer.js"><reason></reason></test>
<test id="built-ins/TypedArrayConstructors/internals/Set/detached-buffer-realm.js"><reason></reason></test>
<test id="built-ins/TypedArrayConstructors/internals/Set/detached-buffer.js"><reason></reason></test>
<test id="built-ins/TypedArrayConstructors/internals/Set/tonumber-value-detached-buffer.js"><reason></reason></test>
<!-- END - Missing test262 support in JerryScript REPL - missing $262.detachArrayBuffer function -->
</excludeList>
+21 -3
View File
@@ -457,10 +457,28 @@ static void test_property_by_index (test_entry_t test_entries[])
}
jerry_value_t set_undefined = jerry_set_property_by_index (typedarray, 100, jerry_create_number (50));
TEST_ASSERT (jerry_value_is_boolean (set_undefined) && !jerry_get_boolean_value (set_undefined));
jerry_value_t get_undefined = jerry_get_property_by_index (typedarray, 100);
TEST_ASSERT (jerry_value_is_undefined (get_undefined));
if (type == JERRY_TYPEDARRAY_BIGINT64 || type == JERRY_TYPEDARRAY_BIGUINT64)
{
TEST_ASSERT (jerry_value_is_error (set_undefined));
}
else
{
TEST_ASSERT (jerry_value_is_boolean (set_undefined) && !jerry_get_boolean_value (set_undefined));
}
jerry_value_t get_undefined = jerry_get_property_by_index (typedarray, 100);
if (type == JERRY_TYPEDARRAY_BIGINT64 || type == JERRY_TYPEDARRAY_BIGUINT64)
{
TEST_ASSERT (jerry_value_is_error (set_undefined));
}
else
{
TEST_ASSERT (jerry_value_is_undefined (get_undefined));
}
TEST_ASSERT (jerry_value_is_undefined (get_undefined));
jerry_release_value (set_undefined);
jerry_release_value (get_undefined);
jerry_release_value (typedarray);