Skip to content
This repository was archived by the owner on Apr 30, 2020. It is now read-only.

Commit 92f61d8

Browse files
committed
DRY in integration tests
1 parent a04affb commit 92f61d8

File tree

1 file changed

+34
-36
lines changed

1 file changed

+34
-36
lines changed

test/integration/test_integration.py

+34-36
Original file line numberDiff line numberDiff line change
@@ -180,10 +180,12 @@ def results(request):
180180
jsonrpc = fixtures_factory('_jsonrpc')
181181

182182

183-
@pytest.mark.parametrize('results', ('eric', 'six', 'admesh', 'tracer',
184-
'copr', 'epub', 'twine', 'yum',
185-
'vdirsyncer', 'docutils', 'nodejs',
186-
'bucky', 'jsonrpc'))
183+
def parametrize(*fixtrues):
184+
return pytest.mark.parametrize('results', fixtrues)
185+
186+
187+
@parametrize('eric', 'six', 'admesh', 'tracer', 'copr', 'epub', 'twine', 'yum',
188+
'vdirsyncer', 'docutils', 'nodejs', 'bucky', 'jsonrpc')
187189
def test_number_of_results(results, request):
188190
# getting a fixture by name
189191
# https://github.com/pytest-dev/pytest/issues/349#issuecomment-112203541
@@ -193,21 +195,19 @@ def test_number_of_results(results, request):
193195
assert len(results) == 8
194196

195197

196-
@pytest.mark.parametrize('results', ('eric', 'six', 'admesh',
197-
'copr', 'epub', 'twine',
198-
'bucky'))
198+
@parametrize('eric', 'six', 'admesh', 'copr', 'epub', 'twine', 'bucky')
199199
def test_two_three_passed(results, request):
200200
results = request.getfixturevalue(results)
201201
assert results['dist.python-versions.two_three'].outcome == 'PASSED'
202202

203203

204-
@pytest.mark.parametrize('results', ('tracer',))
204+
@parametrize('tracer')
205205
def test_two_three_failed(results, request):
206206
results = request.getfixturevalue(results)
207207
assert results['dist.python-versions.two_three'].outcome == 'FAILED'
208208

209209

210-
@pytest.mark.parametrize('results', ('tracer', 'copr', 'admesh'))
210+
@parametrize('tracer', 'copr', 'admesh')
211211
def test_one_failed_result_is_total_failed(results, request):
212212
results = request.getfixturevalue(results)
213213
assert results['dist.python-versions'].outcome == 'FAILED'
@@ -223,7 +223,7 @@ def test_artifact_is_the_same(results, task, request):
223223
results['dist.python-versions.' + task].artifact)
224224

225225

226-
@pytest.mark.parametrize('results', ('tracer',))
226+
@parametrize('tracer')
227227
def test_artifact_contains_two_three_and_looks_as_expected(results, request):
228228
results = request.getfixturevalue(results)
229229
result = results['dist.python-versions.two_three']
@@ -238,20 +238,19 @@ def test_artifact_contains_two_three_and_looks_as_expected(results, request):
238238
''').strip().format(result.item) in artifact.strip()
239239

240240

241-
@pytest.mark.parametrize('results', ('eric', 'epub', 'twine', 'vdirsyncer',
242-
'bucky'))
241+
@parametrize('eric', 'epub', 'twine', 'vdirsyncer', 'bucky')
243242
def test_naming_scheme_passed(results, request):
244243
results = request.getfixturevalue(results)
245244
assert results['dist.python-versions.naming_scheme'].outcome == 'PASSED'
246245

247246

248-
@pytest.mark.parametrize('results', ('copr', 'six', 'admesh'))
247+
@parametrize('copr', 'six', 'admesh')
249248
def test_naming_scheme_failed(results, request):
250249
results = request.getfixturevalue(results)
251250
assert results['dist.python-versions.naming_scheme'].outcome == 'FAILED'
252251

253252

254-
@pytest.mark.parametrize('results', ('copr',))
253+
@parametrize('copr')
255254
def test_artifact_contains_naming_scheme_and_looks_as_expected(results,
256255
request):
257256
results = request.getfixturevalue(results)
@@ -265,21 +264,21 @@ def test_artifact_contains_naming_scheme_and_looks_as_expected(results,
265264
""").strip().format(result.item) in artifact.strip()
266265

267266

268-
@pytest.mark.parametrize('results', ('eric', 'twine', 'six'))
267+
@parametrize('eric', 'twine', 'six')
269268
def test_requires_naming_scheme_passed(results, request):
270269
results = request.getfixturevalue(results)
271270
task_result = results['dist.python-versions.requires_naming_scheme']
272271
assert task_result.outcome == 'PASSED'
273272

274273

275-
@pytest.mark.parametrize('results', ('admesh', 'copr'))
274+
@parametrize('admesh', 'copr')
276275
def test_requires_naming_scheme_failed(results, request):
277276
results = request.getfixturevalue(results)
278277
task_result = results['dist.python-versions.requires_naming_scheme']
279278
assert task_result.outcome == 'FAILED'
280279

281280

282-
@pytest.mark.parametrize('results', ('tracer',))
281+
@parametrize('tracer')
283282
def test_artifact_contains_requires_naming_scheme_and_looks_as_expected(
284283
results, request):
285284
results = request.getfixturevalue(results)
@@ -304,7 +303,7 @@ def test_artifact_contains_requires_naming_scheme_and_looks_as_expected(
304303
""").strip() in artifact.strip()
305304

306305

307-
@pytest.mark.parametrize('results', ('yum',))
306+
@parametrize('yum')
308307
def test_requires_naming_scheme_contains_python(results, request):
309308
results = request.getfixturevalue(results)
310309
result = results['dist.python-versions.requires_naming_scheme']
@@ -316,22 +315,22 @@ def test_requires_naming_scheme_contains_python(results, request):
316315
assert 'python (python2 is available)' in artifact.strip()
317316

318317

319-
@pytest.mark.parametrize('results', ('eric', 'six', 'admesh', 'tracer',
320-
'copr', 'epub', 'twine', 'bucky'))
318+
@parametrize('eric', 'six', 'admesh', 'tracer',
319+
'copr', 'epub', 'twine', 'bucky')
321320
def test_executables_passed(results, request):
322321
results = request.getfixturevalue(results)
323322
task_result = results['dist.python-versions.executables']
324323
assert task_result.outcome == 'PASSED'
325324

326325

327-
@pytest.mark.parametrize('results', ('docutils',))
326+
@parametrize('docutils')
328327
def test_executables_failed(results, request):
329328
results = request.getfixturevalue(results)
330329
task_result = results['dist.python-versions.executables']
331330
assert task_result.outcome == 'FAILED'
332331

333332

334-
@pytest.mark.parametrize('results', ('docutils',))
333+
@parametrize('docutils')
335334
def test_artifact_contains_executables_and_looks_as_expected(
336335
results, request):
337336
results = request.getfixturevalue(results)
@@ -364,22 +363,21 @@ def test_artifact_contains_executables_and_looks_as_expected(
364363
""").strip() in artifact.strip()
365364

366365

367-
@pytest.mark.parametrize('results', ('eric', 'six', 'admesh', 'copr',
368-
'epub', 'twine', 'nodejs'))
366+
@parametrize('eric', 'six', 'admesh', 'copr', 'epub', 'twine', 'nodejs')
369367
def test_unvesioned_shebangs_passed(results, request):
370368
results = request.getfixturevalue(results)
371369
result = results['dist.python-versions.unversioned_shebangs']
372370
assert result.outcome == 'PASSED'
373371

374372

375-
@pytest.mark.parametrize('results', ('yum', 'tracer', 'bucky'))
373+
@parametrize('yum', 'tracer', 'bucky')
376374
def test_unvesioned_shebangs_failed(results, request):
377375
results = request.getfixturevalue(results)
378376
result = results['dist.python-versions.unversioned_shebangs']
379377
assert result.outcome == 'FAILED'
380378

381379

382-
@pytest.mark.parametrize('results', ('tracer',))
380+
@parametrize('tracer')
383381
def test_artifact_contains_unversioned_shebangs_and_looks_as_expected(
384382
results, request):
385383
results = request.getfixturevalue(results)
@@ -400,14 +398,14 @@ def test_artifact_contains_unversioned_shebangs_and_looks_as_expected(
400398
""").strip() in artifact.strip()
401399

402400

403-
@pytest.mark.parametrize('results', ('bucky',))
401+
@parametrize('bucky')
404402
def test_unvesioned_shebangs_mangled_failed(results, request):
405403
results = request.getfixturevalue(results)
406404
result = results['dist.python-versions.unversioned_shebangs']
407405
assert result.outcome == 'FAILED'
408406

409407

410-
@pytest.mark.parametrize('results', ('bucky',))
408+
@parametrize('bucky')
411409
def test_artifact_contains_mangled_unversioned_shebangs_and_looks_as_expected(
412410
results, request):
413411
results = request.getfixturevalue(results)
@@ -436,22 +434,22 @@ def test_artifact_contains_mangled_unversioned_shebangs_and_looks_as_expected(
436434
""").strip() in artifact.strip()
437435

438436

439-
@pytest.mark.parametrize('results', ('eric', 'six', 'admesh', 'tracer',
440-
'copr', 'epub', 'twine', 'docutils'))
437+
@parametrize('eric', 'six', 'admesh', 'tracer',
438+
'copr', 'epub', 'twine', 'docutils')
441439
def test_py3_support_passed(results, request):
442440
results = request.getfixturevalue(results)
443441
task_result = results['dist.python-versions.py3_support']
444442
assert task_result.outcome == 'PASSED'
445443

446444

447-
@pytest.mark.parametrize('results', ('bucky',))
445+
@parametrize('bucky')
448446
def test_py3_support_failed(results, request):
449447
results = request.getfixturevalue(results)
450448
task_result = results['dist.python-versions.py3_support']
451449
assert task_result.outcome == 'FAILED'
452450

453451

454-
@pytest.mark.parametrize('results', ('bucky',))
452+
@parametrize('bucky')
455453
def test_artifact_contains_py3_support_and_looks_as_expected(
456454
results, request):
457455
"""Test that py3_support check fails if the package is mispackaged.
@@ -477,22 +475,22 @@ def test_artifact_contains_py3_support_and_looks_as_expected(
477475
""").strip() in artifact.strip()
478476

479477

480-
@pytest.mark.parametrize('results', ('eric', 'six', 'admesh', 'tracer',
481-
'copr', 'epub', 'twine', 'docutils'))
478+
@parametrize('eric', 'six', 'admesh', 'tracer',
479+
'copr', 'epub', 'twine', 'docutils')
482480
def test_python_usage_passed(results, request):
483481
results = request.getfixturevalue(results)
484482
task_result = results['dist.python-versions.python_usage']
485483
assert task_result.outcome == 'PASSED'
486484

487485

488-
@pytest.mark.parametrize('results', ('jsonrpc',))
486+
@parametrize('jsonrpc')
489487
def test_python_usage_failed(results, request):
490488
results = request.getfixturevalue(results)
491489
task_result = results['dist.python-versions.python_usage']
492490
assert task_result.outcome == 'FAILED'
493491

494492

495-
@pytest.mark.parametrize('results', ('jsonrpc',))
493+
@parametrize('jsonrpc')
496494
def test_artifact_contains_python_usage_and_looks_as_expected(results,
497495
request):
498496
results = request.getfixturevalue(results)

0 commit comments

Comments
 (0)