|
Packit Service |
eebd6f |
#!/usr/bin/python3
|
|
Packit Service |
eebd6f |
|
|
Packit Service |
eebd6f |
# checkpoint:
|
|
Packit Service |
eebd6f |
# 1. Selected components in edit blueprint page
|
|
Packit Service |
eebd6f |
# 2. Package detail and add, remove, apply package from detail page
|
|
Packit Service |
eebd6f |
|
|
Packit Service |
eebd6f |
import composerlib
|
|
Packit Service |
eebd6f |
import testlib
|
|
Packit Service |
eebd6f |
|
|
Packit Service |
eebd6f |
|
|
Packit Service |
eebd6f |
@testlib.nondestructive
|
|
Packit Service |
eebd6f |
class TestDependence(composerlib.ComposerCase):
|
|
Packit Service |
eebd6f |
|
|
Packit Service |
eebd6f |
def testComponent(self):
|
|
Packit Service |
eebd6f |
b = self.browser
|
|
Packit Service |
eebd6f |
|
|
Packit Service |
0c2606 |
self.login_and_go("/composer", superuser=True)
|
|
Packit Service |
eebd6f |
b.wait_present("#main")
|
|
Packit Service |
eebd6f |
|
|
Packit Service |
eebd6f |
# go to edit package page
|
|
Packit Service |
eebd6f |
b.click("li[data-blueprint=openssh-server] a:contains('Edit Packages')")
|
|
Packit Service |
eebd6f |
with b.wait_timeout(120):
|
|
Packit Service |
eebd6f |
b.wait_present("ul[aria-label='Available Components'] li:nth-child(1)")
|
|
Packit Service |
eebd6f |
|
|
Packit Service |
eebd6f |
# open component detail
|
|
Packit Service |
eebd6f |
b.click("#openssh-server-toggle")
|
|
Packit Service |
eebd6f |
b.wait_attr("#openssh-server-toggle", "aria-expanded", "true")
|
|
Packit Service |
eebd6f |
# Disable this part of test due to issue
|
|
Packit Service |
eebd6f |
# https://github.com/osbuild/cockpit-composer/issues/942
|
|
Packit Service |
eebd6f |
# # depsolving dependencies needs more time
|
|
Packit Service |
eebd6f |
# with b.wait_timeout(480):
|
|
Packit Service |
eebd6f |
# b.wait_present(".cc-component-summary__deps")
|
|
Packit Service |
eebd6f |
# # show all
|
|
Packit Service |
eebd6f |
# b.click("button:contains('Show All')")
|
|
Packit Service |
eebd6f |
# # show less
|
|
Packit Service |
eebd6f |
# b.click("button:contains('Show Less')")
|
|
Packit Service |
eebd6f |
# close detail
|
|
Packit Service |
eebd6f |
b.click("#openssh-server-toggle")
|
|
Packit Service |
eebd6f |
b.wait_not_visible("#openssh-server-details")
|
|
Packit Service |
eebd6f |
|
|
Packit Service |
eebd6f |
# dependencies tab
|
|
Packit Service |
eebd6f |
b.click("#blueprint-tabs-tab-dependencies")
|
|
Packit Service |
eebd6f |
b.wait_visible("#blueprint-tabs-pane-dependencies")
|
|
Packit Service |
eebd6f |
|
|
Packit Service |
eebd6f |
# collect code coverage result
|
|
Packit Service |
eebd6f |
self.check_coverage()
|
|
Packit Service |
eebd6f |
|
|
Packit Service |
eebd6f |
def testDetails(self):
|
|
Packit Service |
eebd6f |
b = self.browser
|
|
Packit Service |
eebd6f |
|
|
Packit Service |
0c2606 |
self.login_and_go("/composer", superuser=True)
|
|
Packit Service |
eebd6f |
b.wait_present("#main")
|
|
Packit Service |
eebd6f |
|
|
Packit Service |
eebd6f |
# go to edit package page
|
|
Packit Service |
eebd6f |
b.click("li[data-blueprint=openssh-server] a:contains('Edit Packages')")
|
|
Packit Service |
eebd6f |
with b.wait_timeout(120):
|
|
Packit Service |
eebd6f |
b.wait_present("ul[aria-label='Available Components'] li:nth-child(1)")
|
|
Packit Service |
eebd6f |
|
|
Packit Service |
eebd6f |
# view openssh-server package detail
|
|
Packit Service |
eebd6f |
b.click("#openssh-server-kebab")
|
|
Packit Service |
eebd6f |
b.wait_attr("#openssh-server-kebab", "aria-expanded", "true")
|
|
Packit Service |
eebd6f |
b.click("ul[aria-labelledby=openssh-server-kebab] a:contains('View')")
|
|
Packit Service |
eebd6f |
# version selection
|
|
Packit Service |
eebd6f |
# group actions for select from dropdown menu
|
|
Packit Service |
eebd6f |
b.wait_visible("#cmpsr-compon__version-select")
|
|
Packit Service |
eebd6f |
version_selector = "#cmpsr-compon__version-select option[value='1']"
|
|
Packit Service |
eebd6f |
b.wait_present(version_selector)
|
|
Packit Service |
eebd6f |
value_id = b.attr(version_selector, "value")
|
|
Packit Service |
eebd6f |
b.set_val("#cmpsr-compon__version-select", value_id)
|
|
Packit Service |
eebd6f |
b.wait_val("#cmpsr-compon__version-select", value_id)
|
|
Packit Service |
eebd6f |
# group actions end
|
|
Packit Service |
eebd6f |
b.click("button:contains('Apply Change')")
|
|
Packit Service |
eebd6f |
b.wait_present("a:contains('1 Pending Change')")
|
|
Packit Service |
eebd6f |
|
|
Packit Service |
eebd6f |
# search for openssh-server pacakge
|
|
Packit Service |
eebd6f |
b.set_input_text("#cmpsr-blueprint-input-filter", "tmux")
|
|
Packit Service |
eebd6f |
b.key_press("\r")
|
|
Packit Service |
eebd6f |
with b.wait_timeout(120):
|
|
Packit Service |
eebd6f |
b.click("#tmux-input")
|
|
Packit Service |
eebd6f |
b.wait_visible("#cmpsr-compon__version-select")
|
|
Packit Service |
eebd6f |
b.click("#blueprint-tabs-tab-dependencies")
|
|
Packit Service |
eebd6f |
# add tmux to blueprint
|
|
Packit Service |
eebd6f |
b.click(".cmpsr-header__actions button:contains('Add')")
|
|
Packit Service |
eebd6f |
b.wait_present("a:contains('2 Pending Change')")
|
|
Packit Service |
eebd6f |
b.wait_present("li[data-component=tmux]")
|
|
Packit Service |
eebd6f |
|
|
Packit Service |
eebd6f |
# view tmux detail
|
|
Packit Service |
eebd6f |
b.click("li[data-component=tmux] #tmux")
|
|
Packit Service |
eebd6f |
b.wait_visible("#cmpsr-compon__version-select")
|
|
Packit Service |
eebd6f |
# back to openssh-server
|
|
Packit Service |
eebd6f |
b.click("a:contains('Back to openssh-server')")
|
|
Packit Service |
eebd6f |
b.wait_present("li[data-component=tmux]")
|
|
Packit Service |
eebd6f |
|
|
Packit Service |
eebd6f |
# remove from tumx detail
|
|
Packit Service |
eebd6f |
b.click("li[data-component=tmux] #tmux")
|
|
Packit Service |
eebd6f |
b.wait_visible("#cmpsr-compon__version-select")
|
|
Packit Service |
eebd6f |
b.click("button:contains('Remove')")
|
|
Packit Service |
eebd6f |
b.wait_present("a:contains('1 Pending Change')")
|
|
Packit Service |
eebd6f |
|
|
Packit Service |
eebd6f |
# collect code coverage result
|
|
Packit Service |
eebd6f |
self.check_coverage()
|
|
Packit Service |
eebd6f |
|
|
Packit Service |
eebd6f |
|
|
Packit Service |
eebd6f |
if __name__ == '__main__':
|
|
Packit Service |
eebd6f |
testlib.test_main()
|