From cc27740be1ccdbafae7e41b9e3b1957eec12242f Mon Sep 17 00:00:00 2001 From: Felix Kunde Date: Wed, 12 May 2021 16:29:18 +0200 Subject: [PATCH] retry role query in e2e test and do not wait --- e2e/tests/test_e2e.py | 24 ++++++------------------ 1 file changed, 6 insertions(+), 18 deletions(-) diff --git a/e2e/tests/test_e2e.py b/e2e/tests/test_e2e.py index c99ee8a61..a44d7c4ce 100644 --- a/e2e/tests/test_e2e.py +++ b/e2e/tests/test_e2e.py @@ -222,18 +222,14 @@ class EndToEndTestCase(unittest.TestCase): } }) - # make sure we let one sync pass and check if the new user being added - time.sleep(15) - leader = self.k8s.get_cluster_leader_pod() user_query = """ SELECT rolname FROM pg_catalog.pg_roles WHERE rolname IN ('elephant', 'kind'); """ - users = self.query_database(leader.metadata.name, "postgres", user_query) - self.eventuallyEqual(lambda: len(users), 2, - "Not all additional users found in database: {}".format(users)) + self.eventuallyEqual(lambda: len(self.query_database(leader.metadata.name, "postgres", user_query)), 2, + "Not all additional users found in database", 10, 5) # replace additional member and check if the removed member's role is renamed self.k8s.api.custom_objects_api.patch_namespaced_custom_object( @@ -249,18 +245,14 @@ class EndToEndTestCase(unittest.TestCase): } }) - # wait for another sync - time.sleep(20) - user_query = """ SELECT rolname FROM pg_catalog.pg_roles WHERE (rolname = 'tester' AND rolcanlogin) OR (rolname = 'kind_delete_me' AND NOT rolcanlogin); """ - users = self.query_database(leader.metadata.name, "postgres", user_query) - self.eventuallyEqual(lambda: len(users), 2, - "CRD changes not reflected in database: {}".format(users)) + self.eventuallyEqual(lambda: len(self.query_database(leader.metadata.name, "postgres", user_query)), 2, + "PostgresTeam change not reflected in database", 10, 5) # re-add additional member and check if the role is renamed back self.k8s.api.custom_objects_api.patch_namespaced_custom_object( @@ -276,18 +268,14 @@ class EndToEndTestCase(unittest.TestCase): } }) - # wait for another sync - time.sleep(20) - user_query = """ SELECT rolname FROM pg_catalog.pg_roles WHERE (rolname = 'kind' AND rolcanlogin) OR (rolname = 'tester_delete_me' AND NOT rolcanlogin); """ - users = self.query_database(leader.metadata.name, "postgres", user_query) - self.eventuallyEqual(lambda: len(users), 2, - "CRD changes not reflected in database: {}".format(users)) + self.eventuallyEqual(lambda: len(self.query_database(leader.metadata.name, "postgres", user_query)), 2, + "PostgresTeam change not reflected in database", 10, 5) # revert config change revert_resync = {