starter-kit/test/check-application
Katerina Koukiou 96514e279e
main: Stop importing patternfly.css
* Stop importing cockpit's base1/patternfly.css

This is deprecated API and will be dropped at some point, in favor
of projects shipping their own CSS.

Install and import the styles from PF4 now.

* Use webpack based string replacement for removing the font-face rules from PF4

Doing the seddery in Makefile breaks `npm run build`, webpack watching,
and is generally brittle.
Do the font replacement hacking with `string-replace-loader`, which fits into webpack much more nicely.

There is still some potential simplification by not duplicating the
entire scss loader chain.

Co-authored-by: Martin Pitt <martin@piware.de>

Closes #315
2020-05-28 10:01:31 +02:00

54 lines
1.9 KiB
Python
Executable file

#!/usr/bin/python3
# Run this with --help to see available options for tracing and debugging
# See https://github.com/cockpit-project/cockpit/blob/master/test/common/testlib.py
# "class Browser" and "class MachineCase" for the available API.
import os
import sys
# import Cockpit's machinery for test VMs and its browser test API
TEST_DIR = os.path.dirname(__file__)
sys.path.append(os.path.join(TEST_DIR, "common"))
sys.path.append(os.path.join(os.path.dirname(TEST_DIR), "bots/machine"))
import testlib
class TestApplication(testlib.MachineCase):
def testBasic(self):
b = self.browser
m = self.machine
self.login_and_go("/starter-kit")
# verify expected heading
b.wait_text("h2.pf-c-title", "Starter Kit")
# verify expected host name
hostname = m.execute("hostname").strip()
b.wait_in_text("h4.pf-c-alert__title", "Running on " + hostname)
# change current hostname
m.execute("echo new-%s > /etc/hostname" % hostname)
# verify new hostname name
b.wait_in_text("h4.pf-c-alert__title", "Running on new-" + hostname)
# change language to German
b.switch_to_top()
b.click("#content-user-name")
b.click(".display-language-menu a")
b.wait_popup('display-language')
b.set_val("#display-language select", "de-de")
b.click("#display-language-select-button")
b.expect_load()
# HACK: work around language switching in Chrome not working in current session (Cockpit issue #8160)
b.reload(ignore_cache=True)
b.wait_present("#content")
# menu label (from manifest) should be translated
b.wait_text("#host-apps a[href='/starter-kit']", "Bausatz")
b.go("/starter-kit")
b.enter_page("/starter-kit")
# page label (from js) should be translated
b.wait_in_text("h4.pf-c-alert__title", "Läuft auf")
if __name__ == '__main__':
testlib.test_main()