Compare commits
2 Commits
cf73b5c98d
...
4aa0113c6a
Author | SHA1 | Date | |
---|---|---|---|
4aa0113c6a | |||
d035fa0d5e |
@ -57,7 +57,7 @@ func evalDot(ctx ExprContext, self *term) (v any, err error) {
|
||||
case string:
|
||||
var index int
|
||||
if index, err = verifyIndex(ctx, indexTerm, len(unboxedValue)); err == nil {
|
||||
v = unboxedValue[index]
|
||||
v = string(unboxedValue[index])
|
||||
}
|
||||
case map[any]any:
|
||||
var ok bool
|
||||
|
@ -35,10 +35,10 @@ func TestGeneralParser(t *testing.T) {
|
||||
/* 14 */ {`not true`, false, nil},
|
||||
/* 15 */ {`true and false`, false, nil},
|
||||
/* 16 */ {`true or false`, true, nil},
|
||||
/* 17 */ {`"uno" + "due"`, `unodue`, nil},
|
||||
/* 18 */ {`"uno" + 2`, `uno2`, nil},
|
||||
/* 19 */ {`"uno" + (2+1)`, `uno3`, nil},
|
||||
/* 20 */ {`"uno" * (2+1)`, `unounouno`, nil},
|
||||
/* *17 */ {`"uno" + "due"`, `unodue`, nil},
|
||||
/* *18 */ {`"uno" + 2`, `uno2`, nil},
|
||||
/* *19 */ {`"uno" + (2+1)`, `uno3`, nil},
|
||||
/* *20 */ {`"uno" * (2+1)`, `unounouno`, nil},
|
||||
/* 21 */ {"1", int64(1), nil},
|
||||
/* 22 */ {"1.5", float64(1.5), nil},
|
||||
/* 23 */ {"1.5*2", float64(3.0), nil},
|
||||
|
21
strings_test.go
Normal file
21
strings_test.go
Normal file
@ -0,0 +1,21 @@
|
||||
// Copyright (c) 2024 Celestino Amoroso (celestino.amoroso@gmail.com).
|
||||
// All rights reserved.
|
||||
|
||||
// strings_test.go
|
||||
package expr
|
||||
|
||||
import (
|
||||
"testing"
|
||||
)
|
||||
|
||||
func TestStringsParser(t *testing.T) {
|
||||
inputs := []inputType{
|
||||
/* 1 */ {`"uno" + "due"`, `unodue`, nil},
|
||||
/* 2 */ {`"uno" + 2`, `uno2`, nil},
|
||||
/* 3 */ {`"uno" + (2+1)`, `uno3`, nil},
|
||||
/* 4 */ {`"uno" * (2+1)`, `unounouno`, nil},
|
||||
/* 5 */ {`"abc".1`, `b`, nil},
|
||||
/* 5 */ {`#"abc"`, int64(3), nil},
|
||||
}
|
||||
parserTest(t, "String", inputs)
|
||||
}
|
Loading…
Reference in New Issue
Block a user