neutron_tempest_plugin.scenario package¶
Subpackages¶
Submodules¶
neutron_tempest_plugin.scenario.base module¶
- class neutron_tempest_plugin.scenario.base.BaseAdminTempestTestCase(*args, **kwargs)¶
- class neutron_tempest_plugin.scenario.base.BaseTempestTestCase(*args, **kwargs)¶
Bases:
BaseNetworkTest
- neutron_tempest_plugin.scenario.base.get_ncat_client_cmd(ip_address, port, protocol, ssh_client=None)¶
- neutron_tempest_plugin.scenario.base.get_ncat_server_cmd(port, protocol, msg=None)¶
- neutron_tempest_plugin.scenario.base.get_ncat_version(ssh_client=None)¶
neutron_tempest_plugin.scenario.constants module¶
neutron_tempest_plugin.scenario.exceptions module¶
- exception neutron_tempest_plugin.scenario.exceptions.ConnectionTimeoutException(*args, **kwargs)¶
Bases:
TempestException
- message = 'Timeout connecting to %(host)s port %(port)d'¶
- exception neutron_tempest_plugin.scenario.exceptions.FileCreationFailedException(*args, **kwargs)¶
Bases:
TempestException
- message = 'File %(file)s has not been created or has the wrong size'¶
neutron_tempest_plugin.scenario.test_basic module¶
- class neutron_tempest_plugin.scenario.test_basic.NetworkBasicTest(*args, **kwargs)¶
Bases:
BaseTempestTestCase
- test_basic_instance()¶
Test idempotent id: de07fe0a-e955-449e-b48b-8641c14cd52e
- test_ping_global_ip_from_vm_with_fip()¶
Test idempotent id: 49609189-3a0e-43c7-832e-a7e114aad1c9
neutron_tempest_plugin.scenario.test_connectivity module¶
- class neutron_tempest_plugin.scenario.test_connectivity.NetworkConnectivityTest(*args, **kwargs)¶
Bases:
BaseTempestTestCase
- test_connectivity_dvr_and_no_dvr_routers_in_same_subnet()¶
Test idempotent id: 69d3650a-5c32-40bc-ae56-5c4c849ddd37
This test case tests connectivity between vm and 2 routers.
Subnet is connected to dvr and non-dvr routers in the same time, test ensures that connectivity from VM to both routers is working.
Test scenario: (NOTE: 10.1.0.0/24 private CIDR is used as an example)
+----------------+ +------------+ | Non-dvr router | | DVR router | | | | | | 10.1.0.1 | | 10.1.0.x | +-------+--------+ +-----+------+ | | | 10.1.0.0/24 | +----------------+----------------+ | +-+-+ |VM | +---+
where: 10.1.0.1 - is subnet’s gateway IP address, 10.1.0.x - is any other IP address taken from subnet’s range
Test ensures that both 10.1.0.1 and 10.1.0.x IP addresses are reachable from VM.
- test_connectivity_router_east_west_traffic()¶
Test idempotent id: b72c3b77-3396-4144-b05d-9cd3c0099893
This case is intended to test router east west taffic
The case can be used in various scenarios: legacy/distributed router, same/different host.
- test_connectivity_through_2_routers()¶
Test idempotent id: 8944b90d-1766-4669-bd8a-672b5d106bb7
neutron_tempest_plugin.scenario.test_dhcp module¶
- class neutron_tempest_plugin.scenario.test_dhcp.DHCPPortUpdateTest(*args, **kwargs)¶
Bases:
BaseTempestTestCase
- test_modify_dhcp_port_ip_address()¶
Test idempotent id: 8171cc68-9dbb-46ca-b065-17b5b2e26094
Test Scenario
Create a network and a subnet with DHCP enabled
Modify the default IP address from the subnet DHCP port
Create a server in this network and check ssh connectivity
For the step 3), the server needs to obtain ssh keys from the metadata
Related bug: LP#1942794
- class neutron_tempest_plugin.scenario.test_dhcp.DHCPTest(*args, **kwargs)¶
Bases:
BaseTempestTestCase
- test_extra_dhcp_opts()¶
Test idempotent id: 58f7c094-1980-4e03-b0d3-6c4dd27217b1
This test case tests DHCP extra options configured for Neutron port.
Test is checking just extra option “15” which is domain-name according to the RFC 2132: https://tools.ietf.org/html/rfc2132#section-5.3
To test that option, there is spawned VM connected to the port with configured extra_dhcp_opts and test asserts that search domain name is configured inside VM in /etc/resolv.conf file
neutron_tempest_plugin.scenario.test_dns_integration module¶
- class neutron_tempest_plugin.scenario.test_dns_integration.BaseDNSIntegrationTests(*args, **kwargs)¶
Bases:
BaseTempestTestCase
,object
- class neutron_tempest_plugin.scenario.test_dns_integration.DNSIntegrationAdminTests(*args, **kwargs)¶
Bases:
BaseDNSIntegrationTests
,BaseAdminNetworkTest
- test_fip_admin_delete()¶
Test idempotent id: d44cd5b8-ac67-4965-96ff-cb77ab6aea8b
- test_port_on_special_network()¶
Test idempotent id: fa6477ce-a12b-41da-b671-5a3bbdafab07
- class neutron_tempest_plugin.scenario.test_dns_integration.DNSIntegrationDomainPerProjectTests(*args, **kwargs)¶
Bases:
BaseDNSIntegrationTests
- test_fip_admin_delete()¶
Test idempotent id: ac89db9b-5ca4-43bd-85ba-40fbeb47e208
- test_port_with_dns_name()¶
Test idempotent id: 43a67509-3161-4125-8f2c-0d4a67599721
- class neutron_tempest_plugin.scenario.test_dns_integration.DNSIntegrationExtraTests(*args, **kwargs)¶
Bases:
BaseDNSIntegrationTests
- test_port_with_publishing_subnet()¶
Test idempotent id: e10e0e5d-69ac-4172-b39f-27ab344b7f99
- class neutron_tempest_plugin.scenario.test_dns_integration.DNSIntegrationTests(*args, **kwargs)¶
Bases:
BaseDNSIntegrationTests
- test_fip()¶
Test idempotent id: a8f2fade-8d5c-40f9-80f0-3de4b8d91985
- test_server_with_fip()¶
Test idempotent id: 850ee378-4b5a-4f71-960e-0e7b12e03a34
neutron_tempest_plugin.scenario.test_dvr module¶
- class neutron_tempest_plugin.scenario.test_dvr.NetworkDvrTest(*args, **kwargs)¶
Bases:
BaseTempestTestCase
,NetworkTestMixin
- test_vm_reachable_through_compute()¶
Test idempotent id: 3d73ec1a-2ec6-45a9-b0f8-04a283d9d344
Check that the VM is reachable through compute node.
The test is done by putting the SNAT port down on controller node.
- class neutron_tempest_plugin.scenario.test_dvr.NetworkTestMixin¶
Bases:
object
neutron_tempest_plugin.scenario.test_fip64 module¶
- class neutron_tempest_plugin.scenario.test_fip64.Fip64(*args, **kwargs)¶
Bases:
BaseTempestTestCase
- test_fip64()¶
Test idempotent id: 63f7da91-c7dd-449b-b50b-1c56853ce0ef
neutron_tempest_plugin.scenario.test_floatingip module¶
- class neutron_tempest_plugin.scenario.test_floatingip.DefaultSnatToExternal(*args, **kwargs)¶
Bases:
FloatingIpTestCasesMixin
,BaseTempestTestCase
- test_nested_snat_external_ip()¶
Test idempotent id: b911b124-b6cb-449d-83d9-b34f3665741d
- test_snat_external_ip()¶
Test idempotent id: 3d73ea1a-27c6-45a9-b0f8-04a283d9d764
Check connectivity to an external IP
- class neutron_tempest_plugin.scenario.test_floatingip.FloatingIPPortDetailsTest(*args, **kwargs)¶
Bases:
FloatingIpTestCasesMixin
,BaseTempestTestCase
- test_floatingip_port_details()¶
Test idempotent id: a663aeee-dd81-492b-a207-354fd6284dbe
Tests the following:
Create a port with floating ip in Neutron.
Create two servers in Nova.
Attach the port to the server.
Detach the port from the server.
Attach the port to the second server.
Detach the port from the second server.
- class neutron_tempest_plugin.scenario.test_floatingip.FloatingIPQosTest(*args, **kwargs)¶
Bases:
FloatingIpTestCasesMixin
,QoSTestMixin
,BaseTempestTestCase
- test_qos()¶
Test idempotent id: 5eb48aea-eaba-4c20-8a6f-7740070a0aa3
Test floating IP is binding to a QoS policy with
ingress and egress bandwidth limit rules. And it applied correctly by sending a file from the instance to the test node. Then calculating the bandwidth every ~1 sec by the number of bits received / elapsed time.
- class neutron_tempest_plugin.scenario.test_floatingip.FloatingIpMultipleRoutersTest(*args, **kwargs)¶
Bases:
BaseTempestTestCase
- test_reuse_ip_address_with_other_fip_on_other_router()¶
Test idempotent id: b0382ab3-3c86-4415-84e3-649a8b040dab
Reuse IP address by another floating IP on another router
- Scenario:
Create and connect a router to the external network.
Create and connect an internal network to the router.
Create and connect 2 VMs to the internal network.
Create FIPs in the external network for the VMs.
Make sure that VM1 can ping VM2 FIP address.
Create and connect one more router to the external network.
Create and connect an internal network to the second router.
Create and connect a VM (VM3) to the internal network of the second router.
Delete VM2 FIP but save IP address that it used. The FIP is deleted just before the creation of the new IP to “reserve” the IP address associated (see LP#1880976).
Create a FIP for the VM3 in the external network with the same IP address that was used for VM2.
Make sure that now VM1 is able to reach VM3 using the FIP.
Note, the scenario passes only in case corresponding ARP update was sent to the external network when reusing same IP address for another FIP.
- class neutron_tempest_plugin.scenario.test_floatingip.FloatingIpSameNetwork(*args, **kwargs)¶
Bases:
FloatingIpTestCasesMixin
,BaseTempestTestCase
- test_east_west_1(src_has_fip, dest_has_fip)¶
Test idempotent id: 05c4e3b3-7319-4052-90ad-e8916436c23b
- test_east_west_2(src_has_fip, dest_has_fip)¶
Test idempotent id: 05c4e3b3-7319-4052-90ad-e8916436c23b
- test_east_west_3(src_has_fip, dest_has_fip)¶
Test idempotent id: 05c4e3b3-7319-4052-90ad-e8916436c23b
- test_east_west_4(src_has_fip, dest_has_fip)¶
Test idempotent id: 05c4e3b3-7319-4052-90ad-e8916436c23b
- class neutron_tempest_plugin.scenario.test_floatingip.FloatingIpSeparateNetwork(*args, **kwargs)¶
Bases:
FloatingIpTestCasesMixin
,BaseTempestTestCase
- test_east_west_1(src_has_fip, dest_has_fip)¶
Test idempotent id: f18f0090-3289-4783-b956-a0f8ac511e8b
- test_east_west_2(src_has_fip, dest_has_fip)¶
Test idempotent id: f18f0090-3289-4783-b956-a0f8ac511e8b
- test_east_west_3(src_has_fip, dest_has_fip)¶
Test idempotent id: f18f0090-3289-4783-b956-a0f8ac511e8b
- test_east_west_4(src_has_fip, dest_has_fip)¶
Test idempotent id: f18f0090-3289-4783-b956-a0f8ac511e8b
- class neutron_tempest_plugin.scenario.test_floatingip.FloatingIpTestCasesMixin¶
Bases:
object
- class neutron_tempest_plugin.scenario.test_floatingip.TestFloatingIPUpdate(*args, **kwargs)¶
Bases:
FloatingIpTestCasesMixin
,BaseTempestTestCase
- test_floating_ip_update()¶
Test idempotent id: 1bdd849b-03dd-4b8f-994f-457cf8a36f93
Test updating FIP with another port.
The test creates two servers and attaches floating ip to first server. Then it checks server is accesible using the FIP. FIP is then associated with the second server and connectivity is checked again.
neutron_tempest_plugin.scenario.test_internal_dns module¶
- class neutron_tempest_plugin.scenario.test_internal_dns.InternalDNSBase(*args, **kwargs)¶
Bases:
BaseTempestTestCase
Base class of useful resources and functionalities for test class.
- class neutron_tempest_plugin.scenario.test_internal_dns.InternalDNSTest(*args, **kwargs)¶
Bases:
InternalDNSBase
Tests internal DNS capabilities.
- test_create_and_update_port_with_dns_name()¶
Test idempotent id: db5e612f-f17f-4974-b5f1-9fe89f4a6fc9
Test creation of port with correct internal dns-name (hostname).
- test_dns_domain_and_name()¶
Test idempotent id: 988347de-07af-471a-abfa-65aea9f452a6
Test the ability to ping a VM’s hostname from another VM.
Create two VMs on the same network, giving each a name
- SSH in to the first VM:
ping the other VM’s internal IP
ping the other VM’s hostname
neutron_tempest_plugin.scenario.test_ipv6 module¶
- class neutron_tempest_plugin.scenario.test_ipv6.IPv6Test(*args, **kwargs)¶
Bases:
BaseTempestTestCase
- test_ipv6_hotplug_dhcpv6stateless()¶
Test idempotent id: 9aaedbc4-986d-42d5-9177-3e721728e7e0
- test_ipv6_hotplug_slaac()¶
Test idempotent id: b13e5408-5250-4a42-8e46-6996ce613e91
- neutron_tempest_plugin.scenario.test_ipv6.configure_eth_connection_profile_NM(ssh)¶
Prepare a Network manager profile for ipv6 port
By default the NetworkManager uses IPv6 privacy format it isn’t supported by neutron then we create a ether profile with eui64 supported format
@param ssh: RemoteClient ssh instance to server
- neutron_tempest_plugin.scenario.test_ipv6.nmcli_command_exists(ssh)¶
- neutron_tempest_plugin.scenario.test_ipv6.sysconfig_network_scripts_dir_exists(ssh)¶
- neutron_tempest_plugin.scenario.test_ipv6.turn_nic6_on(ssh, ipv6_port, config_nic=True)¶
Turns the IPv6 vNIC on
Required because guest images usually set only the first vNIC on boot. Searches for the IPv6 vNIC’s MAC and brings it up. # NOTE(slaweq): on RHEL based OS ifcfg file for new interface is # needed to make IPv6 working on it, so if # /etc/sysconfig/network-scripts directory exists ifcfg-%(nic)s file # should be added in it
@param ssh: RemoteClient ssh instance to server @param ipv6_port: port from IPv6 network attached to the server
neutron_tempest_plugin.scenario.test_local_ip module¶
- class neutron_tempest_plugin.scenario.test_local_ip.LocalIPTest(*args, **kwargs)¶
Bases:
BaseTempestTestCase
- test_local_ip_connectivity()¶
Test idempotent id: 3aa4b288-011a-4aa2-9024-19ad2ce40bfd
neutron_tempest_plugin.scenario.test_mac_learning module¶
- class neutron_tempest_plugin.scenario.test_mac_learning.MacLearningTest(*args, **kwargs)¶
Bases:
BaseTempestTestCase
- test_mac_learning_vms_on_same_network()¶
Test idempotent id: 013686ac-23b1-23e4-8361-10b1c98a2861
Test mac learning works in a network.
The receiver server will receive all the sent packets. The non receiver should not receive any.
- neutron_tempest_plugin.scenario.test_mac_learning.get_receiver_script(result_file, packets_expected)¶
Script that listen icmp echos and write the output on result_file.
- neutron_tempest_plugin.scenario.test_mac_learning.get_sender_script(result_file, receiver_address, completed_message)¶
Script that sends packets to the receiver server.
neutron_tempest_plugin.scenario.test_metadata module¶
- class neutron_tempest_plugin.scenario.test_metadata.MetadataTest(*args, **kwargs)¶
Bases:
BaseTempestTestCase
Test metadata access over IPv6 tenant subnet.
Please note that there is metadata over IPv4 test coverage in tempest:
tempest.scenario.test_server_basic_ops .TestServerBasicOps.test_server_basic_ops
- test_metadata_ipv6_only_network()¶
Test idempotent id: 7542892a-d132-471c-addb-172dcf888ff6
- test_metadata_routed()¶
Test idempotent id: e680949a-f1cc-11ea-b49a-cba39bbbe5ad
- class neutron_tempest_plugin.scenario.test_metadata.Server(floating_ip, server, ssh_client)¶
Bases:
tuple
neutron_tempest_plugin.scenario.test_migration module¶
- class neutron_tempest_plugin.scenario.test_migration.NetworkMigrationFromDVR(*args, **kwargs)¶
Bases:
NetworkMigrationTestBase
- test_from_dvr_to_dvr_ha()¶
Test idempotent id: 25304a51-93a8-4cf3-9523-bce8b4eaecf8
- test_from_dvr_to_ha()¶
Test idempotent id: a00d5ad7-8509-4bb0-bdd2-7f1ee052d1cd
- test_from_dvr_to_legacy()¶
Test idempotent id: e5cac02c-248d-4aac-bd5e-9d47c5197307
- class neutron_tempest_plugin.scenario.test_migration.NetworkMigrationFromDVRHA(*args, **kwargs)¶
Bases:
NetworkMigrationTestBase
- test_from_dvr_ha_to_dvr()¶
Test idempotent id: d6bedff1-72be-4a9a-8ea2-dc037cd838e0
- test_from_dvr_ha_to_ha()¶
Test idempotent id: 55957267-4e84-4314-a2f7-7cd36a2df04b
- test_from_dvr_ha_to_legacy()¶
Test idempotent id: 1be9b2e2-379c-40a4-a269-6687b81df691
- class neutron_tempest_plugin.scenario.test_migration.NetworkMigrationFromHA(*args, **kwargs)¶
Bases:
NetworkMigrationTestBase
- test_from_ha_to_dvr()¶
Test idempotent id: 42260eea-5d56-4d30-b62a-a62694dfe4d5
- test_from_ha_to_dvr_ha()¶
Test idempotent id: e4149576-248b-43fa-9d0b-a5c2f51967ce
- test_from_ha_to_legacy()¶
Test idempotent id: b4e68ac0-3b76-4306-ae8a-51cf4d363b22
- class neutron_tempest_plugin.scenario.test_migration.NetworkMigrationFromLegacy(*args, **kwargs)¶
Bases:
NetworkMigrationTestBase
- test_from_legacy_to_dvr()¶
Test idempotent id: 23724222-483a-4129-bc15-7a9278f3828b
- test_from_legacy_to_dvr_ha()¶
Test idempotent id: fe169f2c-6ed3-4eb0-8afe-2d540c4b49e2
- test_from_legacy_to_ha()¶
Test idempotent id: 09d85102-994f-4ff9-bf3e-17051145ca12
- class neutron_tempest_plugin.scenario.test_migration.NetworkMigrationTestBase(*args, **kwargs)¶
Bases:
BaseTempestTestCase
,NetworkTestMixin
neutron_tempest_plugin.scenario.test_mtu module¶
- class neutron_tempest_plugin.scenario.test_mtu.NetworkMtuBaseTest(*args, **kwargs)¶
Bases:
BaseTempestTestCase
- class neutron_tempest_plugin.scenario.test_mtu.NetworkMtuTest(*args, **kwargs)¶
Bases:
NetworkMtuBaseTest
- test_connectivity_min_max_mtu()¶
Test idempotent id: 3d73ec1a-2ec6-45a9-b0f8-04a273d9d344
- class neutron_tempest_plugin.scenario.test_mtu.NetworkWritableMtuTest(*args, **kwargs)¶
Bases:
NetworkMtuBaseTest
- test_connectivity_min_max_mtu()¶
Test idempotent id: bc470200-d8f4-4f07-b294-1b4cbaaa35b9
neutron_tempest_plugin.scenario.test_multicast module¶
- class neutron_tempest_plugin.scenario.test_multicast.BaseMulticastTest¶
Bases:
object
- test_multicast_between_vms_on_same_network()¶
Test idempotent id: 113486fc-24c9-4be4-8361-03b1c9892867
Test multicast messaging between two servers on the same network
[Sender server] -> (Multicast network) -> [Receiver server]
- class neutron_tempest_plugin.scenario.test_multicast.MulticastTestIPv4(*args, **kwargs)¶
Bases:
BaseMulticastTest
,BaseTempestTestCase
- neutron_tempest_plugin.scenario.test_multicast.get_receiver_script(group, port, hello_message, ack_message, result_file)¶
- neutron_tempest_plugin.scenario.test_multicast.get_sender_script(group, port, message, result_file)¶
- neutron_tempest_plugin.scenario.test_multicast.get_unregistered_script(interface, group, result_file)¶
neutron_tempest_plugin.scenario.test_multiple_gws module¶
- class neutron_tempest_plugin.scenario.test_multiple_gws.BFDContainer(name: str, image: FRROCIImage | None = None)¶
Bases:
FRRContainer
- class neutron_tempest_plugin.scenario.test_multiple_gws.FRRContainer(name: str, image: FRROCIImage)¶
Bases:
Container
- class neutron_tempest_plugin.scenario.test_multiple_gws.FRROCIImage(daemons: Tuple[str], baseimage: str | None = None, use_existing: bool = False)¶
Bases:
DockerImage
neutron_tempest_plugin.scenario.test_port_forwardings module¶
- class neutron_tempest_plugin.scenario.test_port_forwardings.PortForwardingTestJSON(*args, **kwargs)¶
Bases:
BaseTempestTestCase
- test_port_forwarding_editing_and_deleting_tcp_rule()¶
Test idempotent id: aa19d46c-a4a6-11ea-bb37-0242ac130002
- test_port_forwarding_editing_and_deleting_udp_rule()¶
Test idempotent id: 6d05b1b2-6109-4c30-b402-1503f4634acb
- test_port_forwarding_to_2_fixed_ips()¶
Test idempotent id: 5971881d-06a0-459e-b636-ce5d1929e2d4
- test_port_forwarding_to_2_servers()¶
Test idempotent id: ab40fc48-ca8d-41a0-b2a3-f6679c847bfe
neutron_tempest_plugin.scenario.test_ports module¶
- class neutron_tempest_plugin.scenario.test_ports.PortsTest(*args, **kwargs)¶
Bases:
BaseTempestTestCase
- test_port_with_fixed_ip()¶
Test idempotent id: 62e32802-1d21-11eb-b322-74e5f9e2a801
Test scenario:
Get the last IP from the range of Subnet “Allocation pool”
Create Port with fixed_ip resolved in #1
Create a VM using updated Port in #2 and add Floating IP
Check SSH access to VM
- test_previously_used_port()¶
Test idempotent id: 5500797e-b8c2-4e07-a5e0-89fa4e814965
neutron_tempest_plugin.scenario.test_portsecurity module¶
- class neutron_tempest_plugin.scenario.test_portsecurity.PortSecurityTest(*args, **kwargs)¶
Bases:
BaseTempestTestCase
- test_port_security_removed_added_stateful_sg()¶
Test idempotent id: 61ab176e-d48b-42b7-b38a-1ba571ecc033
- test_port_security_removed_added_stateless_sg()¶
Test idempotent id: 2f4005e1-cee1-40e5-adbd-b3e3cf218065
neutron_tempest_plugin.scenario.test_qos module¶
- class neutron_tempest_plugin.scenario.test_qos.QoSTest(*args, **kwargs)¶
Bases:
QoSTestMixin
,BaseTempestTestCase
- test_attach_previously_used_port_to_new_instance()¶
Test idempotent id: 66e5673e-0522-11ea-8d71-362b9e155667
The test spawns new instance using port with QoS policy.
Ports with attached QoS policy could be used multiple times. The policy rules have to be enforced on the new machines.
- test_create_instance_using_network_with_existing_policy()¶
Test idempotent id: 4eee64da-5646-11ea-82b4-0242ac130003
- test_qos_basic_and_update()¶
Test idempotent id: 00682a0c-b72e-11e8-b81e-8c16450ea513
This test covers following scenarios:
1) Create a QoS policy associated with the network. Expected result: BW is limited according the values set in QoS policy rule.
2) Update QoS policy associated with the network. Expected result: BW is limited according the new values set in QoS policy rule.
3) Create a new QoS policy associated with the VM port. Expected result: BW is limited according the values set in new QoS policy rule. Note: Neutron port is prioritized higher than Network, means that: “Neutron Port Priority” is also covered.
4) Update QoS policy associated with the VM port. Expected result: BW is limited according the new values set in QoS policy rule.
- class neutron_tempest_plugin.scenario.test_qos.QoSTestMixin¶
Bases:
object
neutron_tempest_plugin.scenario.test_security_groups module¶
- class neutron_tempest_plugin.scenario.test_security_groups.BaseNetworkSecGroupTest(*args, **kwargs)¶
Bases:
BaseTempestTestCase
- class neutron_tempest_plugin.scenario.test_security_groups.StatefulNetworkSecGroupTest(*args, **kwargs)¶
Bases:
BaseNetworkSecGroupTest
- test_connectivity_between_vms_using_different_sec_groups()¶
Test idempotent id: 4a724164-bbc0-4029-a844-644ece66c026
- test_default_sec_grp_scenarios()¶
Test idempotent id: 3d73ec1a-2ec6-45a9-b0f8-04a283d9d764
- test_established_tcp_session_after_re_attachinging_sg()¶
Test idempotent id: 01f0ddca-b049-47eb-befd-82acb502c9ec
Test existing connection remain open after sg has been re-attached
Verifies that new packets can pass over the existing connection when the security group has been removed from the server and then added back
- test_intra_sg_isolation()¶
Test idempotent id: f07d0159-8f9e-4faa-87f5-a869ab0ad490
Test intra security group isolation
This test creates a security group that does not allow ingress packets from vms of the same security group. The purpose of this test is to verify that intra SG traffic is properly blocked, while traffic like metadata and DHCP remains working due to the allow-related behavior of the egress rules (added via default).
- test_ip_prefix()¶
Test idempotent id: 3d73ec1a-2ec6-45a9-b0f8-04a283d9d664
- test_ip_prefix_negative()¶
Test idempotent id: a01cd2ef-3cfc-4614-8aac-9d1333ea21dd
- test_multiple_ports_portrange_remote()¶
Test idempotent id: f07d0159-8f9e-4faa-87f5-a869ab0ad489
- test_multiple_ports_secgroup_inheritance()¶
Test idempotent id: f07d0159-8f9e-4faa-87f5-a869ab0ad488
- test_overlapping_sec_grp_rules()¶
Test idempotent id: cd66b826-d86c-4fb4-ab37-17c8391753cb
- test_protocol_number_rule()¶
Test idempotent id: 3d73ec1a-2ec6-45a9-b0f8-04a283d9d864
- test_remote_group()¶
Test idempotent id: 7ed39b86-006d-40fb-887a-ae46693dabc9
- test_remote_group_and_remote_address_group()¶
Test idempotent id: 678dd4c0-2953-4626-b89c-8e7e4110ec4b
- test_remove_sec_grp_from_active_vm()¶
Test idempotent id: 96dcd5ff-9d45-4e0d-bea0-0b438cbd388f
- test_two_sec_groups()¶
Test idempotent id: 3d73ec1a-2ec6-45a9-b0f8-04a283d9d964
- class neutron_tempest_plugin.scenario.test_security_groups.StatelessNetworkSecGroupIPv4Test(*args, **kwargs)¶
Bases:
BaseNetworkSecGroupTest
- test_connectivity_between_vms_using_different_sec_groups()¶
Test idempotent id: 7ede9ab5-a615-46c5-9dea-cf2aa1ea43cb
- test_default_sec_grp_scenarios()¶
Test idempotent id: 9e193e3f-56f2-4f4e-886c-988a147958ef
- test_fragmented_traffic_is_accepted()¶
Test idempotent id: 14c4af2c-8077-4756-a6e3-6bebd642ed92
- test_ip_prefix()¶
Test idempotent id: 07985496-58da-4c1f-a6ef-2fdd88128a81
- test_ip_prefix_negative()¶
Test idempotent id: 1ad469c4-0d8f-42ae-8ec3-46cc424565c4
- test_multiple_ports_portrange_remote()¶
Test idempotent id: 4043ca0a-eabb-4198-be53-3d3051cc0804
- test_multiple_ports_secgroup_inheritance()¶
Test idempotent id: 4f1eb6db-ae7f-4f26-b371-cbd8363f9b0b
- test_overlapping_sec_grp_rules()¶
Test idempotent id: bfe25138-ceac-4944-849a-b9b90aff100f
- test_packets_of_any_connection_state_can_reach_dest()¶
Test idempotent id: c3bb8073-97a2-4bea-a6fb-0a9d2e4df13f
- test_protocol_number_rule()¶
Test idempotent id: afae8654-a389-4887-b21d-7f07ec350177
- test_reattach_sg_with_changed_mode()¶
Test idempotent id: 8d4753cc-cd7a-48a0-8ece-e11efce2af10
- test_remote_group()¶
Test idempotent id: fa1e93bf-67c5-4590-9962-38ee1f43a46a
- test_remote_group_and_remote_address_group()¶
Test idempotent id: 9fae530d-2711-4c61-a4a5-8efe6e58ab14
- test_remove_sec_grp_from_active_vm()¶
Test idempotent id: e4340e47-39cd-49ed-967c-fc2c40b47c5a
- test_two_sec_groups()¶
Test idempotent id: b51cc0eb-8f9a-49e7-96ab-61cd31243b67
- class neutron_tempest_plugin.scenario.test_security_groups.StatelessSecGroupDualStackBase(*args, **kwargs)¶
Bases:
BaseNetworkSecGroupTest
- class neutron_tempest_plugin.scenario.test_security_groups.StatelessSecGroupDualStackDHCPv6StatelessTest(*args, **kwargs)¶
Bases:
StatelessSecGroupDualStackBase
- test_default_sec_grp_scenarios()¶
Test idempotent id: c61c127c-e08f-4ddf-87a3-58b3c86e5476
- class neutron_tempest_plugin.scenario.test_security_groups.StatelessSecGroupDualStackSlaacTest(*args, **kwargs)¶
Bases:
StatelessSecGroupDualStackBase
- test_default_sec_grp_scenarios()¶
Test idempotent id: e7d64384-ea6a-40aa-b454-854f0990153c
- neutron_tempest_plugin.scenario.test_security_groups.get_capture_script(interface, tcp_port, packet_types, result_file)¶
neutron_tempest_plugin.scenario.test_trunk module¶
- class neutron_tempest_plugin.scenario.test_trunk.ServerWithTrunkPort(port, subport, trunk, floating_ip, server, ssh_client)¶
Bases:
tuple
- class neutron_tempest_plugin.scenario.test_trunk.TrunkTest(*args, **kwargs)¶
Bases:
BaseTempestTestCase
- test_parent_port_connectivity_after_trunk_deleted_lb()¶
Test idempotent id: d61cbdf6-1896-491c-b4b4-871caf7fbffe
- test_subport_connectivity()¶
Test idempotent id: a8a02c9b-b453-49b5-89a2-cce7da66bbcb
- test_subport_connectivity_soft_reboot()¶
Test idempotent id: a8a02c9b-b453-49b5-89a2-cce7da6680fb
- test_trunk_subport_lifecycle()¶
Test idempotent id: bb13fe28-f152-4000-8131-37890a40c79e
Test trunk creation and subport transition to ACTIVE status.
This is a basic test for the trunk extension to ensure that we can create a trunk, attach it to a server, add/remove subports, while ensuring the status transitions as appropriate.
This test does not assert any dataplane behavior for the subports. It’s just a high-level check to ensure the agents claim to have wired the port correctly and that the trunk port itself maintains connectivity.
- test_trunk_vm_migration()¶
Test idempotent id: ecd7de30-1c90-4280-b97c-1bed776d5d07
Test connectivity after migration of the server with trunk
A successfully migrated server shows a VERIFY_RESIZE status that requires confirmation. Need to reconfigure VLAN interface on server side after migration is finished as the configuration doesn’t survive the reboot.
neutron_tempest_plugin.scenario.test_vlan_transparency module¶
- class neutron_tempest_plugin.scenario.test_vlan_transparency.BaseVlanTest(*args, **kwargs)¶
Bases:
BaseAdminTempestTestCase
Base class common for the tests for the “vlan_transparent” and “qinq”.
This base class covers common things for the tests for networks with enabled either qinq or vlan_transparent attributes. Those 2 attributes are functionally the same even from the end user’s point of view. The only difference between them is ethtype used for the outer VLAN tag but this can’t really be tested in the neutron-tempest-plugin tests.
- class neutron_tempest_plugin.scenario.test_vlan_transparency.VlanQinqTest(*args, **kwargs)¶
Bases:
BaseVlanTest
- test_vlan_transparent_allowed_address_pairs()¶
Test idempotent id: 6ca983cd-b1c5-4e2c-949e-4be8ffa22a9c
- test_vlan_transparent_port_sec_disabled()¶
Test idempotent id: ae78398e-9242-46b4-a5fc-227581821fca
- class neutron_tempest_plugin.scenario.test_vlan_transparency.VlanTransparencyTest(*args, **kwargs)¶
Bases:
BaseVlanTest
- test_vlan_transparent_allowed_address_pairs()¶
Test idempotent id: 2dd03b4f-9c20-4cda-8c6a-40fa453ec69a
- test_vlan_transparent_port_sec_disabled()¶
Test idempotent id: a2694e3a-6d4d-4a23-9fcc-c3ed3ef37b16