Update test_port_list_filter_by_ip pass conditions

This patchset updates the pass assertions to check that the created
port is in the list of ports returned, and that every port returned
has a matching fixed IP.

The check that all the ports in the response are from a single tenant
is retained, so this test is expected to sometimes fail if run with
admin credentials.

Change-Id: Ia20af71d031504aa08fc0ea92fd35cbc408edba3
Partial-Bug: #1840401
diff --git a/tempest/api/network/test_ports.py b/tempest/api/network/test_ports.py
index 56b5509..10121de 100644
--- a/tempest/api/network/test_ports.py
+++ b/tempest/api/network/test_ports.py
@@ -197,14 +197,14 @@
                          'Ports from multiple tenants are in the list resp')
         port_ids = [port['id'] for port in ports]
         fixed_ips = [port['fixed_ips'] for port in ports]
-        port_ips = []
-        for addr in fixed_ips:
-            port_ips.extend([port['ip_address'] for port in addr])
-
         port_net_ids = [port['network_id'] for port in ports]
         self.assertIn(port_1['port']['id'], port_ids)
-        self.assertIn(port_1_fixed_ip, port_ips)
         self.assertIn(network['id'], port_net_ids)
+        # Check that every port has a fixed_ip that matches the query
+        for addr in fixed_ips:
+            port_ips = [port['ip_address'] for port in addr]
+            self.assertIn(port_1_fixed_ip, port_ips,
+                          'Port not matching IP filter found')
 
     @decorators.idempotent_id('79895408-85d5-460d-94e7-9531c5fd9123')
     @testtools.skipUnless(