| package gpt | |
| import ( | |
| "encoding/binary" | |
| "reflect" | |
| "testing" | |
| ) | |
| func TestStructureSizes(t *testing.T) { | |
| cases := []struct { | |
| StructInstance interface{} | |
| ExpectedSize int | |
| }{ | |
| {mbr{}, 512}, | |
| {mbrPartitionRecord{}, 16}, | |
| {header{}, 92}, | |
| {partition{}, 128}, | |
| } | |
| for _, c := range cases { | |
| t.Run(reflect.TypeOf(c.StructInstance).String(), func(t *testing.T) { | |
| actualSize := binary.Size(c.StructInstance) | |
| if actualSize != c.ExpectedSize { | |
| t.Errorf("Expected %d bytes, got %d", c.ExpectedSize, actualSize) | |
| } | |
| }) | |
| } | |
| } |