The midonet.neutron.tests.unit.test_midonet_plugin_ml2 Module

The midonet.neutron.tests.unit.test_midonet_plugin_ml2 Module

class midonet.neutron.tests.unit.test_midonet_plugin_ml2.MidonetPluginConf

Bases: object

Plugin configuration shared across the unit and functional tests.

plugin_name = ‘neutron.plugins.ml2.plugin.Ml2Plugin’
static setUp(test_case, parent_setup=None)

Perform additional configuration around the parent’s setUp.

class midonet.neutron.tests.unit.test_midonet_plugin_ml2.MidonetPluginML2TestCase(*args, **kwds)

Bases: neutron.tests.unit.db.test_db_base_plugin_v2.NeutronDbPluginV2TestCase

setUp(plugin=None, service_plugins=None, ext_mgr=None)
setup_parent(service_plugins=None, ext_mgr=None)
class midonet.neutron.tests.unit.test_midonet_plugin_ml2.TestMidonetAllowedAddressPair(*args, **kwds)

Bases: neutron.tests.unit.db.test_allowedaddresspairs_db.TestAllowedAddressPairs, midonet.neutron.tests.unit.test_midonet_plugin_ml2.MidonetPluginML2TestCase

test_create_address_gets_port_mac(*args, **kwargs)
test_create_duplicate_mac_ip(*args, **kwargs)
test_create_missing_ip_field(*args, **kwargs)
test_create_missing_mac_field(*args, **kwargs)
test_create_overlap_with_fixed_ip(*args, **kwargs)
test_create_port_allowed_address_pairs(*args, **kwargs)
test_create_port_allowed_address_pairs_bad_format(*args, **kwargs)
test_create_port_bad_ip(*args, **kwargs)
test_create_port_bad_mac(*args, **kwargs)
test_create_port_extra_args(*args, **kwargs)
test_create_port_remove_allowed_address_pairs_with_list(*args, **kwargs)
test_create_port_remove_allowed_address_pairs_with_none(*args, **kwargs)
test_create_port_security_false_allowed_address_pairs(*args, **kwargs)
test_create_port_security_true_allowed_address_pairs(*args, **kwargs)
test_create_port_with_unexpected_address_pairs_format(*args, **kwargs)
test_equal_to_max_allowed_address_pair(*args, **kwargs)
test_more_than_max_allowed_address_pair(*args, **kwargs)
test_update_add_address_pairs(*args, **kwargs)
test_update_add_address_pairs_with_unexpected_format(*args, **kwargs)
test_update_port_allowed_address_pairs_bad_format(*args, **kwargs)
test_update_port_security_off_address_pairs(*args, **kwargs)
test_update_with_none_and_own_mac_for_duplicate_ip(*args, **kwargs)
class midonet.neutron.tests.unit.test_midonet_plugin_ml2.TestMidonetExtGwMode(*args, **kwds)

Bases: neutron.tests.unit.extensions.test_l3_ext_gw_mode.ExtGwModeIntTestCase, midonet.neutron.tests.unit.test_midonet_plugin_ml2.MidonetPluginML2TestCase

test_router_create_show_ext_gwinfo_default(*args, **kwargs)
test_router_create_show_ext_gwinfo_with_snat_disabled(*args, **kwargs)
test_router_create_show_ext_gwinfo_with_snat_enabled(*args, **kwargs)
test_router_create_show_no_ext_gwinfo(*args, **kwargs)
test_router_create_with_gwinfo_invalid_ext_ip(*args, **kwargs)
test_router_gateway_set_fail_after_port_create(*args, **kwargs)
test_router_gateway_set_retry(*args, **kwargs)
test_router_update_ext_gwinfo_default(*args, **kwargs)
test_router_update_ext_gwinfo_with_invalid_snat_setting(*args, **kwargs)
test_router_update_ext_gwinfo_with_snat_disabled(*args, **kwargs)
test_router_update_ext_gwinfo_with_snat_enabled(*args, **kwargs)
class midonet.neutron.tests.unit.test_midonet_plugin_ml2.TestMidonetExtraDHCPOpts(*args, **kwds)

Bases: neutron.tests.unit.extensions.test_extra_dhcp_opt.TestExtraDhcpOpt, midonet.neutron.tests.unit.test_midonet_plugin_ml2.MidonetPluginML2TestCase

test_create_port_with_empty_router_extradhcpopts(*args, **kwargs)
test_create_port_with_extradhcpopts(*args, **kwargs)
test_create_port_with_extradhcpopts_ipv4_opt_version(*args, **kwargs)
test_create_port_with_extradhcpopts_ipv6_opt_version(*args, **kwargs)
test_create_port_with_none_extradhcpopts(*args, **kwargs)
test_update_port_adding_extradhcpopts(*args, **kwargs)
test_update_port_with_additional_extradhcpopt(*args, **kwargs)
test_update_port_with_blank_name_extradhcpopt(*args, **kwargs)
test_update_port_with_blank_router_extradhcpopt(*args, **kwargs)
test_update_port_with_blank_string_extradhcpopt(*args, **kwargs)
test_update_port_with_extradhcpopt_delete(*args, **kwargs)
test_update_port_with_extradhcpopts(*args, **kwargs)
test_update_port_with_extradhcpopts_add_another_ver_opt(*args, **kwargs)
test_update_port_with_extradhcpopts_ipv6_change_value(*args, **kwargs)
test_update_port_with_extradhcpopts_with_same(*args, **kwargs)
test_update_port_without_extradhcpopt_delete(*args, **kwargs)
class midonet.neutron.tests.unit.test_midonet_plugin_ml2.TestMidonetL3NatExtraRoute(*args, **kwds)

Bases: neutron.tests.unit.extensions.test_extraroute.ExtraRouteDBIntTestCase, midonet.neutron.tests.unit.test_midonet_plugin_ml2.MidonetPluginML2TestCase

test__notify_subnetpool_address_scope_update(*args, **kwargs)
test_add_router_interface_by_port_failure(*args, **kwargs)
test_create_floating_non_ext_network_returns_400(*args, **kwargs)
test_create_floatingip_invalid_fixed_ip_address_returns_400(*args, **kwargs)
test_create_floatingip_invalid_fixed_ipv6_address_returns_400(*args, **kwargs)
test_create_floatingip_invalid_floating_network_id_returns_400(*args, **kwargs)
test_create_floatingip_invalid_floating_port_id_returns_400(*args, **kwargs)
test_create_floatingip_ipv6_and_ipv4_network_creates_ipv4(*args, **kwargs)
test_create_floatingip_ipv6_only_network_returns_400(*args, **kwargs)
test_create_floatingip_no_ext_gateway_return_404(*args, **kwargs)
test_create_floatingip_no_public_subnet_returns_400(*args, **kwargs)
test_create_floatingip_non_admin_context_agent_notification(*args, **kwargs)
test_create_floatingip_with_assoc(*args, **kwargs)
test_create_floatingip_with_assoc_to_ipv4_and_ipv6_port(*args, **kwargs)
test_create_floatingip_with_assoc_to_ipv6_subnet(*args, **kwargs)
test_create_floatingip_with_duplicated_specific_ip(*args, **kwargs)
test_create_floatingip_with_multisubnet_id(*args, **kwargs)
test_create_floatingip_with_specific_ip(*args, **kwargs)
test_create_floatingip_with_specific_ip_non_admin(*args, **kwargs)
test_create_floatingip_with_specific_ip_out_of_allocation(*args, **kwargs)
test_create_floatingip_with_specific_ip_out_of_subnet(*args, **kwargs)
test_create_floatingip_with_subnet_id_non_admin(*args, **kwargs)
test_create_floatingip_with_wrong_subnet_id(*args, **kwargs)
test_create_floatingips_native_quotas(*args, **kwargs)
test_create_multiple_floatingips_same_fixed_ip_same_port(*args, **kwargs)

This tests that if multiple API requests arrive to create floating IPs on same external network to same port with one fixed ip, the latter API requests would be blocked at database side.

test_create_non_router_port_device_id_of_other_teants_router_update(*args, **kwargs)
test_create_router_gateway_fails(*args, **kwargs)

Force _update_router_gw_info failure and see the exception is propagated.

test_create_router_gateway_fails_nested(*args, **kwargs)
test_create_router_gateway_fails_nested_delete_router_failed(*args, **kwargs)
test_create_router_no_gateway_ip(*args, **kwargs)
test_create_router_port_with_device_id_of_other_teants_router(*args, **kwargs)
test_create_routers_native_quotas(*args, **kwargs)
test_delete_ext_net_with_disassociated_floating_ips(*args, **kwargs)
test_first_floatingip_associate_notification(*args, **kwargs)
test_floating_ip_direct_port_delete_returns_409(*args, **kwargs)
test_floating_port_status_not_applicable(*args, **kwargs)
test_floatingip_association_on_unowned_router(*args, **kwargs)
test_floatingip_crd_ops(*args, **kwargs)
test_floatingip_create_different_fixed_ip_same_port(*args, **kwargs)

This tests that it is possible to delete a port that has multiple floating ip addresses associated with it (each floating address associated with a unique fixed address).

test_floatingip_delete_router_intf_with_port_id_returns_409(*args, **kwargs)
test_floatingip_delete_router_intf_with_subnet_id_returns_409(*args, **kwargs)
test_floatingip_disassociate_notification(*args, **kwargs)
test_floatingip_list_with_pagination(*args, **kwargs)
test_floatingip_list_with_pagination_reverse(*args, **kwargs)
test_floatingip_list_with_port_id(*args, **kwargs)
test_floatingip_list_with_sort(*args, **kwargs)
test_floatingip_multi_external_one_internal(*args, **kwargs)
test_floatingip_port_delete(*args, **kwargs)
test_floatingip_same_external_and_internal(*args, **kwargs)
test_floatingip_update(*args, **kwargs)
test_floatingip_update_different_fixed_ip_same_port(*args, **kwargs)
test_floatingip_update_different_port_owner_as_admin(*args, **kwargs)
test_floatingip_update_different_router(*args, **kwargs)
test_floatingip_update_invalid_fixed_ip(*args, **kwargs)
test_floatingip_update_same_fixed_ip_same_port(*args, **kwargs)
test_floatingip_update_subnet_gateway_disabled(*args, **kwargs)

Attach a floating IP to an instance

Verify that the floating IP can be associated to a port whose subnet’s gateway ip is not connected to the external router, but the router has an ip in that subnet.

test_floatingip_update_to_same_port_id_twice(*args, **kwargs)
test_floatingip_via_router_interface_returns_201(*args, **kwargs)
test_floatingip_via_router_interface_returns_404(*args, **kwargs)
test_floatingip_with_assoc_fails(*args, **kwargs)
test_floatingip_with_invalid_create_port(*args, **kwargs)
test_janitor_clears_orphaned_floatingip_port(*args, **kwargs)
test_janitor_doesnt_delete_if_fixed_in_interim(*args, **kwargs)
test_janitor_updates_port_device_id(*args, **kwargs)
test_network_update_external(*args, **kwargs)
test_network_update_external_failure(*args, **kwargs)
test_nexthop_is_port_ip(*args, **kwargs)
test_no_destination_route(*args, **kwargs)
test_no_nexthop_route(*args, **kwargs)
test_none_destination(*args, **kwargs)
test_none_nexthop(*args, **kwargs)
test_route_clear_routes_with_None(*args, **kwargs)
test_route_update_with_external_route(*args, **kwargs)
test_route_update_with_multi_routes(*args, **kwargs)
test_route_update_with_one_route(*args, **kwargs)
test_route_update_with_route_via_another_tenant_subnet(*args, **kwargs)
test_router_add_and_remove_gateway(*args, **kwargs)
test_router_add_and_remove_gateway_tenant_ctx(*args, **kwargs)
test_router_add_gateway_dup_subnet1_returns_400(*args, **kwargs)
test_router_add_gateway_dup_subnet2_returns_400(*args, **kwargs)
test_router_add_gateway_invalid_network_returns_400(*args, **kwargs)
test_router_add_gateway_multiple_subnets_ipv6(*args, **kwargs)

Ensure external gateway set doesn’t add excess IPs on router gw

Setting the gateway of a router to an external network with more than one IPv4 and one IPv6 subnet should only add an address from the first IPv4 subnet, an address from the first IPv6-stateful subnet, and an address from each IPv6-stateless (SLAAC and DHCPv6-stateless) subnet

test_router_add_gateway_net_not_external_returns_400(*args, **kwargs)
test_router_add_gateway_no_subnet(*args, **kwargs)
test_router_add_gateway_no_subnet_forbidden(*args, **kwargs)
test_router_add_gateway_non_existent_network_returns_404(*args, **kwargs)
test_router_add_iface_ipv6_ext_ra_subnet_returns_400(*args, **kwargs)

Test router-interface-add for in-valid ipv6 subnets.

Verify that an appropriate error message is displayed when an IPv6 subnet configured to use an external_router for Router Advertisements (i.e., ipv6_ra_mode is None and ipv6_address_mode is not None) is attempted to associate with a Neutron Router.

test_router_add_interface_bad_values(*args, **kwargs)
test_router_add_interface_by_port_cidr_overlapped_with_gateway(*args, **kwargs)
test_router_add_interface_by_port_fails_nested(*args, **kwargs)
test_router_add_interface_cidr_overlapped_with_gateway(*args, **kwargs)
test_router_add_interface_delete_port_after_failure(*args, **kwargs)
test_router_add_interface_dup_port(*args, **kwargs)

This tests that if multiple routers add one port as their interfaces. Only the first router’s interface would be added to this port. All the later requests would return exceptions.

test_router_add_interface_dup_subnet1_returns_400(*args, **kwargs)
test_router_add_interface_dup_subnet2_returns_400(*args, **kwargs)
test_router_add_interface_empty_port_and_subnet_ids(*args, **kwargs)
test_router_add_interface_ipv6_port_existing_network_returns_400(*args, **kwargs)

Ensure unique IPv6 router ports per network id.

Adding a router port containing one or more IPv6 subnets with the same network id as an existing router port should fail. This is so there is no ambiguity regarding on which port to add an IPv6 subnet when executing router-interface-add with a subnet and no port.

test_router_add_interface_ipv6_subnet(*args, **kwargs)

Test router-interface-add for valid ipv6 subnets.

Verify the valid use-cases of an IPv6 subnet where we are allowed to associate to the Neutron Router are successful.

test_router_add_interface_ipv6_subnet_without_gateway_ip(*args, **kwargs)
test_router_add_interface_multiple_ipv4_subnet_port_returns_400(*args, **kwargs)

Test adding router port with multiple IPv4 subnets fails.

Multiple IPv4 subnets are not allowed on a single router port. Ensure that adding a port with multiple IPv4 subnets to a router fails.

test_router_add_interface_multiple_ipv4_subnets(*args, **kwargs)

Test router-interface-add for multiple ipv4 subnets.

Verify that adding multiple ipv4 subnets from the same network to a router places them all on different router interfaces.

test_router_add_interface_multiple_ipv6_subnet_port(*args, **kwargs)

A port with multiple IPv6 subnets can be added to a router

Create a port with multiple associated IPv6 subnets and attach it to a router. The action should succeed.

test_router_add_interface_multiple_ipv6_subnets_different_net(*args, **kwargs)

Test router-interface-add for ipv6 subnets on different networks.

Verify that adding multiple ipv6 subnets from different networks to a router places them on different router interfaces.

test_router_add_interface_multiple_ipv6_subnets_same_net(*args, **kwargs)
test_router_add_interface_no_data_returns_400(*args, **kwargs)
test_router_add_interface_overlapped_cidr_returns_400(*args, **kwargs)
test_router_add_interface_port(*args, **kwargs)
test_router_add_interface_port_bad_tenant_returns_404(*args, **kwargs)
test_router_add_interface_port_without_ips(*args, **kwargs)
test_router_add_interface_subnet(*args, **kwargs)
test_router_add_interface_subnet_with_bad_tenant_returns_404(*args, **kwargs)
test_router_add_interface_subnet_with_port_from_other_tenant(*args, **kwargs)
test_router_add_interface_with_both_ids_returns_400(*args, **kwargs)
test_router_clear_gateway_callback_failure_returns_409(*args, **kwargs)
test_router_concurrent_delete_upon_subnet_create(*args, **kwargs)
test_router_create(*args, **kwargs)
test_router_create_call_extensions(*args, **kwargs)
test_router_create_with_gwinfo(*args, **kwargs)
test_router_create_with_gwinfo_ext_ip(*args, **kwargs)
test_router_create_with_gwinfo_ext_ip_non_admin(*args, **kwargs)
test_router_create_with_gwinfo_ext_ip_subnet(*args, **kwargs)
test_router_delete(*args, **kwargs)
test_router_delete_dhcpv6_stateless_subnet_inuse_returns_409(*args, **kwargs)
test_router_delete_ipv6_slaac_subnet_inuse_returns_409(*args, **kwargs)
test_router_delete_race_with_interface_add(*args, **kwargs)
test_router_delete_subnet_inuse_returns_409(*args, **kwargs)
test_router_delete_with_floatingip_existed_returns_409(*args, **kwargs)
test_router_delete_with_port_existed_returns_409(*args, **kwargs)
test_router_interface_in_use_by_route(*args, **kwargs)
test_router_list(*args, **kwargs)
test_router_list_with_pagination(*args, **kwargs)
test_router_list_with_pagination_reverse(*args, **kwargs)
test_router_list_with_parameters(*args, **kwargs)
test_router_list_with_sort(*args, **kwargs)
test_router_remove_interface_callback_failure_returns_409(*args, **kwargs)
test_router_remove_interface_inuse_returns_409(*args, **kwargs)
test_router_remove_interface_nothing_returns_400(*args, **kwargs)
test_router_remove_interface_returns_200(*args, **kwargs)
test_router_remove_interface_with_both_ids_returns_200(*args, **kwargs)
test_router_remove_interface_wrong_port_returns_404(*args, **kwargs)
test_router_remove_interface_wrong_subnet_returns_400(*args, **kwargs)
test_router_remove_ipv6_subnet_from_interface(*args, **kwargs)
test_router_show(*args, **kwargs)
test_router_specify_id_backend(*args, **kwargs)
test_router_update(*args, **kwargs)
test_router_update_delete_routes(*args, **kwargs)
test_router_update_gateway(*args, **kwargs)
test_router_update_gateway_add_multiple_prefixes_ipv6(*args, **kwargs)
test_router_update_gateway_to_empty_with_existed_floatingip(*args, **kwargs)
test_router_update_gateway_upon_subnet_create_ipv6(*args, **kwargs)
test_router_update_gateway_upon_subnet_create_max_ips_ipv6(*args, **kwargs)
test_router_update_gateway_with_different_external_subnet(*args, **kwargs)
test_router_update_gateway_with_existed_floatingip(*args, **kwargs)
test_router_update_gateway_with_external_ip_used_by_gw(*args, **kwargs)
test_router_update_gateway_with_invalid_external_ip(*args, **kwargs)
test_router_update_gateway_with_invalid_external_subnet(*args, **kwargs)
test_router_update_on_external_port(*args, **kwargs)
test_router_update_with_dup_address(*args, **kwargs)
test_router_update_with_invalid_ip_address(*args, **kwargs)
test_router_update_with_invalid_nexthop_ip(*args, **kwargs)
test_router_update_with_nexthop_is_outside_port_subnet(*args, **kwargs)
test_router_update_with_too_many_routes(*args, **kwargs)
test_routes_update_for_multiple_routers(*args, **kwargs)
test_two_fips_one_port_invalid_return_409(*args, **kwargs)
test_update_floatingip_error_change_resource_status_to_error(*args, **kwargs)
test_update_port_device_id_to_different_tenants_router(*args, **kwargs)
test_update_router_error_change_resource_status_to_error(*args, **kwargs)
test_update_subnet_gateway_for_external_net(*args, **kwargs)

Test to make sure notification to routers occurs when the gateway ip address of a subnet of the external network is changed.

class midonet.neutron.tests.unit.test_midonet_plugin_ml2.TestMidonetNetworksML2(*args, **kwds)

Bases: midonet.neutron.tests.unit.test_midonet_plugin_ml2.MidonetPluginML2TestCase, neutron.tests.unit.db.test_db_base_plugin_v2.TestNetworksV2

test_create_network(*args, **kwargs)
test_create_networks_bulk_emulated(*args, **kwargs)
test_create_networks_bulk_emulated_plugin_failure(*args, **kwargs)
test_create_networks_bulk_native(*args, **kwargs)
test_create_networks_bulk_native_plugin_failure(*args, **kwargs)
test_create_networks_bulk_native_quotas(*args, **kwargs)
test_create_networks_bulk_tenants_and_quotas(*args, **kwargs)
test_create_networks_bulk_tenants_and_quotas_fail(*args, **kwargs)
test_create_networks_bulk_wrong_input(*args, **kwargs)
test_create_networks_native_quotas(*args, **kwargs)
test_create_public_network(*args, **kwargs)
test_create_public_network_no_admin_tenant(*args, **kwargs)
test_invalid_admin_status(*args, **kwargs)
test_list_networks(*args, **kwargs)
test_list_networks_with_fields(*args, **kwargs)
test_list_networks_with_pagination_emulated(*args, **kwargs)
test_list_networks_with_pagination_native(*args, **kwargs)
test_list_networks_with_pagination_reverse_emulated(*args, **kwargs)
test_list_networks_with_pagination_reverse_native(*args, **kwargs)
test_list_networks_with_parameters(*args, **kwargs)
test_list_networks_with_parameters_invalid_values(*args, **kwargs)
test_list_networks_with_sort_emulated(*args, **kwargs)
test_list_networks_with_sort_extended_attr_native_returns_400(*args, **kwargs)
test_list_networks_with_sort_native(*args, **kwargs)
test_list_networks_with_sort_remote_key_native_returns_400(*args, **kwargs)
test_list_networks_without_pk_in_fields_pagination_emulated(*args, **kwargs)
test_list_networks_without_pk_in_fields_pagination_native(*args, **kwargs)
test_list_shared_networks_with_non_admin_user(*args, **kwargs)
test_show_network(*args, **kwargs)
test_show_network_with_subnet(*args, **kwargs)
test_update_network(*args, **kwargs)
test_update_network_set_not_shared_multi_tenants2_returns_409(*args, **kwargs)
test_update_network_set_not_shared_multi_tenants_returns_409(*args, **kwargs)
test_update_network_set_not_shared_other_tenant_returns_409(*args, **kwargs)
test_update_network_set_not_shared_single_tenant(*args, **kwargs)
test_update_network_set_shared(*args, **kwargs)
test_update_network_set_shared_owner_returns_403(*args, **kwargs)
test_update_network_with_subnet_set_shared(*args, **kwargs)
test_update_shared_network_noadmin_returns_403(*args, **kwargs)
class midonet.neutron.tests.unit.test_midonet_plugin_ml2.TestMidonetPortBinding(*args, **kwds)

Bases: midonet.neutron.tests.unit.test_midonet_plugin_ml2.MidonetPluginML2TestCase, neutron.tests.unit._test_extension_portbindings.PortBindingsTestCase

HAS_PORT_FILTER = True
VIF_TYPE = ‘unbound’
port_with_binding_profile(*args, **kwds)
test_create_mido_portbinding(*args, **kwargs)
test_create_mido_portbinding_bad_interface(*args, **kwargs)
test_create_mido_portbinding_no_host_binding(*args, **kwargs)
test_create_mido_portbinding_no_interface(*args, **kwargs)
test_create_mido_portbinding_no_profile_specified(*args, **kwargs)
test_create_port_binding_profile_none(*args, **kwargs)
test_create_port_binding_profile_with_empty_dict(*args, **kwargs)
test_port_create_portinfo_non_admin(*args, **kwargs)
test_port_update_portinfo_non_admin(*args, **kwargs)
test_port_vif_details(*args, **kwargs)
test_ports_vif_details(*args, **kwargs)
test_show_mido_portbinding(*args, **kwargs)
test_update_mido_portbinding(*args, **kwargs)
test_update_mido_portbinding_bad_interface(*args, **kwargs)
test_update_mido_portbinding_no_host_binding(*args, **kwargs)
test_update_mido_portbinding_no_interface(*args, **kwargs)
test_update_mido_portbinding_no_profile_specified(*args, **kwargs)
test_update_mido_portbinding_unbind(*args, **kwargs)
test_update_mido_portbinding_unbind_already_unbound(*args, **kwargs)
test_update_port_binding_profile_none(*args, **kwargs)
test_update_port_binding_profile_with_empty_dict(*args, **kwargs)
class midonet.neutron.tests.unit.test_midonet_plugin_ml2.TestMidonetPortSecurity(*args, **kwds)

Bases: neutron.tests.unit.extensions.test_portsecurity.TestPortSecurity, midonet.neutron.tests.unit.test_midonet_plugin_ml2.MidonetPluginML2TestCase

test_create_network_with_portsecurity_false(*args, **kwargs)
test_create_network_with_portsecurity_mac(*args, **kwargs)
test_create_port_default_true(*args, **kwargs)
test_create_port_fails_with_secgroup_and_port_security_false(*args, **kwargs)
test_create_port_on_port_security_false_network(*args, **kwargs)
test_create_port_passing_true(*args, **kwargs)
test_create_port_security_off_shared_network(*args, **kwargs)
test_create_port_security_overrides_network_value(*args, **kwargs)
test_create_port_with_default_security_group(*args, **kwargs)
test_create_port_with_security_group_and_net_sec_false(*args, **kwargs)
test_create_port_without_security_group_and_net_sec_false(*args, **kwargs)
test_update_port_remove_port_security_security_group(*args, **kwargs)
test_update_port_remove_port_security_security_group_read(*args, **kwargs)
test_update_port_security_off_shared_network(*args, **kwargs)
test_update_port_security_off_with_security_group(*args, **kwargs)
test_updating_network_port_security(*args, **kwargs)
class midonet.neutron.tests.unit.test_midonet_plugin_ml2.TestMidonetPortsML2(*args, **kwds)

Bases: midonet.neutron.tests.unit.test_midonet_plugin_ml2.MidonetPluginML2TestCase, neutron.tests.unit.db.test_db_base_plugin_v2.TestPortsV2

test_bad_mac_format(*args, **kwargs)
test_create_port_None_values(*args, **kwargs)
test_create_port_anticipating_allocation(*args, **kwargs)
test_create_port_as_admin(*args, **kwargs)
test_create_port_bad_tenant(*args, **kwargs)
test_create_port_invalid_fixed_ip_address_v6_pd_slaac(*args, **kwargs)
test_create_port_json(*args, **kwargs)
test_create_port_public_network(*args, **kwargs)
test_create_port_public_network_with_invalid_ip_and_subnet_id(*args, **kwargs)
test_create_port_public_network_with_invalid_ip_no_subnet_id(*args, **kwargs)
test_create_port_public_network_with_ip(*args, **kwargs)
test_create_port_with_ipv6_dhcp_stateful_subnet_in_fixed_ips(*args, **kwargs)
test_create_port_with_ipv6_pd_subnet_in_fixed_ips(*args, **kwargs)
test_create_port_with_ipv6_slaac_subnet_in_fixed_ips(*args, **kwargs)
test_create_port_with_multiple_ipv4_and_ipv6_subnets(*args, **kwargs)

Test port create with multiple IPv4, IPv6 DHCP/SLAAC subnets.

test_create_port_with_too_many_fixed_ips(*args, **kwargs)
test_create_ports_bulk_emulated(*args, **kwargs)
test_create_ports_bulk_emulated_plugin_failure(*args, **kwargs)
test_create_ports_bulk_native(*args, **kwargs)
test_create_ports_bulk_native_plugin_failure(*args, **kwargs)
test_create_ports_bulk_native_quotas(*args, **kwargs)
test_create_ports_bulk_wrong_input(*args, **kwargs)
test_create_ports_native_quotas(*args, **kwargs)
test_create_router_port_ipv4_and_ipv6_slaac_no_fixed_ips(*args, **kwargs)
test_delete_network_if_port_exists(*args, **kwargs)
test_delete_network_port_exists_owned_by_network(*args, **kwargs)
test_delete_network_port_exists_owned_by_network_port_not_found(*args, **kwargs)

Tests that we continue to gracefully delete the network even if a neutron:dhcp-owned port was deleted concurrently.

test_delete_network_port_exists_owned_by_network_race(*args, **kwargs)
test_delete_port(*args, **kwargs)
test_delete_port_by_network_owner(*args, **kwargs)
test_delete_port_public_network(*args, **kwargs)
test_delete_port_with_ipv6_slaac_address(*args, **kwargs)

Test that a port with an IPv6 SLAAC address can be deleted.

test_delete_ports_by_device_id(*args, **kwargs)
test_delete_ports_by_device_id_second_call_failure(*args, **kwargs)
test_delete_ports_ignores_port_not_found(*args, **kwargs)
test_dhcp_port_ips_prefer_next_available_ip(*args, **kwargs)
test_duplicate_ips(*args, **kwargs)
test_duplicate_mac_generation(*args, **kwargs)
test_fixed_ip_invalid_ip(*args, **kwargs)
test_fixed_ip_invalid_subnet_id(*args, **kwargs)
test_get_ports_count(*args, **kwargs)
test_invalid_admin_state(*args, **kwargs)
test_invalid_ip(*args, **kwargs)
test_invalid_mac_address(*args, **kwargs)
test_ip_allocation_for_ipv6_2_subnet_slaac_mode(*args, **kwargs)
test_ip_allocation_for_ipv6_subnet_slaac_address_mode(*args, **kwargs)
test_is_mac_in_use(*args, **kwargs)
test_list_ports(*args, **kwargs)
test_list_ports_filtered_by_fixed_ip(*args, **kwargs)
test_list_ports_for_network_owner(*args, **kwargs)
test_list_ports_public_network(*args, **kwargs)
test_list_ports_with_pagination_emulated(*args, **kwargs)
test_list_ports_with_pagination_native(*args, **kwargs)
test_list_ports_with_pagination_reverse_emulated(*args, **kwargs)
test_list_ports_with_pagination_reverse_native(*args, **kwargs)
test_list_ports_with_sort_emulated(*args, **kwargs)
test_list_ports_with_sort_native(*args, **kwargs)
test_mac_generation(*args, **kwargs)
test_mac_generation_4octet(*args, **kwargs)
test_max_fixed_ips_exceeded(*args, **kwargs)
test_no_more_port_exception(*args, **kwargs)
test_overlapping_subnets(*args, **kwargs)
test_port_update_with_ipam_error(*args, **kwargs)
test_range_allocation(*args, **kwargs)
test_requested_duplicate_ip(*args, **kwargs)
test_requested_duplicate_mac(*args, **kwargs)
test_requested_fixed_ip_address_v6_slaac_router_iface(*args, **kwargs)
test_requested_invalid_fixed_ip_address_v6_slaac(*args, **kwargs)
test_requested_invalid_fixed_ips(*args, **kwargs)
test_requested_ips_only(*args, **kwargs)
test_requested_subnet_id(*args, **kwargs)
test_requested_subnet_id_not_on_network(*args, **kwargs)
test_requested_subnet_id_v4_and_v6(*args, **kwargs)
test_requested_subnet_id_v4_and_v6_slaac(*args, **kwargs)
test_requested_subnet_id_v6_slaac(*args, **kwargs)
test_show_port(*args, **kwargs)
test_update_device_id_null(*args, **kwargs)
test_update_device_id_unchanged(*args, **kwargs)
test_update_dhcp_port_with_exceeding_fixed_ips(*args, **kwargs)
test_update_max_fixed_ips_exceeded(*args, **kwargs)
test_update_port(*args, **kwargs)
test_update_port_add_additional_ip(*args, **kwargs)

Test update of port with additional IP.

test_update_port_delete_ip(*args, **kwargs)
test_update_port_excluding_ipv6_slaac_subnet_from_fixed_ips(*args, **kwargs)

Test port update excluding IPv6 SLAAC subnet from fixed ips.

test_update_port_invalid_fixed_ip_address_v6_pd_slaac(*args, **kwargs)
test_update_port_invalid_fixed_ip_address_v6_slaac(*args, **kwargs)
test_update_port_invalid_subnet_v6_pd_slaac(*args, **kwargs)
test_update_port_mac(*args, **kwargs)
test_update_port_mac_bad_owner(*args, **kwargs)
test_update_port_mac_ip(*args, **kwargs)
test_update_port_mac_used(*args, **kwargs)
test_update_port_mac_v6_slaac(*args, **kwargs)
test_update_port_not_admin(*args, **kwargs)
test_update_port_update_ip(*args, **kwargs)

Test update of port IP.

Check that a configured IP 10.0.0.2 is replaced by 10.0.0.10.

test_update_port_update_ip_address_only(*args, **kwargs)
test_update_port_update_ips(*args, **kwargs)

Update IP and associate new IP on port.

Check a port update with the specified subnet_id’s. A IP address will be allocated for each subnet_id.

test_update_port_with_ipv6_slaac_subnet_in_fixed_ips(*args, **kwargs)

Test port update with an IPv6 SLAAC subnet in fixed IPs.

test_update_port_with_new_ipv6_slaac_subnet_in_fixed_ips(*args, **kwargs)

Test port update with a new IPv6 SLAAC subnet in fixed IPs.

test_update_port_with_stale_subnet(*args, **kwargs)
class midonet.neutron.tests.unit.test_midonet_plugin_ml2.TestMidonetProviderNet(*args, **kwds)

Bases: midonet.neutron.tests.unit.test_midonet_plugin_ml2.MidonetPluginML2TestCase

provider_net(*args, **kwds)
test_create_provider_net(*args, **kwargs)
test_create_provider_net_with_bogus_type(*args, **kwargs)
test_create_provider_net_with_flat(*args, **kwargs)
test_create_provider_net_with_geneve(*args, **kwargs)
test_create_provider_net_with_gre(*args, **kwargs)
test_create_provider_net_with_local(*args, **kwargs)
test_create_provider_net_with_midonet(*args, **kwargs)
test_create_provider_net_with_vlan(*args, **kwargs)
test_create_provider_net_with_vxlan(*args, **kwargs)
test_create_provider_net_without_type(*args, **kwargs)
test_delete_provider_net(*args, **kwargs)
test_list_provider_nets(*args, **kwargs)
test_list_provider_nets_filtered_by_invalid_type(*args, **kwargs)
test_show_provider_net(*args, **kwargs)
test_update_provider_net_unsupported(*args, **kwargs)
class midonet.neutron.tests.unit.test_midonet_plugin_ml2.TestMidonetRouterML2(*args, **kwds)

Bases: midonet.neutron.tests.unit.test_midonet_plugin_ml2.MidonetPluginML2TestCase, neutron.tests.unit.extensions.test_l3.L3NatTestCaseMixin

scenarios = [(‘midonet’, {‘expected_code_for_create’: 201, ‘expected_code’: 200, ‘network_type’: ‘midonet’}), (‘uplink’, {‘expected_code_for_create’: 201, ‘expected_code’: 200, ‘network_type’: ‘uplink’}), (‘local’, {‘expected_code_for_create’: 400, ‘expected_code’: 400, ‘network_type’: ‘local’})]
setUp()
test_router_gateway_incompatible_network_for_create(*args, **kwargs)
test_router_gateway_incompatible_network_for_update(*args, **kwargs)
test_router_interface_incompatible_network(*args, **kwargs)
class midonet.neutron.tests.unit.test_midonet_plugin_ml2.TestMidonetSecurityGroup(*args, **kwds)

Bases: neutron.tests.unit.extensions.test_securitygroup.TestSecurityGroups, midonet.neutron.tests.unit.test_midonet_plugin_ml2.MidonetPluginML2TestCase

test_check_default_security_group_description(*args, **kwargs)
test_create_default_security_group_check_case_insensitive(*args, **kwargs)
test_create_default_security_group_fail(*args, **kwargs)
test_create_delete_security_group_port_in_use(*args, **kwargs)
test_create_port_with_bad_security_group(*args, **kwargs)
test_create_port_with_invalid_type_in_security_groups_param(*args, **kwargs)
test_create_port_with_multiple_security_groups(*args, **kwargs)
test_create_port_with_no_security_groups(*args, **kwargs)
test_create_port_with_non_uuid(*args, **kwargs)
test_create_security_group(*args, **kwargs)
test_create_security_group_bulk(*args, **kwargs)
test_create_security_group_rule_allow_all_ipv4(*args, **kwargs)
test_create_security_group_rule_allow_all_ipv4_v6_bulk(*args, **kwargs)
test_create_security_group_rule_bad_remote_group_id(*args, **kwargs)
test_create_security_group_rule_bad_security_group_id(*args, **kwargs)
test_create_security_group_rule_bad_tenant(*args, **kwargs)
test_create_security_group_rule_bad_tenant_remote_group_id(*args, **kwargs)
test_create_security_group_rule_bad_tenant_security_group_rule(*args, **kwargs)
test_create_security_group_rule_bulk_emulated(*args, **kwargs)
test_create_security_group_rule_bulk_native(*args, **kwargs)
test_create_security_group_rule_case_insensitive(*args, **kwargs)
test_create_security_group_rule_different_security_group_ids(*args, **kwargs)
test_create_security_group_rule_duplicate_rule_db(*args, **kwargs)
test_create_security_group_rule_duplicate_rule_db_emulated(*args, **kwargs)
test_create_security_group_rule_duplicate_rule_in_post(*args, **kwargs)
test_create_security_group_rule_duplicate_rule_in_post_emulated(*args, **kwargs)
test_create_security_group_rule_duplicate_rules(*args, **kwargs)
test_create_security_group_rule_duplicate_rules_diff_desc(*args, **kwargs)
test_create_security_group_rule_duplicate_rules_proto_name_num(*args, **kwargs)
test_create_security_group_rule_duplicate_rules_proto_num_name(*args, **kwargs)
test_create_security_group_rule_ethertype_invalid_as_number(*args, **kwargs)
test_create_security_group_rule_ethertype_invalid_for_protocol(*args, **kwargs)
test_create_security_group_rule_group_id(*args, **kwargs)
test_create_security_group_rule_icmp_code_too_big(*args, **kwargs)
test_create_security_group_rule_icmp_type_too_big(*args, **kwargs)
test_create_security_group_rule_icmp_with_code_only(*args, **kwargs)
test_create_security_group_rule_icmp_with_type_and_code(*args, **kwargs)
test_create_security_group_rule_icmp_with_type_only(*args, **kwargs)
test_create_security_group_rule_icmpv6_legacy_protocol_name(*args, **kwargs)
test_create_security_group_rule_icmpv6_with_type_only(*args, **kwargs)
test_create_security_group_rule_invalid_ethertype_for_prefix(*args, **kwargs)
test_create_security_group_rule_invalid_ip_prefix(*args, **kwargs)
test_create_security_group_rule_min_port_greater_max(*args, **kwargs)
test_create_security_group_rule_port_range_max_only(*args, **kwargs)
test_create_security_group_rule_port_range_min_only(*args, **kwargs)
test_create_security_group_rule_ports_but_no_protocol(*args, **kwargs)
test_create_security_group_rule_protocol_as_number(*args, **kwargs)
test_create_security_group_rule_remote_ip_prefix(*args, **kwargs)
test_create_security_group_rule_tcp_protocol_as_number(*args, **kwargs)
test_create_security_group_rule_with_invalid_ethertype(*args, **kwargs)
test_create_security_group_rule_with_invalid_protocol(*args, **kwargs)
test_create_security_group_rule_with_invalid_tcp_or_udp_protocol(*args, **kwargs)
test_create_security_group_rule_with_specific_id(*args, **kwargs)
test_create_security_group_rule_with_unmasked_prefix(*args, **kwargs)
test_create_security_group_rules_native_quotas(*args, **kwargs)
test_create_security_group_source_group_ip_and_ip_prefix(*args, **kwargs)
test_create_security_group_with_boolean_type_name(*args, **kwargs)
test_create_security_group_with_max_name_length(*args, **kwargs)
test_create_security_group_with_too_long_name(*args, **kwargs)
test_create_security_groups_native_quotas(*args, **kwargs)
test_default_security_group(*args, **kwargs)
test_default_security_group_rules(*args, **kwargs)
test_delete_default_security_group_admin(*args, **kwargs)
test_delete_default_security_group_nonadmin(*args, **kwargs)
test_delete_security_group(*args, **kwargs)
test_get_security_group(*args, **kwargs)
test_get_security_group_on_port_from_wrong_tenant(*args, **kwargs)
test_list_ports_security_group(*args, **kwargs)
test_list_security_group_rules(*args, **kwargs)
test_list_security_group_rules_with_pagination(*args, **kwargs)
test_list_security_group_rules_with_pagination_reverse(*args, **kwargs)
test_list_security_group_rules_with_sort(*args, **kwargs)
test_list_security_groups(*args, **kwargs)
test_list_security_groups_with_pagination(*args, **kwargs)
test_list_security_groups_with_pagination_reverse(*args, **kwargs)
test_list_security_groups_with_sort(*args, **kwargs)
test_security_group_list_creates_default_security_group(*args, **kwargs)
test_security_group_port_create_creates_default_security_group(*args, **kwargs)
test_skip_duplicate_default_sg_error(*args, **kwargs)
test_update_default_security_group_name_fail(*args, **kwargs)
test_update_default_security_group_with_description(*args, **kwargs)
test_update_port_remove_security_group_empty_list(*args, **kwargs)
test_update_port_remove_security_group_none(*args, **kwargs)
test_update_port_with_invalid_type_in_security_groups_param(*args, **kwargs)
test_update_port_with_multiple_security_groups(*args, **kwargs)
test_update_port_with_security_group(*args, **kwargs)
test_update_security_group(*args, **kwargs)
test_update_security_group_name_to_default_fail(*args, **kwargs)
test_update_security_group_with_boolean_type_name(*args, **kwargs)
test_update_security_group_with_max_name_length(*args, **kwargs)
test_update_security_group_with_too_long_name(*args, **kwargs)
class midonet.neutron.tests.unit.test_midonet_plugin_ml2.TestMidonetSecurityGroupML2(*args, **kwds)

Bases: neutron.tests.unit.extensions.test_securitygroup.TestSecurityGroups, midonet.neutron.tests.unit.test_midonet_plugin_ml2.MidonetPluginML2TestCase

test_check_default_security_group_description(*args, **kwargs)
test_create_default_security_group_check_case_insensitive(*args, **kwargs)
test_create_default_security_group_fail(*args, **kwargs)
test_create_delete_security_group_port_in_use(*args, **kwargs)
test_create_port_with_bad_security_group(*args, **kwargs)
test_create_port_with_invalid_type_in_security_groups_param(*args, **kwargs)
test_create_port_with_multiple_security_groups(*args, **kwargs)
test_create_port_with_no_security_groups(*args, **kwargs)
test_create_port_with_non_uuid(*args, **kwargs)
test_create_security_group(*args, **kwargs)
test_create_security_group_bulk(*args, **kwargs)
test_create_security_group_rule_allow_all_ipv4(*args, **kwargs)
test_create_security_group_rule_allow_all_ipv4_v6_bulk(*args, **kwargs)
test_create_security_group_rule_bad_remote_group_id(*args, **kwargs)
test_create_security_group_rule_bad_security_group_id(*args, **kwargs)
test_create_security_group_rule_bad_tenant(*args, **kwargs)
test_create_security_group_rule_bad_tenant_remote_group_id(*args, **kwargs)
test_create_security_group_rule_bad_tenant_security_group_rule(*args, **kwargs)
test_create_security_group_rule_bulk_emulated(*args, **kwargs)
test_create_security_group_rule_bulk_native(*args, **kwargs)
test_create_security_group_rule_case_insensitive(*args, **kwargs)
test_create_security_group_rule_different_security_group_ids(*args, **kwargs)
test_create_security_group_rule_duplicate_rule_db(*args, **kwargs)
test_create_security_group_rule_duplicate_rule_db_emulated(*args, **kwargs)
test_create_security_group_rule_duplicate_rule_in_post(*args, **kwargs)
test_create_security_group_rule_duplicate_rule_in_post_emulated(*args, **kwargs)
test_create_security_group_rule_duplicate_rules(*args, **kwargs)
test_create_security_group_rule_duplicate_rules_diff_desc(*args, **kwargs)
test_create_security_group_rule_duplicate_rules_proto_name_num(*args, **kwargs)
test_create_security_group_rule_duplicate_rules_proto_num_name(*args, **kwargs)
test_create_security_group_rule_ethertype_invalid_as_number(*args, **kwargs)
test_create_security_group_rule_ethertype_invalid_for_protocol(*args, **kwargs)
test_create_security_group_rule_group_id(*args, **kwargs)
test_create_security_group_rule_icmp_code_too_big(*args, **kwargs)
test_create_security_group_rule_icmp_type_too_big(*args, **kwargs)
test_create_security_group_rule_icmp_with_code_only(*args, **kwargs)
test_create_security_group_rule_icmp_with_type_and_code(*args, **kwargs)
test_create_security_group_rule_icmp_with_type_only(*args, **kwargs)
test_create_security_group_rule_icmpv6_legacy_protocol_name(*args, **kwargs)
test_create_security_group_rule_icmpv6_with_type_only(*args, **kwargs)
test_create_security_group_rule_invalid_ethertype_for_prefix(*args, **kwargs)
test_create_security_group_rule_invalid_ip_prefix(*args, **kwargs)
test_create_security_group_rule_min_port_greater_max(*args, **kwargs)
test_create_security_group_rule_port_range_max_only(*args, **kwargs)
test_create_security_group_rule_port_range_min_only(*args, **kwargs)
test_create_security_group_rule_ports_but_no_protocol(*args, **kwargs)
test_create_security_group_rule_protocol_as_number(*args, **kwargs)
test_create_security_group_rule_remote_ip_prefix(*args, **kwargs)
test_create_security_group_rule_tcp_protocol_as_number(*args, **kwargs)
test_create_security_group_rule_with_invalid_ethertype(*args, **kwargs)
test_create_security_group_rule_with_invalid_protocol(*args, **kwargs)
test_create_security_group_rule_with_invalid_tcp_or_udp_protocol(*args, **kwargs)
test_create_security_group_rule_with_specific_id(*args, **kwargs)
test_create_security_group_rule_with_unmasked_prefix(*args, **kwargs)
test_create_security_group_rules_native_quotas(*args, **kwargs)
test_create_security_group_source_group_ip_and_ip_prefix(*args, **kwargs)
test_create_security_group_with_boolean_type_name(*args, **kwargs)
test_create_security_group_with_max_name_length(*args, **kwargs)
test_create_security_group_with_too_long_name(*args, **kwargs)
test_create_security_groups_native_quotas(*args, **kwargs)
test_default_security_group(*args, **kwargs)
test_default_security_group_rules(*args, **kwargs)
test_delete_default_security_group_admin(*args, **kwargs)
test_delete_default_security_group_nonadmin(*args, **kwargs)
test_delete_security_group(*args, **kwargs)
test_get_security_group(*args, **kwargs)
test_get_security_group_on_port_from_wrong_tenant(*args, **kwargs)
test_list_ports_security_group(*args, **kwargs)
test_list_security_group_rules(*args, **kwargs)
test_list_security_group_rules_with_pagination(*args, **kwargs)
test_list_security_group_rules_with_pagination_reverse(*args, **kwargs)
test_list_security_group_rules_with_sort(*args, **kwargs)
test_list_security_groups(*args, **kwargs)
test_list_security_groups_with_pagination(*args, **kwargs)
test_list_security_groups_with_pagination_reverse(*args, **kwargs)
test_list_security_groups_with_sort(*args, **kwargs)
test_security_group_list_creates_default_security_group(*args, **kwargs)
test_security_group_port_create_creates_default_security_group(*args, **kwargs)
test_skip_duplicate_default_sg_error(*args, **kwargs)
test_update_default_security_group_name_fail(*args, **kwargs)
test_update_default_security_group_with_description(*args, **kwargs)
test_update_port_remove_security_group_empty_list(*args, **kwargs)
test_update_port_remove_security_group_none(*args, **kwargs)
test_update_port_with_invalid_type_in_security_groups_param(*args, **kwargs)
test_update_port_with_multiple_security_groups(*args, **kwargs)
test_update_port_with_security_group(*args, **kwargs)
test_update_security_group(*args, **kwargs)
test_update_security_group_name_to_default_fail(*args, **kwargs)
test_update_security_group_with_boolean_type_name(*args, **kwargs)
test_update_security_group_with_max_name_length(*args, **kwargs)
test_update_security_group_with_too_long_name(*args, **kwargs)
class midonet.neutron.tests.unit.test_midonet_plugin_ml2.TestMidonetSubnetsML2(*args, **kwds)

Bases: midonet.neutron.tests.unit.test_midonet_plugin_ml2.MidonetPluginML2TestCase, neutron.tests.unit.db.test_db_base_plugin_v2.TestSubnetsV2

test_create_2_subnets_overlapping_cidr_allowed_returns_200(*args, **kwargs)
test_create_2_subnets_overlapping_cidr_not_allowed_returns_400(*args, **kwargs)
test_create_subnet(*args, **kwargs)
test_create_subnet_V6_slaac_big_prefix(*args, **kwargs)
test_create_subnet_as_admin(*args, **kwargs)
test_create_subnet_bad_V4_cidr(*args, **kwargs)
test_create_subnet_bad_V4_cidr_prefix_len(*args, **kwargs)
test_create_subnet_bad_V6_cidr(*args, **kwargs)
test_create_subnet_bad_boolean(*args, **kwargs)
test_create_subnet_bad_hostroutes(*args, **kwargs)
test_create_subnet_bad_ip_version(*args, **kwargs)
test_create_subnet_bad_ip_version_null(*args, **kwargs)
test_create_subnet_bad_nameserver(*args, **kwargs)
test_create_subnet_bad_pools(*args, **kwargs)
test_create_subnet_bad_tenant(*args, **kwargs)
test_create_subnet_bad_uuid(*args, **kwargs)
test_create_subnet_default_gw_conflict_allocation_pool_returns_409(*args, **kwargs)
test_create_subnet_defaults(*args, **kwargs)
test_create_subnet_dhcpv6_stateless_with_ip_already_allocated(*args, **kwargs)
test_create_subnet_dhcpv6_stateless_with_port_on_network(*args, **kwargs)
test_create_subnet_gateway_in_allocation_pool_returns_409(*args, **kwargs)
test_create_subnet_gw_bcast_returns_400(*args, **kwargs)
test_create_subnet_gw_is_broadcast_addr_returns_400(*args, **kwargs)
test_create_subnet_gw_is_nw_addr_returns_400(*args, **kwargs)
test_create_subnet_gw_of_network_returns_400(*args, **kwargs)
test_create_subnet_gw_outside_cidr_returns_201(*args, **kwargs)
test_create_subnet_gw_values(*args, **kwargs)
test_create_subnet_inconsistent_ipv4_cidrv6(*args, **kwargs)
test_create_subnet_inconsistent_ipv4_gatewayv6(*args, **kwargs)
test_create_subnet_inconsistent_ipv4_hostroute_dst_v6(*args, **kwargs)
test_create_subnet_inconsistent_ipv4_hostroute_np_v6(*args, **kwargs)
test_create_subnet_inconsistent_ipv6_cidrv4(*args, **kwargs)
test_create_subnet_inconsistent_ipv6_dns_v4(*args, **kwargs)
test_create_subnet_inconsistent_ipv6_gatewayv4(*args, **kwargs)
test_create_subnet_invalid_allocation_pool_returns_400(*args, **kwargs)
test_create_subnet_invalid_ipv6_address_mode(*args, **kwargs)
test_create_subnet_invalid_ipv6_ra_mode(*args, **kwargs)
test_create_subnet_ipv6_addr_modes(*args, **kwargs)
test_create_subnet_ipv6_address_mode_ip_version_4(*args, **kwargs)
test_create_subnet_ipv6_attributes_no_dhcp_enabled(*args, **kwargs)
test_create_subnet_ipv6_different_ra_and_addr_modes(*args, **kwargs)
test_create_subnet_ipv6_gw_is_nw_addr_returns_400(*args, **kwargs)
test_create_subnet_ipv6_gw_is_nw_end_addr_returns_201(*args, **kwargs)
test_create_subnet_ipv6_gw_values(*args, **kwargs)
test_create_subnet_ipv6_out_of_cidr_global(*args, **kwargs)
test_create_subnet_ipv6_out_of_cidr_lla(*args, **kwargs)
test_create_subnet_ipv6_pd_gw_values(*args, **kwargs)
test_create_subnet_ipv6_ra_mode_ip_version_4(*args, **kwargs)
test_create_subnet_ipv6_ra_modes(*args, **kwargs)
test_create_subnet_ipv6_same_ra_and_addr_modes(*args, **kwargs)
test_create_subnet_ipv6_slaac_with_db_reference_error(*args, **kwargs)
test_create_subnet_ipv6_slaac_with_dhcp_port_on_network(*args, **kwargs)
test_create_subnet_ipv6_slaac_with_ip_already_allocated(*args, **kwargs)
test_create_subnet_ipv6_slaac_with_port_not_found(*args, **kwargs)
test_create_subnet_ipv6_slaac_with_port_on_network(*args, **kwargs)
test_create_subnet_ipv6_slaac_with_router_intf_on_network(*args, **kwargs)
test_create_subnet_ipv6_slaac_with_snat_intf_on_network(*args, **kwargs)
test_create_subnet_multiple_allocation_pools(*args, **kwargs)
test_create_subnet_no_cidr_and_default_subnetpool(*args, **kwargs)

Expect subnet-create to keep semantic with default pools.

test_create_subnet_no_ip_version(*args, **kwargs)
test_create_subnet_nonzero_cidr(*args, **kwargs)
test_create_subnet_only_ip_version_v6_no_pool(*args, **kwargs)
test_create_subnet_out_of_range_allocation_pool_returns_400(*args, **kwargs)
test_create_subnet_overlapping_allocation_pools_returns_409(*args, **kwargs)
test_create_subnet_shared_returns_400(*args, **kwargs)
test_create_subnet_with_allocation_pool(*args, **kwargs)
test_create_subnet_with_cidr_and_default_subnetpool(*args, **kwargs)

Expect subnet-create to keep semantic with default pools.

test_create_subnet_with_dhcp_disabled(*args, **kwargs)
test_create_subnet_with_invalid_netmask_returns_400_ipv4(*args, **kwargs)
test_create_subnet_with_invalid_netmask_returns_400_ipv6(*args, **kwargs)
test_create_subnet_with_large_allocation_pool(*args, **kwargs)
test_create_subnet_with_network_different_tenant(*args, **kwargs)
test_create_subnet_with_none_gateway(*args, **kwargs)
test_create_subnet_with_none_gateway_allocation_pool(*args, **kwargs)
test_create_subnet_with_none_gateway_fully_allocated(*args, **kwargs)
test_create_subnet_with_one_dns(*args, **kwargs)
test_create_subnet_with_one_host_route(*args, **kwargs)
test_create_subnet_with_too_many_dns(*args, **kwargs)
test_create_subnet_with_too_many_routes(*args, **kwargs)
test_create_subnet_with_two_dns(*args, **kwargs)
test_create_subnet_with_two_host_routes(*args, **kwargs)
test_create_subnet_with_v6_allocation_pool(*args, **kwargs)
test_create_subnet_with_v6_pd_allocation_pool(*args, **kwargs)
test_create_subnets_bulk_emulated(*args, **kwargs)
test_create_subnets_bulk_emulated_plugin_failure(*args, **kwargs)
test_create_subnets_bulk_native(*args, **kwargs)
test_create_subnets_bulk_native_plugin_failure(*args, **kwargs)
test_create_subnets_bulk_native_quotas(*args, **kwargs)
test_create_subnets_native_quotas(*args, **kwargs)
test_create_two_subnets(*args, **kwargs)
test_create_two_subnets_same_cidr_returns_400(*args, **kwargs)
test_delete_network(*args, **kwargs)
test_delete_subnet(*args, **kwargs)
test_delete_subnet_dhcp_port_associated_with_other_subnets(*args, **kwargs)
test_delete_subnet_ipv6_slaac_port_exists(*args, **kwargs)

Test IPv6 SLAAC subnet delete when a port is still using subnet.

test_delete_subnet_ipv6_slaac_router_port_exists(*args, **kwargs)

Test IPv6 SLAAC subnet delete with a router port using the subnet

test_delete_subnet_port_exists_owned_by_network(*args, **kwargs)
test_delete_subnet_port_exists_owned_by_other(*args, **kwargs)
test_delete_subnet_with_callback(*args, **kwargs)
test_delete_subnet_with_dns(*args, **kwargs)
test_delete_subnet_with_dns_and_route(*args, **kwargs)
test_delete_subnet_with_other_subnet_on_network_still_in_use(*args, **kwargs)
test_delete_subnet_with_route(*args, **kwargs)
test_invalid_ip_address(*args, **kwargs)
test_invalid_ip_version(*args, **kwargs)
test_invalid_subnet(*args, **kwargs)
test_invalid_uuid(*args, **kwargs)
test_list_subnets(*args, **kwargs)
test_list_subnets_shared(*args, **kwargs)
test_list_subnets_with_pagination_emulated(*args, **kwargs)
test_list_subnets_with_pagination_native(*args, **kwargs)
test_list_subnets_with_pagination_reverse_emulated(*args, **kwargs)
test_list_subnets_with_pagination_reverse_native(*args, **kwargs)
test_list_subnets_with_parameter(*args, **kwargs)
test_list_subnets_with_sort_emulated(*args, **kwargs)
test_list_subnets_with_sort_native(*args, **kwargs)
test_port_prevents_network_deletion(*args, **kwargs)
test_port_prevents_subnet_deletion(*args, **kwargs)
test_show_subnet(*args, **kwargs)
test_subnet_lifecycle_dns_retains_order(*args, **kwargs)
test_subnet_update_ipv4_and_ipv6_pd_slaac_subnets(*args, **kwargs)
test_subnet_update_ipv4_and_ipv6_pd_v6stateless_subnets(*args, **kwargs)
test_subnet_usable_after_update(*args, **kwargs)
test_subnet_with_allocation_range(*args, **kwargs)
test_unsupported_subnet_cidr_loopback(*args, **kwargs)
test_unsupported_subnet_cidr_multicast(*args, **kwargs)
test_update_subnet(*args, **kwargs)
test_update_subnet_adding_additional_host_routes_and_dns(*args, **kwargs)
test_update_subnet_allocation_pools(*args, **kwargs)
test_update_subnet_allocation_pools_and_gateway_ip(*args, **kwargs)
test_update_subnet_allocation_pools_invalid_pool_for_cidr(*args, **kwargs)

Test update alloc pool to something outside subnet.cidr.

This makes sure that an erroneous allocation_pool specified in a subnet update (outside subnet cidr) will result in an error.

test_update_subnet_allocation_pools_invalid_returns_400(*args, **kwargs)
test_update_subnet_allocation_pools_over_gateway_ip_returns_409(*args, **kwargs)
test_update_subnet_allocation_pools_overlapping_returns_409(*args, **kwargs)
test_update_subnet_dns(*args, **kwargs)
test_update_subnet_dns_to_None(*args, **kwargs)
test_update_subnet_dns_with_too_many_entries(*args, **kwargs)
test_update_subnet_from_gw_to_new_gw(*args, **kwargs)
test_update_subnet_from_gw_to_no_gw(*args, **kwargs)
test_update_subnet_from_no_gw_to_no_gw(*args, **kwargs)
test_update_subnet_gateway_in_allocation_pool_returns_409(*args, **kwargs)
test_update_subnet_gw_ip_in_use_by_router_returns_409(*args, **kwargs)
test_update_subnet_gw_outside_cidr_returns_200(*args, **kwargs)
test_update_subnet_inconsistent_ipv4_dns_v6(*args, **kwargs)
test_update_subnet_inconsistent_ipv4_gatewayv6(*args, **kwargs)
test_update_subnet_inconsistent_ipv6_gatewayv4(*args, **kwargs)
test_update_subnet_inconsistent_ipv6_hostroute_dst_v4(*args, **kwargs)
test_update_subnet_inconsistent_ipv6_hostroute_np_v4(*args, **kwargs)
test_update_subnet_ipv6_address_mode_fails(*args, **kwargs)
test_update_subnet_ipv6_address_mode_ip_version_4(*args, **kwargs)
test_update_subnet_ipv6_attributes_fails(*args, **kwargs)
test_update_subnet_ipv6_cannot_disable_dhcp(*args, **kwargs)
test_update_subnet_ipv6_ra_mode_fails(*args, **kwargs)
test_update_subnet_ipv6_ra_mode_ip_version_4(*args, **kwargs)
test_update_subnet_no_gateway(*args, **kwargs)
test_update_subnet_route(*args, **kwargs)
test_update_subnet_route_to_None(*args, **kwargs)
test_update_subnet_route_with_too_many_entries(*args, **kwargs)
test_update_subnet_shared_returns_400(*args, **kwargs)
test_validate_subnet_dns_nameservers_exhausted(*args, **kwargs)
test_validate_subnet_host_routes_exhausted(*args, **kwargs)
Creative Commons Attribution 3.0 License

Except where otherwise noted, this document is licensed under Creative Commons Attribution 3.0 License. See all OpenStack Legal Documents.