Skip to content

Commit d6e36f6

Browse files
committed
Move memory budget test
1 parent 692a253 commit d6e36f6

File tree

2 files changed

+19
-13
lines changed

2 files changed

+19
-13
lines changed

expr_test.go

Lines changed: 19 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1781,3 +1781,22 @@ func TestEval_slices_out_of_bound(t *testing.T) {
17811781
})
17821782
}
17831783
}
1784+
1785+
func TestMemoryBudget(t *testing.T) {
1786+
tests := []struct {
1787+
code string
1788+
}{
1789+
{`map(1..100, {map(1..100, {map(1..100, {0})})})`},
1790+
}
1791+
1792+
for _, tt := range tests {
1793+
t.Run(tt.code, func(t *testing.T) {
1794+
program, err := expr.Compile(tt.code)
1795+
require.NoError(t, err, "compile error")
1796+
1797+
_, err = expr.Run(program, nil)
1798+
assert.Error(t, err, "run error")
1799+
assert.Contains(t, err.Error(), "memory budget exceeded")
1800+
})
1801+
}
1802+
}

vm/vm_test.go

Lines changed: 0 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -133,19 +133,6 @@ func TestRun_Helpers(t *testing.T) {
133133
}
134134
}
135135

136-
func TestRun_MemoryBudget(t *testing.T) {
137-
input := `map(1..100, {map(1..100, {map(1..100, {0})})})`
138-
139-
tree, err := parser.Parse(input)
140-
require.NoError(t, err)
141-
142-
program, err := compiler.Compile(tree, nil)
143-
require.NoError(t, err)
144-
145-
_, err = vm.Run(program, nil)
146-
require.Error(t, err)
147-
}
148-
149136
type ErrorEnv struct {
150137
InnerEnv InnerEnv
151138
}

0 commit comments

Comments
 (0)