Code Duplication    Length = 12-14 lines in 4 locations

tests/test_storage.py 4 locations

@@ 376-389 (lines=14) @@
373
    assert json.load(files[0].open('rU')) == SAVE_DATA
374
375
376
@freeze_time("2015-08-15T00:04:18.687119")
377
def test_save_with_error(sess, tmpdir, monkeypatch):
378
    monkeypatch.setattr(plugin, '__version__', '2.5.0')
379
    sess.save = True
380
    sess.autosave = True
381
    sess.json = None
382
    sess.save_data = False
383
    sess.storage.path = Path(str(tmpdir))
384
    for bench in sess.benchmarks:
385
        bench.has_error = True
386
    sess.handle_saving()
387
    files = list(Path(str(tmpdir)).rglob('*.json'))
388
    assert len(files) == 1
389
    assert json.load(files[0].open('rU')) == {
390
        'benchmarks': [],
391
        'commit_info': {'foo': 'bar'},
392
        'datetime': '2015-08-15T00:04:18.687119',
@@ 398-409 (lines=12) @@
395
    }
396
397
398
@freeze_time("2015-08-15T00:04:18.687119")
399
def test_autosave(sess, tmpdir, monkeypatch):
400
    monkeypatch.setattr(plugin, '__version__', '2.5.0')
401
    sess.save = False
402
    sess.autosave = True
403
    sess.json = None
404
    sess.save_data = False
405
    sess.storage.path = Path(str(tmpdir))
406
    sess.handle_saving()
407
    files = list(Path(str(tmpdir)).rglob('*.json'))
408
    assert len(files) == 1
409
    assert json.load(files[0].open('rU')) == SAVE_DATA
410
@@ 362-373 (lines=12) @@
359
    assert json.load(files[0].open('rU')) == SAVE_DATA
360
361
362
@freeze_time("2015-08-15T00:04:18.687119")
363
def test_save_no_name(sess, tmpdir, monkeypatch):
364
    monkeypatch.setattr(plugin, '__version__', '2.5.0')
365
    sess.save = True
366
    sess.autosave = True
367
    sess.json = None
368
    sess.save_data = False
369
    sess.storage.path = Path(str(tmpdir))
370
    sess.handle_saving()
371
    files = list(Path(str(tmpdir)).rglob('*.json'))
372
    assert len(files) == 1
373
    assert json.load(files[0].open('rU')) == SAVE_DATA
374
375
376
@freeze_time("2015-08-15T00:04:18.687119")
@@ 348-359 (lines=12) @@
345
    assert json.loads(sess.json.getvalue().decode()) == JSON_DATA
346
347
348
@freeze_time("2015-08-15T00:04:18.687119")
349
def test_save_with_name(sess, tmpdir, monkeypatch):
350
    monkeypatch.setattr(plugin, '__version__', '2.5.0')
351
    sess.save = 'foobar'
352
    sess.autosave = True
353
    sess.json = None
354
    sess.save_data = False
355
    sess.storage.path = Path(str(tmpdir))
356
    sess.handle_saving()
357
    files = list(Path(str(tmpdir)).rglob('*.json'))
358
    assert len(files) == 1
359
    assert json.load(files[0].open('rU')) == SAVE_DATA
360
361
362
@freeze_time("2015-08-15T00:04:18.687119")