<s> import itertools <EOL> import sys <EOL> from mox3 import mox <EOL> from neutronclient . neutron . v2_0 import port <EOL> from neutronclient import shell <EOL> from neutronclient . tests . unit import test_cli20 <EOL> class CLITestV20PortJSON ( test_cli20 . CLITestV20Base ) : <EOL> def setUp ( self ) : <EOL> super ( CLITestV20PortJSON , self ) . setUp ( plurals = { '<STR_LIT>' : '<STR_LIT>' } ) <EOL> def test_create_port ( self ) : <EOL> resource = '<STR_LIT:port>' <EOL> cmd = port . CreatePort ( test_cli20 . MyApp ( sys . stdout ) , None ) <EOL> name = '<STR_LIT>' <EOL> myid = '<STR_LIT>' <EOL> netid = '<STR_LIT>' <EOL> args = [ netid , '<STR_LIT>' , '<STR_LIT>' ] <EOL> position_names = [ '<STR_LIT>' ] <EOL> position_values = [ ] <EOL> position_values . extend ( [ netid ] ) <EOL> self . _test_create_resource ( resource , cmd , name , myid , args , <EOL> position_names , position_values , <EOL> description = '<STR_LIT>' ) <EOL> def test_create_port_extra_dhcp_opts_args ( self ) : <EOL> resource = '<STR_LIT:port>' <EOL> cmd = port . CreatePort ( test_cli20 . MyApp ( sys . stdout ) , None ) <EOL> name = '<STR_LIT>' <EOL> myid = '<STR_LIT>' <EOL> netid = '<STR_LIT>' <EOL> extra_dhcp_opts = [ { '<STR_LIT>' : '<STR_LIT>' , <EOL> '<STR_LIT>' : '<STR_LIT>' } , <EOL> { '<STR_LIT>' : '<STR_LIT>' , <EOL> '<STR_LIT>' : '<STR_LIT>' } , <EOL> { '<STR_LIT>' : '<STR_LIT>' , <EOL> '<STR_LIT>' : '<STR_LIT>' } ] <EOL> args = [ netid ] <EOL> for dhcp_opt in extra_dhcp_opts : <EOL> args += [ '<STR_LIT>' , <EOL> ( '<STR_LIT>' % <EOL> dhcp_opt ) ] <EOL> position_names = [ '<STR_LIT>' , '<STR_LIT>' ] <EOL> position_values = [ netid , extra_dhcp_opts ] <EOL> position_values . extend ( [ netid ] ) <EOL> self . _test_create_resource ( resource , cmd , name , myid , args , <EOL> position_names , position_values ) <EOL> def test_create_port_extra_dhcp_opts_args_ip_version ( self ) : <EOL> resource = '<STR_LIT:port>' <EOL> cmd = port . CreatePort ( test_cli20 . MyApp ( sys . stdout ) , None ) <EOL> name = '<STR_LIT>' <EOL> myid = '<STR_LIT>' <EOL> netid = '<STR_LIT>' <EOL> extra_dhcp_opts = [ { '<STR_LIT>' : '<STR_LIT>' , <EOL> '<STR_LIT>' : '<STR_LIT>' , <EOL> '<STR_LIT>' : "<STR_LIT:4>" } , <EOL> { '<STR_LIT>' : '<STR_LIT>' , <EOL> '<STR_LIT>' : '<STR_LIT>' , <EOL> '<STR_LIT>' : "<STR_LIT>" } , <EOL> { '<STR_LIT>' : '<STR_LIT>' , <EOL> '<STR_LIT>' : '<STR_LIT>' , <EOL> '<STR_LIT>' : "<STR_LIT:4>" } ] <EOL> args = [ netid ] <EOL> for dhcp_opt in extra_dhcp_opts : <EOL> args += [ '<STR_LIT>' , <EOL> ( '<STR_LIT>' <EOL> '<STR_LIT>' % <EOL> dhcp_opt ) ] <EOL> position_names = [ '<STR_LIT>' , '<STR_LIT>' ] <EOL> position_values = [ netid , extra_dhcp_opts ] <EOL> position_values . extend ( [ netid ] ) <EOL> self . _test_create_resource ( resource , cmd , name , myid , args , <EOL> position_names , position_values ) <EOL> def test_create_port_full ( self ) : <EOL> resource = '<STR_LIT:port>' <EOL> cmd = port . CreatePort ( test_cli20 . MyApp ( sys . stdout ) , None ) <EOL> name = '<STR_LIT>' <EOL> myid = '<STR_LIT>' <EOL> netid = '<STR_LIT>' <EOL> args = [ '<STR_LIT>' , '<STR_LIT>' , '<STR_LIT>' , '<STR_LIT>' , netid ] <EOL> position_names = [ '<STR_LIT>' , '<STR_LIT>' , '<STR_LIT>' ] <EOL> position_values = [ netid , '<STR_LIT>' , '<STR_LIT>' ] <EOL> self . _test_create_resource ( resource , cmd , name , myid , args , <EOL> position_names , position_values ) <EOL> args = [ '<STR_LIT>' , '<STR_LIT>' , '<STR_LIT>' , '<STR_LIT>' , netid ] <EOL> position_names = [ '<STR_LIT>' , '<STR_LIT>' , '<STR_LIT>' ] <EOL> self . _test_create_resource ( resource , cmd , name , myid , args , <EOL> position_names , position_values ) <EOL> def test_create_port_vnic_type_normal ( self ) : <EOL> resource = '<STR_LIT:port>' <EOL> cmd = port . CreatePort ( test_cli20 . MyApp ( sys . stdout ) , None ) <EOL> name = '<STR_LIT>' <EOL> myid = '<STR_LIT>' <EOL> netid = '<STR_LIT>' <EOL> args = [ '<STR_LIT>' , '<STR_LIT>' , netid ] <EOL> position_names = [ '<STR_LIT>' , '<STR_LIT>' ] <EOL> position_values = [ '<STR_LIT>' , netid ] <EOL> self . _test_create_resource ( resource , cmd , name , myid , args , <EOL> position_names , position_values ) <EOL> args = [ '<STR_LIT>' , '<STR_LIT>' , netid ] <EOL> position_names = [ '<STR_LIT>' , '<STR_LIT>' ] <EOL> position_values = [ '<STR_LIT>' , netid ] <EOL> self . _test_create_resource ( resource , cmd , name , myid , args , <EOL> position_names , position_values ) <EOL> def test_create_port_vnic_type_direct ( self ) : <EOL> resource = '<STR_LIT:port>' <EOL> cmd = port . CreatePort ( test_cli20 . MyApp ( sys . stdout ) , None ) <EOL> name = '<STR_LIT>' <EOL> myid = '<STR_LIT>' <EOL> netid = '<STR_LIT>' <EOL> args = [ '<STR_LIT>' , '<STR_LIT>' , netid ] <EOL> position_names = [ '<STR_LIT>' , '<STR_LIT>' ] <EOL> position_values = [ '<STR_LIT>' , netid ] <EOL> self . _test_create_resource ( resource , cmd , name , myid , args , <EOL> position_names , position_values ) <EOL> args = [ '<STR_LIT>' , '<STR_LIT>' , netid ] <EOL> position_names = [ '<STR_LIT>' , '<STR_LIT>' ] <EOL> position_values = [ '<STR_LIT>' , netid ] <EOL> self . _test_create_resource ( resource , cmd , name , myid , args , <EOL> position_names , position_values ) <EOL> def test_create_port_vnic_type_direct_physical ( self ) : <EOL> resource = '<STR_LIT:port>' <EOL> cmd = port . CreatePort ( test_cli20 . MyApp ( sys . stdout ) , None ) <EOL> name = '<STR_LIT>' <EOL> myid = '<STR_LIT>' <EOL> netid = '<STR_LIT>' <EOL> args = [ '<STR_LIT>' , '<STR_LIT>' , netid ] <EOL> position_names = [ '<STR_LIT>' , '<STR_LIT>' ] <EOL> position_values = [ '<STR_LIT>' , netid ] <EOL> self . _test_create_resource ( resource , cmd , name , myid , args , <EOL> position_names , position_values ) <EOL> args = [ '<STR_LIT>' , '<STR_LIT>' , netid ] <EOL> position_names = [ '<STR_LIT>' , '<STR_LIT>' ] <EOL> position_values = [ '<STR_LIT>' , netid ] <EOL> self . _test_create_resource ( resource , cmd , name , myid , args , <EOL> position_names , position_values ) <EOL> def test_create_port_vnic_type_macvtap ( self ) : <EOL> resource = '<STR_LIT:port>' <EOL> cmd = port . CreatePort ( test_cli20 . MyApp ( sys . stdout ) , None ) <EOL> name = '<STR_LIT>' <EOL> myid = '<STR_LIT>' <EOL> netid = '<STR_LIT>' <EOL> args = [ '<STR_LIT>' , '<STR_LIT>' , netid ] <EOL> position_names = [ '<STR_LIT>' , '<STR_LIT>' ] <EOL> position_values = [ '<STR_LIT>' , netid ] <EOL> self . _test_create_resource ( resource , cmd , name , myid , args , <EOL> position_names , position_values ) <EOL> args = [ '<STR_LIT>' , '<STR_LIT>' , netid ] <EOL> position_names = [ '<STR_LIT>' , '<STR_LIT>' ] <EOL> position_values = [ '<STR_LIT>' , netid ] <EOL> self . _test_create_resource ( resource , cmd , name , myid , args , <EOL> position_names , position_values ) <EOL> def test_create_port_vnic_type_baremetal ( self ) : <EOL> resource = '<STR_LIT:port>' <EOL> cmd = port . CreatePort ( test_cli20 . MyApp ( sys . stdout ) , None ) <EOL> name = '<STR_LIT>' <EOL> myid = '<STR_LIT>' <EOL> netid = '<STR_LIT>' <EOL> args = [ '<STR_LIT>' , '<STR_LIT>' , netid ] <EOL> position_names = [ '<STR_LIT>' , '<STR_LIT>' ] <EOL> position_values = [ '<STR_LIT>' , netid ] <EOL> self . _test_create_resource ( resource , cmd , name , myid , args , <EOL> position_names , position_values ) <EOL> args = [ '<STR_LIT>' , '<STR_LIT>' , netid ] <EOL> position_names = [ '<STR_LIT>' , '<STR_LIT>' ] <EOL> position_values = [ '<STR_LIT>' , netid ] <EOL> self . _test_create_resource ( resource , cmd , name , myid , args , <EOL> position_names , position_values ) <EOL> def test_create_port_with_binding_profile ( self ) : <EOL> resource = '<STR_LIT:port>' <EOL> cmd = port . CreatePort ( test_cli20 . MyApp ( sys . stdout ) , None ) <EOL> name = '<STR_LIT>' <EOL> myid = '<STR_LIT>' <EOL> netid = '<STR_LIT>' <EOL> args = [ '<STR_LIT>' , '<STR_LIT>' , netid ] <EOL> position_names = [ '<STR_LIT>' , '<STR_LIT>' ] <EOL> position_values = [ { '<STR_LIT:foo>' : '<STR_LIT:bar>' } , netid ] <EOL> self . _test_create_resource ( resource , cmd , name , myid , args , <EOL> position_names , position_values ) <EOL> args = [ '<STR_LIT>' , '<STR_LIT>' , netid ] <EOL> position_names = [ '<STR_LIT>' , '<STR_LIT>' ] <EOL> position_values = [ { '<STR_LIT:foo>' : '<STR_LIT:bar>' } , netid ] <EOL> self . _test_create_resource ( resource , cmd , name , myid , args , <EOL> position_names , position_values ) <EOL> def test_create_port_tenant ( self ) : <EOL> resource = '<STR_LIT:port>' <EOL> cmd = port . CreatePort ( test_cli20 . MyApp ( sys . stdout ) , None ) <EOL> name = '<STR_LIT>' <EOL> myid = '<STR_LIT>' <EOL> netid = '<STR_LIT>' <EOL> args = [ '<STR_LIT>' , '<STR_LIT>' , netid , ] <EOL> position_names = [ '<STR_LIT>' ] <EOL> position_values = [ ] <EOL> position_values . extend ( [ netid ] ) <EOL> self . _test_create_resource ( resource , cmd , name , myid , args , <EOL> position_names , position_values , <EOL> tenant_id = '<STR_LIT>' ) <EOL> args = [ '<STR_LIT>' , '<STR_LIT>' , netid , ] <EOL> self . _test_create_resource ( resource , cmd , name , myid , args , <EOL> position_names , position_values , <EOL> tenant_id = '<STR_LIT>' ) <EOL> def test_create_port_tags ( self ) : <EOL> resource = '<STR_LIT:port>' <EOL> cmd = port . CreatePort ( test_cli20 . MyApp ( sys . stdout ) , None ) <EOL> name = '<STR_LIT>' <EOL> myid = '<STR_LIT>' <EOL> netid = '<STR_LIT>' <EOL> args = [ netid , '<STR_LIT>' , '<STR_LIT:a>' , '<STR_LIT:b>' ] <EOL> position_names = [ '<STR_LIT>' ] <EOL> position_values = [ ] <EOL> position_values . extend ( [ netid ] ) <EOL> self . _test_create_resource ( resource , cmd , name , myid , args , <EOL> position_names , position_values , <EOL> tags = [ '<STR_LIT:a>' , '<STR_LIT:b>' ] ) <EOL> def test_create_port_secgroup ( self ) : <EOL> resource = '<STR_LIT:port>' <EOL> cmd = port . CreatePort ( test_cli20 . MyApp ( sys . stdout ) , None ) <EOL> name = '<STR_LIT>' <EOL> myid = '<STR_LIT>' <EOL> netid = '<STR_LIT>' <EOL> args = [ '<STR_LIT>' , '<STR_LIT>' , netid ] <EOL> position_names = [ '<STR_LIT>' , '<STR_LIT>' ] <EOL> position_values = [ netid , [ '<STR_LIT>' ] ] <EOL> self . _test_create_resource ( resource , cmd , name , myid , args , <EOL> position_names , position_values ) <EOL> def test_create_port_secgroups ( self ) : <EOL> resource = '<STR_LIT:port>' <EOL> cmd = port . CreatePort ( test_cli20 . MyApp ( sys . stdout ) , None ) <EOL> name = '<STR_LIT>' <EOL> myid = '<STR_LIT>' <EOL> netid = '<STR_LIT>' <EOL> args = [ '<STR_LIT>' , '<STR_LIT>' , <EOL> '<STR_LIT>' , '<STR_LIT>' , <EOL> netid ] <EOL> position_names = [ '<STR_LIT>' , '<STR_LIT>' ] <EOL> position_values = [ netid , [ '<STR_LIT>' , '<STR_LIT>' ] ] <EOL> self . _test_create_resource ( resource , cmd , name , myid , args , <EOL> position_names , position_values ) <EOL> def test_create_port_secgroup_off ( self ) : <EOL> resource = '<STR_LIT:port>' <EOL> cmd = port . CreatePort ( test_cli20 . MyApp ( sys . stdout ) , None ) <EOL> name = '<STR_LIT>' <EOL> myid = '<STR_LIT>' <EOL> netid = '<STR_LIT>' <EOL> args = [ '<STR_LIT>' , netid ] <EOL> position_names = [ '<STR_LIT>' , '<STR_LIT>' ] <EOL> position_values = [ netid , [ ] ] <EOL> self . _test_create_resource ( resource , cmd , name , myid , args , <EOL> position_names , position_values ) <EOL> def test_create_port_secgroups_list ( self ) : <EOL> resource = '<STR_LIT:port>' <EOL> cmd = port . CreatePort ( test_cli20 . MyApp ( sys . stdout ) , None ) <EOL> name = '<STR_LIT>' <EOL> myid = '<STR_LIT>' <EOL> netid = '<STR_LIT>' <EOL> args = [ netid , '<STR_LIT>' , '<STR_LIT>' , '<STR_LIT>' , '<STR_LIT>' ] <EOL> position_names = [ '<STR_LIT>' , '<STR_LIT>' ] <EOL> position_values = [ netid , [ '<STR_LIT>' , '<STR_LIT>' ] ] <EOL> self . _test_create_resource ( resource , cmd , name , myid , args , <EOL> position_names , position_values ) <EOL> def test_create_port_with_qos_policy ( self ) : <EOL> resource = '<STR_LIT:port>' <EOL> cmd = port . CreatePort ( test_cli20 . MyApp ( sys . stdout ) , None ) <EOL> name = '<STR_LIT>' <EOL> myid = '<STR_LIT>' <EOL> netid = '<STR_LIT>' <EOL> qos_policy_name = '<STR_LIT>' <EOL> args = [ netid , '<STR_LIT>' , qos_policy_name ] <EOL> position_names = [ '<STR_LIT>' , '<STR_LIT>' ] <EOL> position_values = [ netid , qos_policy_name ] <EOL> self . _test_create_resource ( resource , cmd , name , myid , args , <EOL> position_names , position_values ) <EOL> def test_create_port_with_dns_name ( self ) : <EOL> resource = '<STR_LIT:port>' <EOL> cmd = port . CreatePort ( test_cli20 . MyApp ( sys . stdout ) , None ) <EOL> name = '<STR_LIT>' <EOL> myid = '<STR_LIT>' <EOL> netid = '<STR_LIT>' <EOL> dns_name_name = '<STR_LIT>' <EOL> args = [ netid , '<STR_LIT>' , dns_name_name ] <EOL> position_names = [ '<STR_LIT>' , '<STR_LIT>' ] <EOL> position_values = [ netid , dns_name_name ] <EOL> self . _test_create_resource ( resource , cmd , name , myid , args , <EOL> position_names , position_values ) <EOL> def test_create_port_with_allowed_address_pair_ipaddr ( self ) : <EOL> resource = '<STR_LIT:port>' <EOL> cmd = port . CreatePort ( test_cli20 . MyApp ( sys . stdout ) , None ) <EOL> name = '<STR_LIT>' <EOL> myid = '<STR_LIT>' <EOL> netid = '<STR_LIT>' <EOL> pairs = [ { '<STR_LIT>' : '<STR_LIT>' } , <EOL> { '<STR_LIT>' : '<STR_LIT>' } ] <EOL> args = [ netid , <EOL> '<STR_LIT>' , <EOL> '<STR_LIT>' , <EOL> '<STR_LIT>' , <EOL> '<STR_LIT>' ] <EOL> position_names = [ '<STR_LIT>' , '<STR_LIT>' ] <EOL> position_values = [ netid , pairs ] <EOL> position_values . extend ( [ netid ] ) <EOL> self . _test_create_resource ( resource , cmd , name , myid , args , <EOL> position_names , position_values ) <EOL> def test_create_port_with_allowed_address_pair ( self ) : <EOL> resource = '<STR_LIT:port>' <EOL> cmd = port . CreatePort ( test_cli20 . MyApp ( sys . stdout ) , None ) <EOL> name = '<STR_LIT>' <EOL> myid = '<STR_LIT>' <EOL> netid = '<STR_LIT>' <EOL> pairs = [ { '<STR_LIT>' : '<STR_LIT>' , <EOL> '<STR_LIT>' : '<STR_LIT>' } , <EOL> { '<STR_LIT>' : '<STR_LIT>' , <EOL> '<STR_LIT>' : '<STR_LIT>' } ] <EOL> args = [ netid , <EOL> '<STR_LIT>' , <EOL> '<STR_LIT>' , <EOL> '<STR_LIT>' , <EOL> '<STR_LIT>' ] <EOL> position_names = [ '<STR_LIT>' , '<STR_LIT>' ] <EOL> position_values = [ netid , pairs ] <EOL> position_values . extend ( [ netid ] ) <EOL> self . _test_create_resource ( resource , cmd , name , myid , args , <EOL> position_names , position_values ) <EOL> def test_list_ports ( self ) : <EOL> resources = "<STR_LIT>" <EOL> cmd = port . ListPort ( test_cli20 . MyApp ( sys . stdout ) , None ) <EOL> self . _test_list_resources ( resources , cmd , True ) <EOL> def test_list_ports_pagination ( self ) : <EOL> resources = "<STR_LIT>" <EOL> cmd = port . ListPort ( test_cli20 . MyApp ( sys . stdout ) , None ) <EOL> self . _test_list_resources_with_pagination ( resources , cmd ) <EOL> def test_list_ports_sort ( self ) : <EOL> resources = "<STR_LIT>" <EOL> cmd = port . ListPort ( test_cli20 . MyApp ( sys . stdout ) , None ) <EOL> self . _test_list_resources ( resources , cmd , <EOL> sort_key = [ "<STR_LIT:name>" , "<STR_LIT:id>" ] , <EOL> sort_dir = [ "<STR_LIT>" , "<STR_LIT>" ] ) <EOL> def test_list_ports_limit ( self ) : <EOL> resources = "<STR_LIT>" <EOL> cmd = port . ListPort ( test_cli20 . MyApp ( sys . stdout ) , None ) <EOL> self . _test_list_resources ( resources , cmd , page_size = <NUM_LIT:1000> ) <EOL> def test_list_ports_tags ( self ) : <EOL> resources = "<STR_LIT>" <EOL> cmd = port . ListPort ( test_cli20 . MyApp ( sys . stdout ) , None ) <EOL> self . _test_list_resources ( resources , cmd , tags = [ '<STR_LIT:a>' , '<STR_LIT:b>' ] ) <EOL> def test_list_ports_detail_tags ( self ) : <EOL> resources = "<STR_LIT>" <EOL> cmd = port . ListPort ( test_cli20 . MyApp ( sys . stdout ) , None ) <EOL> self . _test_list_resources ( resources , cmd , detail = True , tags = [ '<STR_LIT:a>' , '<STR_LIT:b>' ] ) <EOL> def test_list_ports_fields ( self ) : <EOL> resources = "<STR_LIT>" <EOL> cmd = port . ListPort ( test_cli20 . MyApp ( sys . stdout ) , None ) <EOL> self . _test_list_resources ( resources , cmd , <EOL> fields_1 = [ '<STR_LIT:a>' , '<STR_LIT:b>' ] , fields_2 = [ '<STR_LIT:c>' , '<STR_LIT:d>' ] ) <EOL> def test_list_ports_with_fixed_ips_in_csv ( self ) : <EOL> resources = "<STR_LIT>" <EOL> cmd = port . ListPort ( test_cli20 . MyApp ( sys . stdout ) , None ) <EOL> fixed_ips = [ { "<STR_LIT>" : "<STR_LIT>" , <EOL> "<STR_LIT>" : "<STR_LIT>" } , <EOL> { "<STR_LIT>" : "<STR_LIT>" , <EOL> "<STR_LIT>" : "<STR_LIT>" } ] <EOL> contents = [ { '<STR_LIT:name>' : '<STR_LIT>' , '<STR_LIT>' : fixed_ips } ] <EOL> self . _test_list_resources ( resources , cmd , True , <EOL> response_contents = contents , <EOL> output_format = '<STR_LIT>' ) <EOL> def _test_list_router_port ( self , resources , cmd , <EOL> myid , detail = False , tags = ( ) , <EOL> fields_1 = ( ) , fields_2 = ( ) ) : <EOL> self . mox . StubOutWithMock ( cmd , "<STR_LIT>" ) <EOL> self . mox . StubOutWithMock ( self . client . httpclient , "<STR_LIT>" ) <EOL> cmd . get_client ( ) . MultipleTimes ( ) . AndReturn ( self . client ) <EOL> reses = { resources : [ { '<STR_LIT:id>' : '<STR_LIT>' , } , <EOL> { '<STR_LIT:id>' : '<STR_LIT>' , } , ] , } <EOL> resstr = self . client . serialize ( reses ) <EOL> query = "<STR_LIT>" <EOL> args = detail and [ '<STR_LIT>' , ] or [ ] <EOL> if fields_1 : <EOL> for field in fields_1 : <EOL> args . append ( '<STR_LIT>' ) <EOL> args . append ( field ) <EOL> args . append ( myid ) <EOL> if tags : <EOL> args . append ( '<STR_LIT>' ) <EOL> args . append ( "<STR_LIT>" ) <EOL> for tag in tags : <EOL> args . append ( tag ) <EOL> if ( not tags ) and fields_2 : <EOL> args . append ( '<STR_LIT>' ) <EOL> if fields_2 : <EOL> args . append ( "<STR_LIT>" ) <EOL> for field in fields_2 : <EOL> args . append ( field ) <EOL> for field in itertools . chain ( fields_1 , fields_2 ) : <EOL> if query : <EOL> query += "<STR_LIT>" + field <EOL> else : <EOL> query = "<STR_LIT>" + field <EOL> for tag in tags : <EOL> if query : <EOL> query += "<STR_LIT>" + tag <EOL> else : <EOL> query = "<STR_LIT>" + tag <EOL> if detail : <EOL> query = query and query + '<STR_LIT>' or '<STR_LIT>' <EOL> query = query and query + '<STR_LIT>' or '<STR_LIT>' <EOL> path = getattr ( self . client , resources + "<STR_LIT>" ) <EOL> self . client . httpclient . request ( <EOL> test_cli20 . MyUrlComparator ( <EOL> test_cli20 . end_url ( path , query % myid ) , <EOL> self . client ) , <EOL> '<STR_LIT:GET>' , <EOL> body = None , <EOL> headers = mox . ContainsKeyValue ( '<STR_LIT>' , test_cli20 . TOKEN ) <EOL> ) . AndReturn ( ( test_cli20 . MyResp ( <NUM_LIT:200> ) , resstr ) ) <EOL> self . mox . ReplayAll ( ) <EOL> cmd_parser = cmd . get_parser ( "<STR_LIT>" + resources ) <EOL> shell . run_command ( cmd , cmd_parser , args ) <EOL> self . mox . VerifyAll ( ) <EOL> self . mox . UnsetStubs ( ) <EOL> _str = self . fake_stdout . make_string ( ) <EOL> self . assertIn ( '<STR_LIT>' , _str ) <EOL> def test_list_router_ports ( self ) : <EOL> resources = "<STR_LIT>" <EOL> cmd = port . ListRouterPort ( test_cli20 . MyApp ( sys . stdout ) , None ) <EOL> self . _test_list_router_port ( resources , cmd , <EOL> self . test_id , True ) <EOL> def test_list_router_ports_tags ( self ) : <EOL> resources = "<STR_LIT>" <EOL> cmd = port . ListRouterPort ( test_cli20 . MyApp ( sys . stdout ) , None ) <EOL> self . _test_list_router_port ( resources , cmd , <EOL> self . test_id , tags = [ '<STR_LIT:a>' , '<STR_LIT:b>' ] ) <EOL> def test_list_router_ports_detail_tags ( self ) : <EOL> resources = "<STR_LIT>" <EOL> cmd = port . ListRouterPort ( test_cli20 . MyApp ( sys . stdout ) , None ) <EOL> self . _test_list_router_port ( resources , cmd , self . test_id , <EOL> detail = True , tags = [ '<STR_LIT:a>' , '<STR_LIT:b>' ] ) <EOL> def test_list_router_ports_fields ( self ) : <EOL> resources = "<STR_LIT>" <EOL> cmd = port . ListRouterPort ( test_cli20 . MyApp ( sys . stdout ) , None ) <EOL> self . _test_list_router_port ( resources , cmd , self . test_id , <EOL> fields_1 = [ '<STR_LIT:a>' , '<STR_LIT:b>' ] , <EOL> fields_2 = [ '<STR_LIT:c>' , '<STR_LIT:d>' ] ) <EOL> def test_update_port ( self ) : <EOL> resource = '<STR_LIT:port>' <EOL> cmd = port . UpdatePort ( test_cli20 . MyApp ( sys . stdout ) , None ) <EOL> self . _test_update_resource ( resource , cmd , '<STR_LIT>' , <EOL> [ '<STR_LIT>' , '<STR_LIT>' , '<STR_LIT>' , <EOL> '<STR_LIT>' , '<STR_LIT:False>' , <EOL> '<STR_LIT>' , '<STR_LIT>' , <EOL> '<STR_LIT>' , '<STR_LIT:a>' , '<STR_LIT:b>' ] , <EOL> { '<STR_LIT:name>' : '<STR_LIT>' , <EOL> '<STR_LIT>' : '<STR_LIT:False>' , <EOL> '<STR_LIT:description>' : '<STR_LIT>' , <EOL> '<STR_LIT>' : [ '<STR_LIT:a>' , '<STR_LIT:b>' ] , } ) <EOL> def test_update_port_secgroup ( self ) : <EOL> resource = '<STR_LIT:port>' <EOL> cmd = port . UpdatePort ( test_cli20 . MyApp ( sys . stdout ) , None ) <EOL> myid = '<STR_LIT>' <EOL> args = [ '<STR_LIT>' , '<STR_LIT>' , myid ] <EOL> updatefields = { '<STR_LIT>' : [ '<STR_LIT>' ] } <EOL> self . _test_update_resource ( resource , cmd , myid , args , updatefields ) <EOL> def test_update_port_secgroups ( self ) : <EOL> resource = '<STR_LIT:port>' <EOL> cmd = port . UpdatePort ( test_cli20 . MyApp ( sys . stdout ) , None ) <EOL> myid = '<STR_LIT>' <EOL> args = [ '<STR_LIT>' , '<STR_LIT>' , <EOL> '<STR_LIT>' , '<STR_LIT>' , <EOL> myid ] <EOL> updatefields = { '<STR_LIT>' : [ '<STR_LIT>' , '<STR_LIT>' ] } <EOL> self . _test_update_resource ( resource , cmd , myid , args , updatefields ) <EOL> def test_update_port_extra_dhcp_opts ( self ) : <EOL> resource = '<STR_LIT:port>' <EOL> myid = '<STR_LIT>' <EOL> args = [ myid , <EOL> '<STR_LIT>' , <EOL> "<STR_LIT>" , <EOL> '<STR_LIT>' , <EOL> "<STR_LIT>" , <EOL> '<STR_LIT>' , <EOL> "<STR_LIT>" <EOL> ] <EOL> updatedfields = { '<STR_LIT>' : [ { '<STR_LIT>' : '<STR_LIT>' , <EOL> '<STR_LIT>' : '<STR_LIT>' } , <EOL> { '<STR_LIT>' : '<STR_LIT>' , <EOL> '<STR_LIT>' : '<STR_LIT>' } , <EOL> { '<STR_LIT>' : '<STR_LIT>' , <EOL> '<STR_LIT>' : '<STR_LIT>' } ] } <EOL> cmd = port . UpdatePort ( test_cli20 . MyApp ( sys . stdout ) , None ) <EOL> self . _test_update_resource ( resource , cmd , myid , args , updatedfields ) <EOL> def test_update_port_fixed_ip ( self ) : <EOL> resource = '<STR_LIT:port>' <EOL> cmd = port . UpdatePort ( test_cli20 . MyApp ( sys . stdout ) , None ) <EOL> myid = '<STR_LIT>' <EOL> subnet_id = '<STR_LIT>' <EOL> ip_addr = '<STR_LIT>' <EOL> args = [ myid , <EOL> '<STR_LIT>' , <EOL> "<STR_LIT>" % <EOL> { '<STR_LIT>' : subnet_id , <EOL> '<STR_LIT>' : ip_addr } ] <EOL> updated_fields = { "<STR_LIT>" : [ { '<STR_LIT>' : subnet_id , <EOL> '<STR_LIT>' : ip_addr } ] } <EOL> self . _test_update_resource ( resource , cmd , myid , args , updated_fields ) <EOL> def test_update_port_device_id_device_owner ( self ) : <EOL> resource = '<STR_LIT:port>' <EOL> cmd = port . UpdatePort ( test_cli20 . MyApp ( sys . stdout ) , None ) <EOL> myid = '<STR_LIT>' <EOL> args = [ '<STR_LIT>' , '<STR_LIT>' , '<STR_LIT>' , '<STR_LIT>' , myid ] <EOL> updatefields = { '<STR_LIT>' : '<STR_LIT>' , <EOL> '<STR_LIT>' : '<STR_LIT>' } <EOL> self . _test_update_resource ( resource , cmd , myid , args , updatefields ) <EOL> def test_update_port_extra_dhcp_opts_ip_version ( self ) : <EOL> resource = '<STR_LIT:port>' <EOL> myid = '<STR_LIT>' <EOL> args = [ myid , <EOL> '<STR_LIT>' , <EOL> "<STR_LIT>" , <EOL> '<STR_LIT>' , <EOL> "<STR_LIT>" , <EOL> '<STR_LIT>' , <EOL> "<STR_LIT>" <EOL> ] <EOL> updatedfields = { '<STR_LIT>' : [ { '<STR_LIT>' : '<STR_LIT>' , <EOL> '<STR_LIT>' : '<STR_LIT>' , <EOL> '<STR_LIT>' : '<STR_LIT:4>' } , <EOL> { '<STR_LIT>' : '<STR_LIT>' , <EOL> '<STR_LIT>' : '<STR_LIT>' , <EOL> '<STR_LIT>' : '<STR_LIT>' } , <EOL> { '<STR_LIT>' : '<STR_LIT>' , <EOL> '<STR_LIT>' : None , <EOL> '<STR_LIT>' : '<STR_LIT:4>' } ] } <EOL> cmd = port . UpdatePort ( test_cli20 . MyApp ( sys . stdout ) , None ) <EOL> self . _test_update_resource ( resource , cmd , myid , args , updatedfields ) <EOL> def test_update_port_with_qos_policy ( self ) : <EOL> resource = '<STR_LIT:port>' <EOL> cmd = port . UpdatePort ( test_cli20 . MyApp ( sys . stdout ) , None ) <EOL> self . _test_update_resource ( resource , cmd , '<STR_LIT>' , <EOL> [ '<STR_LIT>' , '<STR_LIT>' , '<STR_LIT>' ] , <EOL> { '<STR_LIT>' : '<STR_LIT>' , } ) <EOL> def test_update_port_with_no_qos_policy ( self ) : <EOL> resource = '<STR_LIT:port>' <EOL> cmd = port . UpdatePort ( test_cli20 . MyApp ( sys . stdout ) , None ) <EOL> self . _test_update_resource ( resource , cmd , '<STR_LIT>' , <EOL> [ '<STR_LIT>' , '<STR_LIT>' ] , <EOL> { '<STR_LIT>' : None , } ) <EOL> def test_update_port_with_dns_name ( self ) : <EOL> resource = '<STR_LIT:port>' <EOL> cmd = port . UpdatePort ( test_cli20 . MyApp ( sys . stdout ) , None ) <EOL> self . _test_update_resource ( resource , cmd , '<STR_LIT>' , <EOL> [ '<STR_LIT>' , '<STR_LIT>' , '<STR_LIT>' ] , <EOL> { '<STR_LIT>' : '<STR_LIT>' , } ) <EOL> def test_update_port_with_no_dns_name ( self ) : <EOL> resource = '<STR_LIT:port>' <EOL> cmd = port . UpdatePort ( test_cli20 . MyApp ( sys . stdout ) , None ) <EOL> self . _test_update_resource ( resource , cmd , '<STR_LIT>' , <EOL> [ '<STR_LIT>' , '<STR_LIT>' ] , <EOL> { '<STR_LIT>' : "<STR_LIT>" , } ) <EOL> def test_delete_extra_dhcp_opts_from_port ( self ) : <EOL> resource = '<STR_LIT:port>' <EOL> myid = '<STR_LIT>' <EOL> args = [ myid , <EOL> '<STR_LIT>' , <EOL> "<STR_LIT>" , <EOL> '<STR_LIT>' , <EOL> "<STR_LIT>" , <EOL> '<STR_LIT>' , <EOL> "<STR_LIT>" <EOL> ] <EOL> updatedfields = { '<STR_LIT>' : [ { '<STR_LIT>' : '<STR_LIT>' , <EOL> '<STR_LIT>' : None } , <EOL> { '<STR_LIT>' : '<STR_LIT>' , <EOL> '<STR_LIT>' : '<STR_LIT>' } , <EOL> { '<STR_LIT>' : '<STR_LIT>' , <EOL> '<STR_LIT>' : '<STR_LIT>' } ] } <EOL> cmd = port . UpdatePort ( test_cli20 . MyApp ( sys . stdout ) , None ) <EOL> self . _test_update_resource ( resource , cmd , myid , args , updatedfields ) <EOL> def test_update_port_security_group_off ( self ) : <EOL> resource = '<STR_LIT:port>' <EOL> cmd = port . UpdatePort ( test_cli20 . MyApp ( sys . stdout ) , None ) <EOL> self . _test_update_resource ( resource , cmd , '<STR_LIT>' , <EOL> [ '<STR_LIT>' , '<STR_LIT>' ] , <EOL> { '<STR_LIT>' : [ ] } ) <EOL> def test_update_port_allowed_address_pair_ipaddr ( self ) : <EOL> import sys <EOL> resource = '<STR_LIT:port>' <EOL> cmd = port . UpdatePort ( test_cli20 . MyApp ( sys . stdout ) , None ) <EOL> myid = '<STR_LIT>' <EOL> pairs = [ { '<STR_LIT>' : '<STR_LIT>' } , <EOL> { '<STR_LIT>' : '<STR_LIT>' } ] <EOL> args = [ myid , <EOL> '<STR_LIT>' , <EOL> '<STR_LIT>' , <EOL> '<STR_LIT>' , <EOL> '<STR_LIT>' ] <EOL> updatefields = { '<STR_LIT>' : pairs } <EOL> self . _test_update_resource ( resource , cmd , myid , args , updatefields ) <EOL> def test_update_port_allowed_address_pair ( self ) : <EOL> resource = '<STR_LIT:port>' <EOL> cmd = port . UpdatePort ( test_cli20 . MyApp ( sys . stdout ) , None ) <EOL> myid = '<STR_LIT>' <EOL> pairs = [ { '<STR_LIT>' : '<STR_LIT>' , <EOL> '<STR_LIT>' : '<STR_LIT>' } , <EOL> { '<STR_LIT>' : '<STR_LIT>' , <EOL> '<STR_LIT>' : '<STR_LIT>' } ] <EOL> args = [ myid , <EOL> '<STR_LIT>' , <EOL> '<STR_LIT>' , <EOL> '<STR_LIT>' , <EOL> '<STR_LIT>' ] <EOL> updatefields = { '<STR_LIT>' : pairs } <EOL> self . _test_update_resource ( resource , cmd , myid , args , updatefields ) <EOL> def test_update_port_allowed_address_pairs_off ( self ) : <EOL> resource = '<STR_LIT:port>' <EOL> cmd = port . UpdatePort ( test_cli20 . MyApp ( sys . stdout ) , None ) <EOL> self . _test_update_resource ( resource , cmd , '<STR_LIT>' , <EOL> [ '<STR_LIT>' , '<STR_LIT>' ] , <EOL> { '<STR_LIT>' : [ ] } ) <EOL> def test_show_port ( self ) : <EOL> resource = '<STR_LIT:port>' <EOL> cmd = port . ShowPort ( test_cli20 . MyApp ( sys . stdout ) , None ) <EOL> args = [ '<STR_LIT>' , '<STR_LIT:id>' , '<STR_LIT>' , '<STR_LIT:name>' , self . test_id ] <EOL> self . _test_show_resource ( resource , cmd , self . test_id , <EOL> args , [ '<STR_LIT:id>' , '<STR_LIT:name>' ] ) <EOL> def test_delete_port ( self ) : <EOL> resource = '<STR_LIT:port>' <EOL> cmd = port . DeletePort ( test_cli20 . MyApp ( sys . stdout ) , None ) <EOL> myid = '<STR_LIT>' <EOL> args = [ myid ] <EOL> self . _test_delete_resource ( resource , cmd , myid , args ) </s>
