1
0
treerack/keyword_test.go

57 lines
938 B
Go
Raw Normal View History

2019-02-02 18:07:10 +01:00
package treerack
import "testing"
func TestKeyword(t *testing.T) {
const syntax = `
2026-01-18 22:52:27 +01:00
space:ws = " ";
keyword:kw = "foo" | "bar";
symbol:nokw:nows = [a-z]+;
doc:root = (keyword | symbol)*;
2019-02-02 18:07:10 +01:00
`
runTests(t, syntax, []testItem{{
title: "not keyword",
text: "baz",
ignorePosition: true,
node: &Node{
2026-01-18 22:52:27 +01:00
Name: "doc",
Nodes: []*Node{{
Name: "symbol",
}},
},
}, {
title: "keyword",
text: "foo",
ignorePosition: true,
node: &Node{
Name: "doc",
Nodes: []*Node{{
Name: "keyword",
}},
},
}, {
title: "mixed",
text: "foo bar baz bar foo baz bar",
ignorePosition: true,
node: &Node{
Name: "doc",
Nodes: []*Node{{
Name: "keyword",
}, {
Name: "keyword",
}, {
Name: "symbol",
}, {
Name: "keyword",
}, {
Name: "keyword",
}, {
Name: "symbol",
}, {
Name: "keyword",
}},
2019-02-02 18:07:10 +01:00
},
}})
}