github.com/mhilton/juju-juju@v0.0.0-20150901100907-a94dd2c73455/apiserver/client/filtering_test.go (about) 1 // Copyright 2014 Canonical Ltd. 2 // Licensed under the AGPLv3, see LICENCE file for details. 3 4 package client_test 5 6 import ( 7 jc "github.com/juju/testing/checkers" 8 gc "gopkg.in/check.v1" 9 10 "github.com/juju/juju/apiserver/client" 11 "github.com/juju/juju/network" 12 ) 13 14 type filteringUnitTests struct { 15 } 16 17 var _ = gc.Suite(&filteringUnitTests{}) 18 19 func (f *filteringUnitTests) TestMatchPortRanges(c *gc.C) { 20 21 match, ok, err := client.MatchPortRanges([]string{"80/tcp"}, network.PortRange{80, 80, "tcp"}) 22 c.Check(err, jc.ErrorIsNil) 23 c.Check(ok, jc.IsTrue) 24 c.Check(match, jc.IsTrue) 25 26 match, ok, err = client.MatchPortRanges([]string{"80-90/tcp"}, network.PortRange{80, 90, "tcp"}) 27 c.Check(err, jc.ErrorIsNil) 28 c.Check(ok, jc.IsTrue) 29 c.Check(match, jc.IsTrue) 30 31 match, ok, err = client.MatchPortRanges([]string{"90/tcp"}, network.PortRange{80, 90, "tcp"}) 32 c.Check(err, jc.ErrorIsNil) 33 c.Check(ok, jc.IsTrue) 34 c.Check(match, jc.IsFalse) 35 } 36 37 func (s *filteringUnitTests) TestMatchSubnet(c *gc.C) { 38 39 match, ok, err := client.MatchSubnet([]string{"localhost"}, "127.0.0.1") 40 c.Check(err, jc.ErrorIsNil) 41 c.Check(ok, jc.IsTrue) 42 c.Check(match, jc.IsTrue) 43 44 match, ok, err = client.MatchSubnet([]string{"127.0.0.1"}, "127.0.0.1") 45 c.Check(err, jc.ErrorIsNil) 46 c.Check(ok, jc.IsTrue) 47 c.Check(match, jc.IsTrue) 48 49 match, ok, err = client.MatchSubnet([]string{"localhost"}, "10.0.0.1") 50 c.Check(err, jc.ErrorIsNil) 51 c.Check(ok, jc.IsTrue) 52 c.Check(match, jc.IsFalse) 53 }