| 9 | ) |
| 10 | |
| 11 | func TestRuleCreation(t *testing.T) { |
| 12 | _, ipnet, _ := net.ParseCIDR("1.1.1.1/24") |
| 13 | |
| 14 | _, err := NewRule(nil, []int{80}, false) |
| 15 | assert.Error(t, err, "expected error as no ipnet provided") |
| 16 | |
| 17 | _, err = NewRule(ipnet, []int{65536, 80}, false) |
| 18 | assert.Error(t, err, "expected error as port higher than 65535") |
| 19 | |
| 20 | _, err = NewRule(ipnet, []int{80, -1}, false) |
| 21 | assert.Error(t, err, "expected error as port less than 0") |
| 22 | |
| 23 | rule, err := NewRule(ipnet, []int{443, 80}, false) |
| 24 | assert.NoError(t, err) |
| 25 | assert.True(t, ipnet.IP.Equal(rule.ipNet.IP) && bytes.Compare(ipnet.Mask, rule.ipNet.Mask) == 0, "ipnet expected to be %+v, got: %+v", ipnet, rule.ipNet) |
| 26 | assert.True(t, len(rule.ports) == 2 && rule.ports[0] == 80 && rule.ports[1] == 443, "expected ports to be sorted") |
| 27 | } |
| 28 | |
| 29 | func TestRuleCreationByCIDR(t *testing.T) { |
| 30 | var cidr *string |