(t *testing.T)
| 12 | } |
| 13 | |
| 14 | func TestScanner(t *testing.T) { |
| 15 | tests := []test{ |
| 16 | {"", []token{}}, |
| 17 | {"-", []token{{t: '-'}}}, |
| 18 | {"--[\n\n\r--]", []token{}}, |
| 19 | {"-- hello, world\n", []token{}}, |
| 20 | {"=", []token{{t: '='}}}, |
| 21 | {"==", []token{{t: tkEq}}}, |
| 22 | {"\"hello, world\"", []token{{t: tkString, s: "hello, world"}}}, |
| 23 | {"[[hello,\r\nworld]]", []token{{t: tkString, s: "hello,\n\nworld"}}}, |
| 24 | {".", []token{{t: '.'}}}, |
| 25 | {"..", []token{{t: tkConcat}}}, |
| 26 | {"...", []token{{t: tkDots}}}, |
| 27 | {".34", []token{{t: tkNumber, n: 0.34}}}, |
| 28 | {"_foo", []token{{t: tkName, s: "_foo"}}}, |
| 29 | {"3", []token{{t: tkNumber, n: float64(3)}}}, |
| 30 | {"3.0", []token{{t: tkNumber, n: 3.0}}}, |
| 31 | {"3.1416", []token{{t: tkNumber, n: 3.1416}}}, |
| 32 | {"314.16e-2", []token{{t: tkNumber, n: 3.1416}}}, |
| 33 | {"0.31416E1", []token{{t: tkNumber, n: 3.1416}}}, |
| 34 | {"0xff", []token{{t: tkNumber, n: float64(0xff)}}}, |
| 35 | {"0x0.1E", []token{{t: tkNumber, n: 0.1171875}}}, |
| 36 | {"0xA23p-4", []token{{t: tkNumber, n: 162.1875}}}, |
| 37 | {"0X1.921FB54442D18P+1", []token{{t: tkNumber, n: 3.141592653589793}}}, |
| 38 | {" -0xa ", []token{{t: '-'}, {t: tkNumber, n: 10.0}}}, |
| 39 | } |
| 40 | for i, v := range tests { |
| 41 | testScanner(t, i, v.source, v.tokens) |
| 42 | } |
| 43 | } |
| 44 | |
| 45 | func testScanner(t *testing.T, n int, source string, tokens []token) { |
| 46 | s := scanner{r: strings.NewReader(source)} |
nothing calls this directly
no test coverage detected