@@ -118,6 +118,7 @@ def test(self):
118
118
responses .get (
119
119
f"https://connect.example/__api__/v1/tasks/{ uid } " ,
120
120
json = {** load_mock_dict (f"v1/tasks/{ uid } .json" ), "finished" : True },
121
+ match = [matchers .query_param_matcher ({"wait" : 1 })],
121
122
),
122
123
]
123
124
@@ -127,35 +128,27 @@ def test(self):
127
128
assert not task .is_finished
128
129
129
130
# invoke
130
- task .wait_for ()
131
+ task .wait_for (wait = 1 )
131
132
132
133
# assert
133
134
assert task .is_finished
134
135
assert mock_tasks_get [0 ].call_count == 1
135
136
assert mock_tasks_get [1 ].call_count == 1
136
137
137
138
@responses .activate
138
- @mock .patch ("time.sleep" , autospec = True )
139
- def test_exponential_backoff (self , mock_sleep ):
139
+ def test_with_custom_wait (self ):
140
140
uid = "jXhOhdm5OOSkGhJw"
141
141
142
142
# behavior
143
143
mock_tasks_get = [
144
- responses .get (
145
- f"https://connect.example/__api__/v1/tasks/{ uid } " ,
146
- json = {** load_mock_dict (f"v1/tasks/{ uid } .json" ), "finished" : False },
147
- ),
148
- responses .get (
149
- f"https://connect.example/__api__/v1/tasks/{ uid } " ,
150
- json = {** load_mock_dict (f"v1/tasks/{ uid } .json" ), "finished" : False },
151
- ),
152
144
responses .get (
153
145
f"https://connect.example/__api__/v1/tasks/{ uid } " ,
154
146
json = {** load_mock_dict (f"v1/tasks/{ uid } .json" ), "finished" : False },
155
147
),
156
148
responses .get (
157
149
f"https://connect.example/__api__/v1/tasks/{ uid } " ,
158
150
json = {** load_mock_dict (f"v1/tasks/{ uid } .json" ), "finished" : True },
151
+ match = [matchers .query_param_matcher ({"wait" : 5 })],
159
152
),
160
153
]
161
154
@@ -165,31 +158,19 @@ def test_exponential_backoff(self, mock_sleep):
165
158
assert not task .is_finished
166
159
167
160
# invoke
168
- task .wait_for (initial_wait = 1 , max_wait = 5 , backoff = 2.0 )
161
+ task .wait_for (wait = 5 )
169
162
170
163
# assert
171
164
assert task .is_finished
172
165
assert mock_tasks_get [0 ].call_count == 1
173
166
assert mock_tasks_get [1 ].call_count == 1
174
167
175
- # Verify sleep calls
176
- mock_sleep .assert_has_calls ([mock .call (1 ), mock .call (2 ), mock .call (4 )], any_order = False )
177
-
178
168
@responses .activate
179
- @mock .patch ("time.sleep" , autospec = True )
180
- def test_no_backoff (self , mock_sleep ):
169
+ def test_immediate_completion (self ):
181
170
uid = "jXhOhdm5OOSkGhJw"
182
171
183
172
# behavior
184
173
mock_tasks_get = [
185
- responses .get (
186
- f"https://connect.example/__api__/v1/tasks/{ uid } " ,
187
- json = {** load_mock_dict (f"v1/tasks/{ uid } .json" ), "finished" : False },
188
- ),
189
- responses .get (
190
- f"https://connect.example/__api__/v1/tasks/{ uid } " ,
191
- json = {** load_mock_dict (f"v1/tasks/{ uid } .json" ), "finished" : False },
192
- ),
193
174
responses .get (
194
175
f"https://connect.example/__api__/v1/tasks/{ uid } " ,
195
176
json = {** load_mock_dict (f"v1/tasks/{ uid } .json" ), "finished" : True },
@@ -199,18 +180,14 @@ def test_no_backoff(self, mock_sleep):
199
180
# setup
200
181
c = connect .Client ("https://connect.example" , "12345" )
201
182
task = c .tasks .get (uid )
202
- assert not task .is_finished
183
+ assert task .is_finished
203
184
204
185
# invoke
205
- task .wait_for (initial_wait = 2 , max_wait = 5 , backoff = 1.0 )
186
+ task .wait_for (wait = 1 )
206
187
207
188
# assert
208
189
assert task .is_finished
209
190
assert mock_tasks_get [0 ].call_count == 1
210
- assert mock_tasks_get [1 ].call_count == 1
211
-
212
- # Verify sleep calls
213
- mock_sleep .assert_has_calls ([mock .call (2 ), mock .call (2 )], any_order = False )
214
191
215
192
216
193
class TestTasksGet :
0 commit comments