From: Kevin Wolf <kwolf@redhat.com>
To: Vladimir Sementsov-Ogievskiy <vsementsov@virtuozzo.com>
Cc: qemu-block@nongnu.org, qemu-devel@nongnu.org, mreitz@redhat.com,
den@openvz.org, jsnow@redhat.com
Subject: Re: [PATCH v7 07/11] iotests: add findtests.py
Date: Fri, 22 Jan 2021 12:48:15 +0100 [thread overview]
Message-ID: <20210122114815.GC15866@merkur.fritz.box> (raw)
In-Reply-To: <20210116134424.82867-8-vsementsov@virtuozzo.com>
Am 16.01.2021 um 14:44 hat Vladimir Sementsov-Ogievskiy geschrieben:
> Add python script with new logic of searching for tests:
>
> Current ./check behavior:
> - tests are named [0-9][0-9][0-9]
> - tests must be registered in group file (even if test doesn't belong
> to any group, like 142)
>
> Behavior of findtests.py:
> - group file is dropped
> - tests are all files in tests/ subdirectory (except for .out files),
> so it's not needed more to "register the test", just create it with
> appropriate name in tests/ subdirectory. Old names like
> [0-9][0-9][0-9] (in root iotests directory) are supported too, but
> not recommended for new tests
> - groups are parsed from '# group: ' line inside test files
> - optional file group.local may be used to define some additional
> groups for downstreams
> - 'disabled' group is used to temporary disable tests. So instead of
> commenting tests in old 'group' file you now can add them to
> disabled group with help of 'group.local' file
> - selecting test ranges like 5-15 are not supported more
> (to support restarting failed ./check command from the middle of the
> process, new argument is added: --start-from)
>
> Benefits:
> - no rebase conflicts in group file on patch porting from branch to
> branch
> - no conflicts in upstream, when different series want to occupy same
> test number
> - meaningful names for test files
> For example, with digital number, when some person wants to add some
> test about block-stream, he most probably will just create a new
> test. But if there would be test-block-stream test already, he will
> at first look at it and may be just add a test-case into it.
> And anyway meaningful names are better.
>
> This commit don't update check behavior (which will be done in further
> commit), still, the documentation changed like new behavior is already
> here. Let's live with this small inconsistency for the following few
> commits, until final change.
>
> The file findtests.py is self-executable and may be used for debugging
> purposes.
As Eric mentioned, this isn't accurate any more.
You mentioned using it as a way to debug things. I assume this is now
covered by the dry run option?
> Signed-off-by: Vladimir Sementsov-Ogievskiy <vsementsov@virtuozzo.com>
> ---
> docs/devel/testing.rst | 50 +++++++++-
> tests/qemu-iotests/findtests.py | 159 ++++++++++++++++++++++++++++++++
> 2 files changed, 208 insertions(+), 1 deletion(-)
> create mode 100644 tests/qemu-iotests/findtests.py
> + def add_group_file(self, fname: str) -> None:
> + with open(fname) as f:
> + for line in f:
> + line = line.strip()
> +
> + if (not line) or line[0] == '#':
> + continue
> +
> + words = line.split()
> + test_file = self.parse_test_name(words[0])
> + groups = words[1:]
The previous version still had this:
+ if test_file not in self.all_tests:
+ print(f'Warning: {fname}: "{test_file}" test is not found.'
+ ' Skip.')
+ continue
Why did you remove it? I found this useful when I had a wrong test name
in my group.local. Now it's silently ignored.
> + for g in groups:
> + self.groups[g].add(test_file)
Kevin
next prev parent reply other threads:[~2021-01-22 11:49 UTC|newest]
Thread overview: 46+ messages / expand[flat|nested] mbox.gz Atom feed top
2021-01-16 13:44 [PATCH v7 00/11] Rework iotests/check Vladimir Sementsov-Ogievskiy
2021-01-16 13:44 ` [PATCH v7 01/11] iotests/277: use dot slash for nbd-fault-injector.py running Vladimir Sementsov-Ogievskiy
2021-01-16 13:44 ` [PATCH v7 02/11] iotests/303: use dot slash for qcow2.py running Vladimir Sementsov-Ogievskiy
2021-01-16 13:44 ` [PATCH v7 03/11] iotests: fix some whitespaces in test output files Vladimir Sementsov-Ogievskiy
2021-01-16 13:44 ` [PATCH v7 04/11] iotests: make tests executable Vladimir Sementsov-Ogievskiy
2021-01-16 13:44 ` [PATCH v7 05/11] iotests/294: add shebang line Vladimir Sementsov-Ogievskiy
2021-01-16 13:44 ` [PATCH v7 06/11] iotests: define group in each iotest Vladimir Sementsov-Ogievskiy
2021-01-16 13:44 ` [PATCH v7 07/11] iotests: add findtests.py Vladimir Sementsov-Ogievskiy
2021-01-21 16:18 ` Eric Blake
2021-01-21 16:21 ` Eric Blake
2021-01-21 16:57 ` Vladimir Sementsov-Ogievskiy
2021-01-22 11:48 ` Kevin Wolf [this message]
2021-01-22 11:57 ` Vladimir Sementsov-Ogievskiy
2021-01-22 12:45 ` Kevin Wolf
2021-01-22 13:16 ` Vladimir Sementsov-Ogievskiy
2021-01-22 13:34 ` Kevin Wolf
2021-01-22 13:52 ` Vladimir Sementsov-Ogievskiy
2021-01-22 11:49 ` Kevin Wolf
2021-01-22 11:59 ` Vladimir Sementsov-Ogievskiy
2021-01-16 13:44 ` [PATCH v7 08/11] iotests: add testenv.py Vladimir Sementsov-Ogievskiy
2021-01-21 16:48 ` Eric Blake
2021-01-21 17:03 ` Vladimir Sementsov-Ogievskiy
2021-01-22 14:34 ` Kevin Wolf
2021-01-16 13:44 ` [PATCH v7 09/11] iotests: add testrunner.py Vladimir Sementsov-Ogievskiy
2021-01-21 17:02 ` Eric Blake
2021-01-21 17:17 ` Vladimir Sementsov-Ogievskiy
2021-01-22 14:11 ` Kevin Wolf
2021-01-22 14:22 ` Vladimir Sementsov-Ogievskiy
2021-01-22 14:51 ` Kevin Wolf
2021-01-22 15:01 ` Vladimir Sementsov-Ogievskiy
2021-01-16 13:44 ` [PATCH v7 10/11] iotests: rewrite check into python Vladimir Sementsov-Ogievskiy
2021-01-21 17:22 ` Eric Blake
2021-01-22 13:53 ` Vladimir Sementsov-Ogievskiy
2021-01-22 16:08 ` Kevin Wolf
2021-01-23 15:08 ` Vladimir Sementsov-Ogievskiy
2021-01-25 12:02 ` Kevin Wolf
2021-01-25 12:31 ` Vladimir Sementsov-Ogievskiy
2021-01-16 13:44 ` [PATCH v7 11/11] iotests: rename and move 169 and 199 tests Vladimir Sementsov-Ogievskiy
2021-01-20 20:52 ` [PATCH v7 00/11] Rework iotests/check Eric Blake
2021-01-22 11:27 ` Kevin Wolf
2021-01-22 11:32 ` Vladimir Sementsov-Ogievskiy
2021-01-22 16:08 ` Eric Blake
2021-01-22 16:18 ` Kevin Wolf
2021-01-21 15:08 ` Paolo Bonzini
2021-01-22 16:16 ` Kevin Wolf
2021-01-23 15:14 ` Vladimir Sementsov-Ogievskiy
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=20210122114815.GC15866@merkur.fritz.box \
--to=kwolf@redhat.com \
--cc=den@openvz.org \
--cc=jsnow@redhat.com \
--cc=mreitz@redhat.com \
--cc=qemu-block@nongnu.org \
--cc=qemu-devel@nongnu.org \
--cc=vsementsov@virtuozzo.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.
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 NNTP newsgroup(s).