]> git.ipfire.org Git - thirdparty/openvpn.git/commitdiff
t_net.sh: properly perform sudo check and print test steps
authorAntonio Quartulli <antonio@openvpn.net>
Sat, 15 Jun 2019 23:02:13 +0000 (01:02 +0200)
committerGert Doering <gert@greenie.muc.de>
Sun, 16 Jun 2019 08:28:52 +0000 (10:28 +0200)
The current script is performing a test on the "kill" command, but this
is not useful to the t_net.sh script as it never really executes it.

Rather test that "sudo <unit-test-binary>" really works.

<unit-test-binary> has to be added to the sudoers file if this test
has to be performend unattanded. The path is:
./unit_tests/openvpn/networking_testdriver

On top of that, print a simple OK for every test that is succesful.

Signed-off-by: Antonio Quartulli <antonio@openvpn.net>
Acked-by: Gert Doering <gert@greenie.muc.de>
Message-Id: <20190615230213.14888-2-a@unstable.cc>
URL: https://www.mail-archive.com/openvpn-devel@lists.sourceforge.net/msg18548.html
Signed-off-by: Gert Doering <gert@greenie.muc.de>
tests/t_net.sh
tests/unit_tests/openvpn/test_networking.c

index 1940ec92439eadf8d91ec31105f87a6beec1bfed..70e8517d1164851da025d70907a19751635d87e3 100755 (executable)
@@ -125,14 +125,12 @@ else
         echo "      must be set correctly in 't_client.rc'. SKIP." >&2
         exit 77
     else
-        # We have to use sudo. Make sure that we (hopefully) do not have
-        # to ask the users password during the test. This is done to
-        # prevent timing issues, e.g. when the waits for openvpn to start
-           if $RUN_SUDO $KILL_EXEC -0 $$
+        # check that we can run the unit-test binary with sudo
+           if $RUN_SUDO $UNIT_TEST test
         then
-               echo "$0: $RUN_SUDO $KILL_EXEC -0 succeeded, good."
+               echo "$0: $RUN_SUDO $UNIT_TEST succeeded, good."
         else
-               echo "$0: $RUN_SUDO $KILL_EXEC -0 failed, cannot go on. SKIP." >&2
+               echo "$0: $RUN_SUDO $UNIT_TEST failed, cannot go on. SKIP." >&2
                exit 77
         fi
     fi
@@ -172,7 +170,7 @@ for i in $(seq 0 $MAX_TEST); do
             exit 1
         fi
     done
-
+    echo "Test $i: OK"
 done
 
 # remove interface for good
index 66035011684bda1b4e8ba3a978ee867b263e5656..6c50da92e01b72afeb4ee950a95c86d793642a58 100644 (file)
@@ -185,6 +185,12 @@ main(int argc, char *argv[])
         return -1;
     }
 
+    /* the t_net script can use this command to perform a dry-run test */
+    if (strcmp(argv[1], "test") == 0)
+    {
+        return 0;
+    }
+
     if (argc > 3)
     {
         iface = argv[2];