aboutsummaryrefslogtreecommitdiff
path: root/test/unit/test_install.py
diff options
context:
space:
mode:
Diffstat (limited to 'test/unit/test_install.py')
-rw-r--r--test/unit/test_install.py30
1 files changed, 12 insertions, 18 deletions
diff --git a/test/unit/test_install.py b/test/unit/test_install.py
index cb8fe36..303d31a 100644
--- a/test/unit/test_install.py
+++ b/test/unit/test_install.py
@@ -25,31 +25,21 @@ from ..extension_crafting import ExtraHTML
from ..script_loader import load_script
from .utils import *
-def content_script():
- script = load_script('content/repo_query_cacher.js')
- return f'{script}; {tab_id_asker}; start();'
-
-def background_script():
- script = load_script('background/broadcast_broker.js',
- '#IMPORT background/CORS_bypass_server.js')
- return f'{script}; {tab_id_responder}; start(); CORS_bypass_server.start();'
-
def setup_view(driver, execute_in_page):
- tab_id = run_content_script_in_new_window(driver, 'https://gotmyowndoma.in')
+ mock_cacher(execute_in_page)
execute_in_page(load_script('html/install.js'))
container_ids, containers_objects = execute_in_page(
'''
const cb_calls = [];
- const install_view = new InstallView(arguments[0],
+ const install_view = new InstallView(0,
() => cb_calls.push("show"),
() => cb_calls.push("hide"));
document.body.append(install_view.main_div);
const ets = () => install_view.item_entries;
const shw = slice => [cb_calls.slice(slice || 0), install_view.shown];
returnval([container_ids, container_ids.map(cid => install_view[cid])]);
- ''',
- tab_id)
+ ''')
containers = dict(zip(container_ids, containers_objects))
@@ -60,8 +50,7 @@ def setup_view(driver, execute_in_page):
return containers, assert_container_displayed
install_ext_data = {
- 'content_script': content_script,
- 'background_script': background_script,
+ 'background_script': broker_js,
'extra_html': ExtraHTML('html/install.html', {}),
'navigate_to': 'html/install.html'
}
@@ -148,7 +137,7 @@ def test_install_normal_usage(driver, execute_in_page, complex_variant):
execute_in_page('returnval(install_view.install_but);').click()
installed = lambda d: 'ly installed!' in containers['dialog_container'].text
- WebDriverWait(driver, 10000).until(installed)
+ WebDriverWait(driver, 10).until(installed)
assert execute_in_page('returnval(shw(2));') == [['show'], True]
execute_in_page('returnval(install_view.dialog_ctx.ok_but);').click()
@@ -188,10 +177,15 @@ def test_install_normal_usage(driver, execute_in_page, complex_variant):
# All items are up to date - verify dialog is instead shown in this case.
execute_in_page('install_view.show(...arguments);',
'https://hydril.la/', 'mapping', root_mapping_id)
- assert execute_in_page('returnval(shw(6));') == [['show'], True]
- assert_container_displayed('dialog_container')
+
+ fetched = lambda d: 'Fetching ' not in containers['dialog_container'].text
+ WebDriverWait(driver, 10).until(fetched)
+
assert 'Nothing to do - packages already installed.' \
in containers['dialog_container'].text
+ assert_container_displayed('dialog_container')
+
+ assert execute_in_page('returnval(shw(6));') == [['show'], True]
execute_in_page('returnval(install_view.dialog_ctx.ok_but);').click()
assert execute_in_page('returnval(shw(6));') == [['show', 'hide'], False]