diff mbox series

tests/functional: Remove sleep workarounds from sh4 test

Message ID 20241122130804.2013662-1-clg@redhat.com (mailing list archive)
State New
Headers show
Series tests/functional: Remove sleep workarounds from sh4 test | expand

Commit Message

Cédric Le Goater Nov. 22, 2024, 1:08 p.m. UTC
These were introduced in the avocado tests to workaround read issues
when interacting with console. They are no longer necessary and we can
use the expected login string instead.

Signed-off-by: Cédric Le Goater <clg@redhat.com>
---
 tests/functional/test_sh4_tuxrun.py | 8 +++-----
 1 file changed, 3 insertions(+), 5 deletions(-)

Comments

Thomas Huth Nov. 22, 2024, 1:49 p.m. UTC | #1
On 22/11/2024 14.08, Cédric Le Goater wrote:
> These were introduced in the avocado tests to workaround read issues
> when interacting with console. They are no longer necessary and we can
> use the expected login string instead.
> 
> Signed-off-by: Cédric Le Goater <clg@redhat.com>
> ---
>   tests/functional/test_sh4_tuxrun.py | 8 +++-----
>   1 file changed, 3 insertions(+), 5 deletions(-)
> 
> diff --git a/tests/functional/test_sh4_tuxrun.py b/tests/functional/test_sh4_tuxrun.py
> index 352cb360ef74..dcb49f28b9aa 100755
> --- a/tests/functional/test_sh4_tuxrun.py
> +++ b/tests/functional/test_sh4_tuxrun.py
> @@ -15,7 +15,7 @@
>   import time
>   
>   from unittest import skipUnless
> -from qemu_test import Asset, exec_command_and_wait_for_pattern, exec_command
> +from qemu_test import Asset, exec_command_and_wait_for_pattern
>   from qemu_test.tuxruntest import TuxRunBaselineTest
>   
>   class TuxRunSh4Test(TuxRunBaselineTest):
> @@ -46,10 +46,8 @@ def test_sh4(self):
>                            console_index=1)
>           self.vm.launch()
>   
> -        self.wait_for_console_pattern("Welcome to TuxTest")
> -        time.sleep(0.1)
> -        exec_command(self, 'root')
> -        time.sleep(0.1)
> +        self.wait_for_console_pattern("tuxtest login:")
> +        exec_command_and_wait_for_pattern(self, 'root', 'root@tuxtest:~#')
>           exec_command_and_wait_for_pattern(self, 'halt',
>                                             "reboot: System halted")

Could we also remove the  @skipUnless(os.getenv('QEMU_TEST_FLAKY_TESTS')...) 
now?

  Thomas
Cédric Le Goater Nov. 22, 2024, 1:52 p.m. UTC | #2
On 11/22/24 14:49, Thomas Huth wrote:
> On 22/11/2024 14.08, Cédric Le Goater wrote:
>> These were introduced in the avocado tests to workaround read issues
>> when interacting with console. They are no longer necessary and we can
>> use the expected login string instead.
>>
>> Signed-off-by: Cédric Le Goater <clg@redhat.com>
>> ---
>>   tests/functional/test_sh4_tuxrun.py | 8 +++-----
>>   1 file changed, 3 insertions(+), 5 deletions(-)
>>
>> diff --git a/tests/functional/test_sh4_tuxrun.py b/tests/functional/test_sh4_tuxrun.py
>> index 352cb360ef74..dcb49f28b9aa 100755
>> --- a/tests/functional/test_sh4_tuxrun.py
>> +++ b/tests/functional/test_sh4_tuxrun.py
>> @@ -15,7 +15,7 @@
>>   import time
>>   from unittest import skipUnless
>> -from qemu_test import Asset, exec_command_and_wait_for_pattern, exec_command
>> +from qemu_test import Asset, exec_command_and_wait_for_pattern
>>   from qemu_test.tuxruntest import TuxRunBaselineTest
>>   class TuxRunSh4Test(TuxRunBaselineTest):
>> @@ -46,10 +46,8 @@ def test_sh4(self):
>>                            console_index=1)
>>           self.vm.launch()
>> -        self.wait_for_console_pattern("Welcome to TuxTest")
>> -        time.sleep(0.1)
>> -        exec_command(self, 'root')
>> -        time.sleep(0.1)
>> +        self.wait_for_console_pattern("tuxtest login:")
>> +        exec_command_and_wait_for_pattern(self, 'root', 'root@tuxtest:~#')
>>           exec_command_and_wait_for_pattern(self, 'halt',
>>                                             "reboot: System halted")
> 
> Could we also remove the  @skipUnless(os.getenv('QEMU_TEST_FLAKY_TESTS')...) now?
> 
>   Thomas
> 

I didn't because of this comment :

     # Note: some segfaults caused by unaligned userspace access

It does not reproduce on my systems though.

C.
Thomas Huth Nov. 22, 2024, 1:55 p.m. UTC | #3
On 22/11/2024 14.52, Cédric Le Goater wrote:
> On 11/22/24 14:49, Thomas Huth wrote:
>> On 22/11/2024 14.08, Cédric Le Goater wrote:
>>> These were introduced in the avocado tests to workaround read issues
>>> when interacting with console. They are no longer necessary and we can
>>> use the expected login string instead.
>>>
>>> Signed-off-by: Cédric Le Goater <clg@redhat.com>
>>> ---
>>>   tests/functional/test_sh4_tuxrun.py | 8 +++-----
>>>   1 file changed, 3 insertions(+), 5 deletions(-)
>>>
>>> diff --git a/tests/functional/test_sh4_tuxrun.py b/tests/functional/ 
>>> test_sh4_tuxrun.py
>>> index 352cb360ef74..dcb49f28b9aa 100755
>>> --- a/tests/functional/test_sh4_tuxrun.py
>>> +++ b/tests/functional/test_sh4_tuxrun.py
>>> @@ -15,7 +15,7 @@
>>>   import time
>>>   from unittest import skipUnless
>>> -from qemu_test import Asset, exec_command_and_wait_for_pattern, 
>>> exec_command
>>> +from qemu_test import Asset, exec_command_and_wait_for_pattern
>>>   from qemu_test.tuxruntest import TuxRunBaselineTest
>>>   class TuxRunSh4Test(TuxRunBaselineTest):
>>> @@ -46,10 +46,8 @@ def test_sh4(self):
>>>                            console_index=1)
>>>           self.vm.launch()
>>> -        self.wait_for_console_pattern("Welcome to TuxTest")
>>> -        time.sleep(0.1)
>>> -        exec_command(self, 'root')
>>> -        time.sleep(0.1)
>>> +        self.wait_for_console_pattern("tuxtest login:")
>>> +        exec_command_and_wait_for_pattern(self, 'root', 'root@tuxtest:~#')
>>>           exec_command_and_wait_for_pattern(self, 'halt',
>>>                                             "reboot: System halted")
>>
>> Could we also remove the  
>> @skipUnless(os.getenv('QEMU_TEST_FLAKY_TESTS')...) now?
>>
>>   Thomas
>>
> 
> I didn't because of this comment :
> 
>      # Note: some segfaults caused by unaligned userspace access
> 
> It does not reproduce on my systems though.

I also cannot reproduce the problem anymore here ... so maybe we should give 
it a try and remove the skipUnless now?

  Thomas
diff mbox series

Patch

diff --git a/tests/functional/test_sh4_tuxrun.py b/tests/functional/test_sh4_tuxrun.py
index 352cb360ef74..dcb49f28b9aa 100755
--- a/tests/functional/test_sh4_tuxrun.py
+++ b/tests/functional/test_sh4_tuxrun.py
@@ -15,7 +15,7 @@ 
 import time
 
 from unittest import skipUnless
-from qemu_test import Asset, exec_command_and_wait_for_pattern, exec_command
+from qemu_test import Asset, exec_command_and_wait_for_pattern
 from qemu_test.tuxruntest import TuxRunBaselineTest
 
 class TuxRunSh4Test(TuxRunBaselineTest):
@@ -46,10 +46,8 @@  def test_sh4(self):
                          console_index=1)
         self.vm.launch()
 
-        self.wait_for_console_pattern("Welcome to TuxTest")
-        time.sleep(0.1)
-        exec_command(self, 'root')
-        time.sleep(0.1)
+        self.wait_for_console_pattern("tuxtest login:")
+        exec_command_and_wait_for_pattern(self, 'root', 'root@tuxtest:~#')
         exec_command_and_wait_for_pattern(self, 'halt',
                                           "reboot: System halted")