Exemple #1
0
    def CASE9( self, main ):
        """
        Test Update Port
        """
        import os

        try:
            from tests.FUNC.FUNCvirNetNB.dependencies.Nbdata import NetworkData
            from tests.FUNC.FUNCvirNetNB.dependencies.Nbdata import SubnetData
            from tests.FUNC.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.cleanAndExit()

        main.log.info( "ONOS Port Update test Start" )
        main.case( "Virtual Network NBI Test - Port" )
        main.caseExplanation = "Test Port Update NBI " +\
                                "Verify Stored Data is same with New 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
        port.name = "onos"

        networkpostdata = network.DictoJson()
        subnetpostdata = subnet.DictoJson()
        portpostdata = port.DictoJson()

        # create update data
        port.name = "onos-new"
        newportpostdata = port.DictoJson()
        # end
        ctrl = main.Cluster.active( 0 )
        main.step( "Post Network Data via HTTP(Post port need post network)" )
        Poststatus, result = ctrl.REST.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 = ctrl.REST.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 = ctrl.REST.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( "Update Port Data via HTTP" )
        Poststatus, result = ctrl.REST.send( ctrlip, httpport, port.id, path + 'ports/',
                                             'PUT', None, newportpostdata )
        utilities.assert_equals(
                expect='200',
                actual=Poststatus,
                onpass="******",
                onfail="Update Port Failed " + str( Poststatus ) + "," + str( result ) )

        main.step( "Get Port Data via HTTP" )
        Getstatus, result = ctrl.REST.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 Update 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' )
        Nameresult = subnet.JsonCompare( newportpostdata, result, 'port', 'name' )

        Cmpresult = IDcmpresult and TanantIDcmpresult and NetoworkIDcmpresult and Nameresult
        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 ) +
                       ",Name compare:" + str( Nameresult ) )

        main.step( "Clean Data via HTTP" )
        deletestatus, result = ctrl.REST.send( ctrlip, httpport, network.id, path + 'networks/',
                                               'DELETE', None, None )
        utilities.assert_equals(
                expect='200',
                actual=deletestatus,
                onpass="******",
                onfail="Delete Network Failed" )

        if not Cmpresult:
            main.log.error( "Update port compare failed" )
Exemple #2
0
    def CASE10( self, main ):
        """
        Test Delete Port
        """
        import os

        try:
            from tests.FUNC.FUNCvirNetNB.dependencies.Nbdata import NetworkData
            from tests.FUNC.FUNCvirNetNB.dependencies.Nbdata import SubnetData
            from tests.FUNC.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.cleanAndExit()

        main.log.info( "ONOS Port Delete test Start" )
        main.case( "Virtual Network NBI Test - Port" )
        main.caseExplanation = "Test Port Delete NBI " +\
                                "Verify port delete success"

        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()
        ctrl = main.Cluster.active( 0 )
        main.step( "Post Network Data via HTTP(Post port need post network)" )
        Poststatus, result = ctrl.REST.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 = ctrl.REST.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 = ctrl.REST.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( "Delete Port Data via HTTP" )
        Poststatus, result = ctrl.REST.send( ctrlip, httpport, port.id, path + 'ports/',
                                             'Delete', None, None )
        utilities.assert_equals(
                expect='200',
                actual=Poststatus,
                onpass="******",
                onfail="Delete Port Failed " + str( Poststatus ) + "," + str( result ) )

        main.step( "Get Port Data is NULL" )
        Getstatus, result = ctrl.REST.send( ctrlip, httpport, port.id, path + 'ports/',
                                            'GET', None, None )
        utilities.assert_equals(
                expect='VirtualPort is not found',
                actual=result,
                onpass="******",
                onfail="Get Port Failed " + str( Getstatus ) + "," + str( result ) )

        if result != 'VirtualPort is not found':
            main.log.error( "Delete Port failed" )

        main.step( "Clean Data via HTTP" )
        deletestatus, result = ctrl.REST.send( ctrlip, httpport, network.id, path + 'networks/',
                                               'DELETE', None, None )
        utilities.assert_equals(
                expect='200',
                actual=deletestatus,
                onpass="******",
                onfail="Delete Network Failed" )
Exemple #3
0
    def CASE13( self, main ):
        """
        Test Post Error Json Create Virtualport
        """
        import os

        try:
            from tests.FUNC.FUNCvirNetNB.dependencies.Nbdata import NetworkData
            from tests.FUNC.FUNCvirNetNB.dependencies.Nbdata import SubnetData
            from tests.FUNC.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.cleanAndExit()

        main.log.info( "ONOS Post Error Json Create Subnet test Start" )
        main.case( "Virtual Network NBI Test - Port" )
        main.caseExplanation = "Test Subnet Post With Error json " +\
                                "The wrong Json can't create port successfully"

        ctrlip = os.getenv( main.params[ 'CTRL' ][ 'ip1' ] )
        httpport = main.params[ 'HTTP' ][ 'port' ]
        path = main.params[ 'HTTP' ][ 'path' ]

        main.step( "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
        # The port.adminStateUp should be True or False,when the adminStateUp is 'tttttttttttt',the Json can't post.
        port.adminStateUp = 'tttttttttttt'

        networkpostdata = network.DictoJson()
        subnetpostdata = subnet.DictoJson()
        portpostdata = port.DictoJson()
        ctrl = main.Cluster.active( 0 )
        main.step( "Post Network Data via HTTP(Post port need post network)" )
        Poststatus, result = ctrl.REST.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 = ctrl.REST.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 = ctrl.REST.send( ctrlip, httpport, '', path + 'ports/',
                                             'POST', None, portpostdata )
        utilities.assert_equals(
                expect='500',
                actual=Poststatus,
                onpass="******",
                onfail="Wrong Json can post successfully" )