41 Commits

Author SHA1 Message Date
Philip Chimento
b68c751f5b Replace deepEqual with compareArray
Here is one place where compareArray is better fit for purpose, because we
are comparing an array.
2022-04-19 12:16:03 -04:00
Linus Groh
2b01f137ef Fix 'asserts.throws()' typo in two tests
This should be 'assert.throws()', otherwise these fail unexpectedly.

Fixes #3184.
2021-09-05 19:43:24 -07:00
rwaldron
1286bb601e Transform legacy format to harness assertions: test/built-ins/E*/**/*.js 2021-09-02 11:21:41 -07:00
Mike Pennisi
f9efc46142 Improve coverage for Error.prototype.constructor
Extend coverage to include the property's enumerability, writability,
and configurability.
2021-07-29 16:54:52 -04:00
Mike Pennisi
4ec3eaaeb9 Improve coverage for Error.prototype.toString
Extend coverage to include the property's enumerability, writability,
and configurability.
2021-07-29 16:54:52 -04:00
Mike Pennisi
cbd69bd26f Improve coverage for Error.prototype.name
Extend coverage to include the property's writability and
configurability. Use the conventional `verifyProperty` harness function
to consolidate tests.
2021-07-29 16:54:52 -04:00
Mike Pennisi
c138c2acbe Improve coverage for Error.prototype.message
Extend coverage to include the property's writability, configurability,
and value. Use the conventional `verifyProperty` harness function to
consolidate tests.
2021-07-29 16:54:52 -04:00
Rick Waldron
f37edcb486
chore: migrate $ERROR -> throw new Test262Error in test/built-ins/Error (#3081) 2021-07-21 14:26:19 -07:00
Mike Pennisi
fd029d2d52 Increase precision of assertions for Error Cause
Minimize the code provided to the `assert.throws` utility in order to
reduce the possibility of false positives and to improve failure
messages in non-conforming runtimes.
2021-05-11 17:37:15 -04:00
Shu-yu Guo
70bc32edab
Give Error cause tests the error-cause feature tag (#2977) 2021-04-23 15:53:14 -07:00
legendecas
3e4e07c836
Add tests for stage 3 proposal error cause (#2965)
* Add tests for error cause

* Correct invocation of Proxy constructor

Co-authored-by: Mike Pennisi <mike@mikepennisi.com>
2021-04-23 14:45:27 -04:00
Rick Waldron
d576baf73f Info: adds "sec-evaluatenew" step to info for all "not-a-constructor.js" tests. 2020-10-06 12:01:34 -04:00
Rick Waldron
8aacff591c Standardize built-in constructor testing 2020-10-06 12:01:34 -04:00
Rick Waldron
c644ede430 Built-in function objects that are not identified as constructors must throw a TypeError exception when new'ed. Fixes gh-1739 2020-10-06 12:01:34 -04:00
Rick Waldron
fd12f5bc6b Coverage: Error message default value + cleanup. Fixes gh-2789 2020-09-18 16:42:22 -04:00
Alexey Shvayka
9aef4bd5eb Test that Error.prototype has no [[ErrorData]] slot 2020-09-10 15:27:34 -04:00
Alexey Shvayka
87398ac935 Test Error.prototype.toString called as top-level function 2020-09-09 14:34:20 -04:00
Gus Caplan
502cc20010 fix delete test, add error tests, fix lint (#2453) 2019-12-21 16:57:41 -05:00
Mike Pennisi
9cd62ffbd7 Improve coverage: ctor props of the global object
Prior to this commit, the descriptors of the constructor properties of
the global object were verified inconsistently, many independent
assertions occured in the same file, and that file test was poorly
located.

Restructure the relevant tests to improve coverage, follow convention,
and promote discoverability.
2019-09-27 15:39:10 -04:00
Leo Balter
ff9763729d Remove duplicated es[56]id if esid is present 2019-08-05 10:54:37 -04:00
Rick Waldron
b85474508c built-ins/decode/* - built-ins/eval/*: make all indentation consistent (depth & character) (#1423) 2018-02-15 15:50:18 -05:00
André Bargull
f95b56ab28 Revert "js-beautify: make all indentation consistent (depth & character) (#1409)" (#1412)
This reverts commit a01de4a722d088055a7d84d8c691ddd7109edb34.
2018-02-09 12:09:47 -05:00
Rick Waldron
a01de4a722 js-beautify: make all indentation consistent (depth & character) (#1409) 2018-02-09 11:35:37 -05:00
Rick Waldron
92a2621901 Frontmatter: fixup "info: >" to "info: |" 2018-01-05 12:27:59 -05:00
Leo Balter
7cbbe51216 Add cross-realm feature 2017-09-22 15:29:10 -04:00
André Bargull
d59e30c95e Remove execute bit from files (#976) 2017-04-13 16:24:07 -04:00
Rick Waldron
fdd2fa9b1c Rename $ => $262. Fixes gh-802 (#823)
Signed-off-by: Rick Waldron <waldron.rick@gmail.com>
2017-03-01 16:34:15 -05:00
jugglinmike
71e573f7da Add tests for realm interactions (#688)
* Add tests for prototype realm inference

* Add tests for miscellaneous realm concerns

* Add tests for realm of spec-created Errors

In some cases, Error objects produced by the specification are
observable from ECMAScript code. Among these cases, some are further
differentiated in that they occur outside of any built-in function and
may be triggered through syntactic production directly. The current
realm record is commonly interpreted incorrectly under these
circumstances.

Add tests asserting that the expected realm record is used when
constructing such Error objects.

* Add tests for realm use in ArraySpeciesCreate

* Add tests for function realm retrieval

* Add tests for cross-realm behaviors of Symbols

* Add tests for GetValue and PutValue

* Add tests for realm of spec-created Arrays

In some cases, Arrays produced by CreateArrayFromList are observable
from ECMAScript code. Among these cases, two occur outside of any
built-in function and may be triggered through syntactic production
directly. The current realm record is commonly interpreted incorrectly
under these circumstances.

Add tests asserting that the expected realm record is used when
constructing arrays.

* Add test for spec-created object

* fixup! Add tests for realm of spec-created Errors

* fixup! Add tests for realm of spec-created Errors

* fixup! Add tests for prototype realm inference

* fixup! Add tests for miscellaneous realm concerns
2016-10-24 10:43:17 -07:00
Leonardo Balter
059b7cd4a3 Remove invalid tests
ConversionError and RegExpError tests are methods that existed on
something that preceeded a IE9 Standard. They do not exist in the
specs, at least since ES5.

It's not test262 responsibility to maintain these tests as these
features can be freely implemented by any runtime.
2016-06-27 15:57:56 -04:00
Mike Pennisi
071b5f03c6 Remove unused harness file
The harness file `Test262Error.js` has not contained executable code since it
was introduced in this project [1]. The definition of the `Test262Error`
function has consistently been located in the `sta.js` harness file which test
runners are expected to inject into the test environment.

Remove the file and all references to it.

[1] See commit c33bf0e0439e6f6bf084c1524d7df8d2b41c515d
2016-02-12 13:44:18 -05:00
André Bargull
ca61d9b876 Add missing tests for "length" and "name" properties of built-in functions
Note: Already uses the updated DataView function lengths from tc39/ecma262#266 (ES2016 Draft 2015-12-20)
2016-01-15 18:12:05 +01:00
André Bargull
5e3eed63b9 Move Symbol.species and AnnexB tests to new subfolders 2016-01-15 18:11:03 +01:00
André Bargull
df9bf58204 Tests for changes introduced in ES2015 (Annex E)
- String case functions iterate over code points
- Has called before Get in Array.p.reverse
- Add test for web-compat Array.p.splice behaviour; Plus missing test for no arguments case
- ToObject no longer applied to this-value in Array.p.toLocaleString
- ToObject no longer applied to this-value in Object.p.toLocaleString
- Add tests for Object.p.propertyIsEnumerable and symbol property keys
- Add tests for Object.p.hasOwnProperty and symbol property keys
- Test property descriptor attributes of message property
- Tests for RegExp constructor checks
- Date constructor when called with date object
- TimeClip never returns negative zero
2015-09-07 17:25:55 +02:00
André Bargull
4ec97779fd Replace runTestCase with assert helpers, rest [test/built-ins] 2015-08-13 17:57:23 +02:00
André Bargull
1b14708467 Replace runTestCase with assert helpers [test/built-ins] 2015-08-13 17:50:58 +02:00
André Bargull
cf231fb03b Replace runTestCase with assert helpers [test/built-ins/Error] 2015-08-06 18:24:55 +02:00
André Bargull
a85f5039e0 Remove links to hg.ecmascript.org 2015-07-17 17:43:09 +02:00
Mike Pennisi
92890e6723 Remove $FAIL function
This function is equivalent to `$ERROR` (which is automatically included
in test environments). Remove the harness file that defines the
function, remove references to the file from test `includes` lists, and
update scripts to instead invoke the `$ERROR` function.
2015-06-09 19:44:25 -04:00
André Bargull
56036e4064 Enable strict mode for more built-in tests
- Remove no longer needed noStrict flags.
- Change tests to use propertyHelper.js for strict mode compatibility.
- Add tests for return value of `delete` operator, e.g. `delete Array.prototype === false`.
- Add non-writable tests for global NaN property.
- Split some tests to run in strict mode.
- Change tests with global `var length` declaration to use a different variable name for browser environments.
- Merge duplicated tests symbol-data-property-configurable-non-strict and symbol-data-property-configurable-strict.
- Merge duplicated tests symbol-data-property-writable-non-strict and symbol-data-property-writable-strict.
- (And a small change in propertyHelper to reduce code duplication in function call.)
2015-05-18 18:01:00 +02:00
André Bargull
a5e793f7f3 Fix strict mode errors in built-ins/Error
Add missing "var" declarations and noStrict flags.

Part of issue #35.
2015-04-29 17:38:38 +02:00
Brian Terlson
2a74f0ec1b Reorganize ./test 2014-12-07 15:33:09 -08:00