From d3c63c6b9125ac7e8c2394a2cf181a84b36d66a0 Mon Sep 17 00:00:00 2001 From: willcl-ark Date: Tue, 31 Oct 2023 22:14:21 +0000 Subject: [PATCH] graph: add simple test to check graph can be generated successfully --- .github/workflows/test.yml | 6 ++++++ test/test_graph.py | 23 +++++++++++++++++++++++ 2 files changed, 29 insertions(+) create mode 100755 test/test_graph.py diff --git a/.github/workflows/test.yml b/.github/workflows/test.yml index 9e16ddeca..73f40aab9 100644 --- a/.github/workflows/test.yml +++ b/.github/workflows/test.yml @@ -25,3 +25,9 @@ jobs: - uses: actions/checkout@v3 - uses: ./.github/actions - run: ./test/rpc_test.py + graph: + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v3 + - uses: ./.github/actions + - run: ./test/test_graph.py diff --git a/test/test_graph.py b/test/test_graph.py new file mode 100755 index 000000000..fabe8a2f1 --- /dev/null +++ b/test/test_graph.py @@ -0,0 +1,23 @@ +#!/usr/bin/env python3 +import tempfile +import uuid +from pathlib import Path +from test_base import TestBase +from warnet.utils import DEFAULT_TAG + +base = TestBase() +base.network = False +base.start_server() + +with tempfile.TemporaryDirectory() as dir: + tf = f"{dir}/{str(uuid.uuid4())}.graphml" + print(f"Writing test graph to {tf}") + print(base.warcli(f"graph create n=10 --outfile={tf} --version={DEFAULT_TAG}", network=False)) + base.wait_for_predicate(lambda: Path(tf).exists()) + + # Test that the graph actually works + print(base.warcli(f"network start {Path(tf)}")) + base.wait_for_all_tanks_status(target="running") + base.warcli("rpc 0 getblockcount") + +base.stop_server()