public inbox for passt-dev@passt.top
 help / color / mirror / code / Atom feed
From: David Gibson <david@gibson.dropbear.id.au>
To: passt-dev@passt.top, Stefano Brivio <sbrivio@redhat.com>
Cc: David Gibson <david@gibson.dropbear.id.au>
Subject: [PATCH v4 0/3] RFC: New proof-of-concept based exeter tests
Date: Thu,  7 Aug 2025 21:32:34 +1000	[thread overview]
Message-ID: <20250807113237.548294-1-david@gibson.dropbear.id.au> (raw)

Here's a new approach to building passt tests with exeter.  This new
one no longer uses Avocado in the default case, although it would
still be possible to manually run the exeter based tests with Avocado.

Here's another draft of my work on testing passt with Avocado and the
exeter library I recently created.  It includes Cleber's patch adding
some basic Avocado tests and builds on that.

For now this only does simple tests, to show how the integration could
work.  It adds some new trivial "smoke tests" and converts the linter
and build checks to exeter.  More complex tests will require building
the sinte/pesto library we've discussed.  A lot of the work for that
already exists in my earlier exeter test series, but it will need some
rework to split it into a separate component.

Changes since v3:
 * Remove reliance on Avocado
 * Build integration between exeter and existing test scripts
 * Drop most of the complex tests for the time being.
 
Changes since v2:
 * Added mypy type checking throughout
 * Use exeter "scenarios" to reduce boilerplate
 * Folded together a number of closely related patches (from 22
   patches down to 15)
 * Entirely avoid open-coded Python context managers in favour of
   contextlib.contextmanager
 * No longer accidentally run a lot of the "meta" tests in the "real"
   testsuite
 * So, so many assorted cleanups

David Gibson (3):
  test: Extend test scripts to allow running exeter tests.
  test: Run static checkers as exeter tests
  test: Convert build tests to exeter

 test/.gitignore               |  1 +
 test/Makefile                 |  5 ++-
 test/build/all                | 61 -------------------------
 test/build/build.py           | 84 +++++++++++++++++++++++++++++++++++
 test/build/clang_tidy         | 17 -------
 test/build/cppcheck           | 17 -------
 test/build/static_checkers.sh | 30 +++++++++++++
 test/lib/exeter               | 46 +++++++++++++++++++
 test/run                      | 18 +++++---
 test/smoke/smoke.sh           | 27 +++++++++++
 10 files changed, 204 insertions(+), 102 deletions(-)
 delete mode 100644 test/build/all
 create mode 100755 test/build/build.py
 delete mode 100644 test/build/clang_tidy
 delete mode 100644 test/build/cppcheck
 create mode 100755 test/build/static_checkers.sh
 create mode 100644 test/lib/exeter
 create mode 100755 test/smoke/smoke.sh

-- 
2.50.1


             reply	other threads:[~2025-08-07 11:32 UTC|newest]

Thread overview: 4+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2025-08-07 11:32 David Gibson [this message]
2025-08-07 11:32 ` [PATCH v4 1/3] test: Extend test scripts to allow running exeter tests David Gibson
2025-08-07 11:32 ` [PATCH v4 2/3] test: Run static checkers as " David Gibson
2025-08-07 11:32 ` [PATCH v4 3/3] test: Convert build tests to exeter 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=20250807113237.548294-1-david@gibson.dropbear.id.au \
    --to=david@gibson.dropbear.id.au \
    --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).