Giuseppe Vallarelli has uploaded a new change for review.
Change subject: tests: setupNetworks convertVlanNetBridgeness, Mtus
......................................................................
tests: setupNetworks convertVlanNetBridgeness, Mtus
Added a couple of functional tests:
* testSetupNetworksConvertVlanNetBridgeness
covering behavior of converstion of a network
from bridged to bridgeless and viceversa.
* testSetupNetworksMtus covering behaviour of
setupNetworks when used with different mtus.
Change-Id: Ib8723b066228729807f7ab46c9fabad3ebff128b
Signed-off-by: Giuseppe Vallarelli <gvallare(a)redhat.com>
---
M tests/functional/networkTests.py
1 file changed, 102 insertions(+), 0 deletions(-)
git pull ssh://gerrit.ovirt.org:29418/vdsm refs/changes/66/17866/1
diff --git a/tests/functional/networkTests.py b/tests/functional/networkTests.py
index 0492189..2b0758d 100644
--- a/tests/functional/networkTests.py
+++ b/tests/functional/networkTests.py
@@ -343,3 +343,105 @@
nics=nics,
opts={'bridged': bridged})
self.assertEqual(status, neterrors.ERR_BAD_BRIDGE, msg)
+
+ @RequireDummyMod
+ @ValidateRunningAsRoot
+ def testSetupNetworksConvertVlanNetBridgeness(self):
+ "Convert a bridged networks to a bridgeless one and viceversa"
+ opts = {'connectivityCheck': False}
+
+ def setupNetworkBridged(nic, bridged, opts=opts):
+ networks = {NETWORK_NAME: dict(vlan=VLAN_ID,
+ nic=nic, bridged=bridged)}
+ status, msg = self.vdsm_net.setupNetworks(networks, {},
+ opts)
+ self.assertEqual(status, SUCCESS, msg)
+ self.assertTrue(self.vdsm_net.networkExists(NETWORK_NAME, bridged))
+
+ with dummyIf(1) as nics:
+ setupNetworkBridged(nics[0], True)
+ setupNetworkBridged(nics[0], False)
+ setupNetworkBridged(nics[0], True)
+
+ status, msg = self.vdsm_net.setupNetworks({NETWORK_NAME:
+ dict(remove=True)},
+ {}, opts)
+
+ self.assertEqual(status, SUCCESS, msg)
+
+ @permutations([[True], [False]])
+ @RequireDummyMod
+ @ValidateRunningAsRoot
+ def testSetupNetworksMtus(self, bridged):
+ JUMBO = '9000'
+ MIDI = '4000'
+
+ def assertMtu(mtu, *elems):
+ for elem in elems:
+ self.assertEquals(mtu, self.vdsm_net.getMtu(elem))
+
+ with dummyIf(3) as nics:
+ with self.vdsm_net.pinger():
+ networks = {NETWORK_NAME + '1':
+ dict(bonding=BONDING_NAME, bridged=bridged,
+ vlan='100'),
+ NETWORK_NAME + '2':
+ dict(bonding=BONDING_NAME, bridged=bridged,
+ vlan='200', mtu=MIDI)
+ }
+ bondings = {BONDING_NAME: dict(nics=[nics[0], nics[1]])}
+ elems = [NETWORK_NAME + '2', BONDING_NAME, nics[0], nics[1]]
+ status, msg = self.vdsm_net.setupNetworks(networks, bondings,
+ {})
+
+ self.assertEquals(status, SUCCESS, msg)
+
+ assertMtu(MIDI, *elems)
+
+ network = {NETWORK_NAME + '3':
+ dict(bonding=BONDING_NAME, vlan='300', mtu=JUMBO,
+ bridged=bridged)}
+ elems = [NETWORK_NAME + '3', BONDING_NAME, nics[0], nics[1]]
+ status, msg = self.vdsm_net.setupNetworks(network, {}, {})
+
+ self.assertEquals(status, SUCCESS, msg)
+
+ self.assertTrue(self.vdsm_net.networkExists(NETWORK_NAME + '3',
+ bridged=bridged))
+ assertMtu(JUMBO, *elems)
+
+ elems = [NETWORK_NAME + '2', BONDING_NAME, nics[0], nics[1]]
+ status, msg = self.vdsm_net.setupNetworks({NETWORK_NAME + '3':
+ dict(remove=True)},
+ {}, {})
+
+ self.assertEquals(status, SUCCESS, msg)
+
+ assertMtu(MIDI, *elems)
+
+ # Keep last custom MTU on the interfaces
+ elems = [BONDING_NAME, nics[0], nics[1]]
+ status, msg = self.vdsm_net.setupNetworks({NETWORK_NAME + '2':
+ dict(remove=True)},
+ {}, {})
+
+ self.assertEquals(status, SUCCESS, msg)
+
+ assertMtu(MIDI, *elems)
+
+ # Add additional nic to the bond
+ elems = [BONDING_NAME, nics[0], nics[1], nics[2]]
+ status, msg = self.vdsm_net.setupNetworks({}, {BONDING_NAME:
+ dict(nics=nics)}, {})
+
+ self.assertEquals(status, SUCCESS, msg)
+
+ assertMtu(MIDI, *elems)
+
+ status, msg = self.vdsm_net.setupNetworks({NETWORK_NAME + '1':
+ dict(remove=True)},
+ {BONDING_NAME:
+ dict(remove=True)},
+ {})
+
+ self.assertEquals(status, SUCCESS, msg)
--
To view, visit
http://gerrit.ovirt.org/17866
To unsubscribe, visit
http://gerrit.ovirt.org/settings
Gerrit-MessageType: newchange
Gerrit-Change-Id: Ib8723b066228729807f7ab46c9fabad3ebff128b
Gerrit-PatchSet: 1
Gerrit-Project: vdsm
Gerrit-Branch: master
Gerrit-Owner: Giuseppe Vallarelli <gvallare(a)redhat.com>