t.Errorf("Matches sentence", output)
}
+ output = GetAllMatches("'/usr/bin", MatchOptions{})
+ if output[0] != "/usr/bin" {
+ t.Errorf("Doesn't match statement correctly", output)
+ }
+
+ output = GetAllMatches("/usr_b/bin", MatchOptions{})
+ if output[0] != "/usr_b/bin" {
+ t.Errorf("Doesn't match statement correctly", output)
+ }
+
+ output = GetAllMatches("\"/usr/bin", MatchOptions{})
+ if output[0] != "/usr/bin" {
+ t.Errorf("Doesn't match statement correctly", output)
+ }
+
+ output = GetAllMatches("`/usr/bin", MatchOptions{})
+ if output[0] != "/usr/bin" {
+ t.Errorf("Doesn't match statement correctly", output)
+ }
+
+ output = GetAllMatches("€/usr/bin", MatchOptions{})
+ if output[0] != "/usr/bin" {
+ t.Errorf("Doesn't match statement correctly", output)
+ }
+
+ output = GetAllMatches("prefix=/usr/bin", MatchOptions{})
+ if len(output) != 1 {
+ t.Errorf("Should match =/usr/bin", output)
+ }
+ if output[0] != "/usr/bin" {
+ t.Errorf("Doesn't match statement correctly", output)
+ }
+
+ output = GetAllMatches("/var//log", MatchOptions{})
+ if len(output) != 0 {
+ t.Errorf("Matches double //", output)
+ }
+
+ output = GetAllMatches("s/+//", MatchOptions{})
+ if len(output) != 0 {
+ t.Errorf("Doesn't match substitute", output)
+ }
+
+ output = GetAllMatches("s/^//", MatchOptions{})
+ if len(output) != 0 {
+ t.Errorf("Doesn't match substitute", output)
+ }
+
+ output = GetAllMatches("/usr/bin/env\\", MatchOptions{})
+ if len(output) != 1 {
+ t.Errorf("Doesn't match escaped", output)
+ }
+ if output[0] != "/usr/bin/env" {
+ t.Errorf("Doesn't match escaped exactly", output)
+ }
+
output = GetAllMatches("!#/usr/bin/env", MatchOptions{})
if len(output) != 1 {
t.Errorf("Doesn't match shebang", output)
}
if output[0] != "/usr/bin/env" {
- t.Errorf("Doesn't match shebang", output)
+ t.Errorf("Doesn't match shebang exactly", output)
}
output = GetAllMatches("hello .gitignore", MatchOptions{})
t.Errorf("Matches this.user", output)
}
+ output = GetAllMatches("To https://test@test.org/88/ls.git", MatchOptions{})
+ if len(output) != 0 {
+ t.Errorf("Matches email adresses", output)
+ }
+
output = GetAllMatches(" mail@mail.com ", MatchOptions{})
if len(output) != 0 {
t.Errorf("Matches email adresses", output)
t.Errorf("Matches version number", output)
}
+ output = GetAllMatches("~/v1.2/js", MatchOptions{})
+ if len(output) != 1 {
+ t.Errorf("Should match path with version inside", output)
+ }
+
output = GetAllMatches("obj.slice()", MatchOptions{})
if len(output) != 0 {
t.Errorf("Matches function call", output)
if len(output) != 1 {
t.Errorf("Ackmate doesnt match", output)
}
+
if output[0] == "test.js" {
t.Errorf("Ackmate should not forget number", output)
}
if output[0] != "test.js:45" {
t.Errorf("Ackmate should output right line number", output)
}
+
+ output = GetAllMatches("test.js:45:12", MatchOptions{format: "ackmate"})
+ if len(output) != 1 {
+ t.Errorf("Ackmate doesnt match", output)
+ }
+
+ if output[0] == "test.js" {
+ t.Errorf("Ackmate should not forget number", output)
+ }
+ if output[0] != "test.js:45:12" {
+ t.Errorf("Ackmate should output right line number", output)
+ }
}