Commit Graph
43 Commits
Author SHA1 Message Date
Csaba Osztrogonác a63e1d294d Drop legacy test262-ES2015 testing support (#4908)
ES2015 features are already covered by ES.Next tests,
there is no need to run duplicated and outdated tests.

JerryScript-DCO-1.0-Signed-off-by: Csaba Osztrogonác [email protected]
2021-12-23 11:31:56 +01:00
Csaba Osztrogonác a7d5594d30 Fix JERRY_VLA macro on Windows (#4827)
Fixes #4824. The last macro argument should be inside parentheses.

JerryScript-DCO-1.0-Signed-off-by: Csaba Osztrogonác [email protected]
2021-11-23 13:11:45 +01:00
Csaba Osztrogonác 3c742bef57 Test262 runner shouldn't change newline characters (#4805)
It fixes the following test on Windows:
built-ins/Function/prototype/toString/line-terminator-normalisation-LF.js

JerryScript-DCO-1.0-Signed-off-by: Csaba Osztrogonác [email protected]
2021-10-28 13:56:52 +02:00
Csaba Osztrogonác dd77ec914a Fine-tune test262-esnext jobs on the CI (#4566)
Previously test262-esnext was separated to 2 jobs: language and other tests.
But now tests run in parallel and CI runs release and debug tests too,
separating jobs to release and debug mode is much more obvious. But
debug tests are still slow (~10-11 minutes), let's split only debug job.

JerryScript-DCO-1.0-Signed-off-by: Csaba Osztrogonác [email protected]
2021-10-27 13:07:58 +02:00
Csaba Osztrogonác 100b6f577e Test262 exludelist fix after #4721 (#4800)
JerryScript-DCO-1.0-Signed-off-by: Csaba Osztrogonác [email protected]
2021-10-26 06:45:19 +02:00
Csaba Osztrogonác 54b1a3c739 Date.prototype.setTime should invalidate local TZA cache (#4786)
Fixes #4749.

JerryScript-DCO-1.0-Signed-off-by: Csaba Osztrogonác [email protected]
2021-10-01 12:59:38 +02:00
Csaba Osztrogonác f3cd586094 Fix leaking lastIndex values in RegExp built-ins (#4787)
Fixes #4781. This is a followup fix after #4166.

JerryScript-DCO-1.0-Signed-off-by: Csaba Osztrogonác [email protected]
2021-10-01 12:56:53 +02:00
Csaba Osztrogonác e081cbc2f0 Remove a wrong test not to slow down test262-es2015 (#4542)
Since ES2018 iterator's next method is called once during the prologue of iteration,
rather than during each step. The test is incorrect and stuck in an infinite loop.
https://github.com/tc39/test262/pull/1248 fixed the test and it passes on test262-esnext.

Removing test/language/statements/for-of/iterator-next-reference.js from test262-es2015
is necessary, because it won't pass ever and only slow down testing.

JerryScript-DCO-1.0-Signed-off-by: Csaba Osztrogonác [email protected]
2021-01-26 18:29:56 +01:00
Csaba Osztrogonác 9900cacb15 Fix test262 harness to handle async negative tests properly (#4526)
JerryScript-DCO-1.0-Signed-off-by: Csaba Osztrogonác [email protected]
2021-01-22 15:09:16 +01:00
Csaba Osztrogonác c84afefd47 Fix the build and timezone offset with MinGW (#4449)
Changes:
- Use _WIN32 macro instead of _WINDOWS
- Fix build error - "no previous declaration for 'UnixTimeToFileTime'"
- Fix conversion build errors
- Remove useless _tzset() call
- Use GetSystemTimeAsFileTime() on Windows to get current time
- Unify and simplify time conversion Windows helper functions

Fixes #4240

JerryScript-DCO-1.0-Signed-off-by: Csaba Osztrogonác [email protected]
2021-01-13 11:39:16 +01:00
Csaba Osztrogonác daba2b76fc Fix HAVE_M_LIB check for older CMake (#4437)
With older CMake (for example 2.8.12.2) the feature check of HAVE_M_LIB
reports false positive fail due to -Werror=strict-prototypes. It is already
fixed in CMake https://gitlab.kitware.com/cmake/cmake/-/commit/4bc17345

The feature is present and works, so we should only ignore this build warning.

Additionally the necessary GCC/Clang guard added to the similar
CMake feature check in jerry-port/default/CMakeLists.txt

JerryScript-DCO-1.0-Signed-off-by: Csaba Osztrogonác [email protected]
2021-01-11 11:26:47 +01:00
Csaba Osztrogonác c57938e0c7 Run test262-esnext tests with larger heap (#4337)
built-ins/RegExp/CharacterClassEscapes tests need more memory than 512Kb.
Additionally increase the timeout to make all tests pass on GitHub CI.

JerryScript-DCO-1.0-Signed-off-by: Csaba Osztrogonác [email protected]
2020-11-16 11:52:35 +01:00
Csaba Osztrogonác 3115d4dc16 Implement DataView.prototype.{set, get}Big{U}int64 methods (#4315)
Co-authored by Adam Szilagyi [email protected]

JerryScript-DCO-1.0-Signed-off-by: Csaba Osztrogonác [email protected]
2020-10-28 11:46:52 +01:00
Csaba Osztrogonác 24a5489331 Implement ToIndex abstract operation (#4287)
https://www.ecma-international.org/ecma-262/11.0/#sec-toindex

Made DataView constructor, DataView.prototype.setXXX/getXXX methods ES11 conform.

JerryScript-DCO-1.0-Signed-off-by: Csaba Osztrogonác [email protected]
2020-10-27 10:37:50 +01:00
Csaba Osztrogonác a65988798c Uncontrolled memory allocation in jerry_port_read_source function (#4282)
jerry_port_read_source should exit with error message
if its parameter is a directory and not a regular file.

Fixes #4251.

JerryScript-DCO-1.0-Signed-off-by: Csaba Osztrogonác [email protected]
2020-10-22 09:05:51 +02:00
Csaba Osztrogonác 8a0a86e3c7 Fix the build without BigInt support (#4304)
JerryScript-DCO-1.0-Signed-off-by: Csaba Osztrogonác [email protected]
2020-10-21 10:04:59 +02:00
Csaba Osztrogonác 01c0ca3b6c Fix sign-compare compiler warning in js-scanner-util.c (#4293)
Found by mingw32-gcc (MinGW.org GCC Build-2) 9.2.0.

comparison of integer expressions of different signedness:
'intptr_t' {aka 'int'} and 'unsigned int' [-Werror=sign-compare]

JerryScript-DCO-1.0-Signed-off-by: Csaba Osztrogonác [email protected]
2020-10-19 14:29:13 +02:00
Csaba Osztrogonác 9da1211e26 Fix HAVE_TM_GMTOFF check for older CMake. (#4292)
Older CMake (for example 2.8.12.2) generates feature check with unused
variable, which reports false positive fail due to -Werror=unused-value.
The feature is present and works, so we should only ignore this build warning.

Fixes #2791.

JerryScript-DCO-1.0-Signed-off-by: Csaba Osztrogonác [email protected]
2020-10-17 11:32:47 +02:00
Csaba Osztrogonác 2a8f1dcbc3 Annotate test262-esnext-excludelist.xml (#4281)
Group unsupported ES features and add comments
to clarify which test files test which feature.

JerryScript-DCO-1.0-Signed-off-by: Csaba Osztrogonác [email protected]
2020-10-12 14:24:31 +02:00
Csaba Osztrogonác 7458766033 Date.parse should reject out of range values (#4248)
The spec doesn't say explicitly that Date.parse should call TimeClip
abstract operation at the end. But Date object can represent time
values only in the range 1970 Jan 01 +/-8,640,000,000,000,000 ms.

JerryScript-DCO-1.0-Signed-off-by: Csaba Osztrogonác [email protected]
2020-10-02 10:39:52 +02:00
Csaba Osztrogonác 8fe3891b15 Fix Date.parse to handle times without timezone properly (#4249)
https://www.ecma-international.org/ecma-262/11.0/#sec-date.parse
"When the UTC offset representation is absent, date-only forms are
interpreted as a UTC time and date-time forms are interpreted as a local time."

JerryScript-DCO-1.0-Signed-off-by: Csaba Osztrogonác [email protected]
2020-10-01 16:34:59 +02:00
Csaba Osztrogonác e227634b45 Make Date.UTC to conform to the latest ES11 spec (#4250)
Date.UTC should work with only one argument too.

JerryScript-DCO-1.0-Signed-off-by: Csaba Osztrogonác [email protected]
2020-10-01 16:34:09 +02:00
Csaba Osztrogonác c4388e2c19 Fix memory leak in ecma_op_abstract_relational_compare (#4235)
Fixes #4234.

JerryScript-DCO-1.0-Signed-off-by: Csaba Osztrogonác [email protected]
2020-09-28 10:29:25 +02:00
Csaba Osztrogonác de38764e88 Fix heap buffer overflow in Array.prototype.copyWithin (#4211)
2nd and 3rd argument evaluation of Array.prototype.copyWithin can change
the length of the array as a side-effect. But ES11 spec says that the
algorithm should use the original length. In this case it could happen
that the underlying buffer should be extended.

Fixes #4204

JerryScript-DCO-1.0-Signed-off-by: Csaba Osztrogonác [email protected]
2020-09-25 15:06:29 +02:00
Csaba Osztrogonác e478640d80 Add --buildoption-test to CI (#4236)
run-tests --buildoption-test was previously tested on Travis CI,
but wasn't added to GitHub CI accidentally.

JerryScript-DCO-1.0-Signed-off-by: Csaba Osztrogonác [email protected]
2020-09-25 14:20:49 +02:00
Csaba Osztrogonác 3b7409f3a7 Run test262 tests on CI on Ubuntu 20.04 (#4232)
The timeout utility in Ubuntu 18.04 (GNU CoreUtils 8.28) has a bug which
caused false positive test failures regulary. This bug is already fixed
in CoreUtils, and Ubuntu 20.04 LTS shipped the fixed version of timeout.

https://github.com/coreutils/coreutils/commit/cbf35912da66a17a6113d5a434214dd7651f403a

JerryScript-DCO-1.0-Signed-off-by: Csaba Osztrogonác [email protected]
2020-09-24 13:32:32 +02:00
Csaba Osztrogonác f834340608 Fix test262 excludelist update on Windows (#4185)
JerryScript-DCO-1.0-Signed-off-by: Csaba Osztrogonác [email protected]
2020-09-14 17:29:57 +02:00
Csaba Osztrogonác a6cd19fa6e Annotate test262-esnext-excludelist.xml (#4171)
Group stage 4 and stage 3 tests by proposals.

JerryScript-DCO-1.0-Signed-off-by: Csaba Osztrogonác [email protected]
2020-08-27 13:20:18 +02:00
Csaba Osztrogonác 55b6b1aed7 Fix memory corruption (bad-free) in ecma_string_pad (#4164)
JerryScript-DCO-1.0-Signed-off-by: Csaba Osztrogonác [email protected]
2020-08-24 15:01:49 +02:00
Csaba Osztrogonác b828d1c15f Fix heap-buffer-overflow in ecma_builtin_json_quote (#4143)
Fixes #4129.

JerryScript-DCO-1.0-Signed-off-by: Csaba Osztrogonác [email protected]
2020-08-18 13:56:01 +02:00
Csaba Osztrogonác 8964a2bd18 Optimize test262 runner (#4120)
Changes:
- Add new option to run-tests.py: --test262-test-list to run selected tests only
- Fix exclude list updater accordingly
- Run ESNext tests on GitHub CI in two batches to decrease runtime

JerryScript-DCO-1.0-Signed-off-by: Csaba Osztrogonác [email protected]
2020-08-13 13:47:14 +02:00
Csaba Osztrogonác 409ead7415 Fix memory leak in ecma_op_object_get_enumerable_property_names (#4136)
JerryScript-DCO-1.0-Signed-off-by: Csaba Osztrogonác [email protected]
2020-08-13 13:46:50 +02:00
Csaba Osztrogonác ea07052869 Make Array.prototype.unshift method conform to ES11 (#4128)
Changes:
- Since ES6 Array.prototype.unshift shouldn't iterate
over the array elements if argument count is 0.
- Add proper guard for a check introduced in ES6.
- Update comments to reference to ES5.1 and ES11 specs too.

JerryScript-DCO-1.0-Signed-off-by: Csaba Osztrogonác [email protected]
2020-08-13 10:09:25 +02:00
Csaba Osztrogonác 0bb4626ddb Fix Array.prototype.slice, splice and map builtin methods (#4122)
CreateDataPropertyOrThrow is introduced in ES2015, and these methods should use it
to throw TypeError exception if the requested property update cannot be performed.

JerryScript-DCO-1.0-Signed-off-by: Csaba Osztrogonác [email protected]
2020-08-12 16:35:27 +02:00
Csaba Osztrogonác c76736eadf Methods shouldn't have prototype property (#3964)
JerryScript-DCO-1.0-Signed-off-by: Csaba Osztrogonác [email protected]
2020-08-05 14:01:58 +02:00
Csaba Osztrogonác 621a5ddb8f Test262 results should be uploaded always (#4106)
JerryScript-DCO-1.0-Signed-off-by: Csaba Osztrogonác [email protected]
2020-08-04 16:54:53 +02:00
Csaba Osztrogonác 401b36d406 Make test262 output less verbose (#4108)
Changes:
- Progress meter is precise and less verbose
- Omit list of failures, test262.report file contains it

JerryScript-DCO-1.0-Signed-off-by: Csaba Osztrogonác [email protected]
2020-08-04 16:54:06 +02:00
Csaba Osztrogonác f1eba9f826 Make Test262 results less verbose (#4090)
Changes:
- Don't dump each test output to stdout
- Upload test outputs as artifact to GitHub

JerryScript-DCO-1.0-Signed-off-by: Csaba Osztrogonác [email protected]
2020-08-03 10:40:26 +02:00
Csaba Osztrogonác 40ad8c6e45 Add --test262-esnext option to run-tests.py (#4027)
Changes:
- Imported and unified test262 test harness for ES2015 and ESNext
- Simplified runner scripts accordingly
- Run tests on CI to be able detect regressions and progressions too

JerryScript-DCO-1.0-Signed-off-by: Csaba Osztrogonác [email protected]
2020-07-31 15:52:45 +02:00
Csaba Osztrogonác 539928dbdb Fix date-construct.js test (#4020)
Removed an undeterministic subtest.

date-construct.js fails intermittently, because it expects that
two Date() calls return the same date string. But the second one
can be 1 second later. This subtest is undeterministic and already
covered by test262/es2015/test/built-ins/Date/S15.9.2.1_A2.js with
1 second epsilon.

JerryScript-DCO-1.0-Signed-off-by: Csaba Osztrogonác [email protected]
2020-07-24 12:48:31 +02:00
Csaba Osztrogonác fee3c295a2 Fix test262 excludelist updater (#4023)
The previous fix was buggy, header and footer shouldn't be duplicated.

JerryScript-DCO-1.0-Signed-off-by: Csaba Osztrogonác [email protected]
2020-07-20 19:09:44 +02:00
Csaba Osztrogonác b162e27418 Fix test262 excludelist updater (#4021)
tools/run-tests.py --test262-es2015 update shouldn't
remove comments and newlines in the excludelist file.

JerryScript-DCO-1.0-Signed-off-by: Csaba Osztrogonác [email protected]
2020-07-20 13:47:45 +02:00
Csaba Osztrogonác f60e16d9d5 Fix GetCapabilitiesExecutor function (#4006)
Changes:
- Remove false assert, executor can be invoked by 0 or 1 parameters too
- Update steps and spec references

Already covered by test262 (ESnext) tests:
- built-ins/Promise/*/capability-executor-called-twice.js
- built-ins/Promise/*/capability-executor-not-callable.js

JerryScript-DCO-1.0-Signed-off-by: Csaba Osztrogonác [email protected]
2020-07-16 16:05:48 +02:00