mirror of
https://github.com/apache/cloudstack.git
synced 2025-11-03 04:12:31 +01:00
Code improvement: Persistent Network Test cases, Adding check to verify network state and fail test case in case network state is not as desired
This commit is contained in:
parent
de9909403e
commit
8c4763a1e9
@ -219,7 +219,13 @@ class TestPersistentNetworks(cloudstackTestCase):
|
||||
accountid=self.account.name,domainid=self.domain.id,
|
||||
zoneid=self.zone.id)
|
||||
self.cleanup.append(network)
|
||||
verifyNetworkState(self.apiclient, network.id, "implemented")
|
||||
response = verifyNetworkState(self.apiclient, network.id, "implemented")
|
||||
exceptionOccured = response[0]
|
||||
isNetworkInDesiredState = response[1]
|
||||
exceptionMessage = response[2]
|
||||
|
||||
if (exceptionOccured or (not isNetworkInDesiredState)):
|
||||
self.fail(exceptionMessage)
|
||||
self.assertIsNotNone(network.vlan, "vlan must not be null for persistent network")
|
||||
|
||||
try:
|
||||
@ -238,6 +244,12 @@ class TestPersistentNetworks(cloudstackTestCase):
|
||||
wait_for_cleanup(self.api_client, ["network.gc.interval", "network.gc.wait"])
|
||||
|
||||
verifyNetworkState(self.api_client, network.id, "implemented")
|
||||
exceptionOccured = response[0]
|
||||
isNetworkInDesiredState = response[1]
|
||||
exceptionMessage = response[2]
|
||||
|
||||
if (exceptionOccured or (not isNetworkInDesiredState)):
|
||||
self.fail(exceptionMessage)
|
||||
return
|
||||
|
||||
@attr(tags=["advanced", "selfservice"])
|
||||
@ -325,7 +337,13 @@ class TestPersistentNetworks(cloudstackTestCase):
|
||||
networkofferingid=networkOffering.id,
|
||||
accountid=account.name,domainid=self.domain.id,
|
||||
zoneid=self.zone.id)
|
||||
verifyNetworkState(self.api_client, isolated_network.id, "allocated")
|
||||
response = verifyNetworkState(self.api_client, isolated_network.id, "allocated")
|
||||
exceptionOccured = response[0]
|
||||
isNetworkInDesiredState = response[1]
|
||||
exceptionMessage = response[2]
|
||||
|
||||
if (exceptionOccured or (not isNetworkInDesiredState)):
|
||||
self.fail(exceptionMessage)
|
||||
|
||||
# Update the network with persistent network offering
|
||||
isolated_network.update(self.apiclient, networkofferingid=self.isolated_persistent_network_offering.id, changecidr=changecidr)
|
||||
@ -369,7 +387,13 @@ class TestPersistentNetworks(cloudstackTestCase):
|
||||
wait_for_cleanup(self.api_client, ["network.gc.interval", "network.gc.wait"])
|
||||
|
||||
# Check network state now, this will bolster that network updation has taken effect
|
||||
verifyNetworkState(self.api_client, isolated_network.id, "implemented")
|
||||
response = verifyNetworkState(self.api_client, isolated_network.id, "implemented")
|
||||
exceptionOccured = response[0]
|
||||
isNetworkInDesiredState = response[1]
|
||||
exceptionMessage = response[2]
|
||||
|
||||
if (exceptionOccured or (not isNetworkInDesiredState)):
|
||||
self.fail(exceptionMessage)
|
||||
return
|
||||
|
||||
@attr(tags=["advanced"])
|
||||
@ -394,7 +418,13 @@ class TestPersistentNetworks(cloudstackTestCase):
|
||||
networkofferingid=self.isolated_network_offering.id,
|
||||
accountid=account.name,domainid=self.domain.id,
|
||||
zoneid=self.zone.id)
|
||||
verifyNetworkState(self.api_client, isolated_network.id, "allocated")
|
||||
response = verifyNetworkState(self.api_client, isolated_network.id, "allocated")
|
||||
exceptionOccured = response[0]
|
||||
isNetworkInDesiredState = response[1]
|
||||
exceptionMessage = response[2]
|
||||
|
||||
if (exceptionOccured or (not isNetworkInDesiredState)):
|
||||
self.fail(exceptionMessage)
|
||||
|
||||
# Update network with network offering which has RVR
|
||||
isolated_network.update(self.apiclient, networkofferingid=self.isolated_persistent_network_offering_RVR.id)
|
||||
@ -436,7 +466,13 @@ class TestPersistentNetworks(cloudstackTestCase):
|
||||
wait_for_cleanup(self.api_client, ["network.gc.interval", "network.gc.wait"])
|
||||
|
||||
# Check network state now, this will bolster that network updation has taken effect
|
||||
verifyNetworkState(self.api_client, isolated_network.id, "implemented")
|
||||
response = verifyNetworkState(self.api_client, isolated_network.id, "implemented")
|
||||
exceptionOccured = response[0]
|
||||
isNetworkInDesiredState = response[1]
|
||||
exceptionMessage = response[2]
|
||||
|
||||
if (exceptionOccured or (not isNetworkInDesiredState)):
|
||||
self.fail(exceptionMessage)
|
||||
return
|
||||
|
||||
@attr(tags=["advanced", "advancedns"])
|
||||
@ -467,7 +503,13 @@ class TestPersistentNetworks(cloudstackTestCase):
|
||||
networkofferingid=self.isolated_network_offering_netscaler.id,
|
||||
accountid=account.name,domainid=self.domain.id,
|
||||
zoneid=self.zone.id)
|
||||
verifyNetworkState(self.api_client, isolated_network.id, "allocated")
|
||||
response = verifyNetworkState(self.api_client, isolated_network.id, "allocated")
|
||||
exceptionOccured = response[0]
|
||||
isNetworkInDesiredState = response[1]
|
||||
exceptionMessage = response[2]
|
||||
|
||||
if (exceptionOccured or (not isNetworkInDesiredState)):
|
||||
self.fail(exceptionMessage)
|
||||
|
||||
isolated_network.update(self.apiclient, networkofferingid=self.isolated_persistent_network_offering_netscaler.id, changecidr=True)
|
||||
|
||||
@ -507,7 +549,13 @@ class TestPersistentNetworks(cloudstackTestCase):
|
||||
wait_for_cleanup(self.api_client, ["network.gc.interval", "network.gc.wait"])
|
||||
|
||||
# Check network state now, this will bolster that network updation has taken effect
|
||||
verifyNetworkState(self.api_client, isolated_network.id, "implemented")
|
||||
response = verifyNetworkState(self.api_client, isolated_network.id, "implemented")
|
||||
exceptionOccured = response[0]
|
||||
isNetworkInDesiredState = response[1]
|
||||
exceptionMessage = response[2]
|
||||
|
||||
if (exceptionOccured or (not isNetworkInDesiredState)):
|
||||
self.fail(exceptionMessage)
|
||||
return
|
||||
|
||||
@data("LB-VR","LB-Netscaler")
|
||||
@ -880,7 +928,13 @@ class TestPersistentNetworks(cloudstackTestCase):
|
||||
wait_for_cleanup(self.api_client, ["network.gc.interval", "network.gc.wait"])
|
||||
|
||||
# Check network state now, this will bolster that network updation has taken effect
|
||||
verifyNetworkState(self.api_client, network.id, "allocated")
|
||||
response = verifyNetworkState(self.api_client, network.id, "allocated")
|
||||
exceptionOccured = response[0]
|
||||
isNetworkInDesiredState = response[1]
|
||||
exceptionMessage = response[2]
|
||||
|
||||
if (exceptionOccured or (not isNetworkInDesiredState)):
|
||||
self.fail(exceptionMessage)
|
||||
return
|
||||
|
||||
@attr(tags=["advanced"])
|
||||
@ -1064,7 +1118,13 @@ class TestAssignVirtualMachine(cloudstackTestCase):
|
||||
networkofferingid=network_offering.id,
|
||||
accountid=account_1.name,domainid=self.domain.id,
|
||||
zoneid=self.zone.id)
|
||||
verifyNetworkState(self.api_client, network.id, "implemented")
|
||||
response = verifyNetworkState(self.api_client, network.id, "implemented")
|
||||
exceptionOccured = response[0]
|
||||
isNetworkInDesiredState = response[1]
|
||||
exceptionMessage = response[2]
|
||||
|
||||
if (exceptionOccured or (not isNetworkInDesiredState)):
|
||||
self.fail(exceptionMessage)
|
||||
self.assertIsNotNone(network.vlan, "vlan must not be null for persistent network")
|
||||
|
||||
try:
|
||||
@ -1173,7 +1233,13 @@ class TestProjectAccountOperations(cloudstackTestCase):
|
||||
networkofferingid=self.isolated_persistent_network_offering.id,
|
||||
accountid=account.name,domainid=self.domain.id,
|
||||
zoneid=self.zone.id)
|
||||
verifyNetworkState(self.api_client, network.id, "implemented")
|
||||
response = verifyNetworkState(self.api_client, network.id, "implemented")
|
||||
exceptionOccured = response[0]
|
||||
isNetworkInDesiredState = response[1]
|
||||
exceptionMessage = response[2]
|
||||
|
||||
if (exceptionOccured or (not isNetworkInDesiredState)):
|
||||
self.fail(exceptionMessage)
|
||||
self.assertIsNotNone(network.vlan, "vlan must not be null for persistent network")
|
||||
|
||||
if value == "disabled":
|
||||
@ -1191,7 +1257,13 @@ class TestProjectAccountOperations(cloudstackTestCase):
|
||||
networks = Network.list(self.apiclient, account=account.name, domainid = account.domainid)
|
||||
self.assertEqual(validateList(networks)[0], PASS, "networks list validation failed, list is %s" % networks)
|
||||
|
||||
verifyNetworkState(self.api_client, networks[0].id, "implemented")
|
||||
response = verifyNetworkState(self.api_client, networks[0].id, "implemented")
|
||||
exceptionOccured = response[0]
|
||||
isNetworkInDesiredState = response[1]
|
||||
exceptionMessage = response[2]
|
||||
|
||||
if (exceptionOccured or (not isNetworkInDesiredState)):
|
||||
self.fail(exceptionMessage)
|
||||
self.assertIsNotNone(networks[0].vlan, "vlan must not be null for persistent network")
|
||||
return
|
||||
|
||||
@ -1242,7 +1314,13 @@ class TestProjectAccountOperations(cloudstackTestCase):
|
||||
# Wait for network cleanup interval
|
||||
wait_for_cleanup(self.api_client, ["network.gc.interval", "network.gc.wait"])
|
||||
|
||||
verifyNetworkState(self.apiclient, network.id, "implemented")
|
||||
response = verifyNetworkState(self.apiclient, network.id, "implemented")
|
||||
exceptionOccured = response[0]
|
||||
isNetworkInDesiredState = response[1]
|
||||
exceptionMessage = response[2]
|
||||
|
||||
if (exceptionOccured or (not isNetworkInDesiredState)):
|
||||
self.fail(exceptionMessage)
|
||||
return
|
||||
|
||||
@ddt
|
||||
@ -1378,7 +1456,13 @@ class TestRestartPersistentNetwork(cloudstackTestCase):
|
||||
networkofferingid=self.isolated_persistent_network_offering.id,
|
||||
accountid=account.name,domainid=self.domain.id,
|
||||
zoneid=self.zone.id)
|
||||
verifyNetworkState(self.apiclient, isolated_persistent_network.id, "implemented")
|
||||
response = verifyNetworkState(self.apiclient, isolated_persistent_network.id, "implemented")
|
||||
exceptionOccured = response[0]
|
||||
isNetworkInDesiredState = response[1]
|
||||
exceptionMessage = response[2]
|
||||
|
||||
if (exceptionOccured or (not isNetworkInDesiredState)):
|
||||
self.fail(exceptionMessage)
|
||||
self.assertIsNotNone(isolated_persistent_network.vlan, "vlan must not be null for persistent network")
|
||||
|
||||
self.debug("Listing routers for network: %s" % isolated_persistent_network.name)
|
||||
@ -1413,6 +1497,12 @@ class TestRestartPersistentNetwork(cloudstackTestCase):
|
||||
self.assertEqual(validateList(networks)[0], PASS, "networks list validation failed, list is %s" % networks)
|
||||
|
||||
verifyNetworkState(self.apiclient, networks[0].id, "implemented")
|
||||
exceptionOccured = response[0]
|
||||
isNetworkInDesiredState = response[1]
|
||||
exceptionMessage = response[2]
|
||||
|
||||
if (exceptionOccured or (not isNetworkInDesiredState)):
|
||||
self.fail(exceptionMessage)
|
||||
self.assertIsNotNone(networks[0].vlan, "vlan must not be null for persistent network")
|
||||
|
||||
# Deploy VM
|
||||
@ -1453,7 +1543,13 @@ class TestRestartPersistentNetwork(cloudstackTestCase):
|
||||
networkofferingid=self.isolated_persistent_network_offering_netscaler.id,
|
||||
accountid=account.name,domainid=self.domain.id,
|
||||
zoneid=self.zone.id)
|
||||
verifyNetworkState(self.apiclient, isolated_persistent_network.id, "implemented")
|
||||
response = verifyNetworkState(self.apiclient, isolated_persistent_network.id, "implemented")
|
||||
exceptionOccured = response[0]
|
||||
isNetworkInDesiredState = response[1]
|
||||
exceptionMessage = response[2]
|
||||
|
||||
if (exceptionOccured or (not isNetworkInDesiredState)):
|
||||
self.fail(exceptionMessage)
|
||||
self.assertIsNotNone(isolated_persistent_network.vlan, "vlan must not be null for persistent network")
|
||||
|
||||
self.debug("Listing routers for network: %s" % isolated_persistent_network.name)
|
||||
@ -1483,7 +1579,13 @@ class TestRestartPersistentNetwork(cloudstackTestCase):
|
||||
networks = Network.list(self.apiclient, account=account.name, domainid = account.domainid)
|
||||
self.assertEqual(validateList(networks)[0], PASS, "networks list validation failed, list is %s" % networks)
|
||||
|
||||
verifyNetworkState(self.apiclient, networks[0].id, "implemented")
|
||||
response = verifyNetworkState(self.apiclient, networks[0].id, "implemented")
|
||||
exceptionOccured = response[0]
|
||||
isNetworkInDesiredState = response[1]
|
||||
exceptionMessage = response[2]
|
||||
|
||||
if (exceptionOccured or (not isNetworkInDesiredState)):
|
||||
self.fail(exceptionMessage)
|
||||
self.assertIsNotNone(networks[0].vlan, "vlan must not be null for persistent network")
|
||||
|
||||
# Deploy VM
|
||||
@ -1685,21 +1787,45 @@ class TestVPCNetworkOperations(cloudstackTestCase):
|
||||
networkofferingid=self.persistent_network_offering_NoLB.id,
|
||||
accountid=account.name,domainid=self.domain.id,
|
||||
zoneid=self.zone.id, vpcid=vpc.id, gateway="10.1.1.1", netmask="255.255.255.0")
|
||||
verifyNetworkState(self.apiclient, persistent_network_1.id, "implemented")
|
||||
response = verifyNetworkState(self.apiclient, persistent_network_1.id, "implemented")
|
||||
exceptionOccured = response[0]
|
||||
isNetworkInDesiredState = response[1]
|
||||
exceptionMessage = response[2]
|
||||
|
||||
if (exceptionOccured or (not isNetworkInDesiredState)):
|
||||
self.fail(exceptionMessage)
|
||||
self.assertIsNotNone(persistent_network_1.vlan, "vlan must not be null for persistent network %s" % persistent_network_1.id)
|
||||
|
||||
persistent_network_2 = Network.create(self.api_client,self.services["isolated_network"],
|
||||
networkofferingid=self.persistent_network_offering_NoLB.id,
|
||||
accountid=account.name,domainid=self.domain.id,
|
||||
zoneid=self.zone.id, vpcid=vpc.id, gateway="10.1.2.1", netmask="255.255.255.0")
|
||||
verifyNetworkState(self.apiclient, persistent_network_2.id, "implemented")
|
||||
response = verifyNetworkState(self.apiclient, persistent_network_2.id, "implemented")
|
||||
exceptionOccured = response[0]
|
||||
isNetworkInDesiredState = response[1]
|
||||
exceptionMessage = response[2]
|
||||
|
||||
if (exceptionOccured or (not isNetworkInDesiredState)):
|
||||
self.fail(exceptionMessage)
|
||||
self.assertIsNotNone(persistent_network_2.vlan, "vlan must not be null for persistent network: %s" % persistent_network_2.id)
|
||||
|
||||
if value == "restart":
|
||||
# Restart VPC
|
||||
vpc.restart(self.apiclient)
|
||||
verifyNetworkState(self.apiclient, persistent_network_1.id, "implemented")
|
||||
verifyNetworkState(self.apiclient, persistent_network_2.id, "implemented")
|
||||
response = verifyNetworkState(self.apiclient, persistent_network_1.id, "implemented")
|
||||
exceptionOccured = response[0]
|
||||
isNetworkInDesiredState = response[1]
|
||||
exceptionMessage = response[2]
|
||||
|
||||
if (exceptionOccured or (not isNetworkInDesiredState)):
|
||||
self.fail(exceptionMessage)
|
||||
response = verifyNetworkState(self.apiclient, persistent_network_2.id, "implemented")
|
||||
exceptionOccured = response[0]
|
||||
isNetworkInDesiredState = response[1]
|
||||
exceptionMessage = response[2]
|
||||
|
||||
if (exceptionOccured or (not isNetworkInDesiredState)):
|
||||
self.fail(exceptionMessage)
|
||||
|
||||
elif value == "delete":
|
||||
vpc.delete(self.apiclient)
|
||||
@ -1749,14 +1875,26 @@ class TestVPCNetworkOperations(cloudstackTestCase):
|
||||
networkofferingid=self.persistent_network_offering_NoLB.id,
|
||||
accountid=account_1.name,domainid=account_1.domainid,
|
||||
zoneid=self.zone.id, vpcid=vpc_1.id, gateway="10.1.1.1", netmask="255.255.255.0")
|
||||
verifyNetworkState(self.apiclient, persistent_network_1.id, "implemented")
|
||||
response = verifyNetworkState(self.apiclient, persistent_network_1.id, "implemented")
|
||||
exceptionOccured = response[0]
|
||||
isNetworkInDesiredState = response[1]
|
||||
exceptionMessage = response[2]
|
||||
|
||||
if (exceptionOccured or (not isNetworkInDesiredState)):
|
||||
self.fail(exceptionMessage)
|
||||
self.assertIsNotNone(persistent_network_1.vlan, "vlan must not be null for persistent network %s" % persistent_network_1.id)
|
||||
|
||||
persistent_network_2 = Network.create(self.api_client,self.services["isolated_network"],
|
||||
networkofferingid=self.persistent_network_offering_NoLB.id,
|
||||
accountid=account_2.name,domainid=account_2.domainid,
|
||||
zoneid=self.zone.id, vpcid=vpc_2.id, gateway="10.1.1.1", netmask="255.255.255.0")
|
||||
verifyNetworkState(self.apiclient, persistent_network_2.id, "implemented")
|
||||
response = verifyNetworkState(self.apiclient, persistent_network_2.id, "implemented")
|
||||
exceptionOccured = response[0]
|
||||
isNetworkInDesiredState = response[1]
|
||||
exceptionMessage = response[2]
|
||||
|
||||
if (exceptionOccured or (not isNetworkInDesiredState)):
|
||||
self.fail(exceptionMessage)
|
||||
self.assertIsNotNone(persistent_network_2.vlan, "vlan must not be null for persistent network: %s" % persistent_network_2.id)
|
||||
|
||||
# Force delete domain
|
||||
@ -1810,14 +1948,26 @@ class TestVPCNetworkOperations(cloudstackTestCase):
|
||||
networkofferingid=self.persistent_network_offering_NoLB.id,
|
||||
accountid=account.name,domainid=account.domainid,
|
||||
zoneid=self.zone.id, vpcid=vpc.id, gateway="10.1.1.1", netmask="255.255.255.0")
|
||||
verifyNetworkState(self.apiclient, persistent_network_1.id, "implemented")
|
||||
response = verifyNetworkState(self.apiclient, persistent_network_1.id, "implemented")
|
||||
exceptionOccured = response[0]
|
||||
isNetworkInDesiredState = response[1]
|
||||
exceptionMessage = response[2]
|
||||
|
||||
if (exceptionOccured or (not isNetworkInDesiredState)):
|
||||
self.fail(exceptionMessage)
|
||||
self.assertIsNotNone(persistent_network_1.vlan, "vlan must not be null for persistent network %s" % persistent_network_1.id)
|
||||
|
||||
persistent_network_2 = Network.create(self.api_client,self.services["isolated_network"],
|
||||
networkofferingid=self.persistent_network_offering_LB.id,
|
||||
accountid=account.name,domainid=account.domainid,
|
||||
zoneid=self.zone.id, vpcid=vpc.id, gateway="10.1.2.1", netmask="255.255.255.0")
|
||||
verifyNetworkState(self.apiclient, persistent_network_2.id, "implemented")
|
||||
response = verifyNetworkState(self.apiclient, persistent_network_2.id, "implemented")
|
||||
exceptionOccured = response[0]
|
||||
isNetworkInDesiredState = response[1]
|
||||
exceptionMessage = response[2]
|
||||
|
||||
if (exceptionOccured or (not isNetworkInDesiredState)):
|
||||
self.fail(exceptionMessage)
|
||||
self.assertIsNotNone(persistent_network_2.vlan, "vlan must not be null for persistent network: %s" % persistent_network_2.id)
|
||||
|
||||
# Deploy VMs in above networks (VM1, VM2 in network1 and VM3, VM4 in network2)
|
||||
@ -1921,14 +2071,26 @@ class TestVPCNetworkOperations(cloudstackTestCase):
|
||||
networkofferingid=self.persistent_network_offering_NoLB.id,
|
||||
accountid=account.name,domainid=account.domainid,
|
||||
zoneid=self.zone.id, vpcid=vpc.id, gateway="10.1.1.1", netmask="255.255.255.0")
|
||||
verifyNetworkState(self.apiclient, persistent_network_1.id, "implemented")
|
||||
response = verifyNetworkState(self.apiclient, persistent_network_1.id, "implemented")
|
||||
exceptionOccured = response[0]
|
||||
isNetworkInDesiredState = response[1]
|
||||
exceptionMessage = response[2]
|
||||
|
||||
if (exceptionOccured or (not isNetworkInDesiredState)):
|
||||
self.fail(exceptionMessage)
|
||||
self.assertIsNotNone(persistent_network_1.vlan, "vlan must not be null for persistent network %s" % persistent_network_1.id)
|
||||
|
||||
persistent_network_2 = Network.create(self.api_client,self.services["isolated_network"],
|
||||
networkofferingid=self.persistent_network_offering_LB.id,
|
||||
accountid=account.name,domainid=account.domainid,
|
||||
zoneid=self.zone.id, vpcid=vpc.id, gateway="10.1.2.1", netmask="255.255.255.0")
|
||||
verifyNetworkState(self.apiclient, persistent_network_2.id, "implemented")
|
||||
response = verifyNetworkState(self.apiclient, persistent_network_2.id, "implemented")
|
||||
exceptionOccured = response[0]
|
||||
isNetworkInDesiredState = response[1]
|
||||
exceptionMessage = response[2]
|
||||
|
||||
if (exceptionOccured or (not isNetworkInDesiredState)):
|
||||
self.fail(exceptionMessage)
|
||||
self.assertIsNotNone(persistent_network_2.vlan, "vlan must not be null for persistent network: %s" % persistent_network_2.id)
|
||||
|
||||
# Deploy VMs in above networks (VM1, VM2 in network1 and VM3, VM4 in network2)
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user