MCPcopy
hub / github.com/evilsocket/opensnitch / TestRuleLoaderInvalidRegexp

Function TestRuleLoaderInvalidRegexp

daemon/rule/loader_test.go:66–97  ·  view source on GitHub ↗
(t *testing.T)

Source from the content-addressed store, hash-verified

64}
65
66func TestRuleLoaderInvalidRegexp(t *testing.T) {
67 t.Parallel()
68 t.Log("Test rules loader: invalid regexp")
69
70 l, err := NewLoader(true)
71 if err != nil {
72 t.Fail()
73 }
74 t.Run("loadRule() from disk test (simple)", func(t *testing.T) {
75 if err := l.loadRule("testdata/invalid-regexp.json"); err == nil {
76 t.Error("invalid regexp rule loaded: loadRule()")
77 }
78 })
79
80 t.Run("loadRule() from disk test (list)", func(t *testing.T) {
81 if err := l.loadRule("testdata/invalid-regexp-list.json"); err == nil {
82 t.Error("invalid regexp rule loaded: loadRule()")
83 }
84 })
85
86 var list []Operator
87 dur30m := Duration("30m")
88 opListData := `[{"type": "regexp", "operand": "process.path", "sensitive": false, "data": "^(/di(rmngr)$"}, {"type": "simple", "operand": "dest.port", "data": "53", "sensitive": false}]`
89 invalidRegexpOp, _ := NewOperator(List, false, OpList, opListData, list)
90 invalidRegexpRule := Create("invalid-regexp", "invalid rule description", true, false, false, Allow, dur30m, invalidRegexpOp)
91
92 t.Run("replaceUserRule() test list", func(t *testing.T) {
93 if err := l.replaceUserRule(invalidRegexpRule); err == nil {
94 t.Error("invalid regexp rule loaded: replaceUserRule()")
95 }
96 })
97}
98
99// Test rules of type operator.list. There're these scenarios:
100// - Enabled rules:

Callers

nothing calls this directly

Calls 7

loadRuleMethod · 0.95
replaceUserRuleMethod · 0.95
NewLoaderFunction · 0.85
DurationTypeAlias · 0.85
CreateFunction · 0.85
NewOperatorFunction · 0.70
LogMethod · 0.65

Tested by

no test coverage detected