mirror of
https://github.com/HDT3213/godis.git
synced 2025-10-16 13:50:54 +08:00
refactor project structure
This commit is contained in:
75
lib/wildcard/wildcard_test.go
Normal file
75
lib/wildcard/wildcard_test.go
Normal file
@@ -0,0 +1,75 @@
|
||||
package wildcard
|
||||
|
||||
import "testing"
|
||||
|
||||
func TestWildCard(t *testing.T) {
|
||||
p := CompilePattern("a")
|
||||
if !p.IsMatch("a") {
|
||||
t.Error("expect true actually false")
|
||||
}
|
||||
if p.IsMatch("b") {
|
||||
t.Error("expect false actually true")
|
||||
}
|
||||
|
||||
// test '?'
|
||||
p = CompilePattern("a?")
|
||||
if !p.IsMatch("ab") {
|
||||
t.Error("expect true actually false")
|
||||
}
|
||||
if p.IsMatch("a") {
|
||||
t.Error("expect false actually true")
|
||||
}
|
||||
if p.IsMatch("abb") {
|
||||
t.Error("expect false actually true")
|
||||
}
|
||||
if p.IsMatch("bb") {
|
||||
t.Error("expect false actually true")
|
||||
}
|
||||
|
||||
// test *
|
||||
p = CompilePattern("a*")
|
||||
if !p.IsMatch("ab") {
|
||||
t.Error("expect true actually false")
|
||||
}
|
||||
if !p.IsMatch("a") {
|
||||
t.Error("expect true actually false")
|
||||
}
|
||||
if !p.IsMatch("abb") {
|
||||
t.Error("expect true actually false")
|
||||
}
|
||||
if p.IsMatch("bb") {
|
||||
t.Error("expect false actually true")
|
||||
}
|
||||
|
||||
// test []
|
||||
p = CompilePattern("a[ab[]")
|
||||
if !p.IsMatch("ab") {
|
||||
t.Error("expect true actually false")
|
||||
}
|
||||
if !p.IsMatch("aa") {
|
||||
t.Error("expect true actually false")
|
||||
}
|
||||
if !p.IsMatch("a[") {
|
||||
t.Error("expect true actually false")
|
||||
}
|
||||
if p.IsMatch("abb") {
|
||||
t.Error("expect false actually true")
|
||||
}
|
||||
if p.IsMatch("bb") {
|
||||
t.Error("expect false actually true")
|
||||
}
|
||||
|
||||
// test escape
|
||||
p = CompilePattern("\\\\") // pattern: \\
|
||||
if !p.IsMatch("\\") {
|
||||
t.Error("expect true actually false")
|
||||
}
|
||||
|
||||
p = CompilePattern("\\*")
|
||||
if !p.IsMatch("*") {
|
||||
t.Error("expect true actually false")
|
||||
}
|
||||
if p.IsMatch("a") {
|
||||
t.Error("expect false actually true")
|
||||
}
|
||||
}
|
Reference in New Issue
Block a user