Code Duplication    Length = 12-14 lines in 4 locations

tests/test_storage.py 4 locations

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