[config] # general settings for test262 ES6 version # 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 # and expect `print('Test262:AsyncTestComplete')` to be called for # 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 # 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 # Keep this list alpha-sorted (:sort i in vim) __getter__ __proto__ __setter__ AggregateError align-detached-buffer-semantics-with-web-reality arbitrary-module-namespace-names=skip array-find-from-last array-grouping Array.fromAsync=skip Array.prototype.at Array.prototype.flat Array.prototype.flatMap Array.prototype.includes Array.prototype.values ArrayBuffer arraybuffer-transfer arrow-function async-functions async-iteration # atomics are broken in recent versions of tcc Atomics=!tcc Atomics.pause=!tcc Atomics.waitAsync=skip BigInt caller change-array-by-copy class class-fields-private class-fields-private-in class-fields-public class-methods-private class-static-block class-static-fields-private class-static-fields-public class-static-methods-private coalesce-expression computed-property-names const cross-realm 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 decorators=skip default-parameters destructuring-assignment destructuring-binding dynamic-import error-cause Error.isError explicit-resource-management=skip exponentiation export-star-as-namespace-from-module FinalizationRegistry FinalizationRegistry.prototype.cleanupSome=skip Float16Array Float32Array Float64Array for-in-order for-of generators globalThis hashbang host-gc-required=skip import-assertions=skip import-attributes=skip import.meta Int16Array Int32Array Int8Array 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 IsHTMLDDA iterator-helpers json-modules=skip json-parse-with-source=skip json-superset legacy-regexp=skip let logical-assignment-operators Map Math.sumPrecise new.target numeric-separator-literal object-rest object-spread Object.fromEntries Object.hasOwn Object.is optional-catch-binding optional-chaining Promise promise-try promise-with-resolvers Promise.allSettled Promise.any Promise.prototype.finally Proxy proxy-missing-checks Reflect Reflect.construct Reflect.set Reflect.setPrototypeOf regexp-dotall regexp-duplicate-named-groups=skip regexp-lookbehind regexp-match-indices regexp-modifiers=skip regexp-named-groups regexp-unicode-property-escapes regexp-v-flag RegExp.escape resizable-arraybuffer rest-parameters Set set-methods ShadowRealm=skip SharedArrayBuffer source-phase-imports-module-source=skip source-phase-imports=skip string-trimming String.fromCodePoint String.prototype.at String.prototype.endsWith String.prototype.includes String.prototype.isWellFormed String.prototype.matchAll String.prototype.replaceAll String.prototype.toWellFormed 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 symbols-as-weakmap-keys tail-call-optimization=skip template Temporal=skip top-level-await TypedArray TypedArray.prototype.at u180e Uint16Array Uint32Array Uint8Array uint8array-base64=skip Uint8ClampedArray WeakMap WeakRef 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/ # in progress regexp-v-flag support, see https://github.com/quickjs-ng/quickjs/issues/228 test262/test/built-ins/RegExp/property-escapes/generated/strings/Basic_Emoji-negative-CharacterClass.js test262/test/built-ins/RegExp/property-escapes/generated/strings/Basic_Emoji-negative-P.js test262/test/built-ins/RegExp/property-escapes/generated/strings/Basic_Emoji-negative-u.js test262/test/built-ins/RegExp/property-escapes/generated/strings/Basic_Emoji.js test262/test/built-ins/RegExp/property-escapes/generated/strings/Emoji_Keycap_Sequence-negative-CharacterClass.js test262/test/built-ins/RegExp/property-escapes/generated/strings/Emoji_Keycap_Sequence-negative-P.js test262/test/built-ins/RegExp/property-escapes/generated/strings/Emoji_Keycap_Sequence-negative-u.js test262/test/built-ins/RegExp/property-escapes/generated/strings/Emoji_Keycap_Sequence.js test262/test/built-ins/RegExp/property-escapes/generated/strings/RGI_Emoji-negative-CharacterClass.js test262/test/built-ins/RegExp/property-escapes/generated/strings/RGI_Emoji-negative-P.js test262/test/built-ins/RegExp/property-escapes/generated/strings/RGI_Emoji-negative-u.js test262/test/built-ins/RegExp/property-escapes/generated/strings/RGI_Emoji.js test262/test/built-ins/RegExp/property-escapes/generated/strings/RGI_Emoji_Flag_Sequence-negative-CharacterClass.js test262/test/built-ins/RegExp/property-escapes/generated/strings/RGI_Emoji_Flag_Sequence-negative-P.js test262/test/built-ins/RegExp/property-escapes/generated/strings/RGI_Emoji_Flag_Sequence-negative-u.js test262/test/built-ins/RegExp/property-escapes/generated/strings/RGI_Emoji_Flag_Sequence.js test262/test/built-ins/RegExp/property-escapes/generated/strings/RGI_Emoji_Modifier_Sequence-negative-CharacterClass.js test262/test/built-ins/RegExp/property-escapes/generated/strings/RGI_Emoji_Modifier_Sequence-negative-P.js test262/test/built-ins/RegExp/property-escapes/generated/strings/RGI_Emoji_Modifier_Sequence-negative-u.js test262/test/built-ins/RegExp/property-escapes/generated/strings/RGI_Emoji_Modifier_Sequence.js test262/test/built-ins/RegExp/property-escapes/generated/strings/RGI_Emoji_Tag_Sequence-negative-CharacterClass.js test262/test/built-ins/RegExp/property-escapes/generated/strings/RGI_Emoji_Tag_Sequence-negative-P.js test262/test/built-ins/RegExp/property-escapes/generated/strings/RGI_Emoji_Tag_Sequence-negative-u.js test262/test/built-ins/RegExp/property-escapes/generated/strings/RGI_Emoji_Tag_Sequence.js test262/test/built-ins/RegExp/property-escapes/generated/strings/RGI_Emoji_ZWJ_Sequence-negative-CharacterClass.js test262/test/built-ins/RegExp/property-escapes/generated/strings/RGI_Emoji_ZWJ_Sequence-negative-P.js test262/test/built-ins/RegExp/property-escapes/generated/strings/RGI_Emoji_ZWJ_Sequence-negative-u.js test262/test/built-ins/RegExp/property-escapes/generated/strings/RGI_Emoji_ZWJ_Sequence.js test262/test/built-ins/RegExp/unicodeSets/generated/character-class-difference-character-class-escape.js test262/test/built-ins/RegExp/unicodeSets/generated/character-class-difference-character-class.js test262/test/built-ins/RegExp/unicodeSets/generated/character-class-difference-character-property-escape.js test262/test/built-ins/RegExp/unicodeSets/generated/character-class-difference-character.js test262/test/built-ins/RegExp/unicodeSets/generated/character-class-difference-property-of-strings-escape.js test262/test/built-ins/RegExp/unicodeSets/generated/character-class-difference-string-literal.js test262/test/built-ins/RegExp/unicodeSets/generated/character-class-escape-difference-character-class-escape.js test262/test/built-ins/RegExp/unicodeSets/generated/character-class-escape-difference-character-class.js test262/test/built-ins/RegExp/unicodeSets/generated/character-class-escape-difference-character-property-escape.js test262/test/built-ins/RegExp/unicodeSets/generated/character-class-escape-difference-character.js test262/test/built-ins/RegExp/unicodeSets/generated/character-class-escape-difference-property-of-strings-escape.js test262/test/built-ins/RegExp/unicodeSets/generated/character-class-escape-difference-string-literal.js test262/test/built-ins/RegExp/unicodeSets/generated/character-class-escape-intersection-character-class-escape.js test262/test/built-ins/RegExp/unicodeSets/generated/character-class-escape-intersection-character-class.js test262/test/built-ins/RegExp/unicodeSets/generated/character-class-escape-intersection-character-property-escape.js test262/test/built-ins/RegExp/unicodeSets/generated/character-class-escape-intersection-character.js test262/test/built-ins/RegExp/unicodeSets/generated/character-class-escape-intersection-property-of-strings-escape.js test262/test/built-ins/RegExp/unicodeSets/generated/character-class-escape-intersection-string-literal.js test262/test/built-ins/RegExp/unicodeSets/generated/character-class-escape-union-character-class-escape.js test262/test/built-ins/RegExp/unicodeSets/generated/character-class-escape-union-character-class.js test262/test/built-ins/RegExp/unicodeSets/generated/character-class-escape-union-character-property-escape.js test262/test/built-ins/RegExp/unicodeSets/generated/character-class-escape-union-character.js test262/test/built-ins/RegExp/unicodeSets/generated/character-class-escape-union-property-of-strings-escape.js test262/test/built-ins/RegExp/unicodeSets/generated/character-class-escape-union-string-literal.js test262/test/built-ins/RegExp/unicodeSets/generated/character-class-intersection-character-class-escape.js test262/test/built-ins/RegExp/unicodeSets/generated/character-class-intersection-character-class.js test262/test/built-ins/RegExp/unicodeSets/generated/character-class-intersection-character-property-escape.js test262/test/built-ins/RegExp/unicodeSets/generated/character-class-intersection-character.js test262/test/built-ins/RegExp/unicodeSets/generated/character-class-intersection-property-of-strings-escape.js test262/test/built-ins/RegExp/unicodeSets/generated/character-class-intersection-string-literal.js test262/test/built-ins/RegExp/unicodeSets/generated/character-class-union-character-class-escape.js test262/test/built-ins/RegExp/unicodeSets/generated/character-class-union-character-class.js test262/test/built-ins/RegExp/unicodeSets/generated/character-class-union-character-property-escape.js test262/test/built-ins/RegExp/unicodeSets/generated/character-class-union-character.js test262/test/built-ins/RegExp/unicodeSets/generated/character-class-union-property-of-strings-escape.js test262/test/built-ins/RegExp/unicodeSets/generated/character-class-union-string-literal.js test262/test/built-ins/RegExp/unicodeSets/generated/character-difference-character-class-escape.js test262/test/built-ins/RegExp/unicodeSets/generated/character-difference-character-class.js test262/test/built-ins/RegExp/unicodeSets/generated/character-difference-character-property-escape.js test262/test/built-ins/RegExp/unicodeSets/generated/character-difference-character.js test262/test/built-ins/RegExp/unicodeSets/generated/character-difference-property-of-strings-escape.js test262/test/built-ins/RegExp/unicodeSets/generated/character-difference-string-literal.js test262/test/built-ins/RegExp/unicodeSets/generated/character-intersection-character-class-escape.js test262/test/built-ins/RegExp/unicodeSets/generated/character-intersection-character-class.js test262/test/built-ins/RegExp/unicodeSets/generated/character-intersection-character-property-escape.js test262/test/built-ins/RegExp/unicodeSets/generated/character-intersection-character.js test262/test/built-ins/RegExp/unicodeSets/generated/character-intersection-property-of-strings-escape.js test262/test/built-ins/RegExp/unicodeSets/generated/character-intersection-string-literal.js test262/test/built-ins/RegExp/unicodeSets/generated/character-property-escape-difference-character-class-escape.js test262/test/built-ins/RegExp/unicodeSets/generated/character-property-escape-difference-character-class.js test262/test/built-ins/RegExp/unicodeSets/generated/character-property-escape-difference-character-property-escape.js test262/test/built-ins/RegExp/unicodeSets/generated/character-property-escape-difference-character.js test262/test/built-ins/RegExp/unicodeSets/generated/character-property-escape-difference-property-of-strings-escape.js test262/test/built-ins/RegExp/unicodeSets/generated/character-property-escape-difference-string-literal.js test262/test/built-ins/RegExp/unicodeSets/generated/character-property-escape-intersection-character-class-escape.js test262/test/built-ins/RegExp/unicodeSets/generated/character-property-escape-intersection-character-class.js test262/test/built-ins/RegExp/unicodeSets/generated/character-property-escape-intersection-character-property-escape.js test262/test/built-ins/RegExp/unicodeSets/generated/character-property-escape-intersection-character.js test262/test/built-ins/RegExp/unicodeSets/generated/character-property-escape-intersection-property-of-strings-escape.js test262/test/built-ins/RegExp/unicodeSets/generated/character-property-escape-intersection-string-literal.js test262/test/built-ins/RegExp/unicodeSets/generated/character-property-escape-union-character-class-escape.js test262/test/built-ins/RegExp/unicodeSets/generated/character-property-escape-union-character-class.js test262/test/built-ins/RegExp/unicodeSets/generated/character-property-escape-union-character-property-escape.js test262/test/built-ins/RegExp/unicodeSets/generated/character-property-escape-union-character.js test262/test/built-ins/RegExp/unicodeSets/generated/character-property-escape-union-property-of-strings-escape.js test262/test/built-ins/RegExp/unicodeSets/generated/character-property-escape-union-string-literal.js test262/test/built-ins/RegExp/unicodeSets/generated/character-union-character-class-escape.js test262/test/built-ins/RegExp/unicodeSets/generated/character-union-character-class.js test262/test/built-ins/RegExp/unicodeSets/generated/character-union-character-property-escape.js test262/test/built-ins/RegExp/unicodeSets/generated/character-union-character.js test262/test/built-ins/RegExp/unicodeSets/generated/character-union-property-of-strings-escape.js test262/test/built-ins/RegExp/unicodeSets/generated/character-union-string-literal.js test262/test/built-ins/RegExp/unicodeSets/generated/property-of-strings-escape-difference-character-class-escape.js test262/test/built-ins/RegExp/unicodeSets/generated/property-of-strings-escape-difference-character-class.js test262/test/built-ins/RegExp/unicodeSets/generated/property-of-strings-escape-difference-character-property-escape.js test262/test/built-ins/RegExp/unicodeSets/generated/property-of-strings-escape-difference-character.js test262/test/built-ins/RegExp/unicodeSets/generated/property-of-strings-escape-difference-property-of-strings-escape.js test262/test/built-ins/RegExp/unicodeSets/generated/property-of-strings-escape-difference-string-literal.js test262/test/built-ins/RegExp/unicodeSets/generated/property-of-strings-escape-intersection-character-class-escape.js test262/test/built-ins/RegExp/unicodeSets/generated/property-of-strings-escape-intersection-character-class.js test262/test/built-ins/RegExp/unicodeSets/generated/property-of-strings-escape-intersection-character-property-escape.js test262/test/built-ins/RegExp/unicodeSets/generated/property-of-strings-escape-intersection-character.js test262/test/built-ins/RegExp/unicodeSets/generated/property-of-strings-escape-intersection-property-of-strings-escape.js test262/test/built-ins/RegExp/unicodeSets/generated/property-of-strings-escape-intersection-string-literal.js test262/test/built-ins/RegExp/unicodeSets/generated/property-of-strings-escape-union-character-class-escape.js test262/test/built-ins/RegExp/unicodeSets/generated/property-of-strings-escape-union-character-class.js test262/test/built-ins/RegExp/unicodeSets/generated/property-of-strings-escape-union-character-property-escape.js test262/test/built-ins/RegExp/unicodeSets/generated/property-of-strings-escape-union-character.js test262/test/built-ins/RegExp/unicodeSets/generated/property-of-strings-escape-union-property-of-strings-escape.js test262/test/built-ins/RegExp/unicodeSets/generated/property-of-strings-escape-union-string-literal.js test262/test/built-ins/RegExp/unicodeSets/generated/rgi-emoji-13.1.js test262/test/built-ins/RegExp/unicodeSets/generated/rgi-emoji-14.0.js test262/test/built-ins/RegExp/unicodeSets/generated/rgi-emoji-15.0.js test262/test/built-ins/RegExp/unicodeSets/generated/rgi-emoji-15.1.js test262/test/built-ins/RegExp/unicodeSets/generated/string-literal-difference-character-class-escape.js test262/test/built-ins/RegExp/unicodeSets/generated/string-literal-difference-character-class.js test262/test/built-ins/RegExp/unicodeSets/generated/string-literal-difference-character-property-escape.js test262/test/built-ins/RegExp/unicodeSets/generated/string-literal-difference-character.js test262/test/built-ins/RegExp/unicodeSets/generated/string-literal-difference-property-of-strings-escape.js test262/test/built-ins/RegExp/unicodeSets/generated/string-literal-difference-string-literal.js test262/test/built-ins/RegExp/unicodeSets/generated/string-literal-intersection-character-class-escape.js test262/test/built-ins/RegExp/unicodeSets/generated/string-literal-intersection-character-class.js test262/test/built-ins/RegExp/unicodeSets/generated/string-literal-intersection-character-property-escape.js test262/test/built-ins/RegExp/unicodeSets/generated/string-literal-intersection-character.js test262/test/built-ins/RegExp/unicodeSets/generated/string-literal-intersection-property-of-strings-escape.js test262/test/built-ins/RegExp/unicodeSets/generated/string-literal-intersection-string-literal.js test262/test/built-ins/RegExp/unicodeSets/generated/string-literal-union-character-class-escape.js test262/test/built-ins/RegExp/unicodeSets/generated/string-literal-union-character-class.js test262/test/built-ins/RegExp/unicodeSets/generated/string-literal-union-character-property-escape.js test262/test/built-ins/RegExp/unicodeSets/generated/string-literal-union-character.js test262/test/built-ins/RegExp/unicodeSets/generated/string-literal-union-property-of-strings-escape.js test262/test/built-ins/RegExp/unicodeSets/generated/string-literal-union-string-literal.js [tests] # list test files or use config.testdir