示例#1
0
def test_mercurial():
    """
    Test mercurial versions & extensions
    """
    assert shutil.which("hg"), "Missing mercurial"

    # Check mercurial version
    output = run_check(["hg", "version", "-T", "{ver}"])
    assert output.decode("utf-8").startswith("5.1")

    # Check needed extensions
    output = run_check(["hg", "version", "-T", "{extensions}"])
    extensions = output.decode("utf-8").split("\n")
    assert "hgmo" in extensions
    assert "pushlog" in extensions
    assert "robustcheckout" in extensions
示例#2
0
def report(artifacts, source_dir=None, out_format="covdir", options=[]):
    assert out_format in (
        "covdir",
        "files",
        "lcov",
        "coveralls+",
    ), "Unsupported output format"
    cmd = ["grcov", "-t", out_format]

    # Coveralls+ is only needed for zero-coverage reports
    if out_format == "coveralls+":
        cmd.extend(["--token", "unused"])

    if source_dir is not None:
        cmd.extend(["-s", source_dir])
        cmd.append("--ignore-not-existing")

    cmd.extend(artifacts)
    cmd.extend(options)

    try:
        return run_check(cmd)
    except Exception:
        logger.error("Error while running grcov")
        raise