mirror of
https://github.com/hanzoai/expr.git
synced 2026-09-24 16:58:58 +00:00
Remove additional run API (RunWithConfig) from VM
This API was introduced in previous PR, but we do not want to expose it.
This commit is contained in:
@@ -25,19 +25,6 @@ func Run(program *Program, env any) (any, error) {
|
||||
return vm.Run(program, env)
|
||||
}
|
||||
|
||||
func RunWithConfig(program *Program, env any, config *conf.Config) (any, error) {
|
||||
if program == nil {
|
||||
return nil, fmt.Errorf("program is nil")
|
||||
}
|
||||
if config == nil {
|
||||
return nil, fmt.Errorf("config is nil")
|
||||
}
|
||||
vm := VM{
|
||||
MemoryBudget: config.MemoryBudget,
|
||||
}
|
||||
return vm.Run(program, env)
|
||||
}
|
||||
|
||||
func Debug() *VM {
|
||||
vm := &VM{
|
||||
debug: true,
|
||||
|
||||
+2
-29
@@ -18,35 +18,8 @@ import (
|
||||
)
|
||||
|
||||
func TestRun_NilProgram(t *testing.T) {
|
||||
t.Run("run with nil program", func(t *testing.T) {
|
||||
newVM, err := vm.Run(nil, nil)
|
||||
require.Error(t, err)
|
||||
require.Nil(t, newVM)
|
||||
})
|
||||
t.Run("run with nil program and nil config", func(t *testing.T) {
|
||||
newVM, err := vm.RunWithConfig(nil, nil, nil)
|
||||
require.Error(t, err)
|
||||
require.Nil(t, newVM)
|
||||
})
|
||||
t.Run("run with nil config", func(t *testing.T) {
|
||||
program, err := expr.Compile("1")
|
||||
require.Nil(t, err)
|
||||
newVM, err := vm.RunWithConfig(program, nil, nil)
|
||||
require.Error(t, err)
|
||||
require.Nil(t, newVM)
|
||||
})
|
||||
t.Run("run with config", func(t *testing.T) {
|
||||
program, err := expr.Compile("1")
|
||||
require.Nil(t, err)
|
||||
config := conf.New(nil)
|
||||
env := map[string]any{
|
||||
"a": 1,
|
||||
}
|
||||
config.MemoryBudget = 100
|
||||
newVM, err := vm.RunWithConfig(program, env, config)
|
||||
require.Nil(t, err)
|
||||
require.Equal(t, newVM, 1)
|
||||
})
|
||||
_, err := vm.Run(nil, nil)
|
||||
require.Error(t, err)
|
||||
}
|
||||
|
||||
func TestRun_ReuseVM(t *testing.T) {
|
||||
|
||||
Reference in New Issue
Block a user