Testsuite: enforce different exim/testuser group numbers
authorJeremy Harris <jgh146exb@wizmail.org>
Fri, 5 Feb 2016 18:16:30 +0000 (18:16 +0000)
committerJeremy Harris <jgh146exb@wizmail.org>
Fri, 5 Feb 2016 18:16:30 +0000 (18:16 +0000)
test/README
test/runtest

index a856e2e..bcf0349 100644 (file)
@@ -73,12 +73,13 @@ In order to run this test suite, the following requirements must be met:
 
       Defaults:exim-build     timestamp_timeout=480,!tty_tickets
 
-(3) The login under which you run the tests must be in the exim group so that
-    it has access to logs, spool files, etc. The login should not be one of the
-    names "userx", "usery", "userz", or a few other simple ones such as "abcd"
-    and "xyz" and single letters that are used in the tests. The test suite
-    expects the login to have a gecos name; I think it will now run if the
-    gecos field is empty but there may be anomalies.
+(3) The login under which you run the tests must have the exim group as a
+    secondary so that it has access to logs, spool files, etc.  However, it
+    should have a different primary group (eg. "users" vs. "eximgroup"). The
+    login should not be one of the names "userx", "usery", "userz", or a few
+    other simple ones such as "abcd" and "xyz" and single letters that are used
+    in the tests. The test suite expects the login to have a gecos name; I think
+    it will now run if the gecos field is empty but there may be anomalies.
     The login must not contain a dash or an equal sign. (Otherwise some tests
     about local_from_{suffix,prefix} will fail.)
 
index face0dd..b000dbe 100755 (executable)
@@ -3215,6 +3215,11 @@ if ($parm_caller_uid eq $parm_exim_uid) {
   tests_exit(-1, "Exim user ($parm_eximuser,$parm_exim_uid) cannot be "
                 ."the same as caller ($parm_caller,$parm_caller_uid)");
 }
+if ($parm_caller_gid eq $parm_exim_gid) {
+  tests_exit(-1, "Exim group ($parm_eximgroup,$parm_exim_gid) cannot be "
+                ."the same as caller's ($parm_caller) group as it confuses "
+                ."results analysis");
+}
 
 print "The Exim user needs access to the test suite directory. Checking ...";