7 func TestSetBits(t *testing.T) {
22 result: []bool{false},
28 result: []bool{false, true},
35 result: []bool{true, false},
41 result: []bool{false, false, false, false, false, false, false, true},
47 result: []bool{false, false, false, false, false, false, false, false},
53 result: []bool{false, false, false, false, false, false, false, false, true},
59 result: []bool{false, false, false, false, false, false, false, false, false},
74 result: []bool{true, false, false, true, true, true, false, true, false, true},
78 for ci, c := range cases {
79 ts := NewTransactionStatus()
80 for k, v := range c.op {
81 if err := ts.SetStatus(k, v); err != nil {
86 for i, v := range c.result {
87 result, err := ts.GetStatus(i)
92 t.Errorf("bad result, %d want %t get %t", i, v, result)
95 if len(ts.Bitmap) != (len(c.result)+7)/bitsPerByte {
96 t.Errorf("wrong bitmap size, %d want %d get %d", ci, len(c.result)/bitsPerByte+1, len(ts.Bitmap))