MCPcopy Create free account
hub / github.com/facebook/time / TestBitWriterReaderSigned

Function TestBitWriterReaderSigned

rtcm/bits_test.go:54–76  ·  view source on GitHub ↗
(t *testing.T)

Source from the content-addressed store, hash-verified

52}
53
54func TestBitWriterReaderSigned(t *testing.T) {
55 type field struct {
56 val int32
57 width int
58 }
59 fields := []field{
60 {0, 8}, {1, 8}, {-1, 8}, {127, 8}, {-128, 8},
61 {-2097152, 22}, {2097151, 22}, // 22-bit signed extremes
62 {-8388608, 24}, {8388607, 24}, // 24-bit signed extremes
63 {-519, 16}, {12345, 16},
64 }
65
66 w := NewBitWriter(64)
67 for _, f := range fields {
68 w.WriteSignedBits(f.val, f.width)
69 }
70
71 r := NewBitReader(w.Bytes())
72 for _, f := range fields {
73 got := r.ReadSignedBits(f.width)
74 require.Equalf(t, f.val, got, "signed round-trip width=%d", f.width)
75 }
76}
77
78func TestBitReaderSkip(t *testing.T) {
79 w := NewBitWriter(16)

Callers

nothing calls this directly

Calls 5

WriteSignedBitsMethod · 0.95
BytesMethod · 0.95
ReadSignedBitsMethod · 0.95
NewBitWriterFunction · 0.85
NewBitReaderFunction · 0.85

Tested by

no test coverage detected

Used in the wild real call sites across dependent graphs

searching dependent graphs…