2020-09-06 16:53:08 +00:00
|
|
|
[config]
|
|
|
|
|
# general settings for test262 ES6 version
|
|
|
|
|
|
|
|
|
|
# framework style: old, new
|
|
|
|
|
style=new
|
|
|
|
|
|
|
|
|
|
# handle tests tagged as [noStrict]: yes, no, skip
|
|
|
|
|
nostrict=yes
|
|
|
|
|
|
|
|
|
|
# handle tests tagged as [strictOnly]: yes, no, skip
|
|
|
|
|
strict=yes
|
|
|
|
|
|
|
|
|
|
# test mode: default, default-nostrict, default-strict, strict, nostrict, both, all
|
|
|
|
|
mode=default
|
|
|
|
|
|
|
|
|
|
# handle tests flagged as [async]: yes, no, skip
|
|
|
|
|
# for these, load 'harness/doneprintHandle.js' prior to test
|
2024-02-10 15:18:11 +00:00
|
|
|
# and expect `print('Test262:AsyncTestComplete')` to be called for
|
2020-09-06 16:53:08 +00:00
|
|
|
# successful termination
|
|
|
|
|
async=yes
|
|
|
|
|
|
|
|
|
|
# handle tests flagged as [module]: yes, no, skip
|
|
|
|
|
module=yes
|
|
|
|
|
|
|
|
|
|
# output error messages: yes, no
|
|
|
|
|
verbose=yes
|
|
|
|
|
|
|
|
|
|
# load harness files from this directory
|
|
|
|
|
harnessdir=test262/harness
|
|
|
|
|
|
|
|
|
|
# names of harness include files to skip
|
|
|
|
|
#harnessexclude=
|
|
|
|
|
|
|
|
|
|
# name of the error file for known errors
|
|
|
|
|
errorfile=test262_errors.txt
|
|
|
|
|
|
|
|
|
|
# exclude tests enumerated in this file (see also [exclude] section)
|
|
|
|
|
#excludefile=test262_exclude.txt
|
|
|
|
|
|
|
|
|
|
# report test results to this file
|
|
|
|
|
reportfile=test262_report.txt
|
|
|
|
|
|
|
|
|
|
# enumerate tests from this directory
|
|
|
|
|
testdir=test262/test
|
|
|
|
|
|
|
|
|
|
[features]
|
|
|
|
|
# Standard language features and proposed extensions
|
|
|
|
|
# list the features that are included
|
|
|
|
|
# skipped features are tagged as such to avoid warnings
|
2023-12-05 15:51:16 +00:00
|
|
|
# Keep this list alpha-sorted (:sort i in vim)
|
2020-09-06 16:53:08 +00:00
|
|
|
|
2023-12-05 15:51:16 +00:00
|
|
|
__getter__
|
|
|
|
|
__proto__
|
|
|
|
|
__setter__
|
2020-09-06 17:04:20 +00:00
|
|
|
AggregateError
|
2020-11-08 13:30:56 +00:00
|
|
|
align-detached-buffer-semantics-with-web-reality
|
|
|
|
|
arbitrary-module-namespace-names=skip
|
2023-12-09 11:33:05 +00:00
|
|
|
array-find-from-last
|
2023-12-27 16:18:39 +00:00
|
|
|
array-grouping
|
2023-12-05 15:51:16 +00:00
|
|
|
Array.fromAsync=skip
|
2023-12-05 15:54:43 +00:00
|
|
|
Array.prototype.at
|
2020-09-06 16:53:08 +00:00
|
|
|
Array.prototype.flat
|
|
|
|
|
Array.prototype.flatMap
|
2023-12-05 15:51:16 +00:00
|
|
|
Array.prototype.includes
|
2020-09-06 16:53:08 +00:00
|
|
|
Array.prototype.values
|
|
|
|
|
ArrayBuffer
|
2025-09-21 14:41:02 +00:00
|
|
|
arraybuffer-transfer
|
2020-09-06 16:53:08 +00:00
|
|
|
arrow-function
|
|
|
|
|
async-functions
|
|
|
|
|
async-iteration
|
|
|
|
|
Atomics
|
2025-03-25 18:08:19 +00:00
|
|
|
Atomics.pause=skip
|
2020-09-06 17:07:30 +00:00
|
|
|
Atomics.waitAsync=skip
|
2020-09-06 16:53:08 +00:00
|
|
|
BigInt
|
|
|
|
|
caller
|
2025-03-25 18:08:19 +00:00
|
|
|
canonical-tz=skip
|
2023-12-27 16:19:00 +00:00
|
|
|
change-array-by-copy
|
2020-09-06 16:53:08 +00:00
|
|
|
class
|
|
|
|
|
class-fields-private
|
2024-01-02 15:11:20 +00:00
|
|
|
class-fields-private-in
|
2020-09-06 16:53:08 +00:00
|
|
|
class-fields-public
|
|
|
|
|
class-methods-private
|
2024-01-02 15:10:43 +00:00
|
|
|
class-static-block
|
2020-09-06 16:53:08 +00:00
|
|
|
class-static-fields-private
|
2023-12-05 15:51:16 +00:00
|
|
|
class-static-fields-public
|
2020-09-06 16:53:08 +00:00
|
|
|
class-static-methods-private
|
|
|
|
|
coalesce-expression
|
|
|
|
|
computed-property-names
|
|
|
|
|
const
|
2020-09-06 17:04:20 +00:00
|
|
|
cross-realm
|
2020-09-06 16:53:08 +00:00
|
|
|
DataView
|
|
|
|
|
DataView.prototype.getFloat32
|
|
|
|
|
DataView.prototype.getFloat64
|
|
|
|
|
DataView.prototype.getInt16
|
|
|
|
|
DataView.prototype.getInt32
|
|
|
|
|
DataView.prototype.getInt8
|
|
|
|
|
DataView.prototype.getUint16
|
|
|
|
|
DataView.prototype.getUint32
|
|
|
|
|
DataView.prototype.setUint8
|
2023-12-05 15:51:16 +00:00
|
|
|
decorators=skip
|
2020-09-06 16:53:08 +00:00
|
|
|
default-parameters
|
|
|
|
|
destructuring-assignment
|
|
|
|
|
destructuring-binding
|
|
|
|
|
dynamic-import
|
2024-01-02 15:08:08 +00:00
|
|
|
error-cause
|
2025-06-14 09:42:54 +00:00
|
|
|
Error.isError
|
2025-03-25 18:08:19 +00:00
|
|
|
explicit-resource-management=skip
|
2023-12-05 15:51:16 +00:00
|
|
|
exponentiation
|
2020-09-06 16:53:08 +00:00
|
|
|
export-star-as-namespace-from-module
|
2025-04-05 10:49:29 +00:00
|
|
|
FinalizationRegistry
|
2025-05-05 17:12:32 +00:00
|
|
|
Float16Array
|
2020-09-06 16:53:08 +00:00
|
|
|
Float32Array
|
|
|
|
|
Float64Array
|
|
|
|
|
for-in-order
|
|
|
|
|
for-of
|
|
|
|
|
generators
|
|
|
|
|
globalThis
|
|
|
|
|
hashbang
|
2025-05-20 16:27:23 +00:00
|
|
|
import-attributes
|
2025-03-25 18:08:19 +00:00
|
|
|
import-defer=skip
|
2023-12-05 15:51:16 +00:00
|
|
|
import.meta
|
2020-11-08 13:30:56 +00:00
|
|
|
Int16Array
|
2020-09-06 16:53:08 +00:00
|
|
|
Int32Array
|
|
|
|
|
Int8Array
|
2025-03-25 18:08:19 +00:00
|
|
|
Intl-enumeration=skip
|
|
|
|
|
intl-normative-optional=skip
|
|
|
|
|
Intl.DateTimeFormat-datetimestyle=skip
|
|
|
|
|
Intl.DateTimeFormat-dayPeriod=skip
|
|
|
|
|
Intl.DateTimeFormat-extend-timezonename=skip
|
|
|
|
|
Intl.DateTimeFormat-formatRange=skip
|
|
|
|
|
Intl.DateTimeFormat-fractionalSecondDigits=skip
|
|
|
|
|
Intl.DisplayNames-v2=skip
|
|
|
|
|
Intl.DisplayNames=skip
|
|
|
|
|
Intl.DurationFormat=skip
|
|
|
|
|
Intl.ListFormat=skip
|
|
|
|
|
Intl.Locale-info=skip
|
|
|
|
|
Intl.Locale=skip
|
|
|
|
|
Intl.NumberFormat-unified=skip
|
|
|
|
|
Intl.NumberFormat-v3=skip
|
|
|
|
|
Intl.RelativeTimeFormat=skip
|
|
|
|
|
Intl.Segmenter=skip
|
2020-09-06 17:10:15 +00:00
|
|
|
IsHTMLDDA
|
added Iterator.prototype.[drop,filter,flatMap,map,take,every,find,forEach,some,reduce,[Symbol.toStringTag]] (saghul)
2025-09-20 14:47:43 +00:00
|
|
|
iterator-helpers
|
2025-03-25 18:08:19 +00:00
|
|
|
iterator-sequencing=skip
|
2025-05-20 16:27:23 +00:00
|
|
|
json-modules
|
2023-12-05 15:51:16 +00:00
|
|
|
json-parse-with-source=skip
|
2020-09-06 16:53:08 +00:00
|
|
|
json-superset
|
2020-11-08 13:30:56 +00:00
|
|
|
legacy-regexp=skip
|
2020-09-06 16:53:08 +00:00
|
|
|
let
|
2020-09-06 17:10:15 +00:00
|
|
|
logical-assignment-operators
|
2020-09-06 16:53:08 +00:00
|
|
|
Map
|
2025-03-25 18:08:19 +00:00
|
|
|
Math.sumPrecise=skip
|
2020-09-06 16:53:08 +00:00
|
|
|
new.target
|
|
|
|
|
numeric-separator-literal
|
|
|
|
|
object-rest
|
|
|
|
|
object-spread
|
|
|
|
|
Object.fromEntries
|
2022-03-06 17:55:04 +00:00
|
|
|
Object.hasOwn
|
2020-09-06 16:53:08 +00:00
|
|
|
Object.is
|
|
|
|
|
optional-catch-binding
|
|
|
|
|
optional-chaining
|
2020-11-08 13:30:56 +00:00
|
|
|
Promise
|
2025-05-16 16:02:14 +00:00
|
|
|
promise-try
|
2023-12-27 16:19:25 +00:00
|
|
|
promise-with-resolvers
|
2020-09-06 16:53:08 +00:00
|
|
|
Promise.allSettled
|
2020-09-06 17:04:20 +00:00
|
|
|
Promise.any
|
2020-09-06 16:53:08 +00:00
|
|
|
Promise.prototype.finally
|
|
|
|
|
Proxy
|
|
|
|
|
proxy-missing-checks
|
|
|
|
|
Reflect
|
|
|
|
|
Reflect.construct
|
|
|
|
|
Reflect.set
|
|
|
|
|
Reflect.setPrototypeOf
|
|
|
|
|
regexp-dotall
|
2023-12-05 15:51:16 +00:00
|
|
|
regexp-duplicate-named-groups=skip
|
2020-09-06 16:53:08 +00:00
|
|
|
regexp-lookbehind
|
2023-12-27 16:19:44 +00:00
|
|
|
regexp-match-indices
|
2025-05-16 18:34:18 +00:00
|
|
|
regexp-modifiers
|
2020-09-06 16:53:08 +00:00
|
|
|
regexp-named-groups
|
|
|
|
|
regexp-unicode-property-escapes
|
2025-05-16 15:43:03 +00:00
|
|
|
regexp-v-flag
|
2025-05-05 14:46:21 +00:00
|
|
|
RegExp.escape
|
2025-09-22 16:37:41 +00:00
|
|
|
resizable-arraybuffer
|
2020-09-06 16:53:08 +00:00
|
|
|
rest-parameters
|
|
|
|
|
Set
|
2025-09-20 10:19:50 +00:00
|
|
|
set-methods
|
2022-03-06 17:55:04 +00:00
|
|
|
ShadowRealm=skip
|
2020-09-06 16:53:08 +00:00
|
|
|
SharedArrayBuffer
|
2025-03-25 18:08:19 +00:00
|
|
|
source-phase-imports-module-source=skip
|
|
|
|
|
source-phase-imports=skip
|
2020-09-06 16:53:08 +00:00
|
|
|
string-trimming
|
|
|
|
|
String.fromCodePoint
|
2023-12-05 15:54:43 +00:00
|
|
|
String.prototype.at
|
2020-09-06 16:53:08 +00:00
|
|
|
String.prototype.endsWith
|
|
|
|
|
String.prototype.includes
|
2023-12-27 16:16:47 +00:00
|
|
|
String.prototype.isWellFormed
|
2020-09-06 16:53:08 +00:00
|
|
|
String.prototype.matchAll
|
|
|
|
|
String.prototype.replaceAll
|
2023-12-27 16:16:47 +00:00
|
|
|
String.prototype.toWellFormed
|
2020-09-06 16:53:08 +00:00
|
|
|
String.prototype.trimEnd
|
|
|
|
|
String.prototype.trimStart
|
|
|
|
|
super
|
|
|
|
|
Symbol
|
|
|
|
|
Symbol.asyncIterator
|
|
|
|
|
Symbol.hasInstance
|
|
|
|
|
Symbol.isConcatSpreadable
|
|
|
|
|
Symbol.iterator
|
|
|
|
|
Symbol.match
|
|
|
|
|
Symbol.matchAll
|
|
|
|
|
Symbol.prototype.description
|
|
|
|
|
Symbol.replace
|
|
|
|
|
Symbol.search
|
|
|
|
|
Symbol.species
|
|
|
|
|
Symbol.split
|
|
|
|
|
Symbol.toPrimitive
|
|
|
|
|
Symbol.toStringTag
|
|
|
|
|
Symbol.unscopables
|
2025-04-05 10:49:29 +00:00
|
|
|
symbols-as-weakmap-keys
|
2020-09-06 16:53:08 +00:00
|
|
|
tail-call-optimization=skip
|
|
|
|
|
template
|
2022-03-06 17:55:04 +00:00
|
|
|
Temporal=skip
|
2023-12-27 16:10:47 +00:00
|
|
|
top-level-await
|
2020-09-06 16:53:08 +00:00
|
|
|
TypedArray
|
2023-12-05 15:54:43 +00:00
|
|
|
TypedArray.prototype.at
|
2020-09-06 16:53:08 +00:00
|
|
|
u180e
|
|
|
|
|
Uint16Array
|
2020-11-08 13:30:56 +00:00
|
|
|
Uint32Array
|
2020-09-06 16:53:08 +00:00
|
|
|
Uint8Array
|
2025-03-25 18:08:19 +00:00
|
|
|
uint8array-base64=skip
|
2020-09-06 16:53:08 +00:00
|
|
|
Uint8ClampedArray
|
2025-05-24 13:43:14 +00:00
|
|
|
upsert=skip
|
2020-09-06 16:53:08 +00:00
|
|
|
WeakMap
|
2025-04-05 10:49:29 +00:00
|
|
|
WeakRef
|
2020-09-06 16:53:08 +00:00
|
|
|
WeakSet
|
|
|
|
|
well-formed-json-stringify
|
|
|
|
|
|
|
|
|
|
[exclude]
|
|
|
|
|
# list excluded tests and directories here
|
|
|
|
|
|
|
|
|
|
# intl not supported
|
|
|
|
|
test262/test/intl402/
|
|
|
|
|
|
|
|
|
|
# incompatible with the "caller" feature
|
|
|
|
|
test262/test/built-ins/Function/prototype/restricted-property-caller.js
|
|
|
|
|
test262/test/built-ins/Function/prototype/restricted-property-arguments.js
|
|
|
|
|
test262/test/built-ins/ThrowTypeError/unique-per-realm-function-proto.js
|
|
|
|
|
|
|
|
|
|
# slow tests
|
|
|
|
|
#test262/test/built-ins/RegExp/CharacterClassEscapes/
|
|
|
|
|
#test262/test/built-ins/RegExp/property-escapes/
|
|
|
|
|
|
2025-03-28 09:19:28 +00:00
|
|
|
# not yet in official specification
|
|
|
|
|
test262/test/built-ins/String/prototype/match/cstm-matcher-on-bigint-primitive.js
|
|
|
|
|
test262/test/built-ins/String/prototype/match/cstm-matcher-on-bigint-primitive.js
|
|
|
|
|
test262/test/built-ins/String/prototype/match/cstm-matcher-on-boolean-primitive.js
|
|
|
|
|
test262/test/built-ins/String/prototype/match/cstm-matcher-on-boolean-primitive.js
|
|
|
|
|
test262/test/built-ins/String/prototype/match/cstm-matcher-on-number-primitive.js
|
|
|
|
|
test262/test/built-ins/String/prototype/match/cstm-matcher-on-number-primitive.js
|
|
|
|
|
test262/test/built-ins/String/prototype/match/cstm-matcher-on-string-primitive.js
|
|
|
|
|
test262/test/built-ins/String/prototype/match/cstm-matcher-on-string-primitive.js
|
|
|
|
|
test262/test/built-ins/String/prototype/matchAll/cstm-matchall-on-bigint-primitive.js
|
|
|
|
|
test262/test/built-ins/String/prototype/matchAll/cstm-matchall-on-bigint-primitive.js
|
|
|
|
|
test262/test/built-ins/String/prototype/matchAll/cstm-matchall-on-number-primitive.js
|
|
|
|
|
test262/test/built-ins/String/prototype/matchAll/cstm-matchall-on-number-primitive.js
|
|
|
|
|
test262/test/built-ins/String/prototype/matchAll/cstm-matchall-on-string-primitive.js
|
|
|
|
|
test262/test/built-ins/String/prototype/matchAll/cstm-matchall-on-string-primitive.js
|
|
|
|
|
test262/test/built-ins/String/prototype/replace/cstm-replace-on-bigint-primitive.js
|
|
|
|
|
test262/test/built-ins/String/prototype/replace/cstm-replace-on-bigint-primitive.js
|
|
|
|
|
test262/test/built-ins/String/prototype/replace/cstm-replace-on-boolean-primitive.js
|
|
|
|
|
test262/test/built-ins/String/prototype/replace/cstm-replace-on-boolean-primitive.js
|
|
|
|
|
test262/test/built-ins/String/prototype/replace/cstm-replace-on-number-primitive.js
|
|
|
|
|
test262/test/built-ins/String/prototype/replace/cstm-replace-on-number-primitive.js
|
|
|
|
|
test262/test/built-ins/String/prototype/replace/cstm-replace-on-string-primitive.js
|
|
|
|
|
test262/test/built-ins/String/prototype/replace/cstm-replace-on-string-primitive.js
|
|
|
|
|
test262/test/built-ins/String/prototype/replaceAll/cstm-replaceall-on-bigint-primitive.js
|
|
|
|
|
test262/test/built-ins/String/prototype/replaceAll/cstm-replaceall-on-bigint-primitive.js
|
|
|
|
|
test262/test/built-ins/String/prototype/replaceAll/cstm-replaceall-on-boolean-primitive.js
|
|
|
|
|
test262/test/built-ins/String/prototype/replaceAll/cstm-replaceall-on-boolean-primitive.js
|
|
|
|
|
test262/test/built-ins/String/prototype/replaceAll/cstm-replaceall-on-number-primitive.js
|
|
|
|
|
test262/test/built-ins/String/prototype/replaceAll/cstm-replaceall-on-number-primitive.js
|
|
|
|
|
test262/test/built-ins/String/prototype/replaceAll/cstm-replaceall-on-string-primitive.js
|
|
|
|
|
test262/test/built-ins/String/prototype/replaceAll/cstm-replaceall-on-string-primitive.js
|
|
|
|
|
test262/test/built-ins/String/prototype/search/cstm-search-on-bigint-primitive.js
|
|
|
|
|
test262/test/built-ins/String/prototype/search/cstm-search-on-bigint-primitive.js
|
|
|
|
|
test262/test/built-ins/String/prototype/search/cstm-search-on-boolean-primitive.js
|
|
|
|
|
test262/test/built-ins/String/prototype/search/cstm-search-on-boolean-primitive.js
|
|
|
|
|
test262/test/built-ins/String/prototype/search/cstm-search-on-number-primitive.js
|
|
|
|
|
test262/test/built-ins/String/prototype/search/cstm-search-on-number-primitive.js
|
|
|
|
|
test262/test/built-ins/String/prototype/search/cstm-search-on-string-primitive.js
|
|
|
|
|
test262/test/built-ins/String/prototype/search/cstm-search-on-string-primitive.js
|
|
|
|
|
test262/test/built-ins/String/prototype/split/cstm-split-on-bigint-primitive.js
|
|
|
|
|
test262/test/built-ins/String/prototype/split/cstm-split-on-bigint-primitive.js
|
|
|
|
|
test262/test/built-ins/String/prototype/split/cstm-split-on-boolean-primitive.js
|
|
|
|
|
test262/test/built-ins/String/prototype/split/cstm-split-on-boolean-primitive.js
|
|
|
|
|
test262/test/built-ins/String/prototype/split/cstm-split-on-number-primitive.js
|
|
|
|
|
test262/test/built-ins/String/prototype/split/cstm-split-on-number-primitive.js
|
|
|
|
|
test262/test/built-ins/String/prototype/split/cstm-split-on-string-primitive.js
|
|
|
|
|
test262/test/built-ins/String/prototype/split/cstm-split-on-string-primitive.js
|
|
|
|
|
|
2025-04-21 14:23:42 +00:00
|
|
|
####################################
|
|
|
|
|
# staging tests
|
|
|
|
|
|
|
|
|
|
# sort() does not modify the array and we don't update it (XXX: the
|
|
|
|
|
# spec updates it in this case)
|
|
|
|
|
test262/test/staging/sm/Array/frozen-dense-array.js
|
|
|
|
|
|
2025-09-20 16:30:02 +00:00
|
|
|
# does not match spec
|
|
|
|
|
test262/test/staging/sm/Iterator/from/wrap-next-not-object-throws.js
|
|
|
|
|
|
2025-04-21 14:23:42 +00:00
|
|
|
# not supported
|
|
|
|
|
test262/test/staging/sm/extensions/censor-strict-caller.js
|
|
|
|
|
test262/test/staging/sm/JSON/parse-with-source.js
|
|
|
|
|
|
|
|
|
|
# not standard
|
|
|
|
|
test262/test/staging/sm/Function/builtin-no-construct.js
|
|
|
|
|
test262/test/staging/sm/Function/function-caller-restrictions.js
|
|
|
|
|
test262/test/staging/sm/Function/function-toString-builtin-name.js
|
2025-04-22 17:16:19 +00:00
|
|
|
test262/test/staging/sm/extensions/arguments-property-access-in-function.js
|
|
|
|
|
test262/test/staging/sm/extensions/function-caller-skips-eval-frames.js
|
|
|
|
|
test262/test/staging/sm/extensions/function-properties.js
|
2025-05-24 11:26:36 +00:00
|
|
|
test262/test/staging/sm/regress/regress-577648-1.js
|
|
|
|
|
test262/test/staging/sm/regress/regress-577648-2.js
|
|
|
|
|
test262/test/staging/sm/regress/regress-584355.js
|
|
|
|
|
test262/test/staging/sm/regress/regress-586482-1.js
|
|
|
|
|
test262/test/staging/sm/regress/regress-586482-2.js
|
|
|
|
|
test262/test/staging/sm/regress/regress-586482-3.js
|
|
|
|
|
test262/test/staging/sm/regress/regress-586482-4.js
|
|
|
|
|
test262/test/staging/sm/regress/regress-699682.js
|
|
|
|
|
|
2025-04-22 17:16:19 +00:00
|
|
|
# RegExp toSource not fully compliant
|
|
|
|
|
test262/test/staging/sm/RegExp/toString.js
|
|
|
|
|
test262/test/staging/sm/RegExp/source.js
|
2025-04-28 14:37:51 +00:00
|
|
|
test262/test/staging/sm/RegExp/escape.js
|
|
|
|
|
# source directives are not standard yet
|
|
|
|
|
test262/test/staging/sm/syntax/syntax-parsed-arrow-then-directive.js
|
2025-06-28 08:43:26 +00:00
|
|
|
# returning "bound fn" as initialName for a function is permitted by the spec
|
|
|
|
|
test262/test/staging/sm/Function/function-toString-builtin.js
|
2025-04-21 14:23:42 +00:00
|
|
|
|
2020-09-06 16:53:08 +00:00
|
|
|
[tests]
|
|
|
|
|
# list test files or use config.testdir
|