github.com/balzaczyy/golucene@v0.0.0-20151210033525-d0be9ee89713/core/util/automaton/regexp_test.go (about) 1 package automaton 2 3 import ( 4 "fmt" 5 "testing" 6 ) 7 8 func TestRegExpSimple(t *testing.T) { 9 r := NewRegExp("[^ \t\r\n]+") 10 rr := r.String() 11 assert2("((.&~((((\\ |\\t)|\\r)|\\n)))){1,}" == rr, rr) 12 assert(REGEXP_REPEAT_MIN == r.kind) 13 assert(1 == r.min) 14 assert(8 == r.pos) 15 r = r.exp1 16 assert(REGEXP_INTERSECTION == r.kind) 17 r = r.exp2 18 assert(REGEXP_COMPLEMENT == r.kind) 19 r = r.exp1 20 assert(REGEXP_UNION == r.kind) 21 r = r.exp1 22 assert(REGEXP_UNION == r.kind) 23 r = r.exp1 24 assert(REGEXP_UNION == r.kind) 25 r = r.exp1 26 assert2(32 == r.c, fmt.Sprintf("r.c=%v", r.c)) 27 assert(REGEXP_CHAR == r.kind) 28 } 29 30 func TestRegExpSimple2(t *testing.T) { 31 r := NewRegExpWithFlag("*.?-", NONE) 32 assert(REGEXP_CONCATENATION == r.kind) 33 r = r.exp1 34 assert(REGEXP_CHAR == r.kind) 35 assert(42 == r.c) 36 }