feat: added some more test harness.

This commit is contained in:
James Wells 2023-04-03 19:43:35 -07:00
parent 7f9a5777bd
commit bdeaf2ec92
Signed by: jwells
GPG key ID: 73196D10B8E65666
8 changed files with 513 additions and 59 deletions

View file

@ -12,16 +12,15 @@ import (
var fname = flag.String("f", "", "file name")
func main() {
flag.Parse()
func RunPicol(fname string) error {
interp := picol.NewInterpreter()
interp.RegisterCoreCommands()
buf, err := ioutil.ReadFile(*fname)
buf, err := ioutil.ReadFile(fname)
if err == nil {
result, err := interp.Eval(string(buf))
if err != nil {
fmt.Println("ERRROR", result, err)
return fmt.Errorf("Error: %s, Result: %s", err, result)
}
} else {
for {
@ -30,8 +29,17 @@ func main() {
clibuf, _ := scanner.ReadString('\n')
result, err := interp.Eval(clibuf[:len(clibuf)-1])
if len(result) != 0 {
fmt.Println("ERRROR", result, err)
return fmt.Errorf("Error: %s, Result: %s", err, result)
}
}
}
return nil
}
func main() {
flag.Parse()
err := RunPicol(*fname)
if err != nil {
fmt.Println(err)
}
}