action #95745
Updated by syrianidou_sofia 11 months ago
**## ## Motivation
Currently, there are two different approaches used for the same navigation functionality (`press_next()` method in controllers for specific pages and in NavigationController).
In order to have consistency and to not collect technical debt, only one solution should be kept - NavigationController.
## Scope
Existing Test Modules, Controllers and Pages that use `press_next` with LibyuiClient (e.g. `tests/installation/system_role/select_role.pm`, `lib/Installation/SystemRole/SystemRoleController.pm`, `lib/Installation/SystemRole/SystemRolePage.pm`)
## Task
1. Find test modules, controllers and pages that use `press_next` with LibyuiClient (`press_next` method in the [approach where we use needles](https://github.com/os-autoinst/os-autoinst-distri-opensuse/blob/af56de66d5ea0266a79c918717600a9af68b8636/lib/Installation/Partitioner/NewPartitionTypePage.pm#L25) is out of scope);
2. Remove the `press_next` from pages, controllers and test modules that use it;
3. Replace the former approach with the [NavigationController#proceed_next_screen()](https://github.com/os-autoinst/os-autoinst-distri-opensuse/blob/af56de66d5ea0266a79c918717600a9af68b8636/lib/Installation/Navigation/NavigationController.pm#L36).
4. Check first the cases where press_next is already separated at test level, but not in NavigationController
5. In case the task is very big, we can split it into smaller ones.
Currently, there are two different approaches used for the same navigation functionality (`press_next()` method in controllers for specific pages and in NavigationController).
In order to have consistency and to not collect technical debt, only one solution should be kept - NavigationController.
## Scope
Existing Test Modules, Controllers and Pages that use `press_next` with LibyuiClient (e.g. `tests/installation/system_role/select_role.pm`, `lib/Installation/SystemRole/SystemRoleController.pm`, `lib/Installation/SystemRole/SystemRolePage.pm`)
## Task
1. Find test modules, controllers and pages that use `press_next` with LibyuiClient (`press_next` method in the [approach where we use needles](https://github.com/os-autoinst/os-autoinst-distri-opensuse/blob/af56de66d5ea0266a79c918717600a9af68b8636/lib/Installation/Partitioner/NewPartitionTypePage.pm#L25) is out of scope);
2. Remove the `press_next` from pages, controllers and test modules that use it;
3. Replace the former approach with the [NavigationController#proceed_next_screen()](https://github.com/os-autoinst/os-autoinst-distri-opensuse/blob/af56de66d5ea0266a79c918717600a9af68b8636/lib/Installation/Navigation/NavigationController.pm#L36).
4. Check first the cases where press_next is already separated at test level, but not in NavigationController
5. In case the task is very big, we can split it into smaller ones.