From 4b3726e99bec62e4a8b8e9cecc478b51ce0d4636 Mon Sep 17 00:00:00 2001 From: cuiweixie Date: Wed, 25 Jan 2023 11:22:29 +0800 Subject: encoding/binary: add var NativeEndian Updates #57237 Change-Id: I149c8b7eeac91b87b5810250f96d48ca87135807 Reviewed-on: https://go-review.googlesource.com/c/go/+/463218 Reviewed-by: Ian Lance Taylor Reviewed-by: Dmitri Shuralyov TryBot-Result: Gopher Robot Run-TryBot: Ian Lance Taylor Run-TryBot: xie cui <523516579@qq.com> Auto-Submit: Ian Lance Taylor --- src/encoding/binary/binary_test.go | 10 ++++++++++ 1 file changed, 10 insertions(+) (limited to 'src/encoding/binary/binary_test.go') diff --git a/src/encoding/binary/binary_test.go b/src/encoding/binary/binary_test.go index 09d08f5ee3..341cd86766 100644 --- a/src/encoding/binary/binary_test.go +++ b/src/encoding/binary/binary_test.go @@ -13,6 +13,7 @@ import ( "strings" "sync" "testing" + "unsafe" ) type Struct struct { @@ -831,3 +832,12 @@ func BenchmarkWriteSlice1000Uint8s(b *testing.B) { Write(w, BigEndian, slice) } } + +func TestNativeEndian(t *testing.T) { + const val = 0x12345678 + i := uint32(val) + s := unsafe.Slice((*byte)(unsafe.Pointer(&i)), unsafe.Sizeof(i)) + if v := NativeEndian.Uint32(s); v != val { + t.Errorf("NativeEndian.Uint32 returned %#x, expected %#x", v, val) + } +} -- cgit v1.3