Files
showbridge-go/internal/module/test/module_test.go
T
2026-09-07 18:43:11 -05:00

64 lines
1.4 KiB
Go

package module_test
import (
"testing"
"github.com/jwetzell/showbridge-go/config"
"github.com/jwetzell/showbridge-go/internal/common"
"github.com/jwetzell/showbridge-go/internal/module"
"github.com/jwetzell/showbridge-go/internal/test"
)
func TestModuleBadRegistrationNoType(t *testing.T) {
defer func() {
r := recover()
if r == nil {
t.Fatalf("module registration should have panicked but did not")
}
}()
module.RegisterModule(module.ModuleRegistration{
Type: "",
New: func(config config.ModuleConfig) (common.Module, error) {
return test.NewTestModule("test"), nil
},
})
}
func TestModuleBadRegistrationNoNew(t *testing.T) {
defer func() {
r := recover()
if r == nil {
t.Fatalf("processor registration should have panicked but did not")
}
}()
module.RegisterModule(module.ModuleRegistration{
Type: "module.test",
New: nil,
})
}
func TestModuleBadRegistrationExistingType(t *testing.T) {
defer func() {
r := recover()
if r == nil {
t.Fatalf("processor registration should have panicked but did not")
}
}()
module.RegisterModule(module.ModuleRegistration{
Type: "module.test",
New: func(config config.ModuleConfig) (common.Module, error) {
return test.NewTestModule("test"), nil
},
})
module.RegisterModule(module.ModuleRegistration{
Type: "module.test",
New: func(config config.ModuleConfig) (common.Module, error) {
return test.NewTestModule("test"), nil
},
})
}