misc: update documentation to reflect auto-generated group files
authorDarrick J. Wong <djwong@kernel.org>
Mon, 21 Jun 2021 16:12:09 +0000 (09:12 -0700)
committerEryu Guan <guaneryu@gmail.com>
Sun, 27 Jun 2021 14:50:32 +0000 (22:50 +0800)
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@kernel.org>
Reviewed-by: Allison Henderson <allison.henderson@oracle.com>
Reviewed-by: Chandan Babu R <chandanrlinux@gmail.com>
Signed-off-by: Eryu Guan <guaneryu@gmail.com>
README

diff --git a/README b/README
index 048491a..18f7a6b 100644 (file)
--- 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,22 @@ 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.  Group 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.  For example, the code:
+
+       _begin_fstest auto quick subvol snapshot
+
+       associates the current test with the "auto", "quick", "subvol", and
+       "snapshot" groups.  It is not necessary to specify the "all" group
+       in the list because that group is computed at run time.
+
+       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