From 014ff6dc438491e7b951bb4cb7414a956c063977 Mon Sep 17 00:00:00 2001 From: Martin Kourim Date: Wed, 12 Aug 2020 13:56:47 +0200 Subject: [PATCH] Include cardano-node version info in report.html --- cardano_node_tests/tests/conftest.py | 14 ++++++++++++++ cardano_node_tests/tests/test_transactions.py | 2 -- cardano_node_tests/utils/helpers.py | 16 +++++++++++++++- 3 files changed, 29 insertions(+), 3 deletions(-) diff --git a/cardano_node_tests/tests/conftest.py b/cardano_node_tests/tests/conftest.py index ae15782c0..c3fb57e50 100644 --- a/cardano_node_tests/tests/conftest.py +++ b/cardano_node_tests/tests/conftest.py @@ -18,6 +18,20 @@ def pytest_addoption(parser): ) +def pytest_html_report_title(report): + cardano_version = helpers.get_cardano_version() + report.title = ( + f"cardano-node {cardano_version['cardano-node']} (git rev {cardano_version['git_rev']})" + ) + + +def pytest_configure(config): + cardano_version = helpers.get_cardano_version() + config._metadata["cardano-node"] = cardano_version["cardano-node"] + config._metadata["cardano-node rev"] = cardano_version["git_rev"] + config._metadata["ghc"] = cardano_version["ghc"] + + # session scoped fixtures diff --git a/cardano_node_tests/tests/test_transactions.py b/cardano_node_tests/tests/test_transactions.py index 4b15e72fc..5f114dbc6 100644 --- a/cardano_node_tests/tests/test_transactions.py +++ b/cardano_node_tests/tests/test_transactions.py @@ -220,7 +220,6 @@ def test_transaction_to_10_addrs(self, cluster_session, payment_addrs): ), f"Incorrect balance for destination address `{addr}`" -@pytest.mark.first class TestNotBalanced: @pytest.fixture(scope="class") def payment_addr_rec(self, cluster_session): @@ -343,7 +342,6 @@ def test_negative_fee(cluster_session, addrs_data_session): assert "option --fee: cannot parse value" in str(excinfo.value) -@pytest.mark.first def test_past_ttl(cluster_session, addrs_data_session): """Send a transaction with ttl in the past.""" cluster = cluster_session diff --git a/cardano_node_tests/utils/helpers.py b/cardano_node_tests/utils/helpers.py index e1ecc531d..a36f17f18 100644 --- a/cardano_node_tests/utils/helpers.py +++ b/cardano_node_tests/utils/helpers.py @@ -65,9 +65,23 @@ def run_shell_command(command: str, workdir: FileType = ""): cmd = f"bash -c '{command}'" cmd = cmd if not workdir else f"cd {workdir}; {cmd}" p = subprocess.Popen(cmd, stdout=subprocess.PIPE, stderr=subprocess.PIPE, shell=True) - __, stderr = p.communicate() + stdout, stderr = p.communicate() if p.returncode != 0: raise AssertionError(f"An error occurred while running `{cmd}`: {stderr.decode()}") + return stdout + + +def get_cardano_version(): + out = run_shell_command("cardano-node --version").decode().strip() + env_info, git_info, *__ = out.splitlines() + node, platform, ghc, *__ = env_info.split(" - ") + version = { + "cardano-node": node.split(" ")[-1], + "platform": platform, + "ghc": ghc, + "git_rev": git_info.split(" ")[-1], + } + return version def fund_from_genesis(