Project

General

Profile

action #89938

Updated by riafarov about 3 years ago

## Motivation 

 There are a lot of cases when test has to wait for module to be closed, e.g. test changes something in YaST module, then closes the module and has to check in console that the changes were applied.  

 Right now there is no single way to check that the app is closed - almost all the ways (if not all) are using needles. And for all the different cases the appropriate needles should be created. In order to reduce the amount of used needles and to make tests more abstract and stable regardless of the UI state, there should be a way to determine if a module is closed. 

 ## Task 
 1. Implement ability to check if YaST module is closed; 
 2. Use this method in the existing test modules that validates YaST modules (yast2_lan_hostname_dhcp_no, yast2_lan_hostname_dhcp_yes, yast2_lan_hostname_dhcp_yes_eth); 
 3. Possible place to keep this method is YaST::Module class. 

 (Optional) An idea for implementation 
 Use LibyuiClient wait_until and send requests to the app. When connection is refused, assume that this module is closed. 
 Good part is that nothing except LibyuiClient is needed. This way does not rely on needles at all, that is a plus. 
 Possible issue is that connection may be refused, but module may not be closed. Even though this may not be a frequent case, we need to investigate if this may occur before implementing.

Back