Fix broken test runner (!).

If a test expected an error and found at least one, it would not fail
on any other expected errors that didn't occur.

Also, some tests were expecting a compile time error message even though
the test script doesn't validate those (yet).

The test function was getting monolithic, so I went ahead and split it
into a separate little class.
This commit is contained in:
Bob Nystrom
2015-07-09 08:06:33 -07:00
parent a44e07deba
commit fa8ac84a8b
6 changed files with 217 additions and 169 deletions

View File

@ -1 +1 @@
var x = 2xFF // expect error: Error at 'xFF': Expect end of file.
var x = 2xFF // expect error

View File

@ -1,5 +1,2 @@
new Fn { IO.print("ok") // expect error
}.call() // expect error
// The second error is cascaded here. If it starts failing, just remove that
// expectation.
Fn.new { IO.print("ok") // expect error
}.call()

View File

@ -1 +1 @@
var x = 0x999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999 // expect error: Error: Number literal was too large.
var x = 0x999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999 // expect error

View File

@ -1 +1 @@
var x = 999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999 // expect error: Error: Number literal was too large.
var x = 999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999 // expect error

View File

@ -1,2 +1,2 @@
var i234567890i234567890i234567890i234567890i234567890i2345 = "value" // expect error
var i234567890i234567890i234567890i234567890i234567890i234567890i2345 = "value" // expect error
class c234567890c234567890c234567890c234567890c234567890c234567890c2345 {} // expect error