[dts] [PATCH V1] tests/short_live: use a function to detect process

Tu, Lijuan lijuan.tu at intel.com
Tue Apr 9 03:41:46 CEST 2019


Applied, thanks

> -----Original Message-----
> From: dts [mailto:dts-bounces at dpdk.org] On Behalf Of Wenjie Li
> Sent: Thursday, April 4, 2019 2:21 AM
> To: dts at dpdk.org
> Cc: Li, WenjieX A <wenjiex.a.li at intel.com>
> Subject: [dts] [PATCH V1] tests/short_live: use a function to detect process
> 
> On some platform, it will take more time to kill the process. Add a function
> to detect the process status, if the process is killed within DELAY_MAX
> seconds, break the loop and continue testing, else return "failure".
> 
> Signed-off-by: Wenjie Li <wenjiex.a.li at intel.com>
> ---
>  tests/TestSuite_short_live.py | 20 +++++++++++++++-----
>  1 file changed, 15 insertions(+), 5 deletions(-)
> 
> diff --git a/tests/TestSuite_short_live.py b/tests/TestSuite_short_live.py
> index 7da7dd1..c18dac4 100644
> --- a/tests/TestSuite_short_live.py
> +++ b/tests/TestSuite_short_live.py
> @@ -119,6 +119,18 @@ class TestShortLiveApp(TestCase):
>          else:
>              self.verify('PPP' not in out, "Receive test failed")
> 
> +    def check_process(self, delay_max=10):
> +        process_file = "/var/run/dpdk/rte/config"
> +        delay = 0
> +        while delay < delay_max:
> +            process = self.dut.send_expect("lsof %s | wc -l" % process_file, "#")
> +            if process != '0':
> +                time.sleep(1)
> +                delay = delay + 1
> +            else:
> +                break
> +        self.verify(delay < delay_max, "Failed to kill the process
> + within %s seconds" % delay_max)
> +
>      def test_basic_forwarding(self):
>          """
>          Basic rx/tx forwarding test
> @@ -161,7 +173,7 @@ class TestShortLiveApp(TestCase):
>                  self.dut.send_expect("pkill -2 testpmd", "#", 60, True)
>              else:
>                  self.dut.send_expect("pkill -15 testpmd", "#", 60, True)
> -            time.sleep(2)
> +            self.check_process()
> 
>      def test_clean_up_with_signal_l2fwd(self):
>          repeat_time = 5
> @@ -175,10 +187,9 @@ class TestShortLiveApp(TestCase):
>              # kill with different Signal
>              if i%2 == 0:
>                  self.dut.send_expect("pkill -2 l2fwd", "#", 60, True)
> -                time.sleep(2)
>              else:
>                  self.dut.send_expect("pkill -15 l2fwd", "#", 60, True)
> -                time.sleep(2)
> +            self.check_process()
> 
>      def test_clean_up_with_signal_l3fwd(self):
>          repeat_time = 5
> @@ -192,10 +203,9 @@ class TestShortLiveApp(TestCase):
>              # kill with different Signal
>              if i%2 == 0:
>                  self.dut.send_expect("pkill -2 l3fwd", "#", 60, True)
> -                time.sleep(2)
>              else:
>                  self.dut.send_expect("pkill -15 l3fwd", "#", 60, True)
> -                time.sleep(2)
> +            self.check_process()
> 
>      def tear_down(self):
>          """
> --
> 2.17.2



More information about the dts mailing list