diff --git a/uuid.go b/uuid.go index 54431ab..f314b84 100644 --- a/uuid.go +++ b/uuid.go @@ -151,6 +151,11 @@ var ( NamespaceX500 = Must(FromString("6ba7b814-9dad-11d1-80b4-00c04fd430c8")) ) +// IsNil returns if the UUID is equal to the nil UUID +func (u UUID) IsNil() bool { + return u == Nil +} + // Version returns the algorithm version used to generate the UUID. func (u UUID) Version() byte { return u[6] >> 4 diff --git a/uuid_test.go b/uuid_test.go index 28842c4..2bbbb9d 100644 --- a/uuid_test.go +++ b/uuid_test.go @@ -29,6 +29,7 @@ import ( ) func TestUUID(t *testing.T) { + t.Run("IsNil", testUUIDIsNil) t.Run("Bytes", testUUIDBytes) t.Run("String", testUUIDString) t.Run("Version", testUUIDVersion) @@ -38,6 +39,15 @@ func TestUUID(t *testing.T) { t.Run("Format", testUUIDFormat) } +func testUUIDIsNil(t *testing.T) { + u := UUID{} + got := u.IsNil() + want := true + if got != want { + t.Errorf("%v.IsNil() = %t, want %t", u, got, want) + } +} + func testUUIDBytes(t *testing.T) { got := codecTestUUID.Bytes() want := codecTestData