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) } }