github.com/google/uuid — validation proof
Go’s own github.com/google/uuid test suite, converted to C# by go2cs, built against the converted standard
library, run under the Go-semantics test host, and compared verdict for verdict against a clean
go test -json baseline of the same sources. This page is generated by the converter from that
comparison, and written beside the conversion: it is not a row of go2cs’s standard-library roster.
Validated 2026-10-09
54 matched · 0 disclosed — Go 1.24.13, linux/amd64, converted package
src/github.com/google/uuid.
Measured at Release (tiered JIT off), oracle go version go1.24.13 linux/amd64, with no controlling terminal.
Both sides were built with -tags purego,math_big_pure_go,safe.
Input digest sha256-1d40aaa871f4e430ac651e70e05593f11e9ed13539146378156e81f13af51b28: the package’s Go sources, conversion options, target and converter, as its
project records them (GoInputDigest).
Both runtimes skip 1 of the matched tests identically.
Upstream test race, cited and not disclosed (COORD ruling, 2026-10-09): TestVersion6 can fail on either runtime with “time reversed”. In google/uuid v1.6.0, NewV6 writes the version nibble over bits 12-15 of the timestamp and Time() reads those bits back, so the test fails whenever the timestamp crosses a multiple of 409.6 microseconds between its two NewV6 calls. Native Go fails it about 3 times in 20,000 runs. This proof is a run in which both sides passed.
Verdicts
| Test | go test |
go2cs |
|---|---|---|
TestBadRand |
pass | pass |
TestClockSeq |
pass | pass |
TestClockSeqRace |
skip | skip |
TestCoding |
pass | pass |
TestConstants |
pass | pass |
TestDCE |
pass | pass |
TestFromBytes |
pass | pass |
TestIsWrongLength |
pass | pass |
TestJSON |
pass | pass |
TestJSONUnmarshal |
pass | pass |
TestJSONUnmarshal/empty |
pass | pass |
TestJSONUnmarshal/null |
pass | pass |
TestJSONUnmarshal/omitempty |
pass | pass |
TestJSONUnmarshal/success |
pass | pass |
TestJSONUnmarshal/zero |
pass | pass |
TestMD5 |
pass | pass |
TestNew |
pass | pass |
TestNode |
pass | pass |
TestNodeAndTime |
pass | pass |
TestNodeID |
pass | pass |
TestNullUUIDMarshalBinary |
pass | pass |
TestNullUUIDMarshalJSON |
pass | pass |
TestNullUUIDMarshalText |
pass | pass |
TestNullUUIDScan |
pass | pass |
TestNullUUIDUnmarshalJSON |
pass | pass |
TestNullUUIDUnmarshalText |
pass | pass |
TestNullUUIDValue |
pass | pass |
TestRandPool |
pass | pass |
TestRandomFromReader |
pass | pass |
TestRandomUUID |
pass | pass |
TestRandomUUID_Pooled |
pass | pass |
TestSHA1 |
pass | pass |
TestScan |
pass | pass |
TestSetRand |
pass | pass |
TestUUID |
pass | pass |
TestValidate |
pass | pass |
TestValidate/Invalid_Brackets |
pass | pass |
TestValidate/Invalid_Length |
pass | pass |
TestValidate/Invalid_URN_Prefix |
pass | pass |
TestValidate/Invalid_UUID |
pass | pass |
TestValidate/Invalid_UUID_Format |
pass | pass |
TestValidate/Valid_UUID |
pass | pass |
TestValidate/Valid_UUID_No_Hyphens |
pass | pass |
TestValidate/Valid_UUID_with_Braces |
pass | pass |
TestValidate/Valid_UUID_with_URN |
pass | pass |
TestValue |
pass | pass |
TestVersion1 |
pass | pass |
TestVersion6 |
pass | pass |
TestVersion7 |
pass | pass |
TestVersion7FromReader |
pass | pass |
TestVersion7Monotonicity |
pass | pass |
TestVersion7MonotonicityStrict |
pass | pass |
TestVersion7_pooled |
pass | pass |
TestWrongLength |
pass | pass |
Excluded declarations
Declarations filtered from both sides of the comparison, and therefore not claimed above:
Benchmark, Fuzz and Example declarations the converted host does not execute, plus any
test requiring a capability the managed runtime does not provide — a testing member the host
has not implemented, or a platform behavior it provably cannot reproduce. Each is named with
the capability it needs.
- BenchmarkNew (benchmark): benchmark execution is deferred to Phase 4D
- BenchmarkParse (benchmark): benchmark execution is deferred to Phase 4D
- BenchmarkParseBadLength (benchmark): benchmark execution is deferred to Phase 4D
- BenchmarkParseBytes (benchmark): benchmark execution is deferred to Phase 4D
- BenchmarkParseBytesCopy (benchmark): benchmark execution is deferred to Phase 4D
- BenchmarkParseBytesUnsafe (benchmark): benchmark execution is deferred to Phase 4D
- BenchmarkParseLen32Truncated (benchmark): benchmark execution is deferred to Phase 4D
- BenchmarkParseLen36Corrupted (benchmark): benchmark execution is deferred to Phase 4D
- BenchmarkUUID_MarshalJSON (benchmark): benchmark execution is deferred to Phase 4D
- BenchmarkUUID_New (benchmark): benchmark execution is deferred to Phase 4D
- BenchmarkUUID_NewPooled (benchmark): benchmark execution is deferred to Phase 4D
- BenchmarkUUID_String (benchmark): benchmark execution is deferred to Phase 4D
- BenchmarkUUID_URN (benchmark): benchmark execution is deferred to Phase 4D
- BenchmarkUUID_UnmarshalJSON (benchmark): benchmark execution is deferred to Phase 4D
- BenchmarkUUIDs_Strings (benchmark): benchmark execution is deferred to Phase 4D
- FuzzFromBytes (fuzz): fuzz execution is deferred to Phase 4D
- FuzzParse (fuzz): fuzz execution is deferred to Phase 4D
- FuzzParseBytes (fuzz): fuzz execution is deferred to Phase 4D