Skip to content

Commit 046489a

Browse files
committed
Fail to parse unknown & none strings for event.Type/Severity types
1 parent 61b0898 commit 046489a

File tree

4 files changed

+4
-2
lines changed

4 files changed

+4
-2
lines changed

notifications/event/severity.go

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -97,7 +97,7 @@ func (s Severity) Value() (driver.Value, error) {
9797
// If the string does not match any known severity, it returns an error indicating the unknown severity.
9898
func ParseSeverity(name string) (Severity, error) {
9999
for s := range severityMax {
100-
if s.String() == name {
100+
if s != SeverityNone && s.String() == name {
101101
return s, nil
102102
}
103103
}

notifications/event/severity_test.go

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -49,6 +49,7 @@ func TestSeverity(t *testing.T) {
4949
{Name: "Alert", Expected: SeverityAlert, Data: `"alert"`, Error: nil},
5050
{Name: "Emerg", Expected: SeverityEmerg, Data: `"emerg"`, Error: nil},
5151
{Name: "Invalid", Expected: SeverityNone, Data: `"invalid"`, Error: testutils.ErrorContains(`unknown severity "invalid"`)},
52+
{Name: "Invalid None", Expected: SeverityNone, Data: `"none"`, Error: testutils.ErrorContains(`unknown severity "none"`)},
5253
}
5354

5455
for _, tt := range testData {

notifications/event/type.go

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -100,7 +100,7 @@ func (t Type) Value() (driver.Value, error) {
100100
// If the string does not match any known type, it returns an error indicating the unknown type.
101101
func ParseType(s string) (Type, error) {
102102
for t := range typeMax {
103-
if s == t.String() {
103+
if t != TypeUnknown && s == t.String() {
104104
return t, nil
105105
}
106106
}

notifications/event/type_test.go

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -39,6 +39,7 @@ func TestType(t *testing.T) {
3939
{Name: "Unmute", Expected: TypeUnmute, Data: `"unmute"`, Error: nil},
4040
{Name: "DowntimeStart", Expected: TypeDowntimeStart, Data: `"downtime-start"`, Error: nil},
4141
{Name: "Invalid", Expected: TypeUnknown, Data: `"invalid"`, Error: testutils.ErrorContains(`unknown type "invalid"`)},
42+
{Name: "Invalid Unknown", Expected: TypeUnknown, Data: `"unknown"`, Error: testutils.ErrorContains(`unknown type "unknown"`)},
4243
}
4344

4445
for _, tt := range testData {

0 commit comments

Comments
 (0)