38 lines
1.3 KiB
Go
38 lines
1.3 KiB
Go
package register
|
|
|
|
import (
|
|
"reflect"
|
|
"strings"
|
|
"testing"
|
|
|
|
"gitea.maximumdirect.net/eric/notarius/internal/framework/pipeline"
|
|
)
|
|
|
|
func TestRegisterAddsSeriatimFamily(t *testing.T) {
|
|
registries := pipeline.Registries{Inputs: pipeline.NewInputAdapterRegistry()}
|
|
if err := Register(registries, nil); err != nil {
|
|
t.Fatalf("Register() error = %v, want nil", err)
|
|
}
|
|
if got, want := registries.Inputs.RegisteredKeys(), []string{"seriatim"}; !reflect.DeepEqual(got, want) {
|
|
t.Fatalf("input keys = %#v, want %#v", got, want)
|
|
}
|
|
}
|
|
|
|
func TestRegisterRejectsNilInputRegistry(t *testing.T) {
|
|
err := Register(pipeline.Registries{}, nil)
|
|
if err == nil || !strings.Contains(err.Error(), "input registry must not be nil") {
|
|
t.Fatalf("Register() error = %v, want nil input registry error", err)
|
|
}
|
|
}
|
|
|
|
func TestRegisterReportsDuplicateSeriatimRegistration(t *testing.T) {
|
|
registries := pipeline.Registries{Inputs: pipeline.NewInputAdapterRegistry()}
|
|
if err := Register(registries, nil); err != nil {
|
|
t.Fatalf("first Register() error = %v, want nil", err)
|
|
}
|
|
err := Register(registries, nil)
|
|
if err == nil || !strings.Contains(err.Error(), "register transcript input") || !strings.Contains(err.Error(), "already registered") {
|
|
t.Fatalf("second Register() error = %v, want contextual duplicate error", err)
|
|
}
|
|
}
|