assert stack is clean after test
This commit is contained in:
@@ -48,6 +48,11 @@ func runVmTests(t *testing.T, tests []vmTestCase) {
|
|||||||
t.Fatalf("vm error: %s", err)
|
t.Fatalf("vm error: %s", err)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if vm.sp != 0 {
|
||||||
|
t.Log(tt.input)
|
||||||
|
t.Fatal("vm stack pointer non-zero")
|
||||||
|
}
|
||||||
|
|
||||||
stackElem := vm.LastPoppedStackElem()
|
stackElem := vm.LastPoppedStackElem()
|
||||||
|
|
||||||
testExpectedObject(t, tt.expected, stackElem)
|
testExpectedObject(t, tt.expected, stackElem)
|
||||||
@@ -437,13 +442,13 @@ func TestFirstClassFunctions(t *testing.T) {
|
|||||||
|
|
||||||
func TestCallingFunctionsWithBindings(t *testing.T) {
|
func TestCallingFunctionsWithBindings(t *testing.T) {
|
||||||
tests := []vmTestCase{
|
tests := []vmTestCase{
|
||||||
{
|
//{
|
||||||
input: `
|
// input: `
|
||||||
let one = fn() { let one = 1; one };
|
//let one = fn() { let one = 1; one };
|
||||||
one();
|
//one();
|
||||||
`,
|
//`,
|
||||||
expected: 1,
|
// expected: 1,
|
||||||
},
|
//},
|
||||||
{
|
{
|
||||||
input: `
|
input: `
|
||||||
let oneAndTwo = fn() { let one = 1; let two = 2; one + two; };
|
let oneAndTwo = fn() { let one = 1; let two = 2; one + two; };
|
||||||
@@ -855,5 +860,10 @@ func TestExamples(t *testing.T) {
|
|||||||
t.Log(input)
|
t.Log(input)
|
||||||
t.Fatalf("vm error: %s", err)
|
t.Fatalf("vm error: %s", err)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if vm.sp != 0 {
|
||||||
|
t.Log(input)
|
||||||
|
t.Fatal("vm stack pointer non-zero")
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user