On 6/8/21 10:20 AM, Darrick J. Wong wrote:
From: Darrick J. Wong <djwong@xxxxxxxxxx>
Update the documentation to outline the new requirements for test files
so that we can generate group files during build.
Signed-off-by: Darrick J. Wong <djwong@xxxxxxxxxx>
Ok, that sounds about right
Reviewed-by: Allison Henderson <allison.henderson@xxxxxxxxxx>
---
README | 19 ++++++++++++++++---
1 file changed, 16 insertions(+), 3 deletions(-)
diff --git a/README b/README
index 048491a6..ab298ca9 100644
--- a/README
+++ b/README
@@ -140,7 +140,8 @@ Running tests:
- ./check '*/001' '*/002' '*/003'
- ./check '*/06?'
- Groups of tests maybe ran by: ./check -g [group(s)]
- See the 'group' file for details on groups
+ See the tests/*/group.list files after building xfstests to learn about
+ each test's group memberships.
- If you want to run all tests regardless of what group they are in
(including dangerous tests), use the "all" group: ./check -g all
- To randomize test order: ./check -r [test(s)]
@@ -174,8 +175,8 @@ Test script environment:
When developing a new test script keep the following things in
mind. All of the environment variables and shell procedures are
- available to the script once the "common/rc" file has been
- sourced.
+ available to the script once the "common/preamble" file has been
+ sourced and the "_begin_fstest" function has been called.
1. The tests are run from an arbitrary directory. If you want to
do operations on an XFS filesystem (good idea, eh?), then do
@@ -249,6 +250,18 @@ Test script environment:
in the ./new script. It can contain only alphanumeric characters
and dash. Note the "NNN-" part is added automatically.
+ 6. Test group membership: Each test can be associated with any number
+ of groups for convenient selection of subsets of tests. Test names
+ can be any sequence of non-whitespace characters. Test authors
+ associate a test with groups by passing the names of those groups as
+ arguments to the _begin_fstest function:
+
+ _begin_fstest auto quick subvol snapshot
+
+ The build process scans test files for _begin_fstest invocations and
+ compiles the group list from that information. In other words, test
+ files must call _begin_fstest or they will not be run.
+
Verified output:
Each test script has a name, e.g. 007, and an associated