24 lines
530 B
Go
24 lines
530 B
Go
|
|
package shelltool
|
||
|
|
|
||
|
|
import (
|
||
|
|
"context"
|
||
|
|
"testing"
|
||
|
|
"time"
|
||
|
|
)
|
||
|
|
|
||
|
|
func TestCallRejectsEmptyCommand(t *testing.T) {
|
||
|
|
tool := New([]string{"echo"}, ".", time.Second, 4000, nil)
|
||
|
|
_, err := tool.Call(context.Background(), " ")
|
||
|
|
if err == nil {
|
||
|
|
t.Fatal("expected error for empty command")
|
||
|
|
}
|
||
|
|
}
|
||
|
|
|
||
|
|
func TestCallRejectsNonAllowlistedCommand(t *testing.T) {
|
||
|
|
tool := New([]string{"echo"}, ".", time.Second, 4000, nil)
|
||
|
|
_, err := tool.Call(context.Background(), "cat test.txt")
|
||
|
|
if err == nil {
|
||
|
|
t.Fatal("expected allowlist rejection")
|
||
|
|
}
|
||
|
|
}
|