Project

General

Profile

Actions

action #103371

closed

coordination #93668: [epic] Redesign Installation test modules

Implement remaining uses of addon_products_sle with client libyui-rest-api in YaST group in Full Medium

Added by JERiveraMoya almost 3 years ago. Updated almost 3 years ago.

Status:
Closed
Priority:
High
Assignee:
Target version:
Start date:
2021-12-01
Due date:
% Done:

0%

Estimated time:

Description

After https://github.com/libyui/libyui/pull/58 and having most of the installation steps implemented with libyui-rest-api, probably the most important part of code not yet migrated is related with this test module.

This module in our group appears in Full Medium https://openqa.suse.de/tests/overview?arch=&flavor=Full&machine=&test=&modules=addon_products_sle&module_re=&distri=sle&version=15-SP4&build=67.2&groupid=129

Before the fix in server side this command would fail with some event error:
curl -X POST 'http://openqaworker13.suse.de:39097/v1/widgets?id=addon_repos&action=check&value=Desktop+Applications+Module+Snapshot-202112-1

After verify in latest build that this is fixed, we can now interact with YMultiSelectionBox.
For module selection we already have developed modules based in libyui-rest-api but those interact with YRichText:
i.e.: https://openqa.suse.de/tests/7757983#step/select_nonconflicting_modules/1

Also it is developed the final screen lib/Installation/AddOnProductInstallation/AddOnProductInstallationPage.pm

ids of the controls are not similar comparing YMultiSelectionBox and YRichText and they are indeed different UI controls, so we shouldn't try to mix implementation and would be better to have a separate page.
Regarding the controller, as we call wisely methods like "register_module" when using YRichText in Online Medium, now with YMUltiSelectionBox we are not registering, more like using the content of the medium itself, so even if we have 'sort of' the same interface we could also go for a new Controller. We could consider better naming that just differentiate by Online or Offline MEDIUM, but this implementation is for OFFLINE.

For remaining test suites using this test module in Online MEDIUM we can tackle them in other ticket.

Test cases:

Note: we could consider to rename current skip_module_selection to skip_module_registration and use skip_module_selection for this task. Other option could be skip_module_selection_offline. Important thing is that is meaningful looking at it without inspecting the code. Similar for the rest of names of test cases to not collide with the existing names.

Actions

Also available in: Atom PDF