summaryrefslogtreecommitdiff
path: root/internal/regex
diff options
context:
space:
mode:
authorPaul Buetow <paul@buetow.org>2021-09-19 13:22:59 +0300
committerPaul Buetow <paul@buetow.org>2021-10-02 12:26:29 +0300
commitfe3e68afd99d8ea246be52893730f987e138ec24 (patch)
tree726e0914730912e0a3b223f7b37facc05ba31140 /internal/regex
parentabeac87aec44249bf67f1b0eca471a31086265ca (diff)
move args to config package
logger package rewrite as dlog
Diffstat (limited to 'internal/regex')
-rw-r--r--internal/regex/regex.go11
-rw-r--r--internal/regex/regex_test.go16
2 files changed, 15 insertions, 12 deletions
diff --git a/internal/regex/regex.go b/internal/regex/regex.go
index 2561659..352ffd6 100644
--- a/internal/regex/regex.go
+++ b/internal/regex/regex.go
@@ -4,8 +4,6 @@ import (
"fmt"
"regexp"
"strings"
-
- "github.com/mimecast/dtail/internal/io/logger"
)
// Regex for filtering lines.
@@ -91,17 +89,17 @@ func (r Regex) MatchString(str string) bool {
}
// Serialize the regex.
-func (r Regex) Serialize() string {
+func (r Regex) Serialize() (string, error) {
var flags []string
for _, flag := range r.flags {
flags = append(flags, flag.String())
}
if !r.initialized {
- logger.FatalExit("Unable to serialize regex as not initialized properly", r)
+ return "", fmt.Errorf("Unable to serialize regex as not initialized properly: %v", r)
}
- return fmt.Sprintf("regex:%s %s", strings.Join(flags, ","), r.regexStr)
+ return fmt.Sprintf("regex:%s %s", strings.Join(flags, ","), r.regexStr), nil
}
// Deserialize the regex.
@@ -109,7 +107,6 @@ func Deserialize(str string) (Regex, error) {
// Get regex string
s := strings.SplitN(str, " ", 2)
if len(s) < 2 {
- logger.Debug("Using noop regex", str)
return NewNoop(), nil
}
@@ -127,10 +124,8 @@ func Deserialize(str string) (Regex, error) {
for _, flagStr := range strings.Split(s[1], ",") {
flag, err := NewFlag(flagStr)
if err != nil {
- logger.Error("ignoring flag", err)
continue
}
- logger.Debug("Adding regex flag", flag)
flags = append(flags, flag)
}
}
diff --git a/internal/regex/regex_test.go b/internal/regex/regex_test.go
index a5e7faf..2ce49ac 100644
--- a/internal/regex/regex_test.go
+++ b/internal/regex/regex_test.go
@@ -20,9 +20,13 @@ func TestRegex(t *testing.T) {
t.Errorf("expected to match string '%s' with regex '%v' but didn't\n", input, r)
}
- r2, err := Deserialize(r.Serialize())
+ serialized, err := r.Serialize()
if err != nil {
- t.Errorf("unable to serialize deserialized regex: %v: %v\n", r.Serialize(), err)
+ t.Errorf("unable to serialize regex: %v: %v\n", serialized, err)
+ }
+ r2, err := Deserialize(serialized)
+ if err != nil {
+ t.Errorf("unable to serialize deserialized regex: %v: %v\n", serialized, err)
}
if r.String() != r2.String() {
t.Errorf("regex should be the same after deserialize(serialize(..)), got '%s' but expected '%s'.\n",
@@ -37,9 +41,13 @@ func TestRegex(t *testing.T) {
t.Errorf("expected to not match string '%s' with regex '%v' but matched\n", input, r)
}
- r2, err = Deserialize(r.Serialize())
+ serialized, err = r.Serialize()
+ if err != nil {
+ t.Errorf("unable to serialize regex: %v: %v\n", serialized, err)
+ }
+ r2, err = Deserialize(serialized)
if err != nil {
- t.Errorf("unable to serialize deserialized regex: %v: %v\n", r.Serialize(), err)
+ t.Errorf("unable to serialize deserialized regex: %v: %v\n", serialized, err)
}
if r.String() != r2.String() {
t.Errorf("regex should be the same after deserialize(serialize(..)), got '%s' but expected '%s'.\n",