예제 #1
0
def do_test_serialization(suites_or_report,
                          backend,
                          tmpdir,
                          fixtures=(),
                          report_saving_strategy=None):
    report_filename = tmpdir.join(backend.get_report_filename()).strpath

    if isinstance(suites_or_report, Report):
        report = suites_or_report
        backend.save_report(report_filename, report)
    else:
        suites = suites_or_report
        if type(suites) not in (list, tuple):
            suites = [suites]
        report = run_suite_classes(
            suites,
            fixtures=fixtures,
            backends=[backend],
            tmpdir=tmpdir,
            report_saving_strategy=report_saving_strategy)

    unserialized_report = backend.load_report(report_filename)

    #     dump_report(unserialized_report)

    assert_report(unserialized_report, report)
 def test_load_reports_from_dir(tmpdir, sample_report):
     save_xml(sample_report, tmpdir.join("report.xml").strpath)
     save_json(sample_report, tmpdir.join("report.js").strpath)
     tmpdir.join("report.txt").write("foobar")
     reports = list(load_reports_from_dir(tmpdir.strpath))
     assert_report(reports[0], sample_report)
     assert_report(reports[1], sample_report)
     assert "json" in [r.backend.name for r in reports]
     assert "xml" in [r.backend.name for r in reports]
예제 #3
0
def test_nb_threads(backend, tmpdir):
    if backend is None:
        return  # test is not relevant

    report = Report()
    report.nb_threads = 3
    report.start_time = time.time()
    report.end_time = report.start_time
    report.report_generation_time = report.start_time

    report_filename = tmpdir.join("report").strpath
    backend.save_report(report_filename, report)
    unserialized_report = backend.load_report(report_filename)

    #    dump_report(unserialized_report)

    assert_report(unserialized_report, report)
def _test_load_report(tmpdir, sample_report, save_func):
    filename = tmpdir.join("report").strpath
    save_func(sample_report, filename)
    report = load_report(filename)
    assert_report(report, sample_report)
def _test_save_report(tmpdir, sample_report, backend, load_func):
    filename = tmpdir.join("report").strpath
    save_report(filename, sample_report, backend)
    report = load_func(filename)
    assert_report(report, sample_report)