netboot/dhcp/options_test.go
2016-02-29 19:34:07 -08:00

47 lines
725 B
Go

package dhcp
import "testing"
func TestOptionReading(t *testing.T) {
o := Options{
1: []byte{1, 2, 3},
2: []byte{3},
3: []byte{0, 1},
}
b, ok := o.Byte(2)
if !ok {
t.Fatalf("Option 2 should be a valid byte")
}
if b != 3 {
t.Fatalf("Wanted value 3 for option 2, got %d", b)
}
b, ok = o.Byte(3)
if ok {
t.Fatalf("Option 3 shouldn't be a valid byte")
}
u, ok := o.Uint16(3)
if !ok {
t.Fatalf("Option 3 should be a valid byte")
}
if u != 1 {
t.Fatalf("Wanted value 1 for option 3, got %d", u)
}
}
func TestCopy(t *testing.T) {
o := Options{
1: []byte{2},
2: []byte{3, 4},
}
o2 := o.Copy()
delete(o2, 2)
if len(o) != 2 {
t.Fatalf("Mutating Option copy mutated the original")
}
}