Not a review, just two remarks:
On Fri, 5 Jul 2024 21:35:28 +1000
David Gibson <david(a)gibson.dropbear.id.au> wrote:
[...]
So, you can run the tests either with run_avocado, or running Avocado
directly?
The installation of Avocado itself is left to
users, given that the
details on how to install it (virtual environments and specific
tooling) can be a very different and long discussion.
Right... if the required Avocado version was already packaged in
latest Fedora and/or Debian, I'd have no qualms about that. It looks
like you require a very new one though, which makes me a little
nervous about requiring that complex installation. I guess if it's
pip installable that helps. Though if I recall on Debian even that
requires some venv setup. Eventually I think we'll want a README for
Avocado installation, or better yet make targets that will install it
automatically in a local venv.
I plan to try this out on Debian and report back -- I didn't have time
yet. Indeed, it would help to have all the dependencies packaged because
it would be really beneficial if we could run the upstream tests also as
automated package testing, e.g. for Debian it's autopkgtest:
https://wiki.debian.org/ContinuousIntegration/autopkgtest
The current test suite has all the dependencies packaged on (at least)
Debian and Fedora, minus neper (
https://github.com/google/neper), but
tests will be skipped if those tools are not available.
[...]
+++ b/test/avocado/static_checkers.json
@@ -0,0 +1,16 @@
+[
+ {
+ "kind": "exec-test",
+ "uri": "make",
+ "args": [
+ "clang-tidy"
+ ]
+ },
+ {
+ "kind": "exec-test",
+ "uri": "make",
+ "args": [
+ "cppcheck"
+ ]
+ }
+]
Looks pretty reasonable to me, at least for these simple cases. It
would be nice to have comments, but IIUC that's one of the things
notably missing from json :/,
You could use HJSON (
https://hjson.github.io/), or a subset of it, for
example with just comments. We're using it like that in seitan, because
that's what Parson supports, example:
https://seitan.rocks/seitan/tree/demo/routes.hjson
Yeah, there are bunch of json variants and extensions that allow for
comments. Which is kind of the problem: there are a bunch of them,
making the choice non-obvious.
--
David Gibson (he or they) | I'll have my music baroque, and my code
david AT gibson.dropbear.id.au | minimalist, thank you, not the other way
| around.