github.com/niedbalski/juju@v0.0.0-20190215020005-8ff100488e47/provider/oracle/network/util_test.go (about) 1 // Copyright 2017 Canonical Ltd. 2 // Licensed under the AGPLv3, see LICENCE file for details. 3 4 package network_test 5 6 import ( 7 jc "github.com/juju/testing/checkers" 8 gc "gopkg.in/check.v1" 9 10 "github.com/juju/juju/provider/oracle/network" 11 ) 12 13 type utilSuite struct{} 14 15 var _ = gc.Suite(&utilSuite{}) 16 17 func (u *utilSuite) TestGetMacAndIP(c *gc.C) { 18 macAddress := "29-E7-9F-D9-83-C8" 19 ipAddress := "120.120.120.0" 20 address := []string{ 21 macAddress, 22 ipAddress, 23 } 24 25 mac, ip, err := network.GetMacAndIP(address) 26 c.Assert(err, gc.IsNil) 27 c.Assert(mac, jc.DeepEquals, macAddress) 28 c.Assert(ip, jc.DeepEquals, ipAddress) 29 } 30 31 func (u *utilSuite) TestGetMacAndIPWithError(c *gc.C) { 32 macAddress1 := "29-E7-9F-D9-83-C8" 33 macAddress2 := "UDIUSHIDUSIDHSIUDh" 34 ipAddress1 := "idaijds.daisdia.daishd" 35 ipAddress2 := "127.0.0.1" 36 37 address := []string{ 38 macAddress1, 39 ipAddress1, 40 macAddress2, 41 ipAddress2, 42 } 43 44 mac, ip, err := network.GetMacAndIP(address) 45 c.Assert(err, gc.NotNil) 46 c.Assert(mac, jc.DeepEquals, macAddress1) 47 c.Assert(ip, jc.DeepEquals, "") 48 49 mac, ip, err = network.GetMacAndIP(nil) 50 c.Assert(err, gc.NotNil) 51 c.Assert(mac, jc.DeepEquals, "") 52 c.Assert(ip, jc.DeepEquals, "") 53 54 address = []string{ 55 ipAddress2, 56 ipAddress1, 57 } 58 59 mac, ip, err = network.GetMacAndIP(address) 60 c.Assert(err, gc.NotNil) 61 c.Assert(mac, jc.DeepEquals, "") 62 c.Assert(ip, jc.DeepEquals, ipAddress2) 63 }