summaryrefslogtreecommitdiff
path: root/test/haketilo_test/test_integration.py
diff options
context:
space:
mode:
Diffstat (limited to 'test/haketilo_test/test_integration.py')
-rw-r--r--test/haketilo_test/test_integration.py47
1 files changed, 47 insertions, 0 deletions
diff --git a/test/haketilo_test/test_integration.py b/test/haketilo_test/test_integration.py
new file mode 100644
index 0000000..87d1827
--- /dev/null
+++ b/test/haketilo_test/test_integration.py
@@ -0,0 +1,47 @@
+# SPDX-License-Identifier: CC0-1.0
+
+"""
+Haketilo integration tests
+"""
+
+# This file is part of Haketilo
+#
+# Copyright (C) 2022 Wojtek Kosior <koszko@koszko.org>
+#
+# This program is free software: you can redistribute it and/or modify
+# it under the terms of the CC0 1.0 Universal License as published by
+# the Creative Commons Corporation.
+#
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# CC0 1.0 Universal License for more details.
+
+import pytest
+
+from .extension_crafting import get_extension_base_url
+
+@pytest.mark.usefixtures('haketilo')
+def test_integration(driver):
+ """
+ Verify that the entire extension functions properly. Also verify bunlded
+ default settings get loaded properly.
+ """
+ base_url = get_extension_base_url(driver)
+ driver.get(base_url + 'html/settings.html')
+
+ for tab_head_id, item_text in [
+ ('resources_head', 'Haketilo demonstrational script'),
+ ('mappings_head', 'Haketilo demonstrational message'),
+ ]:
+ driver.find_element_by_id(tab_head_id).click()
+ lst = driver.find_element_by_css_selector('.active_tab .item_list')
+ assert lst.is_displayed()
+ assert item_text in lst.text
+
+ driver.find_element_by_id('repos_head').click()
+ lst = driver.find_element_by_css_selector('.active_tab .text_entries')
+ assert 'https://hydrilla.koszko.org/api_v1' in lst.text
+
+ # TODO: do some more tests, including popup interaction and repository
+ # querying