diff options
author | insomniac <insomniacslk@users.noreply.github.com> | 2018-11-06 17:21:32 +0000 |
---|---|---|
committer | GitHub <noreply@github.com> | 2018-11-06 17:21:32 +0000 |
commit | c572359d4d841c1b9d3eadd06c2b05e6085897b2 (patch) | |
tree | 2a94b057dc6bdd6b10da4f8b5bb631cd0fd3e71b /dhcpv4/modifiers_test.go | |
parent | df1628dc937bba7f0c742bb4c48d5b9e96852436 (diff) |
[WIP] Added DHCPv4 server (#178)
* Added DHCPv4 server
* Added more modifiers
* Fixed some bugs
Diffstat (limited to 'dhcpv4/modifiers_test.go')
-rw-r--r-- | dhcpv4/modifiers_test.go | 39 |
1 files changed, 38 insertions, 1 deletions
diff --git a/dhcpv4/modifiers_test.go b/dhcpv4/modifiers_test.go index c20558e..ce4ff38 100644 --- a/dhcpv4/modifiers_test.go +++ b/dhcpv4/modifiers_test.go @@ -7,8 +7,45 @@ import ( "github.com/stretchr/testify/require" ) +func TestTransactionIDModifier(t *testing.T) { + d, err := New() + require.NoError(t, err) + d = WithTransactionID(0xddccbbaa)(d) + require.Equal(t, uint32(0xddccbbaa), d.TransactionID()) +} + +func TestBroadcastModifier(t *testing.T) { + d, err := New() + require.NoError(t, err) + // set and test broadcast + d = WithBroadcast(true)(d) + require.Equal(t, true, d.IsBroadcast()) + // set and test unicast + d = WithBroadcast(false)(d) + require.Equal(t, true, d.IsUnicast()) +} + +func TestHwAddrModifier(t *testing.T) { + d, err := New() + require.NoError(t, err) + hwaddr := [16]byte{0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 0xa, 0xb, 0xc, 0xd, 0xe, 0xf} + d = WithHwAddr(hwaddr[:])(d) + require.Equal(t, hwaddr, d.ClientHwAddr()) +} + +func TestWithOptionModifier(t *testing.T) { + d, err := New() + require.NoError(t, err) + d = WithOption(&OptDomainName{DomainName: "slackware.it"})(d) + opt := d.GetOneOption(OptionDomainName) + require.NotNil(t, opt) + dnOpt := opt.(*OptDomainName) + require.Equal(t, "slackware.it", dnOpt.DomainName) +} + func TestUserClassModifier(t *testing.T) { - d, _ := New() + d, err := New() + require.NoError(t, err) userClass := WithUserClass([]byte("linuxboot"), false) d = userClass(d) expected := []byte{ |