cairn/internal/handler/idparse_test.go

39 lines
809 B
Go

package handler
import "testing"
func TestParseUintID(t *testing.T) {
id, err := parseUintID("123", "artifact id")
if err != nil {
t.Fatalf("unexpected error: %v", err)
}
if id != 123 {
t.Fatalf("expected 123, got %d", id)
}
}
func TestParseUintIDInvalid(t *testing.T) {
_, err := parseUintID("abc", "artifact id")
if err == nil {
t.Fatal("expected error, got nil")
}
}
func TestParseOptionalUintID(t *testing.T) {
id, err := parseOptionalUintID("", "repository_id")
if err != nil {
t.Fatalf("unexpected error: %v", err)
}
if id != nil {
t.Fatalf("expected nil id for empty input, got %v", *id)
}
id, err = parseOptionalUintID("9", "repository_id")
if err != nil {
t.Fatalf("unexpected error: %v", err)
}
if id == nil || *id != 9 {
t.Fatalf("expected 9, got %#v", id)
}
}