def CASE8(self, main): """ Test Post Port """ import os try: from tests.FUNCvirNetNB.dependencies.Nbdata import NetworkData from tests.FUNCvirNetNB.dependencies.Nbdata import SubnetData from tests.FUNCvirNetNB.dependencies.Nbdata import VirtualPortData except ImportError: main.log.exception( "Something wrong with import file or code error.") main.log.info("Import Error, please check!") main.cleanup() main.exit() main.log.info("ONOS Port Post test Start") main.case("Virtual Network NBI Test - Port") main.caseExplanation = "Test Port Post NBI " +\ "Verify Stored Data is same with Post Data" ctrlip = os.getenv(main.params['CTRL']['ip1']) httpport = main.params['HTTP']['port'] path = main.params['HTTP']['path'] main.log.info("Generate Post Data") network = NetworkData() network.id = '030d6d3d-fa36-45bf-ae2b-4f4bc43a54dc' network.tenant_id = '26cd996094344a0598b0a1af1d525cdc' subnet = SubnetData() subnet.id = "e44bd655-e22c-4aeb-b1e9-ea1606875178" subnet.tenant_id = network.tenant_id subnet.network_id = network.id port = VirtualPortData() port.id = "9352e05c-58b8-4f2c-b4df-c20435ser56466" port.subnet_id = subnet.id port.tenant_id = network.tenant_id port.network_id = network.id networkpostdata = network.DictoJson() subnetpostdata = subnet.DictoJson() portpostdata = port.DictoJson() main.step("Post Network Data via HTTP(Post port need post network)") Poststatus, result = main.ONOSrest.send(ctrlip, httpport, '', path + 'networks/', 'POST', None, networkpostdata) utilities.assert_equals(expect='200', actual=Poststatus, onpass="******", onfail="Post Network Failed " + str(Poststatus) + "," + str(result)) main.step("Post Subnet Data via HTTP(Post port need post subnet)") Poststatus, result = main.ONOSrest.send(ctrlip, httpport, '', path + 'subnets/', 'POST', None, subnetpostdata) utilities.assert_equals(expect='202', actual=Poststatus, onpass="******", onfail="Post Subnet Failed " + str(Poststatus) + "," + str(result)) main.step("Post Port Data via HTTP") Poststatus, result = main.ONOSrest.send(ctrlip, httpport, '', path + 'ports/', 'POST', None, portpostdata) utilities.assert_equals(expect='200', actual=Poststatus, onpass="******", onfail="Post Port Failed " + str(Poststatus) + "," + str(result)) main.step("Get Port Data via HTTP") Getstatus, result = main.ONOSrest.send(ctrlip, httpport, port.id, path + 'ports/', 'GET', None, None) utilities.assert_equals(expect='200', actual=Getstatus, onpass="******", onfail="Get Port Failed " + str(Getstatus) + "," + str(result)) main.step("Compare Post Port Data") IDcmpresult = subnet.JsonCompare(portpostdata, result, 'port', 'id') TanantIDcmpresult = subnet.JsonCompare(portpostdata, result, 'port', 'tenant_id') NetoworkIDcmpresult = subnet.JsonCompare(portpostdata, result, 'port', 'network_id') fixedIpresult = subnet.JsonCompare(portpostdata, result, 'port', 'fixed_ips') Cmpresult = IDcmpresult and TanantIDcmpresult and NetoworkIDcmpresult and fixedIpresult utilities.assert_equals( expect=True, actual=Cmpresult, onpass="******", onfail="Compare Failed:ID compare:" + str( IDcmpresult ) + \ ",Tenant id compare:"+ str( TanantIDcmpresult ) + \ ",Network id compare:" + str( NetoworkIDcmpresult ) +\ ",FixIp compare:" + str( fixedIpresult ) ) main.step("Clean Data via HTTP") deletestatus, result = main.ONOSrest.send(ctrlip, httpport, network.id, path + 'networks/', 'DELETE', None, None) utilities.assert_equals(expect='200', actual=deletestatus, onpass="******", onfail="Delete Network Failed") if Cmpresult != True: main.log.error("Post port compare failed")
def CASE6(self, main): """ Test Post Subnet """ import os try: from tests.FUNCvirNetNB.dependencies.Nbdata import NetworkData from tests.FUNCvirNetNB.dependencies.Nbdata import SubnetData except ImportError: main.log.exception( "Something wrong with import file or code error.") main.log.info("Import Error, please check!") main.cleanup() main.exit() main.log.info("ONOS Subnet Update test Start") main.case("Virtual Network NBI Test - Subnet") main.caseExplanation = "Test Subnet Update NBI " +\ "Verify Stored Data is same with Update Data" ctrlip = os.getenv(main.params['CTRL']['ip1']) port = main.params['HTTP']['port'] path = main.params['HTTP']['path'] main.log.info("Generate Post Data") network = NetworkData() network.id = '030d6d3d-fa36-45bf-ae2b-4f4bc43a54dc' network.tenant_id = '26cd996094344a0598b0a1af1d525cdc' subnet = SubnetData() subnet.id = "e44bd655-e22c-4aeb-b1e9-ea1606875178" subnet.tenant_id = network.tenant_id subnet.network_id = network.id subnet.start = "192.168.2.1" subnet.end = "192.168.2.255" networkpostdata = network.DictoJson() subnetpostdata = subnet.DictoJson() #Change allocation_poolsdata scope subnet.start = "192.168.102.1" subnet.end = "192.168.102.255" #end change newsubnetpostdata = subnet.DictoJson() main.step("Post Network Data via HTTP(Post Subnet need post network)") Poststatus, result = main.ONOSrest.send(ctrlip, port, '', path + 'networks/', 'POST', None, networkpostdata) utilities.assert_equals(expect='200', actual=Poststatus, onpass="******", onfail="Post Network Failed " + str(Poststatus) + "," + str(result)) main.step("Post Subnet Data via HTTP") Poststatus, result = main.ONOSrest.send(ctrlip, port, '', path + 'subnets/', 'POST', None, subnetpostdata) utilities.assert_equals(expect='202', actual=Poststatus, onpass="******", onfail="Post Subnet Failed " + str(Poststatus) + "," + str(result)) main.step("Update Subnet Data via HTTP") Putstatus, result = main.ONOSrest.send(ctrlip, port, subnet.id, path + 'subnets/', 'PUT', None, newsubnetpostdata) utilities.assert_equals(expect='203', actual=Putstatus, onpass="******", onfail="Update Subnet Failed " + str(Putstatus) + "," + str(result)) main.step("Get Subnet Data via HTTP") Getstatus, result = main.ONOSrest.send(ctrlip, port, subnet.id, path + 'subnets/', 'GET', None, None) utilities.assert_equals(expect='200', actual=Getstatus, onpass="******", onfail="Get Subnet Failed " + str(Getstatus) + "," + str(result)) IDcmpresult = subnet.JsonCompare(newsubnetpostdata, result, 'subnet', 'id') TanantIDcmpresult = subnet.JsonCompare(newsubnetpostdata, result, 'subnet', 'tenant_id') Poolcmpresult = subnet.JsonCompare(newsubnetpostdata, result, 'subnet', 'allocation_pools') main.step("Compare Subnet Data") Cmpresult = IDcmpresult and TanantIDcmpresult and Poolcmpresult utilities.assert_equals( expect=True, actual=Cmpresult, onpass="******", onfail="Compare Failed:ID compare:" + str( IDcmpresult ) + \ ",Tenant id compare:"+ str( TanantIDcmpresult ) + \ ",Pool compare:" + str( Poolcmpresult ) ) main.step("Delete Subnet via HTTP") deletestatus, result = main.ONOSrest.send(ctrlip, port, network.id, path + 'networks/', 'DELETE', None, None) utilities.assert_equals(expect='200', actual=deletestatus, onpass="******", onfail="Delete Network Failed") if Cmpresult != True: main.log.error("Update Subnet compare failed")