diff options
Diffstat (limited to 'test/haketilo_test/test_integration.py')
-rw-r--r-- | test/haketilo_test/test_integration.py | 47 |
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 |