示例#1
0
    def CASE6(self, main):
        """
        Uninstalling the app
        """
        import os
        import sys
        import re
        import time

        main.case("TestCase 6: UnInstalling of app")
        main.Cluster.active(0).CLI.log("\"testcase6 start\"")
        try:
            from tests.FUNC.FUNCbgpls.dependencies.Nbdata import BgpLs
        except ImportError:
            main.log.exception(
                "Something wrong with import file or code error.")
            main.log.info("Import Error, please check!")
            main.cleanAndExit()

        bgplsConfig = BgpLs()
        app = bgplsConfig.apps()

        bgplsConfig = BgpLs()
        bgplsConfig.ipValue(main.ipList, main.scapy_ip)

        main.testSetUp.createApplyCell(main.Cluster, True, main.cellName,
                                       main.scapy_ip, True, main.ipList)
        bgplsConfig.Comments()
        main.testSetUp.startOnosClis(main.Cluster)
        bgplsConfig.Comments()

        main.log.info("Uninstall onos-app-bgp")
        bgplsConfig.Comments()
        main.step("UnInstall onos-app-bgp")
        installResults = main.Cluster.active(0).CLI.deactivateApp(app[0])
        utilities.assert_equals(expect=main.TRUE,
                                actual=installResults,
                                onpass="******",
                                onfail="Uninstall  onos-app-bgp failed")

        main.Cluster.active(0).CLI.log("\"testcase6 end\"")
        main.step("Check for Errors or Exception in testcase6")
        startStr = "testcase6 start"
        endStr = "testcase6 end"
        errorLog = main.ONOSbench.logReport(
            main.Cluster.active(0).ipAddress, ["ERROR", "EXCEPT"], "s",
            startStr, endStr)
        utilities.assert_equals(
            expect=0,
            actual=errorLog,
            onpass="******",
            onfail="Exception or Error occured in testcase6")

        main.step("Check for Errors or Exception End of the Script")
        errorLog = main.ONOSbench.logReport(
            main.Cluster.active(0).ipAddress, ["ERROR", "EXCEPT"])
        utilities.assert_equals(expect=0,
                                actual=errorLog,
                                onpass="******",
                                onfail="Exception or Error occured")
示例#2
0
    def CASE4(self, main):
        """
        Deletion of  Node
        """
        import os, sys
        import re
        import time
        main.case("TestCase 4: Deletion of Node from existing Topology")

        try:
            from tests.FUNC.FUNCbgpls.dependencies.Nbdata import BgpLs
        except ImportError:
            main.log.exception(
                "Something wrong with import file or code error.")
            main.log.info("Import Error, please check!")
            main.cleanup()
            main.exit()

        bgplsConfig = BgpLs()
        Ne_id = bgplsConfig.Constants()
        app = bgplsConfig.apps()
        main.CLIs = []
        main.nodes = []
        main.numCtrls = 1

        bgplsConfig.Comments()
        main.log.info("Blocked due to this defect : ONOS-3920 ")
        bgplsConfig.Comments()
        '''
示例#3
0
    def CASE2(self, main):
        """
        Discovery the topology using BGPLS
        """
        import os
        import sys
        import re
        import time

        main.case("Testcase 2 : Discovery the Network Topology using BGPLS")
        main.Cluster.active(0).CLI.log("\"testcase2 start\"")

        try:
            from tests.FUNC.FUNCbgpls.dependencies.Nbdata import BgpLs
        except ImportError:
            main.log.exception(
                "Something wrong with import file or code error.")
            main.log.info("Import Error, please check!")
            main.cleanAndExit()

        bgplsConfig = BgpLs()
        Ne_id = bgplsConfig.Constants()
        app = bgplsConfig.apps()
        httpport = main.params['HTTP']['port']
        path = main.params['HTTP']['path']
        bgplsConfig.ipValue(main.ipList, main.scapy_ip)

        bgplsConfig.Comments()
        main.log.info("Sending BGPLS information")
        bgplsConfig.Comments()

        main.Scapy1.handle.sendline(
            "sudo python  OnosSystemTest/TestON/tests/FUNC/FUNCbgpls/\
        dependencies/Scapyfiles/Topo_discovery.py")
        bgplsConfig.Comments()
        main.log.info("Enable BGPlS plugin in ONOS")
        bgplsConfig.Comments()

        main.testSetUp.startOnosClis(main.Cluster)

        installResults = main.Cluster.active(0).CLI.activateApp(app[0])
        main.step("Install onos-app-bgp")
        utilities.assert_equals(expect=main.TRUE,
                                actual=installResults,
                                onpass="******",
                                onfail="Install onos-app-bgp failed")

        bgpls_post = bgplsConfig.DictoJson()

        bgplsConfig.Comments()
        main.log.info("BGPLS RestConf input")
        bgplsConfig.Comments()

        print(bgpls_post)
        Poststatus, result = main.Cluster.active(0).REST.send(
            '/network/configuration/', method="POST", data=bgpls_post)
        main.step("Configure BGP through RESTCONF")

        utilities.assert_equals(expect='200',
                                actual=Poststatus,
                                onpass="******",
                                onfail="Post Port Failed " + str(Poststatus) +
                                "," + str(result))

        bgplsConfig.Comments()
        main.step("Check Network devices are Updated in ONOS ")
        bgplsConfig.Comments()
        time.sleep(15)
        response = main.Cluster.active(0).CLI.devices()
        responseCheck = main.FALSE
        if response:
            responseCheck = main.TRUE
        utilities.assert_equals(
            expect=main.TRUE,
            actual=responseCheck,
            onpass="******",
            onfail="Network Devices update in ONOS failed")

        main.step("Check the nodes are discovered")
        if response.find(Ne_id[1][0]) and response.find(
                Ne_id[1][1]) and response.find(Ne_id[1][2]) != -1:
            stepResult = main.TRUE
        else:
            stepResult = main.FALSE
        utilities.assert_equals(expect=main.TRUE,
                                actual=stepResult,
                                onpass="******" + str(Ne_id[1][0]) +
                                (Ne_id[1][1]) + (Ne_id[1][2]) + "  sucess",
                                onfail="Node " + str(Ne_id[1][0]) +
                                (Ne_id[1][1]) + (Ne_id[1][2]) + " failed")
        main.Cluster.active(0).CLI.log("\"testcase2 end\"")

        main.step("Check for Errors or Exception in testcase2")
        startStr = "testcase2 start"
        endStr = "testcase2 end"
        errorLog = main.ONOSbench.logReport(
            main.Cluster.active(0).ipAddress, ["ERROR", "EXCEPT"], "s",
            startStr, endStr)
        utilities.assert_equals(
            expect=0,
            actual=errorLog,
            onpass="******",
            onfail="Exception or Error occured in testcase2")
        bgplsConfig.Comments()
        main.log.info("Kill Scapy process")
        bgplsConfig.Comments()

        main.Scapy1.handle.send("\x03")
        time.sleep(90)  # This Sleep time gives time for the socket to close.
示例#4
0
    def CASE5(self, main):
        """
        Deletion of  links
        """
        import json
        import time
        import os
        main.case("Testcase 5: Deletion of Link in existing topology")

        main.Cluster.active(0).CLI.log("\"testcase5 start\"")
        try:
            from tests.FUNC.FUNCbgpls.dependencies.Nbdata import BgpLs
        except ImportError:
            main.log.exception(
                "Something wrong with import file or code error.")
            main.log.info("Import Error, please check!")
            main.cleanAndExit()

        bgplsConfig = BgpLs()
        app = bgplsConfig.apps()
        bgplsConfig.ipValue(main.ipList, main.scapy_ip)

        bgplsConfig.Comments()
        main.log.info("Sending BGPLS Delete Link Packet ")
        bgplsConfig.Comments()

        main.Scapy1.handle.sendline(
            "sudo python  OnosSystemTest/TestON/tests/FUNC/FUNCbgpls/dependencies/Scapyfiles/Deletion_Node.py"
        )
        bgplsConfig.Comments()
        main.log.info("Enable BGPlS plugin in ONOS ")
        bgplsConfig.Comments()

        main.step("UnInstall onos-app-bgp")
        installResults = main.Cluster.active(0).CLI.deactivateApp(app[0])
        utilities.assert_equals(expect=main.TRUE,
                                actual=installResults,
                                onpass="******",
                                onfail="Uninstall  onos-app-bgp failed")

        installResults = main.Cluster.active(0).CLI.activateApp(app[0])
        main.step("Install onos-app-bgp")
        utilities.assert_equals(expect=main.TRUE,
                                actual=installResults,
                                onpass="******",
                                onfail="Install onos-app-bgp failed")
        bgplsConfig.Comments()
        main.step("Checking whether the links is deleted")
        bgplsConfig.Comments()
        time.sleep(120)  # Time taken to discovery the links
        response = main.Cluster.active(0).CLI.links()
        linksResp = json.loads(response)
        check_link = bgplsConfig.checkLinks(linksResp)
        reply_Check_Link = main.FALSE
        if not check_link:
            reply_Check_Link = main.TRUE
        utilities.assert_equals(expect=main.TRUE,
                                actual=reply_Check_Link,
                                onpass="******",
                                onfail="Link is Deletion Failed.")
        main.Cluster.active(0).CLI.log("\"testcase5 end\"")

        main.step("Check for Errors or Exception in testcase5")
        startStr = "testcase5 start"
        endStr = "testcase5 end"
        errorLog = main.ONOSbench.logReport(
            main.Cluster.active(0).ipAddress, ["ERROR", "EXCEPT"], "s",
            startStr, endStr)
        utilities.assert_equals(
            expect=0,
            actual=errorLog,
            onpass="******",
            onfail="Exception or Error occured in testcase5")
        bgplsConfig.Comments()
        main.log.info("Kill Scapy process")
        bgplsConfig.Comments()
        main.Scapy1.handle.send("\x03")
        time.sleep(90)
示例#5
0
    def CASE3(self, main):
        """
        Addition of new Node to existing topology
        """
        import os
        import sys
        import re
        import time

        main.case("Testcase 3: Addition of New Node to existing topology")
        main.Cluster.active(0).CLI.log("\"testcase3 start\"")
        try:
            from tests.FUNC.FUNCbgpls.dependencies.Nbdata import BgpLs
        except ImportError:
            main.log.exception(
                "Something wrong with import file or code error.")
            main.log.info("Import Error, please check!")
            main.cleanAndExit()

        bgplsConfig = BgpLs()
        Ne_id = bgplsConfig.Constants()
        app = bgplsConfig.apps()

        httpport = main.params['HTTP']['port']
        path = main.params['HTTP']['path']

        bgplsConfig.ipValue(main.ipList, main.scapy_ip)

        bgplsConfig.Comments()
        main.log.info("Sending BGPLS Packet ")
        bgplsConfig.Comments()

        main.Scapy1.handle.sendline(
            "sudo python  OnosSystemTest/TestON/tests/FUNC/FUNCbgpls/\
        dependencies/Scapyfiles/Update_Node.py")
        bgplsConfig.Comments()
        main.log.info("Enable BGPlS plugin in ONOS")
        bgplsConfig.Comments()

        main.step("UnInstall onos-app-bgp")
        installResults = main.Cluster.active(0).CLI.deactivateApp(app[0])
        utilities.assert_equals(expect=main.TRUE,
                                actual=installResults,
                                onpass="******",
                                onfail="Uninstall  onos-app-bgp failed")

        installResults = main.Cluster.active(0).CLI.activateApp(app[0])
        main.step("Install onos-app-bgp")
        utilities.assert_equals(expect=main.TRUE,
                                actual=installResults,
                                onpass="******",
                                onfail="Install onos-app-bgp failed")

        bgpls_post = bgplsConfig.DictoJson()

        bgplsConfig.Comments()
        main.log.info("BGPLS RestConf input")
        bgplsConfig.Comments()

        bgplsConfig.Comments()
        main.step("Check Network devices are Updated in ONOS")
        bgplsConfig.Comments()
        time.sleep(120)
        response = main.Cluster.active(0).CLI.devices()

        responseCheck = main.FALSE
        if response:
            responseCheck = main.TRUE
        utilities.assert_equals(
            expect=main.TRUE,
            actual=responseCheck,
            onpass="******",
            onfail="Network Devices update in ONOS failed")
        main.step("Check Newly added Node is getting updated")

        if response.find(Ne_id[1][3]) != -1:
            stepResult = main.TRUE
        else:
            stepResult = main.FALSE
        utilities.assert_equals(
            expect=main.TRUE,
            actual=stepResult,
            onpass="******" + str(Ne_id[1][3]) + " update  sucess",
            onfail="Node " + str(Ne_id[1][3]) + " update failed")
        main.Cluster.active(0).CLI.log("\"testcase3 end\"")

        main.step("Check for Errors or Exception in testcase3")
        startStr = "testcase3 start"
        endStr = "testcase3 end"
        errorLog = main.ONOSbench.logReport(
            main.Cluster.active(0).ipAddress, ["ERROR", "EXCEPT"], "s",
            startStr, endStr)
        utilities.assert_equals(
            expect=0,
            actual=errorLog,
            onpass="******",
            onfail="Exception or Error occured in testcase3")
        bgplsConfig.Comments()
        main.log.info("Kill Scapy process")
        bgplsConfig.Comments()
        main.Scapy1.handle.send("\x03")
        time.sleep(90)  # This Sleep time gives time for the socket to close.
示例#6
0
    def CASE5(self, main):
        """
        Uninstalling the app
        """
        import os, sys
        import re
        import time

        main.case("TestCase 5: UnInstalling of app")
        try:
            from tests.FUNC.FUNCbgpls.dependencies.Nbdata import BgpLs
        except ImportError:
            main.log.exception(
                "Something wrong with import file or code error.")
            main.log.info("Import Error, please check!")
            main.cleanup()
            main.exit()

        bgplsConfig = BgpLs()
        app = bgplsConfig.apps()
        main.CLIs = []
        main.nodes = []
        main.numCtrls = 1

        ipList = os.getenv(main.params['CTRL']['ip1'])
        scapy_ip = os.getenv(main.params['SCAPY']['HOSTNAMES'])
        cellName = main.params['ENV']['cellName']
        cellAppString = main.params['ENV']['cellApps']

        bgplsConfig = BgpLs()
        bgplsConfig.ipValue(ipList, scapy_ip)
        main.ONOSbench.createCellFile(main.ONOSbench.ip_address,
                                      cellName,
                                      scapy_ip,
                                      cellAppString,
                                      ipList,
                                      onosUser="******")

        for i in range(1, main.numCtrls + 1):
            try:
                main.CLIs.append(getattr(main, 'ONOScli' + str(i)))
                main.nodes.append(getattr(main, 'ONOS' + str(i)))
                ipList.append(main.nodes[-1].ip_address)
            except AttributeError:
                break

        main.step("Apply cell to environment")
        bgplsConfig.Comments()
        cellResult = main.ONOSbench.setCell(cellName)

        bgplsConfig.Comments()
        main.log.info("Logging into ONOS CLI ")
        bgplsConfig.Comments()

        cliResults = main.ONOScli1.startOnosCli(main.nodes[0].ip_address)
        utilities.assert_equals(expect=main.TRUE,
                                actual=cliResults,
                                onpass="******",
                                onfail="ONOS cli startup failed")

        bgplsConfig.Comments()
        main.log.info("Uninstall onos-app-bgp")
        bgplsConfig.Comments()
        main.step("UnInstall onos-app-bgp")
        installResults = main.ONOScli1.deactivateApp(app[0])
        utilities.assert_equals(expect=main.TRUE,
                                actual=installResults,
                                onpass="******",
                                onfail="Uninstall  onos-app-bgp failed")
示例#7
0
    def CASE3(self, main):
        """
        Addition of new Node to existing topology
        """
        import os, sys
        import re
        import time

        main.case("Testcase 3: Addition of New Node to existing topology")
        try:
            from tests.FUNC.FUNCbgpls.dependencies.Nbdata import BgpLs
        except ImportError:
            main.log.exception(
                "Something wrong with import file or code error.")
            main.log.info("Import Error, please check!")
            main.cleanup()
            main.exit()

        bgplsConfig = BgpLs()
        Ne_id = bgplsConfig.Constants()
        app = bgplsConfig.apps()
        main.CLIs = []
        main.nodes = []
        main.numCtrls = 1

        ipList = os.getenv(main.params['CTRL']['ip1'])
        scapy_ip = os.getenv(main.params['SCAPY']['HOSTNAMES'])
        cellName = main.params['ENV']['cellName']
        cellAppString = main.params['ENV']['cellApps']
        httpport = main.params['HTTP']['port']
        path = main.params['HTTP']['path']

        bgplsConfig.ipValue(ipList, scapy_ip)

        for i in range(1, main.numCtrls + 1):
            try:
                main.CLIs.append(getattr(main, 'ONOScli' + str(i)))
                main.nodes.append(getattr(main, 'ONOS' + str(i)))
                ipList.append(main.nodes[-1].ip_address)
            except AttributeError:
                break

        bgplsConfig.Comments()
        main.log.info("Sending BGPLS Packet ")
        bgplsConfig.Comments()

        main.Scapy1.handle.sendline(
            "sudo python  OnosSystemTest/TestON/tests/FUNC/FUNCbgpls/\
        dependencies/Scapyfiles/Update_Node.py")
        bgplsConfig.Comments()
        main.log.info("Enable BGPlS plugin in ONOS")
        bgplsConfig.Comments()

        main.step("UnInstall onos-app-bgp")
        installResults = main.ONOScli1.deactivateApp(app[0])
        utilities.assert_equals(expect=main.TRUE,
                                actual=installResults,
                                onpass="******",
                                onfail="Uninstall  onos-app-bgp failed")

        installResults = main.ONOScli1.activateApp(app[0])
        main.step("Install onos-app-bgp")
        utilities.assert_equals(expect=main.TRUE,
                                actual=installResults,
                                onpass="******",
                                onfail="Install onos-app-bgp failed")

        bgpls_post = bgplsConfig.DictoJson()

        bgplsConfig.Comments()
        main.log.info("BGPLS RestConf input")
        bgplsConfig.Comments()

        bgplsConfig.Comments()
        main.log.info("Check Network devices are Updated in ONOS ")
        bgplsConfig.Comments()
        time.sleep(120)

        response = main.ONOScli1.devices()
        main.step("Check Newly added Node is getting updated")

        if response.find(Ne_id[1][3]) != -1:
            stepResult = main.TRUE
        else:
            stepResult = main.FALSE
        utilities.assert_equals(
            expect=main.TRUE,
            actual=stepResult,
            onpass="******" + str(Ne_id[1][3]) + " update  sucess",
            onfail="Node " + str(Ne_id[1][3]) + " update failed")
        bgplsConfig.Comments()
        main.log.info("Kill Scapy process")
        bgplsConfig.Comments()
        main.Scapy1.handle.sendline("\x03")
示例#8
0
    def CASE2(self, main):
        """
        Discovery the topology using BGPLS
        """
        import os, sys
        import re
        import time

        main.case("Testcase 2 : Discovery the Network Topology using BGPLS")

        try:
            from tests.FUNC.FUNCbgpls.dependencies.Nbdata import BgpLs
        except ImportError:
            main.log.exception(
                "Something wrong with import file or code error.")
            main.log.info("Import Error, please check!")
            main.cleanup()
            main.exit()

        bgplsConfig = BgpLs()
        Ne_id = bgplsConfig.Constants()
        app = bgplsConfig.apps()
        main.CLIs = []
        main.nodes = []
        main.numCtrls = 1

        ipList = os.getenv(main.params['CTRL']['ip1'])
        scapy_ip = os.getenv(main.params['SCAPY']['HOSTNAMES'])
        httpport = main.params['HTTP']['port']
        path = main.params['HTTP']['path']
        bgplsConfig.ipValue(ipList, scapy_ip)

        for i in range(1, main.numCtrls + 1):
            try:
                main.CLIs.append(getattr(main, 'ONOScli' + str(i)))
                main.nodes.append(getattr(main, 'ONOS' + str(i)))
                ipList.append(main.nodes[-1].ip_address)
            except AttributeError:
                break

        main.step("Apply cell to environment")
        bgplsConfig.Comments()

        bgplsConfig.Comments()
        main.log.info("Sending BGPLS information ")
        bgplsConfig.Comments()

        main.Scapy1.handle.sendline(
            "sudo python  OnosSystemTest/TestON/tests/FUNC/FUNCbgpls/\
        dependencies/Scapyfiles/Topo_discovery.py")
        bgplsConfig.Comments()
        main.log.info("Enable BGPlS plugin in ONOS")
        bgplsConfig.Comments()

        cliResults = main.ONOScli1.startOnosCli(main.nodes[0].ip_address)

        main.step("Getting connected to ONOS")
        utilities.assert_equals(expect=main.TRUE,
                                actual=cliResults,
                                onpass="******",
                                onfail="ONOS cli startup failed")
        installResults = main.ONOScli1.activateApp(app[0])

        main.step("Install onos-app-bgp")
        utilities.assert_equals(expect=main.TRUE,
                                actual=installResults,
                                onpass="******",
                                onfail="Install onos-app-bgp failed")

        bgpls_post = bgplsConfig.DictoJson()

        bgplsConfig.Comments()
        main.log.info("BGPLS RestConf input")
        bgplsConfig.Comments()

        print(bgpls_post)
        main.ONOSrest.user_name = "karaf"
        main.ONOSrest.pwd = "karaf"
        Poststatus, result = main.ONOSrest.send('/network/configuration/',
                                                method="POST",
                                                data=bgpls_post)
        main.step("Configure BGP through RESTCONF")

        utilities.assert_equals(expect='200',
                                actual=Poststatus,
                                onpass="******",
                                onfail="Post Port Failed " + str(Poststatus) +
                                "," + str(result))

        bgplsConfig.Comments()
        main.log.info("Check Network devices are Updated in ONOS ")
        bgplsConfig.Comments()
        time.sleep(15)

        response = main.ONOScli1.devices()
        main.step("Check the nodes are discovered")
        if response.find(Ne_id[1][0]) and response.find(
                Ne_id[1][1]) and response.find(Ne_id[1][2]) != -1:
            stepResult = main.TRUE
        else:
            stepResult = main.FALSE
        utilities.assert_equals(expect=main.TRUE,
                                actual=stepResult,
                                onpass="******" + str(Ne_id[1][0]) +
                                (Ne_id[1][1]) + (Ne_id[1][2]) + "  sucess",
                                onfail="Node " + str(Ne_id[1][0]) +
                                (Ne_id[1][1]) + (Ne_id[1][2]) + " failed")

        bgplsConfig.Comments()
        main.log.info("Kill Scapy process")
        bgplsConfig.Comments()

        main.Scapy1.handle.sendline("\x03")
        time.sleep(90)  #This Sleep time gives time for the socket to close.
    def CASE5(self, main):
        """
        Deletion of  links
        """
        import json
        import time
        import os
        main.case("Testcase 5: Deletion of Link in existing topology")
        try:
            from tests.FUNC.FUNCbgpls.dependencies.Nbdata import BgpLs
        except ImportError:
            main.log.exception(
                "Something wrong with import file or code error.")
            main.log.info("Import Error, please check!")
            main.cleanup()
            main.exit()

        bgplsConfig = BgpLs()
        app = bgplsConfig.apps()
        main.CLIs = []
        main.nodes = []
        main.numCtrls = 1
        ipList = os.getenv(main.params['CTRL']['ip1'])
        scapy_ip = os.getenv(main.params['SCAPY']['HOSTNAMES'])
        bgplsConfig.ipValue(ipList, scapy_ip)

        for i in range(1, main.numCtrls + 1):
            try:
                main.CLIs.append(getattr(main, 'ONOScli' + str(i)))
                main.nodes.append(getattr(main, 'ONOS' + str(i)))
                ipList.append(main.nodes[-1].ip_address)
            except AttributeError:
                break

        bgplsConfig.Comments()
        main.log.info("Sending BGPLS Delete Link Packet ")
        bgplsConfig.Comments()

        main.Scapy1.handle.sendline(
            "sudo python  OnosSystemTest/TestON/tests/FUNC/FUNCbgpls/dependencies/Scapyfiles/Deletion_Node.py"
        )
        bgplsConfig.Comments()
        main.log.info("Enable BGPlS plugin in ONOS")
        bgplsConfig.Comments()

        main.step("UnInstall onos-app-bgp")
        installResults = main.ONOScli1.deactivateApp(app[0])
        utilities.assert_equals(expect=main.TRUE,
                                actual=installResults,
                                onpass="******",
                                onfail="Uninstall  onos-app-bgp failed")

        installResults = main.ONOScli1.activateApp(app[0])
        main.step("Install onos-app-bgp")
        utilities.assert_equals(expect=main.TRUE,
                                actual=installResults,
                                onpass="******",
                                onfail="Install onos-app-bgp failed")
        bgplsConfig.Comments()
        main.log.info("Checking whether the links is deleted")
        bgplsConfig.Comments()
        time.sleep(120)  # Time taken to discovery the links
        response = main.ONOScli1.links()
        linksResp = json.loads(response)
        check_link = bgplsConfig.checkLinks(linksResp)
        if check_link == False:
            reply_Check_Link = main.TRUE
        utilities.assert_equals(expect=main.TRUE,
                                actual=reply_Check_Link,
                                onpass="******",
                                onfail="Link  is Deletion Failed.")
        bgplsConfig.Comments()
        main.log.info("Kill Scapy process")
        bgplsConfig.Comments()
        main.Scapy1.handle.sendline("\x03")
        time.sleep(90)
示例#10
0
    def CASE4(self, main):
        """
        Verification of Links in existing topology
        """
        import json
        import time
        import os
        main.case("Testcase 4: Verification of Links thats is discovered")
        main.ONOScli1.log("\"testcase4 start\"")
        try:
            from tests.FUNC.FUNCbgpls.dependencies.Nbdata import BgpLs
        except ImportError:
            main.log.exception(
                "Something wrong with import file or code error.")
            main.log.info("Import Error, please check!")
            main.cleanup()
            main.exit()

        bgplsConfig = BgpLs()
        app = bgplsConfig.apps()
        main.CLIs = []
        main.nodes = []
        main.numCtrls = 1
        ipList = os.getenv(main.params['CTRL']['ip1'])
        scapy_ip = os.getenv(main.params['SCAPY']['HOSTNAMES'])
        bgplsConfig.ipValue(ipList, scapy_ip)

        for i in range(1, main.numCtrls + 1):
            try:
                main.CLIs.append(getattr(main, 'ONOScli' + str(i)))
                main.nodes.append(getattr(main, 'ONOS' + str(i)))
                ipList.append(main.nodes[-1].ip_address)
            except AttributeError:
                break

        bgplsConfig.Comments()
        main.log.info("Sending BGPLS Link information Packet ")
        bgplsConfig.Comments()

        main.Scapy1.handle.sendline(
            "sudo python  OnosSystemTest/TestON/tests/FUNC/FUNCbgpls/dependencies/Scapyfiles/Link_Update_Node.py"
        )
        bgplsConfig.Comments()
        main.log.info("Enable BGPlS plugin in ONOS")
        bgplsConfig.Comments()

        main.step("UnInstall onos-app-bgp")
        installResults = main.ONOScli1.deactivateApp(app[0])
        utilities.assert_equals(expect=main.TRUE,
                                actual=installResults,
                                onpass="******",
                                onfail="Uninstall  onos-app-bgp failed")

        installResults = main.ONOScli1.activateApp(app[0])
        main.step("Install onos-app-bgp")
        utilities.assert_equals(expect=main.TRUE,
                                actual=installResults,
                                onpass="******",
                                onfail="Install onos-app-bgp failed")
        bgplsConfig.Comments()
        main.step("Checking the Link Discovery Status")
        bgplsConfig.Comments()
        time.sleep(120)  # Time taken to discovery the links
        response = main.ONOScli1.links()
        linksResp = json.loads(response)
        check_link = bgplsConfig.checkLinks(linksResp)

        if check_link == True:
            reply_Check_Link = main.TRUE
        utilities.assert_equals(expect=main.TRUE,
                                actual=reply_Check_Link,
                                onpass="******",
                                onfail="Link Discovery Failed.")
        main.ONOScli1.log("\"testcase4 end\"")

        main.step("Check for Errors or Exception in testcase4 ")
        startStr = "testcase4 start"
        endStr = "testcase4 end"
        errorLog = main.ONOSbench.logReport(main.nodes[0].ip_address,
                                            ["ERROR", "EXCEPT"], "s", startStr,
                                            endStr)
        utilities.assert_equals(
            expect=0,
            actual=errorLog,
            onpass="******",
            onfail="Exception or Error occured in testcase4")
        bgplsConfig.Comments()
        main.log.info("Kill Scapy process")
        bgplsConfig.Comments()
        main.Scapy1.handle.sendline("\x03")
        time.sleep(90)