refactored tests based on test-file.txt; this file is no more needed

This commit is contained in:
2026-07-30 16:11:17 +02:00
parent e896e06a93
commit 8084ffbc19
5 changed files with 93 additions and 53 deletions
+20 -21
View File
@@ -16,27 +16,26 @@ func TestExpr(t *testing.T) {
inputs := []inputType{
/* 1 */ {`0?{}`, nil, nil},
/* 2 */ {`fact=func(n){(n)?{1}::{n*fact(n-1)}}; fact(5)`, int64(120), nil},
/* 3 */ {`builtin "os.file"; f=fileOpen("test-file.txt"); line=fileReadText(f); fileClose(f); line`, "uno", nil},
/* 4 */ {`mynot=func(v){int(v)?{true}::{false}}; mynot(0)`, true, nil},
/* 5 */ {`1 ? {1} : [1+0] {3*(1+1)}`, int64(6), nil},
/* 6 */ {`a=3; a+=1; a`, int64(4), nil},
/* 7 */ {`a=3; a-=1; a`, int64(2), nil},
/* 8 */ {`a=3; a*=2; a`, int64(6), nil},
/* 9 */ {`v=[10,20,30]; v[0]+=1; v[0]`, int64(11), nil},
/* 10 */ {`r={"a":10}; r["a"]+=1; r["a"]`, int64(11), nil},
/* 11 */ {`a=3; a/=2`, int64(1), nil},
/* 12 */ {`*=2`, nil, `[1:2] infix operator "*=" requires two non-nil operands, got 1`},
/* 13 */ {`a=3; a*=2+1; a`, int64(9), nil},
/* 14 */ {`a=3; (a*=2)+1; a`, int64(6), nil},
/* 15 */ {`a=3; a*=2)+1; a`, nil, `[1:11] unexpected token ")"`},
/* 16 */ {`v=[2]; a=1; v[a-=1]=5; v[0]`, int64(5), nil},
/* 17 */ {`true ? {"a"} :: {"b"}`, "a", nil},
/* 18 */ {`2 ? {"a"}`, nil, `[1:2] no case catches the value (2) of the selection expression`},
/* 19 */ {`2 ? 5`, nil, "[1:6] expected `{`, got `5`"},
/* 20 */ {`a=2; ${a}`, int64(2), nil},
/* 21 */ {`$_=2; $_`, int64(2), nil},
/* 22 */ {`$$`, dict.NewDict(map[any]any{"vars": dict.NewDict(nil), "funcs": dict.NewDict(nil)}), nil},
/* 23 */ {`
/* 3 */ {`mynot=func(v){int(v)?{true}::{false}}; mynot(0)`, true, nil},
/* 4 */ {`1 ? {1} : [1+0] {3*(1+1)}`, int64(6), nil},
/* 5 */ {`a=3; a+=1; a`, int64(4), nil},
/* 6 */ {`a=3; a-=1; a`, int64(2), nil},
/* 7 */ {`a=3; a*=2; a`, int64(6), nil},
/* 8 */ {`v=[10,20,30]; v[0]+=1; v[0]`, int64(11), nil},
/* 9 */ {`r={"a":10}; r["a"]+=1; r["a"]`, int64(11), nil},
/* 10 */ {`a=3; a/=2`, int64(1), nil},
/* 11 */ {`*=2`, nil, `[1:2] infix operator "*=" requires two non-nil operands, got 1`},
/* 12 */ {`a=3; a*=2+1; a`, int64(9), nil},
/* 13 */ {`a=3; (a*=2)+1; a`, int64(6), nil},
/* 14 */ {`a=3; a*=2)+1; a`, nil, `[1:11] unexpected token ")"`},
/* 15 */ {`v=[2]; a=1; v[a-=1]=5; v[0]`, int64(5), nil},
/* 16 */ {`true ? {"a"} :: {"b"}`, "a", nil},
/* 17 */ {`2 ? {"a"}`, nil, `[1:2] no case catches the value (2) of the selection expression`},
/* 18 */ {`2 ? 5`, nil, "[1:6] expected `{`, got `5`"},
/* 19 */ {`a=2; ${a}`, int64(2), nil},
/* 20 */ {`$_=2; $_`, int64(2), nil},
/* 21 */ {`$$`, dict.NewDict(map[any]any{"vars": dict.NewDict(nil), "funcs": dict.NewDict(nil)}), nil},
/* 22 */ {`
ds={
"init":func(@end){@current=0 but true},
//"current":func(){current},