aboutsummaryrefslogtreecommitdiff
path: root/deps/v8/test/test262
diff options
context:
space:
mode:
authorMichaël Zasso <targos@protonmail.com>2016-05-27 16:37:42 +0200
committerMichaël Zasso <targos@protonmail.com>2016-06-29 09:04:28 +0200
commit2cc29517966de7257a2f1b34c58c77225a21e05d (patch)
tree210bd177df2f06eec16e1e22edafdbcbffe66f8a /deps/v8/test/test262
parentbbf3838c70aaec1dd296fa75ae334fd1c7866df3 (diff)
downloadandroid-node-v8-2cc29517966de7257a2f1b34c58c77225a21e05d.tar.gz
android-node-v8-2cc29517966de7257a2f1b34c58c77225a21e05d.tar.bz2
android-node-v8-2cc29517966de7257a2f1b34c58c77225a21e05d.zip
deps: update V8 to 5.1.281.69
Pick up the latest branch-head for V8 5.1. This branch brings in improved language support and performance improvements. For full details: http://v8project.blogspot.com/2016/04/v8-release-51.html * Picks up the latest branch head for 5.1 [1] * Edit v8 gitignore to allow trace_event copy * Update V8 DEP trace_event as per deps/v8/DEPS [2] [1] https://chromium.googlesource.com/v8/v8.git/+/dc81244 [2] https://chromium.googlesource.com/chromium/src/base/trace_event/common/+/c8c8665 PR-URL: https://github.com/nodejs/node/pull/7016 Reviewed-By: Ben Noordhuis <info@bnoordhuis.nl>
Diffstat (limited to 'deps/v8/test/test262')
-rwxr-xr-xdeps/v8/test/test262/archive.py5
-rw-r--r--deps/v8/test/test262/test262.status391
-rw-r--r--deps/v8/test/test262/testcfg.py34
3 files changed, 98 insertions, 332 deletions
diff --git a/deps/v8/test/test262/archive.py b/deps/v8/test/test262/archive.py
index 8398e51716..c265b32421 100755
--- a/deps/v8/test/test262/archive.py
+++ b/deps/v8/test/test262/archive.py
@@ -8,10 +8,15 @@ import tarfile
os.chdir(os.path.dirname(os.path.abspath(__file__)))
+# Workaround for slow grp and pwd calls.
+tarfile.grp = None
+tarfile.pwd = None
+
def filter_git(tar_info):
if tar_info.name.startswith(os.path.join('data', '.git')):
return None
else:
+ tar_info.uname = tar_info.gname = "test262"
return tar_info
with tarfile.open('data.tar', 'w') as tar:
diff --git a/deps/v8/test/test262/test262.status b/deps/v8/test/test262/test262.status
index a926bcc92d..b1bdd0adb0 100644
--- a/deps/v8/test/test262/test262.status
+++ b/deps/v8/test/test262/test262.status
@@ -27,19 +27,8 @@
[
[ALWAYS, {
- ############################### BUGS ###################################
-
- # BUG(v8:3455)
- 'intl402/11.2.3_b': [FAIL],
- 'intl402/12.2.3_b': [FAIL],
-
###################### NEEDS INVESTIGATION #######################
- # Possibly same cause as S8.5_A2.1, below: floating-point tests.
- 'built-ins/Math/cos/S15.8.2.7_A7': [PASS, FAIL_OK],
- 'built-ins/Math/sin/S15.8.2.16_A7': [PASS, FAIL_OK],
- 'built-ins/Math/tan/S15.8.2.18_A7': [PASS, FAIL_OK],
-
# This is an incompatibility between ES5 and V8 on enumerating
# shadowed elements in a for..in loop.
# https://code.google.com/p/v8/issues/detail?id=705
@@ -47,63 +36,12 @@
###################### MISSING ES6 FEATURES #######################
- # https://bugs.chromium.org/p/v8/issues/detail?id=4768
- # The Reflect.enumerate trap is removed
- 'built-ins/Reflect/enumerate/*': [SKIP],
- 'built-ins/Proxy/enumerate/*': [SKIP],
-
- # https://code.google.com/p/v8/issues/detail?id=4163
- 'built-ins/GeneratorPrototype/next/context-constructor-invocation': [FAIL],
-
- # https://code.google.com/p/v8/issues/detail?id=3566
- 'built-ins/Array/from/iter-map-fn-err': [FAIL],
- 'built-ins/Array/from/iter-set-elem-prop-err': [FAIL],
- 'built-ins/Map/iterator-close-after-set-failure': [FAIL],
- 'built-ins/Map/iterator-item-first-entry-returns-abrupt': [FAIL],
- 'built-ins/Map/iterator-item-second-entry-returns-abrupt': [FAIL],
- 'built-ins/Map/iterator-items-are-not-object-close-iterator': [FAIL],
- 'built-ins/Promise/all/iter-close': [FAIL],
- 'built-ins/Promise/race/iter-close': [PASS, FAIL],
- 'built-ins/Set/set-iterator-close-after-add-failure': [FAIL],
- 'built-ins/WeakMap/iterator-close-after-set-failure': [FAIL],
- 'built-ins/WeakMap/iterator-item-first-entry-returns-abrupt': [FAIL],
- 'built-ins/WeakMap/iterator-item-second-entry-returns-abrupt': [FAIL],
- 'built-ins/WeakMap/iterator-items-are-not-object-close-iterator': [FAIL],
- 'built-ins/WeakSet/iterator-close-after-add-failure': [FAIL],
-
- # https://code.google.com/p/v8/issues/detail?id=4348
- 'built-ins/String/prototype/Symbol.iterator/this-val-non-obj-coercible': [FAIL],
-
# The order of adding the name property is wrong
# https://code.google.com/p/v8/issues/detail?id=4199
'language/computed-property-names/class/static/method-number': [FAIL, FAIL_SLOPPY],
'language/computed-property-names/class/static/method-symbol': [FAIL, FAIL_SLOPPY],
'language/computed-property-names/class/static/method-string': [FAIL, FAIL_SLOPPY],
- # https://code.google.com/p/v8/issues/detail?id=3566
- 'language/statements/for-of/body-dstr-assign-error': [FAIL],
- 'language/statements/for-of/body-put-error': [FAIL],
- 'language/statements/for-of/generator-close-via-break': [FAIL],
- 'language/statements/for-of/generator-close-via-return': [FAIL],
- 'language/statements/for-of/generator-close-via-throw': [FAIL],
- 'language/statements/for-of/iterator-close-get-method-error': [FAIL],
- 'language/statements/for-of/iterator-close-non-object': [FAIL],
- 'language/statements/for-of/iterator-close-via-break': [FAIL],
- 'language/statements/for-of/iterator-close-via-return': [FAIL],
- 'language/statements/for-of/iterator-close-via-throw': [FAIL],
-
- # We do not expose Array.prototype.values
- # https://code.google.com/p/v8/issues/detail?id=4247
- 'built-ins/Array/prototype/Symbol.iterator': [FAIL],
- 'built-ins/Array/prototype/values/returns-iterator': [FAIL],
- 'built-ins/Array/prototype/values/returns-iterator-from-object': [FAIL],
- 'built-ins/Array/prototype/values/prop-desc': [FAIL],
- 'built-ins/Array/prototype/values/name': [FAIL],
- 'built-ins/Array/prototype/values/length': [FAIL],
- 'built-ins/Array/prototype/values/iteration': [FAIL],
- 'built-ins/Array/prototype/values/iteration-mutable': [FAIL],
- 'built-ins/Array/prototype/Symbol.unscopables/value': [FAIL],
-
# https://code.google.com/p/v8/issues/detail?id=4248
'language/expressions/compound-assignment/S11.13.2_A5.*': [FAIL],
'language/expressions/compound-assignment/S11.13.2_A6.*': [FAIL],
@@ -139,6 +77,14 @@
'language/expressions/class/name': [FAIL],
'language/expressions/function/name': [FAIL],
'language/expressions/generators/name': [FAIL],
+ 'intl402/NumberFormat/prototype/format/format-function-name': [FAIL],
+ 'intl402/DateTimeFormat/prototype/format/format-function-name': [FAIL],
+ 'intl402/Collator/prototype/compare/compare-function-name': [FAIL],
+
+ # https://bugs.chromium.org/p/v8/issues/detail?id=4778
+ 'intl402/Collator/prototype/compare/name': [FAIL],
+ 'intl402/DateTimeFormat/prototype/format/name': [FAIL],
+ 'intl402/NumberFormat/prototype/format/name': [FAIL],
# https://code.google.com/p/v8/issues/detail?id=4251
'language/expressions/postfix-increment/S11.3.1_A5_T1': [FAIL],
@@ -153,42 +99,49 @@
# https://code.google.com/p/v8/issues/detail?id=4253
'language/asi/S7.9_A5.7_T1': [PASS, FAIL_OK],
- # https://code.google.com/p/v8/issues/detail?id=4602
+ ###### BEGIN REGEXP SUBCLASSING SECTION ######
+ # Spec change in progress https://github.com/tc39/ecma262/pull/494
+ # RegExpBuiltinMatch reads flags from [[OriginalFlags]]
+ 'built-ins/RegExp/prototype/Symbol.match/builtin-coerce-sticky': [FAIL],
+ 'built-ins/RegExp/prototype/Symbol.match/builtin-get-global-err': [FAIL],
+ 'built-ins/RegExp/prototype/Symbol.match/builtin-get-sticky-err': [FAIL],
+ 'built-ins/RegExp/prototype/Symbol.match/builtin-success-g-set-lastindex': [FAIL],
+ 'built-ins/RegExp/prototype/Symbol.match/builtin-success-g-set-lastindex-err': [FAIL],
+ 'built-ins/RegExp/prototype/Symbol.match/coerce-sticky': [FAIL],
+ 'built-ins/RegExp/prototype/Symbol.match/get-sticky-err': [FAIL],
+ 'built-ins/RegExp/prototype/Symbol.replace/coerce-global': [FAIL],
+ 'built-ins/RegExp/prototype/Symbol.replace/coerce-unicode': [FAIL],
+ 'built-ins/RegExp/prototype/Symbol.replace/get-sticky-coerce': [FAIL],
+ 'built-ins/RegExp/prototype/Symbol.replace/get-sticky-err': [SKIP],
+ 'built-ins/RegExp/prototype/Symbol.search/get-sticky-coerce': [FAIL],
+ 'built-ins/RegExp/prototype/Symbol.search/get-sticky-err': [FAIL],
'built-ins/RegExp/prototype/exec/get-sticky-coerce': [FAIL],
'built-ins/RegExp/prototype/exec/get-sticky-err': [FAIL],
'built-ins/RegExp/prototype/test/get-sticky-err': [FAIL],
- # https://code.google.com/p/v8/issues/detail?id=4504
- 'built-ins/RegExp/prototype/exec/y-fail-lastindex-no-write': [PASS, FAIL],
- 'built-ins/RegExp/prototype/test/y-fail-lastindex-no-write': [PASS, FAIL],
+ # Missing lastIndex support
+ 'built-ins/RegExp/prototype/Symbol.split/str-result-coerce-length-err': [FAIL],
- # https://code.google.com/p/v8/issues/detail?id=4305
- # SKIP rather than FAIL some tests, as they may check for an exception which
- # happens to be thrown for some other reason (e.g,
- # built-ins/RegExp/prototype/Symbol.match/builtin-failure-set-lastindex-err)
- 'built-ins/RegExp/prototype/Symbol.match/*': [SKIP],
- 'built-ins/String/prototype/endsWith/return-abrupt-from-searchstring-regexp-test': [FAIL],
- 'built-ins/String/prototype/includes/return-abrupt-from-searchstring-regexp-test': [FAIL],
- 'built-ins/String/prototype/startsWith/return-abrupt-from-searchstring-regexp-test': [FAIL],
- 'built-ins/String/prototype/match/invoke-builtin-match': [FAIL],
+ # Times out
+ 'built-ins/RegExp/prototype/Symbol.split/str-coerce-lastindex': [SKIP],
+ 'built-ins/RegExp/prototype/Symbol.match/coerce-global': [SKIP],
+ 'built-ins/RegExp/prototype/Symbol.match/builtin-coerce-global': [SKIP],
- # https://code.google.com/p/v8/issues/detail?id=4343
- 'built-ins/RegExp/prototype/Symbol.replace/*': [SKIP],
+ # Sticky support busted
+ 'built-ins/RegExp/prototype/Symbol.replace/y-init-lastindex': [FAIL],
+ 'built-ins/RegExp/prototype/Symbol.replace/y-set-lastindex': [FAIL],
- # https://code.google.com/p/v8/issues/detail?id=4344
- 'built-ins/RegExp/prototype/Symbol.search/*': [SKIP],
+ # SKIP rather than FAIL, as the test checks for an exception which
+ # happens to be thrown for some other reason.
+ 'built-ins/RegExp/prototype/Symbol.split/str-result-get-length-err': [SKIP],
- # https://code.google.com/p/v8/issues/detail?id=4345
- 'built-ins/RegExp/prototype/Symbol.split/*': [SKIP],
+ ###### END REGEXP SUBCLASSING SECTION ######
# https://code.google.com/p/v8/issues/detail?id=4360
'intl402/Collator/10.1.1_1': [FAIL],
'intl402/DateTimeFormat/12.1.1_1': [FAIL],
'intl402/NumberFormat/11.1.1_1': [FAIL],
- # https://code.google.com/p/v8/issues/detail?id=4361
- 'intl402/Collator/10.1.1_a': [FAIL],
-
# https://code.google.com/p/v8/issues/detail?id=4476
'built-ins/String/prototype/toLocaleLowerCase/special_casing_conditional': [FAIL],
'built-ins/String/prototype/toLocaleLowerCase/supplementary_plane': [FAIL],
@@ -220,12 +173,6 @@
'built-ins/Promise/resolve-function-name': [FAIL],
'built-ins/Promise/all/resolve-element-function-name': [FAIL],
'built-ins/Promise/executor-function-name': [FAIL],
- 'built-ins/Promise/all/capability-executor-not-callable': [FAIL],
- 'built-ins/Promise/reject/capability-executor-not-callable': [FAIL],
- 'built-ins/Promise/race/capability-executor-not-callable': [FAIL],
- 'built-ins/Promise/prototype/then/capability-executor-not-callable': [FAIL],
- 'built-ins/Promise/resolve/capability-executor-not-callable': [FAIL],
- 'built-ins/Promise/race/S25.4.4.3_A3.1_T2': [FAIL],
# https://bugs.chromium.org/p/v8/issues/detail?id=4634
'built-ins/DataView/prototype/setFloat64/index-check-before-value-conversion': [FAIL],
@@ -246,18 +193,21 @@
'language/statements/class/subclass/builtin-objects/NativeError/URIError-message': [FAIL],
'language/statements/class/subclass/builtin-objects/Error/message-property-assignment': [FAIL],
- # https://bugs.chromium.org/p/v8/issues/detail?id=4663
- 'built-ins/object/entries/*': [SKIP],
- 'built-ins/object/values/*': [SKIP],
- 'built-ins/Object/entries/*': [SKIP],
- 'built-ins/Object/values/*': [SKIP],
-
# https://code.google.com/p/chromium/issues/detail?id=581577
'built-ins/RegExp/prototype/source/15.10.7.1-1': [FAIL],
'built-ins/RegExp/prototype/global/15.10.7.2-1': [FAIL],
'built-ins/RegExp/prototype/ignoreCase/15.10.7.3-1': [FAIL],
'built-ins/RegExp/prototype/multiline/15.10.7.4-1': [FAIL],
+ # https://bugs.chromium.org/p/v8/issues/detail?id=4727
+ 'built-ins/TypedArrays/length-arg-is-undefined-throws': [FAIL],
+ 'built-ins/TypedArrays/length-arg-is-symbol-throws': [FAIL],
+ 'built-ins/TypedArrays/length-arg-is-float-throws-rangeerror': [FAIL],
+ 'built-ins/TypedArrays/length-arg-is-nan-throws-rangeerror': [FAIL],
+
+ # https://bugs.chromium.org/p/v8/issues/detail?id=4784
+ 'built-ins/TypedArrays/buffer-arg-defined-negative-length': [FAIL],
+
######################## NEEDS INVESTIGATION ###########################
# These test failures are specific to the intl402 suite and need investigation
@@ -272,16 +222,12 @@
'intl402/Collator/10.2.3_b': [PASS, FAIL],
'intl402/Collator/prototype/10.3_a': [FAIL],
'intl402/DateTimeFormat/12.1.1': [FAIL],
- 'intl402/DateTimeFormat/12.1.1_a': [FAIL],
'intl402/DateTimeFormat/12.1.2': [PASS, FAIL],
'intl402/DateTimeFormat/12.1.2.1_4': [FAIL],
'intl402/DateTimeFormat/12.2.3_b': [FAIL],
- 'intl402/DateTimeFormat/prototype/12.3.3': [FAIL],
'intl402/DateTimeFormat/prototype/12.3_a': [FAIL],
'intl402/Number/prototype/toLocaleString/13.2.1_5': [PASS, FAIL],
'intl402/NumberFormat/11.1.1_20_c': [FAIL],
- 'intl402/NumberFormat/11.1.1_a': [FAIL],
- 'intl402/NumberFormat/11.1.1': [FAIL],
'intl402/NumberFormat/11.1.2': [PASS, FAIL],
'intl402/NumberFormat/11.1.2.1_4': [FAIL],
'intl402/NumberFormat/11.2.3_b': [FAIL],
@@ -290,18 +236,22 @@
##################### DELIBERATE INCOMPATIBILITIES #####################
- 'built-ins/Math/exp/S15.8.2.8_A6': [PASS, FAIL_OK], # Math.exp (less precise with --fast-math)
-
- # Linux for ia32 (and therefore simulators) default to extended 80 bit
- # floating point formats, so these tests checking 64-bit FP precision fail.
- # The other platforms/arch's pass these tests.
- # We follow the other major JS engines by keeping this default.
- 'language/types/number/S8.5_A2.1': [PASS, FAIL_OK],
- 'language/types/number/S8.5_A2.2': [PASS, FAIL_OK],
-
# https://code.google.com/p/v8/issues/detail?id=4693
'language/block-scope/syntax/redeclaration-in-block/attempt-to-redeclare-function-declaration-with-function-declaration': [PASS, FAIL_SLOPPY],
+ # We do not expose Array.prototype.values due to webcompat issues.
+ # Most recent incompatability: https://crbug.com/615873
+ # https://code.google.com/p/v8/issues/detail?id=4247
+ 'built-ins/Array/prototype/Symbol.iterator': [FAIL],
+ 'built-ins/Array/prototype/values/returns-iterator': [FAIL],
+ 'built-ins/Array/prototype/values/returns-iterator-from-object': [FAIL],
+ 'built-ins/Array/prototype/values/prop-desc': [FAIL],
+ 'built-ins/Array/prototype/values/name': [FAIL],
+ 'built-ins/Array/prototype/values/length': [FAIL],
+ 'built-ins/Array/prototype/values/iteration': [FAIL],
+ 'built-ins/Array/prototype/values/iteration-mutable': [FAIL],
+ 'built-ins/Array/prototype/Symbol.unscopables/value': [FAIL],
+
############################ INVALID TESTS #############################
# The reference value calculated by Test262 is incorrect if you run these
@@ -319,26 +269,19 @@
# Test262 Bug: https://bugs.ecmascript.org/show_bug.cgi?id=596
'built-ins/Array/prototype/sort/bug_596_1': [PASS, FAIL_OK],
- # Tests do not return boolean.
- 'built-ins/Object/keys/15.2.3.14-1-1': [PASS, FAIL_OK],
- 'built-ins/Object/keys/15.2.3.14-1-2': [PASS, FAIL_OK],
- 'built-ins/Object/keys/15.2.3.14-1-3': [PASS, FAIL_OK],
-
- # Test bug https://github.com/tc39/test262/issues/405
- 'intl402/Collator/prototype/compare/10.3.2_1_c': [PASS, FAIL_OK],
- 'intl402/Collator/prototype/compare/10.3.2_CS_b_NN': [PASS, FAIL_OK],
- 'intl402/Collator/prototype/compare/10.3.2_CS_c_NN': [PASS, FAIL_OK],
- 'intl402/Collator/prototype/compare/10.3.2_CS_d_NN': [PASS, FAIL_OK],
- 'intl402/Date/prototype/13.3.0_7': [PASS, FAIL_OK],
+ # Test bug https://github.com/tc39/test262/issues/518
+ 'built-ins/TypedArrays/object-arg-throws-setting-typedarray-property': [FAIL],
+ 'built-ins/Object/getOwnPropertyDescriptors/duplicate-keys': [FAIL],
+ 'built-ins/Object/getOwnPropertyDescriptors/symbols-included': [FAIL],
- # Some tests are too strict, checking SameValue rather than ===
- # https://github.com/tc39/test262/issues/435
- 'built-ins/Array/prototype/indexOf/15.4.4.14-5-9': [FAIL],
- 'built-ins/Array/prototype/lastIndexOf/15.4.4.15-5-9': [FAIL],
+ # Test bug https://github.com/tc39/test262/issues/521
+ 'built-ins/TypedArray/from/mapfn-is-not-callable': [FAIL],
- # https://github.com/tc39/test262/issues/489
- # Test will pass in 0 or -GMT, but fail in +GMT
- 'language/statements/class/subclass/builtin-objects/Date/regular-subclassing': [PASS, FAIL_OK],
+ # Test bug https://github.com/tc39/test262/issues/529
+ 'built-ins/Math/cos/S15.8.2.7_A7': [PASS, FAIL_OK],
+ 'built-ins/Math/sin/S15.8.2.16_A7': [PASS, FAIL_OK],
+ 'built-ins/Math/tan/S15.8.2.18_A7': [PASS, FAIL_OK],
+ 'built-ins/Math/exp/S15.8.2.8_A6': [PASS, FAIL_OK], # Math.exp (less precise with --fast-math)
############################ SKIPPED TESTS #############################
@@ -373,9 +316,6 @@
}], # system == linux
['system == macos', {
- 'intl402/11.3.2_TRP': [FAIL],
- 'intl402/9.2.5_11_g_ii_2': [FAIL],
-
# BUG(v8:4437).
'intl402/Collator/10.1.1_19_c': [SKIP],
'intl402/Collator/9.2.5_11_g_ii_2': [SKIP],
@@ -426,195 +366,4 @@
'built-ins/ArrayBuffer/allocation-limit': [SKIP],
}], # asan == True or msan == True or tsan == True
-['ignition == True', {
- 'annexB/B.2.3.*': [SKIP],
- 'built-ins/Array/prototype/reduce/*': [SKIP],
- 'built-ins/Array/prototype/reduceRight/*': [SKIP],
- 'built-ins/GeneratorFunction/*': [SKIP],
- 'built-ins/GeneratorPrototype/*': [SKIP],
- 'built-ins/Promise/prototype/then/capability-executor-not-callable': [SKIP],
- 'built-ins/Reflect/enumerate/*': [SKIP],
- 'language/computed-property-names/class/*': [SKIP],
- 'language/computed-property-names/to-name-side-effects/*': [SKIP],
- 'language/directive-prologue/*': [SKIP],
- 'language/expressions/arrow-function/*': [SKIP],
- 'language/expressions/assignment/destructuring/*': [SKIP],
- 'language/expressions/class/subclass/builtin-objects/GeneratorFunction/*': [SKIP],
- 'language/expressions/generators/*': [SKIP],
- 'language/expressions/instanceof/primitive-prototype-with-object': [SKIP],
- 'language/expressions/instanceof/prototype-getter-with-object-throws': [SKIP],
- 'language/expressions/instanceof/prototype-getter-with-object': [SKIP],
- 'language/expressions/object/method-definition/yield*': [SKIP],
- 'language/expressions/object/method-definition/generator*': [SKIP],
- 'language/expressions/yield/*': [SKIP],
- 'language/statements/class/definition/methods-gen-no-yield': [SKIP],
- 'language/statements/class/definition/methods-gen-return': [SKIP],
- 'language/statements/class/definition/methods-gen-yield-as-expression-with-rhs': [SKIP],
- 'language/statements/class/definition/methods-gen-yield-as-generator-method-binding-identifier': [SKIP],
- 'language/statements/class/definition/methods-gen-yield-as-literal-property-name': [SKIP],
- 'language/statements/class/definition/methods-gen-yield-as-property-name': [SKIP],
- 'language/statements/class/definition/methods-gen-yield-as-statement': [SKIP],
- 'language/statements/class/definition/methods-gen-yield-as-expression-without-rhs': [SKIP],
- 'language/statements/class/definition/methods-gen-yield-as-yield-operand': [SKIP],
- 'language/statements/class/definition/methods-gen-yield-newline': [SKIP],
- 'language/statements/class/definition/methods-gen-yield-star-before-newline': [SKIP],
- 'language/statements/class/subclass/builtin-objects/GeneratorFunction/*': [SKIP],
- 'language/statements/generators/*': [SKIP],
-
- 'built-ins/Array/prototype/concat/Array.prototype.concat_non-array': [SKIP],
- 'built-ins/Date/prototype/toISOString/15.9.5.43-0-13': [SKIP],
- 'built-ins/Object/prototype/hasOwnProperty/S15.2.4.5_A12': [SKIP],
- 'built-ins/Object/prototype/isPrototypeOf/S15.2.4.6_A12': [SKIP],
- 'built-ins/Object/prototype/propertyIsEnumerable/S15.2.4.7_A12': [SKIP],
- 'built-ins/Object/prototype/toLocaleString/S15.2.4.3_A12': [SKIP],
- 'built-ins/Object/prototype/toString/15.2.4.2-1-1': [SKIP],
- 'built-ins/Object/prototype/toString/15.2.4.2-1-2': [SKIP],
- 'built-ins/Object/prototype/toString/S15.2.4.2_A12': [SKIP],
- 'built-ins/Object/prototype/valueOf/S15.2.4.4_A12': [SKIP],
- 'built-ins/Object/prototype/valueOf/S15.2.4.4_A14': [SKIP],
- 'built-ins/Object/prototype/valueOf/S15.2.4.4_A15': [SKIP],
- 'built-ins/Promise/all/S25.4.4.1_A4.1_T1': [SKIP],
- 'built-ins/Promise/prototype/then/on-rejected-throw': [SKIP],
- 'built-ins/Promise/reject/S25.4.4.4_A3.1_T1': [SKIP],
- 'built-ins/String/prototype/codePointAt/this-is-undefined-throws': [SKIP],
- 'built-ins/String/prototype/concat/S15.5.4.6_A2': [SKIP],
- 'built-ins/String/prototype/endsWith/this-is-undefined-throws': [SKIP],
- 'built-ins/String/prototype/includes/this-is-undefined-throws': [SKIP],
- 'built-ins/String/prototype/repeat/this-is-undefined-throws': [SKIP],
- 'built-ins/String/prototype/startsWith/this-is-undefined-throws': [SKIP],
- 'built-ins/String/prototype/trim/15.5.4.20-1-1': [SKIP],
- 'language/block-scope/leave/nested-block-let-declaration-only-shadows-outer-parameter-value-1': [SKIP],
- 'language/block-scope/leave/nested-block-let-declaration-only-shadows-outer-parameter-value-2': [SKIP],
- 'language/block-scope/leave/verify-context-in-labelled-block': [SKIP],
- 'language/block-scope/leave/x-after-break-to-label': [SKIP],
- 'language/default-parameters/class-definitions': [SKIP],
- 'language/default-parameters/generators': [SKIP],
- 'language/expressions/object/method-definition/name-prop-name-yield-expr': [SKIP],
- 'language/expressions/tagged-template/call-expression-context-no-strict': [SKIP],
- 'language/expressions/tagged-template/call-expression-context-strict': [SKIP],
- 'language/expressions/template-literal/evaluation-order': [SKIP],
- 'language/statements/for-of/body-dstr-assign': [SKIP],
- 'language/statements/for-of/break': [SKIP],
- 'language/statements/for-of/break-from-catch': [SKIP],
- 'language/statements/for-of/break-from-finally': [SKIP],
- 'language/statements/for-of/break-from-try': [SKIP],
- 'language/statements/for-of/break-label': [SKIP],
- 'language/statements/for-of/break-label-from-catch': [SKIP],
- 'language/statements/for-of/break-label-from-finally': [SKIP],
- 'language/statements/for-of/break-label-from-try': [SKIP],
- 'language/statements/for-of/continue': [SKIP],
- 'language/statements/for-of/continue-from-catch': [SKIP],
- 'language/statements/for-of/continue-from-finally': [SKIP],
- 'language/statements/for-of/continue-from-try': [SKIP],
- 'language/statements/for-of/continue-label': [SKIP],
- 'language/statements/for-of/continue-label-from-catch': [SKIP],
- 'language/statements/for-of/continue-label-from-finally': [SKIP],
- 'language/statements/for-of/continue-label-from-try': [SKIP],
- 'language/statements/for-of/generator': [SKIP],
- 'language/statements/for-of/generator-next-error': [SKIP],
- 'language/statements/for-of/nested': [SKIP],
- 'language/statements/for-of/return': [SKIP],
- 'language/statements/for-of/return-from-catch': [SKIP],
- 'language/statements/for-of/return-from-finally': [SKIP],
- 'language/statements/for-of/return-from-try': [SKIP],
- 'language/statements/for-of/throw': [SKIP],
- 'language/statements/for-of/throw-from-catch': [SKIP],
- 'language/statements/for-of/throw-from-finally': [SKIP],
- 'language/statements/for-of/yield': [SKIP],
- 'language/statements/for-of/yield-from-catch': [SKIP],
- 'language/statements/for-of/yield-from-finally': [SKIP],
- 'language/statements/for-of/yield-from-try': [SKIP],
- 'language/statements/for-of/yield-star': [SKIP],
- 'language/statements/for-of/yield-star-from-catch': [SKIP],
- 'language/statements/for-of/yield-star-from-finally': [SKIP],
- 'language/statements/for-of/yield-star-from-try': [SKIP],
- 'language/object-literal/concise-generator': [SKIP],
- 'language/statements/do-while/S12.6.1_A4_T5': [SKIP],
- 'language/statements/while/S12.6.2_A4_T5': [SKIP],
- 'language/expressions/instanceof/symbol-hasinstance-not-callable': [SKIP],
-
-}], # ignition == True
-
-['ignition == True and (arch == arm or arch == arm64)', {
- 'built-ins/Promise/all/ctx-ctor': [SKIP],
- 'built-ins/Promise/race/ctx-ctor': [SKIP],
- 'built-ins/decodeURI/S15.1.3.1_A1.12_T3': [SKIP],
- 'built-ins/decodeURIComponent/S15.1.3.2_A1.10_T1': [SKIP],
- 'built-ins/decodeURIComponent/S15.1.3.2_A1.11_T2': [SKIP],
- 'built-ins/decodeURIComponent/S15.1.3.2_A1.12_T2': [SKIP],
- 'built-ins/decodeURIComponent/S15.1.3.2_A1.12_T3': [SKIP],
- 'intl402/9.2.2': [SKIP],
- 'language/statements/class/arguments/default-constructor': [SKIP],
- 'language/statements/class/definition/constructor-strict-by-default': [SKIP],
- 'language/statements/class/definition/fn-name-accessor-get': [SKIP],
- 'language/statements/class/definition/fn-name-accessor-set': [SKIP],
- 'language/statements/class/definition/fn-name-gen-method': [SKIP],
- 'language/statements/class/definition/fn-name-method': [SKIP],
- 'language/statements/class/definition/methods-restricted-properties': [SKIP],
- 'language/statements/class/definition/prototype-getter': [SKIP],
- 'language/statements/class/definition/prototype-wiring': [SKIP],
- 'language/statements/class/definition/this-access-restriction': [SKIP],
- 'language/statements/class/definition/this-access-restriction-2': [SKIP],
- 'language/statements/class/definition/this-check-ordering': [SKIP],
- 'language/statements/class/name': [SKIP],
- 'language/statements/class/restricted-properties': [SKIP],
- 'language/statements/class/subclass/binding': [SKIP],
- 'language/statements/class/subclass/builtin-objects/Array/super-must-be-called': [SKIP],
- 'language/statements/class/subclass/builtin-objects/ArrayBuffer/super-must-be-called': [SKIP],
- 'language/statements/class/subclass/builtin-objects/Boolean/super-must-be-called': [SKIP],
- 'language/statements/class/subclass/builtin-objects/DataView/regular-subclassing': [SKIP],
- 'language/statements/class/subclass/builtin-objects/DataView/super-must-be-called': [SKIP],
- 'language/statements/class/subclass/builtin-objects/Date/super-must-be-called': [SKIP],
- 'language/statements/class/subclass/builtin-objects/Error/regular-subclassing': [SKIP],
- 'language/statements/class/subclass/builtin-objects/Error/super-must-be-called': [SKIP],
- 'language/statements/class/subclass/builtin-objects/Function/instance-length': [SKIP],
- 'language/statements/class/subclass/builtin-objects/Function/instance-name': [SKIP],
- 'language/statements/class/subclass/builtin-objects/Function/super-must-be-called': [SKIP],
- 'language/statements/class/subclass/builtin-objects/Map/super-must-be-called': [SKIP],
- 'language/statements/class/subclass/builtin-objects/NativeError/EvalError-name': [SKIP],
- 'language/statements/class/subclass/builtin-objects/NativeError/EvalError-super': [SKIP],
- 'language/statements/class/subclass/builtin-objects/NativeError/RangeError-name': [SKIP],
- 'language/statements/class/subclass/builtin-objects/NativeError/RangeError-super': [SKIP],
- 'language/statements/class/subclass/builtin-objects/NativeError/ReferenceError-name': [SKIP],
- 'language/statements/class/subclass/builtin-objects/NativeError/ReferenceError-super': [SKIP],
- 'language/statements/class/subclass/builtin-objects/NativeError/SyntaxError-name': [SKIP],
- 'language/statements/class/subclass/builtin-objects/NativeError/SyntaxError-super': [SKIP],
- 'language/statements/class/subclass/builtin-objects/NativeError/TypeError-name': [SKIP],
- 'language/statements/class/subclass/builtin-objects/NativeError/TypeError-super': [SKIP],
- 'language/statements/class/subclass/builtin-objects/NativeError/URIError-name': [SKIP],
- 'language/statements/class/subclass/builtin-objects/NativeError/URIError-super': [SKIP],
- 'language/statements/class/subclass/builtin-objects/Number/super-must-be-called': [SKIP],
- 'language/statements/class/subclass/builtin-objects/Object/constructor-return-undefined-throws': [SKIP],
- 'language/statements/class/subclass/builtin-objects/Object/constructor-returns-non-object': [SKIP],
- 'language/statements/class/subclass/builtin-objects/Promise/regular-subclassing': [SKIP],
- 'language/statements/class/subclass/builtin-objects/Promise/super-must-be-called': [SKIP],
- 'language/statements/class/subclass/builtin-objects/RegExp/lastIndex': [SKIP],
- 'language/statements/class/subclass/builtin-objects/RegExp/super-must-be-called': [SKIP],
- 'language/statements/class/subclass/builtin-objects/Set/super-must-be-called': [SKIP],
- 'language/statements/class/subclass/builtin-objects/String/length': [SKIP],
- 'language/statements/class/subclass/builtin-objects/String/super-must-be-called': [SKIP],
- 'language/statements/class/subclass/builtin-objects/Symbol/new-symbol-with-super-throws': [SKIP],
- 'language/statements/class/subclass/builtin-objects/WeakMap/super-must-be-called': [SKIP],
- 'language/statements/class/subclass/builtin-objects/WeakSet/super-must-be-called': [SKIP],
- 'language/statements/class/subclass/class-definition-null-proto-missing-return-override': [SKIP],
- 'language/statements/class/subclass/default-constructor': [SKIP],
- 'language/statements/class/subclass/default-constructor-2': [SKIP],
- 'language/statements/class/subclass/derived-class-return-override-with-boolean': [SKIP],
- 'language/statements/class/subclass/derived-class-return-override-with-null': [SKIP],
- 'language/statements/class/subclass/derived-class-return-override-with-number': [SKIP],
- 'language/statements/class/subclass/derived-class-return-override-with-string': [SKIP],
- 'language/statements/class/subclass/derived-class-return-override-with-symbol': [SKIP],
- 'language/statements/const/fn-name-arrow': [SKIP],
- 'language/statements/const/fn-name-class': [SKIP],
- 'language/statements/const/fn-name-cover': [SKIP],
- 'language/statements/const/fn-name-fn': [SKIP],
- 'language/statements/const/fn-name-gen': [SKIP],
- 'language/statements/let/fn-name-arrow': [SKIP],
- 'language/statements/let/fn-name-class': [SKIP],
- 'language/statements/let/fn-name-cover': [SKIP],
- 'language/statements/let/fn-name-fn': [SKIP],
- 'language/statements/let/fn-name-gen': [SKIP],
- 'test-api/Regress470113': [SKIP],
-}], # ignition == True and (arch == arm or arch == arm64)
-
]
diff --git a/deps/v8/test/test262/testcfg.py b/deps/v8/test/test262/testcfg.py
index b5ad30949d..bf007bd46f 100644
--- a/deps/v8/test/test262/testcfg.py
+++ b/deps/v8/test/test262/testcfg.py
@@ -39,7 +39,8 @@ from testrunner.local import testsuite
from testrunner.local import utils
from testrunner.objects import testcase
-ARCHIVE = os.path.join(os.path.dirname(os.path.abspath(__file__)), "data.tar")
+DATA = os.path.join(os.path.dirname(os.path.abspath(__file__)), "data")
+ARCHIVE = DATA + ".tar"
TEST_262_HARNESS_FILES = ["sta.js", "assert.js"]
@@ -128,7 +129,8 @@ class Test262TestSuite(testsuite.TestSuite):
def GetFlagsForTestCase(self, testcase, context):
return (testcase.flags + context.mode_flags + self.harness +
self.GetIncludesForTest(testcase) + ["--harmony"] +
- [os.path.join(self.testroot, testcase.path + ".js")])
+ [os.path.join(self.testroot, testcase.path + ".js")] +
+ (["--throws"] if "negative" in self.GetTestRecord(testcase) else []))
def _VariantGeneratorFactory(self):
return Test262VariantGenerator
@@ -143,7 +145,7 @@ class Test262TestSuite(testsuite.TestSuite):
self.ParseTestRecord = module.parseTestRecord
except:
raise ImportError("Cannot load parseTestRecord; you may need to "
- "--download-data for test262")
+ "gclient sync for test262")
finally:
if f:
f.close()
@@ -170,13 +172,20 @@ class Test262TestSuite(testsuite.TestSuite):
with open(filename) as f:
return f.read()
- def IsNegativeTest(self, testcase):
- test_record = self.GetTestRecord(testcase)
- return "negative" in test_record
+ def _ParseException(self, str):
+ for line in str.split("\n")[::-1]:
+ if line and not line[0].isspace() and ":" in line:
+ return line.split(":")[0]
+
- def IsFailureOutput(self, output, testpath):
+ def IsFailureOutput(self, testcase):
+ output = testcase.output
+ test_record = self.GetTestRecord(testcase)
if output.exit_code != 0:
return True
+ if "negative" in test_record:
+ if self._ParseException(output.stdout) != test_record["negative"]:
+ return True
return "FAILED!" in output.stdout
def HasUnexpectedOutput(self, testcase):
@@ -201,10 +210,13 @@ class Test262TestSuite(testsuite.TestSuite):
for f in archive_files:
os.remove(os.path.join(self.root, f))
- print "Extracting archive..."
- tar = tarfile.open(ARCHIVE)
- tar.extractall(path=os.path.dirname(ARCHIVE))
- tar.close()
+ # The archive is created only on swarming. Local checkouts have the
+ # data folder.
+ if os.path.exists(ARCHIVE) and not os.path.exists(DATA):
+ print "Extracting archive..."
+ tar = tarfile.open(ARCHIVE)
+ tar.extractall(path=os.path.dirname(ARCHIVE))
+ tar.close()
def GetSuite(name, root):