Update tests to have custom routes

Docker-DCO-1.1-Signed-off-by: Guillaume J. Charmes <guillaume.charmes@docker.com> (github: creack)
This commit is contained in:
Guillaume J. Charmes 2014-01-24 17:18:48 -08:00
parent eedaf08eb8
commit b1d26985d0
No known key found for this signature in database
GPG Key ID: B33E4642CB6E3FF3
2 changed files with 17 additions and 6 deletions

View File

@ -12,6 +12,10 @@ var (
ErrNetworkOverlaps = errors.New("requested network overlaps with existing network")
)
var (
networkGetRoutesFct = netlink.NetworkGetRoutes
)
func CheckNameserverOverlaps(nameservers []string, toCheck *net.IPNet) error {
if len(nameservers) > 0 {
for _, ns := range nameservers {
@ -28,7 +32,7 @@ func CheckNameserverOverlaps(nameservers []string, toCheck *net.IPNet) error {
}
func CheckRouteOverlaps(toCheck *net.IPNet) error {
networks, err := netlink.NetworkGetRoutes()
networks, err := networkGetRoutesFct()
if err != nil {
return err
}

View File

@ -35,12 +35,19 @@ func TestOverlapingNameservers(t *testing.T) {
}
func TestCheckRouteOverlaps(t *testing.T) {
routesData := []string{"10.0.2.0/32", "10.0.3.0/24", "10.0.42.0/24", "172.16.42.0/24", "192.168.142.0/24"}
orig := networkGetRoutesFct
defer func() {
networkGetRoutesFct = orig
}()
networkGetRoutesFct = func() ([]netlink.Route, error) {
routesData := []string{"10.0.2.0/32", "10.0.3.0/24", "10.0.42.0/24", "172.16.42.0/24", "192.168.142.0/24"}
routes := []netlink.Route{}
for _, addr := range routesData {
_, netX, _ := net.ParseCIDR(addr)
routes = append(routes, netlink.Route{IPNet: netX})
routes := []netlink.Route{}
for _, addr := range routesData {
_, netX, _ := net.ParseCIDR(addr)
routes = append(routes, netlink.Route{IPNet: netX})
}
return routes, nil
}
_, netX, _ := net.ParseCIDR("172.16.0.1/24")