9
9
10
10
import gitlab
11
11
import gitlab .base
12
-
13
- SLEEP_INTERVAL = 0.5
14
- TIMEOUT = 60 # seconds before timeout will occur
12
+ from tests .functional import helpers
15
13
16
14
17
15
@pytest .fixture (scope = "session" )
@@ -49,8 +47,6 @@ def reset_gitlab(gl):
49
47
logging .info (f"Marking for deletion user: { user .username !r} " )
50
48
user .delete (hard_delete = True )
51
49
52
- max_iterations = int (TIMEOUT / SLEEP_INTERVAL )
53
-
54
50
# Ensure everything has been reset
55
51
start_time = time .perf_counter ()
56
52
@@ -60,15 +56,15 @@ def wait_for_list_size(
60
56
"""Wait for the list() length to be no greater than expected maximum or fail
61
57
test if timeout is exceeded"""
62
58
logging .info (f"Checking { description !r} has no more than { max_length } items" )
63
- for count in range (max_iterations ):
59
+ for count in range (helpers . MAX_ITERATIONS ):
64
60
items = rest_manager .list ()
65
61
if len (items ) <= max_length :
66
62
break
67
63
logging .info (
68
64
f"Iteration: { count } Waiting for { description !r} items to be deleted: "
69
65
f"{ [x .name for x in items ]} "
70
66
)
71
- time .sleep (SLEEP_INTERVAL )
67
+ time .sleep (helpers . SLEEP_INTERVAL )
72
68
73
69
elapsed_time = time .perf_counter () - start_time
74
70
error_message = (
@@ -280,10 +276,7 @@ def group(gl):
280
276
281
277
yield group
282
278
283
- try :
284
- group .delete ()
285
- except gitlab .exceptions .GitlabDeleteError as e :
286
- print (f"Group already deleted: { e } " )
279
+ helpers .safe_delete (group )
287
280
288
281
289
282
@pytest .fixture (scope = "module" )
@@ -296,10 +289,7 @@ def project(gl):
296
289
297
290
yield project
298
291
299
- try :
300
- project .delete ()
301
- except gitlab .exceptions .GitlabDeleteError as e :
302
- print (f"Project already deleted: { e } " )
292
+ helpers .safe_delete (project )
303
293
304
294
305
295
@pytest .fixture (scope = "function" )
@@ -327,7 +317,7 @@ def _merge_request(*, source_branch: str):
327
317
assert result is True , "sidekiq process should have terminated but did not"
328
318
329
319
project .refresh () # Gets us the current default branch
330
- project .branches .create (
320
+ mr_branch = project .branches .create (
331
321
{"branch" : source_branch , "ref" : project .default_branch }
332
322
)
333
323
# NOTE(jlvillal): Must create a commit in the new branch before we can
@@ -359,18 +349,13 @@ def _merge_request(*, source_branch: str):
359
349
time .sleep (0.5 )
360
350
assert mr .merge_status != "checking"
361
351
362
- to_delete .append (( mr . iid , source_branch ) )
352
+ to_delete .extend ([ mr , mr_branch ] )
363
353
return mr
364
354
365
355
yield _merge_request
366
356
367
- for mr_iid , source_branch in to_delete :
368
- project .mergerequests .delete (mr_iid )
369
- try :
370
- project .branches .delete (source_branch )
371
- except gitlab .exceptions .GitlabDeleteError :
372
- # Ignore if branch was already deleted
373
- pass
357
+ for object in to_delete :
358
+ helpers .safe_delete (object )
374
359
375
360
376
361
@pytest .fixture (scope = "module" )
@@ -434,11 +419,8 @@ def user(gl):
434
419
435
420
yield user
436
421
437
- try :
438
- # Use `hard_delete=True` or a 'Ghost User' may be created.
439
- user .delete (hard_delete = True )
440
- except gitlab .exceptions .GitlabDeleteError as e :
441
- print (f"User already deleted: { e } " )
422
+ # Use `hard_delete=True` or a 'Ghost User' may be created.
423
+ helpers .safe_delete (user , hard_delete = True )
442
424
443
425
444
426
@pytest .fixture (scope = "module" )
0 commit comments