public inbox for passt-dev@passt.top
 help / color / mirror / code / Atom feed
From: David Gibson <david@gibson.dropbear.id.au>
To: Stefano Brivio <sbrivio@redhat.com>, passt-dev@passt.top
Cc: Cleber Rosa <crosa@redhat.com>,
	David Gibson <david@gibson.dropbear.id.au>
Subject: [PATCH v3 02/15] test: Adjust how we invoke tests with run_avocado
Date: Mon, 26 Aug 2024 12:09:29 +1000	[thread overview]
Message-ID: <20240826020942.545155-3-david@gibson.dropbear.id.au> (raw)
In-Reply-To: <20240826020942.545155-1-david@gibson.dropbear.id.au>

Currently the Avocado test cases expect to be run from the base dir of
the passt repo.  At least for the time being, it turns out to be more
convenient to structure the tests to run from the test/ subdirectory. So,
adjust them to do so.

We make some changes to run_avocado to work better with this too:
  * It appeared to have one too many os.path.dirname() calls, so it
    set repo_root_path to the parent of the passt tree, rather than the
    tree itself
  * We add an os.chdir(), so the tests will be invoked from the test
    directory regardles of where we invoke run_avocado
  * We adjust the runner.identifier config parameter so we get distinct
    (although very verbose) names for the more complex tests we're going
    to add.

Signed-off-by: David Gibson <david@gibson.dropbear.id.au>
---
 test/avocado/static_checkers.json |  8 ++------
 test/run_avocado                  | 12 +++++++-----
 2 files changed, 9 insertions(+), 11 deletions(-)

diff --git a/test/avocado/static_checkers.json b/test/avocado/static_checkers.json
index 5fae43ed..480b2461 100644
--- a/test/avocado/static_checkers.json
+++ b/test/avocado/static_checkers.json
@@ -2,15 +2,11 @@
     {
         "kind": "exec-test",
         "uri": "make",
-        "args": [
-            "clang-tidy"
-        ]
+        "args": ["-C", "..", "clang-tidy"]
     },
     {
         "kind": "exec-test",
         "uri": "make",
-        "args": [
-            "cppcheck"
-        ]
+        "args": ["-C", "..", "cppcheck"]
     }
 ]
diff --git a/test/run_avocado b/test/run_avocado
index 37db17c3..2c8822c6 100755
--- a/test/run_avocado
+++ b/test/run_avocado
@@ -31,14 +31,16 @@ from avocado.core.suite import TestSuite
 
 
 def main():
-    repo_root_path = os.path.abspath(
-        os.path.dirname(os.path.dirname(os.path.dirname(__file__)))
-    )
+    repo_root_path = os.path.dirname(os.path.dirname(__file__))
+    test_root_path = os.path.join(repo_root_path, "test")
+
+    os.chdir(test_root_path)
+
     config = {
         "resolver.references": [
-            os.path.join(repo_root_path, "test", "avocado", "static_checkers.json")
+            os.path.join(test_root_path, "avocado", "static_checkers.json")
         ],
-        "runner.identifier_format": "{args[0]}",
+        "runner.identifier_format": "{args}",
     }
     suite = TestSuite.from_config(config, name="static_checkers")
     with Job(config, [suite]) as j:
-- 
@@ -31,14 +31,16 @@ from avocado.core.suite import TestSuite
 
 
 def main():
-    repo_root_path = os.path.abspath(
-        os.path.dirname(os.path.dirname(os.path.dirname(__file__)))
-    )
+    repo_root_path = os.path.dirname(os.path.dirname(__file__))
+    test_root_path = os.path.join(repo_root_path, "test")
+
+    os.chdir(test_root_path)
+
     config = {
         "resolver.references": [
-            os.path.join(repo_root_path, "test", "avocado", "static_checkers.json")
+            os.path.join(test_root_path, "avocado", "static_checkers.json")
         ],
-        "runner.identifier_format": "{args[0]}",
+        "runner.identifier_format": "{args}",
     }
     suite = TestSuite.from_config(config, name="static_checkers")
     with Job(config, [suite]) as j:
-- 
2.46.0


  parent reply	other threads:[~2024-08-26  2:09 UTC|newest]

Thread overview: 16+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2024-08-26  2:09 [PATCH v3 00/15] RFC: Proof-of-concept based exeter+Avocado tests David Gibson
2024-08-26  2:09 ` [PATCH v3 01/15] test: run static checkers with Avocado and JSON definitions David Gibson
2024-08-26  2:09 ` David Gibson [this message]
2024-08-26  2:09 ` [PATCH v3 03/15] test: Extend make targets to run Avocado tests David Gibson
2024-08-26  2:09 ` [PATCH v3 04/15] test: Exeter based static tests David Gibson
2024-08-26  2:09 ` [PATCH v3 05/15] tasst: Support library and linters for tests in Python David Gibson
2024-08-26  2:09 ` [PATCH v3 06/15] tasst/cmdsite: Base helpers for running shell commands in various places David Gibson
2024-08-26  2:09 ` [PATCH v3 07/15] test: Add exeter+Avocado based build tests David Gibson
2024-08-26  2:09 ` [PATCH v3 08/15] tasst/unshare: Add helpers to run commands in Linux unshared namespaces David Gibson
2024-08-26  2:09 ` [PATCH v3 09/15] tasst/ip: Helpers for configuring IPv4 and IPv6 David Gibson
2024-08-26  2:09 ` [PATCH v3 10/15] tasst/veth: Helpers for constructing veth devices between namespaces David Gibson
2024-08-26  2:09 ` [PATCH v3 11/15] tasst: Helpers to test transferring data between sites David Gibson
2024-08-26  2:09 ` [PATCH v3 12/15] tasst: Helpers for testing NDP behaviour David Gibson
2024-08-26  2:09 ` [PATCH v3 13/15] tasst: Helpers for testing DHCP & DHCPv6 behaviour David Gibson
2024-08-26  2:09 ` [PATCH v3 14/15] tasst: Helpers to construct a simple network environment for tests David Gibson
2024-08-26  2:09 ` [PATCH v3 15/15] avocado: Convert basic pasta tests David Gibson

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20240826020942.545155-3-david@gibson.dropbear.id.au \
    --to=david@gibson.dropbear.id.au \
    --cc=crosa@redhat.com \
    --cc=passt-dev@passt.top \
    --cc=sbrivio@redhat.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
Code repositories for project(s) associated with this public inbox

	https://passt.top/passt

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for IMAP folder(s).