dop251 / goja

ECMAScript/JavaScript engine in pure Go

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Some more tests not being ran, but likely should be.

mstoykov opened this issue · comments

Due to

goja/tc39_test.go

Lines 588 to 590 in a070957

if meta.Es6id == "" && meta.Esid == "" {
t.Skip("No ids")
}
some tests aren't being ran.

But I have found at least some that arguably should be. This was possible as with the classes supported added (thanks again 🙇 ) the k6 tc39 tests, which run more tests than goja, are still failing for some tests and some of them seem like they should be passing.

If you do remove it you will get the following list:

        --- FAIL: TestTC39/tc39/test/built-ins/Reflect/Symbol.toStringTag.js (0.00s)
        --- FAIL: TestTC39/tc39/test/language/expressions/prefix-decrement/S11.4.5_A6_T3.js (0.00s)
        --- FAIL: TestTC39/tc39/test/language/expressions/prefix-decrement/S11.4.5_A6_T2.js (0.00s)
        --- FAIL: TestTC39/tc39/test/language/expressions/prefix-decrement/S11.4.5_A6_T1.js (0.00s)
        --- FAIL: TestTC39/tc39/test/language/expressions/postfix-increment/S11.3.1_A6_T3.js (0.00s)
        --- FAIL: TestTC39/tc39/test/language/expressions/postfix-increment/S11.3.1_A6_T2.js (0.00s)
        --- FAIL: TestTC39/tc39/test/language/expressions/postfix-increment/S11.3.1_A6_T1.js (0.00s)
        --- FAIL: TestTC39/tc39/test/language/expressions/postfix-decrement/S11.3.2_A6_T3.js (0.00s)
        --- FAIL: TestTC39/tc39/test/language/expressions/postfix-decrement/S11.3.2_A6_T1.js (0.00s)
        --- FAIL: TestTC39/tc39/test/language/expressions/postfix-decrement/S11.3.2_A6_T2.js (0.00s)
        --- FAIL: TestTC39/tc39/test/language/expressions/prefix-increment/S11.4.4_A6_T3.js (0.00s)
        --- FAIL: TestTC39/tc39/test/language/expressions/prefix-increment/S11.4.4_A6_T2.js (0.00s)
        --- FAIL: TestTC39/tc39/test/language/expressions/prefix-increment/S11.4.4_A6_T1.js (0.00s)
        --- FAIL: TestTC39/tc39/test/language/expressions/compound-assignment/S11.13.2_A7.9_T2.js (0.00s)
        --- FAIL: TestTC39/tc39/test/language/expressions/compound-assignment/S11.13.2_A7.9_T4.js (0.00s)
        --- FAIL: TestTC39/tc39/test/language/expressions/compound-assignment/S11.13.2_A7.9_T1.js (0.00s)
        --- FAIL: TestTC39/tc39/test/language/expressions/compound-assignment/S11.13.2_A7.8_T4.js (0.00s)
        --- FAIL: TestTC39/tc39/test/language/expressions/compound-assignment/S11.13.2_A7.8_T2.js (0.00s)
        --- FAIL: TestTC39/tc39/test/language/expressions/compound-assignment/S11.13.2_A7.8_T1.js (0.00s)
        --- FAIL: TestTC39/tc39/test/language/expressions/compound-assignment/S11.13.2_A7.7_T4.js (0.00s)
        --- FAIL: TestTC39/tc39/test/language/expressions/compound-assignment/S11.13.2_A7.7_T2.js (0.00s)
        --- FAIL: TestTC39/tc39/test/language/expressions/compound-assignment/S11.13.2_A7.7_T1.js (0.00s)
        --- FAIL: TestTC39/tc39/test/language/expressions/compound-assignment/S11.13.2_A7.6_T4.js (0.00s)
        --- FAIL: TestTC39/tc39/test/language/expressions/compound-assignment/S11.13.2_A7.6_T2.js (0.00s)
        --- FAIL: TestTC39/tc39/test/language/expressions/compound-assignment/S11.13.2_A7.6_T1.js (0.00s)
        --- FAIL: TestTC39/tc39/test/language/expressions/compound-assignment/S11.13.2_A7.5_T4.js (0.00s)
        --- FAIL: TestTC39/tc39/test/language/expressions/compound-assignment/S11.13.2_A7.5_T2.js (0.00s)
        --- FAIL: TestTC39/tc39/test/language/expressions/compound-assignment/S11.13.2_A7.5_T1.js (0.00s)
        --- FAIL: TestTC39/tc39/test/language/expressions/compound-assignment/S11.13.2_A7.4_T4.js (0.00s)
        --- FAIL: TestTC39/tc39/test/language/expressions/compound-assignment/S11.13.2_A7.3_T4.js (0.00s)
        --- FAIL: TestTC39/tc39/test/language/expressions/compound-assignment/S11.13.2_A7.4_T1.js (0.00s)
        --- FAIL: TestTC39/tc39/test/language/expressions/compound-assignment/S11.13.2_A7.4_T2.js (0.00s)
        --- FAIL: TestTC39/tc39/test/language/expressions/compound-assignment/S11.13.2_A7.3_T2.js (0.00s)
        --- FAIL: TestTC39/tc39/test/language/expressions/compound-assignment/S11.13.2_A7.3_T1.js (0.00s)
        --- FAIL: TestTC39/tc39/test/language/expressions/compound-assignment/S11.13.2_A7.2_T4.js (0.00s)
        --- FAIL: TestTC39/tc39/test/language/expressions/compound-assignment/S11.13.2_A7.2_T2.js (0.00s)
        --- FAIL: TestTC39/tc39/test/language/expressions/compound-assignment/S11.13.2_A7.2_T1.js (0.00s)
        --- FAIL: TestTC39/tc39/test/language/expressions/compound-assignment/S11.13.2_A7.1_T4.js (0.00s)
        --- FAIL: TestTC39/tc39/test/language/expressions/compound-assignment/S11.13.2_A7.1_T2.js (0.00s)
        --- FAIL: TestTC39/tc39/test/language/expressions/compound-assignment/S11.13.2_A7.11_T4.js (0.00s)
        --- FAIL: TestTC39/tc39/test/language/expressions/compound-assignment/S11.13.2_A7.11_T2.js (0.00s)
        --- FAIL: TestTC39/tc39/test/language/expressions/compound-assignment/S11.13.2_A7.1_T1.js (0.00s)
        --- FAIL: TestTC39/tc39/test/language/expressions/compound-assignment/S11.13.2_A7.11_T1.js (0.00s)
        --- FAIL: TestTC39/tc39/test/language/expressions/compound-assignment/S11.13.2_A7.10_T4.js (0.00s)
        --- FAIL: TestTC39/tc39/test/language/expressions/compound-assignment/S11.13.2_A7.10_T2.js (0.00s)
        --- FAIL: TestTC39/tc39/test/language/expressions/compound-assignment/S11.13.2_A7.10_T1.js (0.00s)
        --- FAIL: TestTC39/tc39/test/language/expressions/assignment/S11.13.1_A7_T3.js (0.00s)

All of them seem to be something that should work, and they also seem to be about the quantity or sequence of how stuff are being evaluated.

Have you tried running these with the latest version of v8? I believe all but the first one will fail as they are at odds with the current specification.

tc39/test262#3407 🤦

Sorry :( never thought of the idea that some tests will be so out of sync with the specification. I was left with the impressions that v8 (and similarly big usage engines) would be passing more or less all tests and the ones that they are not passing will be worked on.

I guess a year or so isn't that big of a time frame :(.

I will leave this open for you to close if you want to actually fix the first one and remove that if either way as it likely stops other tests from executing 🤔