53 lines
1.3 KiB
Go
53 lines
1.3 KiB
Go
// stm: #unit
|
|
package journal
|
|
|
|
import (
|
|
"testing"
|
|
|
|
"github.com/stretchr/testify/require"
|
|
)
|
|
|
|
func TestDisabledEvents(t *testing.T) {
|
|
//stm: @JOURNAL_REGISTRY_NEW_EVENT_TYPE_001, @JOURNAL_REGISTRY_PARSE_DISABLED_001
|
|
req := require.New(t)
|
|
|
|
test := func(dis DisabledEvents) func(*testing.T) {
|
|
return func(t *testing.T) {
|
|
registry := NewEventTypeRegistry(dis)
|
|
|
|
reg1 := registry.RegisterEventType("system1", "disabled1")
|
|
reg2 := registry.RegisterEventType("system1", "disabled2")
|
|
|
|
req.False(reg1.Enabled())
|
|
req.False(reg2.Enabled())
|
|
req.True(reg1.safe)
|
|
req.True(reg2.safe)
|
|
|
|
reg3 := registry.RegisterEventType("system3", "enabled3")
|
|
req.True(reg3.Enabled())
|
|
req.True(reg3.safe)
|
|
}
|
|
}
|
|
|
|
t.Run("direct", test(DisabledEvents{
|
|
EventType{System: "system1", Event: "disabled1"},
|
|
EventType{System: "system1", Event: "disabled2"},
|
|
}))
|
|
|
|
dis, err := ParseDisabledEvents("system1:disabled1,system1:disabled2")
|
|
req.NoError(err)
|
|
|
|
t.Run("parsed", test(dis))
|
|
|
|
dis, err = ParseDisabledEvents(" system1:disabled1 , system1:disabled2 ")
|
|
req.NoError(err)
|
|
|
|
t.Run("parsed_spaces", test(dis))
|
|
}
|
|
|
|
func TestParseDisableEvents(t *testing.T) {
|
|
//stm: @JOURNAL_REGISTRY_PARSE_DISABLED_002
|
|
_, err := ParseDisabledEvents("system1:disabled1:failed,system1:disabled2")
|
|
require.Error(t, err)
|
|
}
|