Ensure remote_daemon_urls appears in settings if automatically_select_daemon is present.

This commit is contained in:
tecnovert
2024-02-22 01:44:25 +02:00
parent b0d169421f
commit a78880bc98
3 changed files with 31 additions and 19 deletions

View File

@@ -1,7 +1,7 @@
#!/usr/bin/env python3
# -*- coding: utf-8 -*-
# Copyright (c) 2022-2023 tecnovert
# Copyright (c) 2022-2024 tecnovert
# Distributed under the MIT software license, see the accompanying
# file LICENSE or http://www.opensource.org/licenses/mit-license.php.
@@ -17,6 +17,13 @@ from util import get_driver
from basicswap.ui.page_offers import default_chart_api_key
def click_option(el, option_text):
for option in el.find_elements(By.TAG_NAME, 'option'):
if option.text == option_text:
option.click()
break
def test_settings(driver):
base_url = 'http://localhost:12701'
node2_url = 'http://localhost:12702'
@@ -31,18 +38,12 @@ def test_settings(driver):
el = driver.find_element(By.NAME, 'debugmode')
selected_option = Select(el).first_selected_option
assert (selected_option.text == 'True')
for option in el.find_elements(By.TAG_NAME, 'option'):
if option.text == 'False':
option.click()
break
click_option(el, 'False')
el = driver.find_element(By.NAME, 'debugui')
selected_option = Select(el).first_selected_option
assert (selected_option.text == 'False')
for option in el.find_elements(By.TAG_NAME, 'option'):
if option.text == 'True':
option.click()
break
click_option(el, 'True')
btn_apply_general.click()
time.sleep(1)
@@ -57,10 +58,7 @@ def test_settings(driver):
el = driver.find_element(By.NAME, 'showchart')
selected_option = Select(el).first_selected_option
assert (selected_option.text == 'True')
for option in el.find_elements(By.TAG_NAME, 'option'):
if option.text == 'False':
option.click()
break
click_option(el, 'False')
difficult_text = '`~!@#$%^&*()-_=+[{}]\\|;:\'",<>./? '
el = driver.find_element(By.NAME, 'chartapikey')
@@ -94,6 +92,16 @@ def test_settings(driver):
assert (settings.get('chart_api_key') == hex_text)
# Reset
btn_apply_general = wait.until(EC.element_to_be_clickable((By.NAME, 'apply_general')))
click_option(driver.find_element(By.NAME, 'debugmode'), 'True')
click_option(driver.find_element(By.NAME, 'debugui'), 'False')
btn_apply_general.click()
btn_apply_chart = wait.until(EC.element_to_be_clickable((By.NAME, 'apply_chart')))
click_option(driver.find_element(By.NAME, 'showchart'), 'True')
btn_apply_chart.click()
time.sleep(1)
# Apply XMR settings with blank nodes list
driver.find_element(By.ID, 'coins-tab').click()
btn_apply_monero = wait.until(EC.element_to_be_clickable((By.NAME, 'apply_monero')))
@@ -104,7 +112,7 @@ def test_settings(driver):
with open(settings_path_0) as fs:
settings = json.load(fs)
assert ('remote_daemon_urls' not in settings['chainclients']['monero'])
assert (len(settings['chainclients']['monero']['remote_daemon_urls']) == 0)
btn_apply_monero = wait.until(EC.element_to_be_clickable((By.NAME, 'apply_monero')))
el = driver.find_element(By.NAME, 'remotedaemonurls_monero')
@@ -126,7 +134,7 @@ def test_settings(driver):
with open(settings_path_0) as fs:
settings = json.load(fs)
assert ('remote_daemon_urls' not in settings['chainclients']['monero'])
assert (len(settings['chainclients']['monero']['remote_daemon_urls']) == 0)
print('Test Passed!')