11 # List distributed by iblocklist.com
16 func TestSimple(t *testing.T) {
18 scanner := bufio.NewScanner(strings.NewReader(sample))
20 r, ok, _ := ParseBlocklistP2PLine(scanner.Text())
23 ranges = append(ranges, r)
26 if err := scanner.Err(); err != nil {
27 t.Fatalf("error while scanning: %s", err)
30 t.Fatalf("expected 2 ranges but got %d", len(ranges))
33 for _, _case := range []struct {
38 {"1.2.3.255", false, ""},
39 {"1.2.8.0", true, "b"},
40 {"1.2.4.255", true, "a"},
41 // Try to roll over to the next octet on the parse.
42 {"1.2.7.256", false, ""},
43 {"1.2.8.254", true, "b"},
45 r := iplist.Lookup(net.ParseIP(_case.IP))
48 t.Fatalf("got hit when none was expected")
53 t.Fatalf("expected hit for %q", _case.IP)
55 if r.Description != _case.Desc {
56 t.Fatalf("%q != %q", r.Description, _case.Desc)