package lib import ( "testing" ) func TestNewID_unique(t *testing.T) { ids := make(map[int64]bool) for i := 0; i < 1000; i++ { id := NewID() if id <= 0 { t.Fatalf("ID should be positive, got %d", id) } if ids[id] { t.Fatalf("duplicate ID after %d iterations", i) } ids[id] = true } } func TestIDToHex_and_back(t *testing.T) { id := NewID() hex := IDToHex(id) if len(hex) != 16 { t.Fatalf("hex should be 16 chars, got %d: %s", len(hex), hex) } back, err := HexToID(hex) if err != nil { t.Fatal(err) } if back != id { t.Errorf("roundtrip failed: %d -> %s -> %d", id, hex, back) } } func TestHexToID_invalid(t *testing.T) { _, err := HexToID("short") if err == nil { t.Error("should reject short hex") } _, err = HexToID("zzzzzzzzzzzzzzzz") if err == nil { t.Error("should reject non-hex chars") } }