diff mbox

[ovs-dev,V2,01/10] python tests: Skip python tests specific to Linux

Message ID 1472558417-2016-2-git-send-email-pboca@cloudbasesolutions.com
State Accepted
Headers show

Commit Message

Paul Boca Aug. 30, 2016, noon UTC
There is a difference between POSIX pid and Windows pid, not all the time are equal.
On Windows when a python script is started, a sh command is triggered as the parent
for script. So when we try to get the daemon pid with 'echo $!', this will get the pid of sh
not of python.exe as expected.
Some tests use undefined switches, on Windows, for `kill` command.

Signed-off-by: Paul-Daniel Boca <pboca@cloudbasesolutions.com>
---
V2: Splitted patch in 2 patches.
---
 tests/daemon-py.at | 12 ++++++++++++
 1 file changed, 12 insertions(+)

Comments

Gurucharan Shetty Aug. 30, 2016, 3:14 p.m. UTC | #1
On 30 August 2016 at 05:00, Paul Boca <pboca@cloudbasesolutions.com> wrote:

> There is a difference between POSIX pid and Windows pid, not all the time
> are equal.
> On Windows when a python script is started, a sh command is triggered as
> the parent
> for script. So when we try to get the daemon pid with 'echo $!', this will
> get the pid of sh
> not of python.exe as expected.
> Some tests use undefined switches, on Windows, for `kill` command.
>
> Signed-off-by: Paul-Daniel Boca <pboca@cloudbasesolutions.com>
>
Applied, thanks.


> ---
> V2: Splitted patch in 2 patches.
> ---
>  tests/daemon-py.at | 12 ++++++++++++
>  1 file changed, 12 insertions(+)
>
> diff --git a/tests/daemon-py.at b/tests/daemon-py.at
> index e59c11d..96dea07 100644
> --- a/tests/daemon-py.at
> +++ b/tests/daemon-py.at
> @@ -3,6 +3,8 @@ AT_BANNER([daemon unit tests - Python])
>  m4_define([DAEMON_PYN],
>    [AT_SETUP([daemon - $1])
>     AT_SKIP_IF([test $2 = no])
> +   # Skip this test for Windows, echo $! gives shell pid instead of
> parent process
> +   AT_SKIP_IF([test "$IS_WIN32" = "yes"])
>     AT_KEYWORDS([python daemon])
>     AT_CAPTURE_FILE([pid])
>     AT_CAPTURE_FILE([expected])
> @@ -26,6 +28,8 @@ DAEMON_PYN([Python3], [$HAVE_PYTHON3], [$PYTHON3])
>  m4_define([DAEMON_MONITOR_PYN],
>    [AT_SETUP([daemon --monitor - $1])
>     AT_SKIP_IF([test $2 = no])
> +   # Skip this test for Windows, echo $! gives shell pid instead of
> parent process
> +   AT_SKIP_IF([test "$IS_WIN32" = "yes"])
>     AT_CAPTURE_FILE([pid])
>     AT_CAPTURE_FILE([parent])
>     AT_CAPTURE_FILE([parentpid])
> @@ -73,6 +77,8 @@ DAEMON_MONITOR_PYN([Python3], [$HAVE_PYTHON3],
> [$PYTHON3])
>  m4_define([DAEMON_MONITOR_RESTART_PYN],
>    [AT_SETUP([daemon --monitor restart exit code - $1])
>     AT_SKIP_IF([test $2 = no])
> +   # Skip this test for Windows, echo $! gives shell pid instead of
> parent process
> +   AT_SKIP_IF([test "$IS_WIN32" = "yes"])
>     AT_CAPTURE_FILE([pid])
>     AT_CAPTURE_FILE([parent])
>     AT_CAPTURE_FILE([parentpid])
> @@ -142,6 +148,8 @@ m4_define([CHECK],
>  m4_define([DAEMON_DETACH_MONITOR_PYN],
>    [AT_SETUP([daemon --detach --monitor - $1])
>     AT_SKIP_IF([test $2 = no])
> +   # Skip this test for Windows, uses Linux specific kill signal
> +   AT_SKIP_IF([test "$IS_WIN32" = "yes"])
>     AT_CAPTURE_FILE([daemon])
>     AT_CAPTURE_FILE([olddaemon])
>     AT_CAPTURE_FILE([newdaemon])
> @@ -219,6 +227,8 @@ DAEMON_DETACH_MONITOR_ERRORS_PYN([Python3],
> [$HAVE_PYTHON3], [$PYTHON3])
>  m4_define([DAEMON_DETACH_CLOSES_FDS_PYN],
>    [AT_SETUP([daemon --detach closes standard fds - $1])
>     AT_SKIP_IF([test $2 = no])
> +   # Skip this test for Windows, uses Linux specific kill signal
> +   AT_SKIP_IF([test "$IS_WIN32" = "yes"])
>     AT_CAPTURE_FILE([pid])
>     AT_CAPTURE_FILE([status])
>     AT_CAPTURE_FILE([stderr])
> @@ -243,6 +253,8 @@ DAEMON_DETACH_CLOSES_FDS_PYN([Python3],
> [$HAVE_PYTHON3], [$PYTHON3])
>  m4_define([DAEMON_DETACH_MONITOR_CLOSES_FDS_PYN],
>    [AT_SETUP([daemon --detach --monitor closes standard fds - $1])
>     AT_SKIP_IF([test $2 = no])
> +   # Skip this test for Windows, uses Linux specific kill signal
> +   AT_SKIP_IF([test "$IS_WIN32" = "yes"])
>     AT_CAPTURE_FILE([pid])
>     AT_CAPTURE_FILE([status])
>     AT_CAPTURE_FILE([stderr])
> --
> 2.7.2.windows.1
> _______________________________________________
> dev mailing list
> dev@openvswitch.org
> http://openvswitch.org/mailman/listinfo/dev
>
diff mbox

Patch

diff --git a/tests/daemon-py.at b/tests/daemon-py.at
index e59c11d..96dea07 100644
--- a/tests/daemon-py.at
+++ b/tests/daemon-py.at
@@ -3,6 +3,8 @@  AT_BANNER([daemon unit tests - Python])
 m4_define([DAEMON_PYN],
   [AT_SETUP([daemon - $1])
    AT_SKIP_IF([test $2 = no])
+   # Skip this test for Windows, echo $! gives shell pid instead of parent process
+   AT_SKIP_IF([test "$IS_WIN32" = "yes"])
    AT_KEYWORDS([python daemon])
    AT_CAPTURE_FILE([pid])
    AT_CAPTURE_FILE([expected])
@@ -26,6 +28,8 @@  DAEMON_PYN([Python3], [$HAVE_PYTHON3], [$PYTHON3])
 m4_define([DAEMON_MONITOR_PYN],
   [AT_SETUP([daemon --monitor - $1])
    AT_SKIP_IF([test $2 = no])
+   # Skip this test for Windows, echo $! gives shell pid instead of parent process
+   AT_SKIP_IF([test "$IS_WIN32" = "yes"])
    AT_CAPTURE_FILE([pid])
    AT_CAPTURE_FILE([parent])
    AT_CAPTURE_FILE([parentpid])
@@ -73,6 +77,8 @@  DAEMON_MONITOR_PYN([Python3], [$HAVE_PYTHON3], [$PYTHON3])
 m4_define([DAEMON_MONITOR_RESTART_PYN],
   [AT_SETUP([daemon --monitor restart exit code - $1])
    AT_SKIP_IF([test $2 = no])
+   # Skip this test for Windows, echo $! gives shell pid instead of parent process
+   AT_SKIP_IF([test "$IS_WIN32" = "yes"])
    AT_CAPTURE_FILE([pid])
    AT_CAPTURE_FILE([parent])
    AT_CAPTURE_FILE([parentpid])
@@ -142,6 +148,8 @@  m4_define([CHECK],
 m4_define([DAEMON_DETACH_MONITOR_PYN],
   [AT_SETUP([daemon --detach --monitor - $1])
    AT_SKIP_IF([test $2 = no])
+   # Skip this test for Windows, uses Linux specific kill signal
+   AT_SKIP_IF([test "$IS_WIN32" = "yes"])
    AT_CAPTURE_FILE([daemon])
    AT_CAPTURE_FILE([olddaemon])
    AT_CAPTURE_FILE([newdaemon])
@@ -219,6 +227,8 @@  DAEMON_DETACH_MONITOR_ERRORS_PYN([Python3], [$HAVE_PYTHON3], [$PYTHON3])
 m4_define([DAEMON_DETACH_CLOSES_FDS_PYN],
   [AT_SETUP([daemon --detach closes standard fds - $1])
    AT_SKIP_IF([test $2 = no])
+   # Skip this test for Windows, uses Linux specific kill signal
+   AT_SKIP_IF([test "$IS_WIN32" = "yes"])
    AT_CAPTURE_FILE([pid])
    AT_CAPTURE_FILE([status])
    AT_CAPTURE_FILE([stderr])
@@ -243,6 +253,8 @@  DAEMON_DETACH_CLOSES_FDS_PYN([Python3], [$HAVE_PYTHON3], [$PYTHON3])
 m4_define([DAEMON_DETACH_MONITOR_CLOSES_FDS_PYN],
   [AT_SETUP([daemon --detach --monitor closes standard fds - $1])
    AT_SKIP_IF([test $2 = no])
+   # Skip this test for Windows, uses Linux specific kill signal
+   AT_SKIP_IF([test "$IS_WIN32" = "yes"])
    AT_CAPTURE_FILE([pid])
    AT_CAPTURE_FILE([status])
    AT_CAPTURE_FILE([stderr])