2020from google .cloud import kms_v1
2121from google .cloud .kms_v1 import enums
2222from google .iam .v1 .policy_pb2 import Policy
23-
23+ import backoff
2424import pytest
2525
2626import snippets
2727
28- from gcp_devrel .testing import eventually_consistent
29-
3028
3129def create_key_helper (key_id , purpose , algorithm , t ):
3230 try :
@@ -181,6 +179,8 @@ def test_key_policy(self):
181179 self .member ,
182180 self .role )
183181
182+ @backoff .on_exception (
183+ backoff .expo , (Aborted , AssertionError ), max_time = 60 )
184184 def check_policy ():
185185 policy = snippets .get_crypto_key_policy (
186186 self .project_id ,
@@ -192,8 +192,9 @@ def check_policy():
192192 if b .role == self .role and self .member in b .members :
193193 found = True
194194 assert found
195- eventually_consistent .call (check_policy ,
196- exceptions = (Aborted , AssertionError ))
195+
196+ check_policy ()
197+
197198 # remove member
198199 snippets .remove_member_from_crypto_key_policy (
199200 self .project_id ,
@@ -203,7 +204,9 @@ def check_policy():
203204 self .member ,
204205 self .role )
205206
206- def check_policy ():
207+ @backoff .on_exception (
208+ backoff .expo , (Aborted , AssertionError ), max_time = 60 )
209+ def check_policy_again ():
207210 policy = snippets .get_crypto_key_policy (
208211 self .project_id ,
209212 self .location ,
@@ -214,9 +217,8 @@ def check_policy():
214217 if b .role == self .role and self .member in b .members :
215218 found = True
216219 assert not found
217- eventually_consistent .call (
218- check_policy ,
219- exceptions = (Aborted , AssertionError ))
220+
221+ check_policy_again ()
220222
221223 def test_symmetric_encrypt_decrypt (self ):
222224 cipher_bytes = snippets .encrypt_symmetric (self .project_id ,
0 commit comments