move bans filter test + fix plugins + precommit

This commit is contained in:
Jordan Blasenhauer 2024-03-01 23:33:12 +01:00
parent b3e282ec6b
commit 4ecb7e1cec
4 changed files with 39 additions and 42 deletions

View file

@ -9,7 +9,6 @@ from selenium.webdriver.common.keys import Keys
from wizard import DRIVER
from utils import access_page, assert_button_click, safe_get_element
from time import sleep
exit_code = 0
@ -76,35 +75,7 @@ try:
log_error("The bans are present but there should be 2, exiting ...")
exit(1)
log_info("Bans found, trying filters ...")
# Get total bans
bans = safe_get_element(DRIVER, "js", 'document.querySelectorAll("[data-bans-list-item]")')
bans_total = len(bans)
key_word_filter_input = safe_get_element(DRIVER, "js", 'document.querySelector("input#keyword")')
assert isinstance(key_word_filter_input, WebElement), "Key word filter input is not a WebElement"
key_word_filter_input.send_keys("dzq841czqdeqzzd")
bans_hidden = safe_get_element(DRIVER, "js", 'document.querySelectorAll("[data-bans-list-item][class*=hidden]")')
if len(bans_hidden) == 0:
log_error("The keyword filter is not working, exiting ...")
exit(1)
# Reset
key_word_filter_input.send_keys(Keys.CONTROL, "a")
key_word_filter_input.send_keys(Keys.BACKSPACE)
log_info("Keyword filter worked, trying select filters ...")
# Test select filters
select_filters = [{"name": "reason", "id": "reason", "value": "all"}, {"name": "range", "id": "term", "value": "all"}]
for item in select_filters:
DRIVER.execute_script(f"""document.querySelector('[data-bans-setting-select-dropdown-btn="{item["id"]}"][value="{item["value"]}"]').click()""")
log_info("All filters worked, try to delete 1 ban ...")
log_info("Trying to delete 1 ban ...")
try:
entries = safe_get_element(DRIVER, By.XPATH, "//ul[@data-bans-list='']/li", multiple=True, error=True)
@ -152,6 +123,38 @@ try:
log_error("The bans are present but there should be 1, exiting ...")
exit(1)
log_info("Bans found, trying filters ...")
# Get total bans
bans = safe_get_element(DRIVER, "js", 'document.querySelectorAll("[data-bans-list-item]")')
bans_total = len(bans)
if bans_total == 0:
log_error("Need at least one ban to test filters ...")
exit(1)
key_word_filter_input = safe_get_element(DRIVER, "js", 'document.querySelector("input#keyword")')
assert isinstance(key_word_filter_input, WebElement), "Key word filter input is not a WebElement"
key_word_filter_input.send_keys("dzq841czqdeqzzd")
bans_hidden = safe_get_element(DRIVER, "js", 'document.querySelectorAll("[data-bans-list-item][class*=hidden]")')
if len(bans_total) != 0:
log_error("Keyword filtering error, should have match nothing ...")
exit(1)
# Reset
key_word_filter_input.send_keys(Keys.CONTROL, "a")
key_word_filter_input.send_keys(Keys.BACKSPACE)
log_info("Keyword filter worked, trying select filters ...")
# Test select filters
select_filters = [{"name": "reason", "id": "reason", "value": "all"}, {"name": "range", "id": "term", "value": "all"}]
for item in select_filters:
DRIVER.execute_script(f"""document.querySelector('[data-bans-setting-select-dropdown-btn="{item["id"]}"][value="{item["value"]}"]').click()""")
log_info("Ban deleted successfully")
log_info("✅ Bans page tests finished successfully")

View file

@ -1,5 +1,4 @@
from logging import info as log_info, exception as log_exception, error as log_error, warning as log_warning
from random import shuffle
from time import sleep
from selenium.webdriver.common.by import By
@ -99,16 +98,10 @@ try:
log_error(f"The value was not updated ({input_worker.get_attribute('value')} instead of 4096), exiting ...")
exit(1)
log_info("The value was updated successfully, trying to navigate through the global config tabs ...")
log_info("The value was updated successfully, trying to select another plugin ...")
buttons = safe_get_element(DRIVER, By.XPATH, "//button[@data-tab-select-handler='']", multiple=True)
assert isinstance(buttons, list), "Buttons is not a list of WebElements"
# Open dropdown and click button
shuffle(buttons)
for button in buttons:
assert_button_click(DRIVER, "//button[@data-tab-select-dropdown-btn='']")
assert_button_click(DRIVER, button)
assert_button_click(DRIVER, "//button[@data-tab-select-dropdown-btn='']")
assert_button_click(DRIVER, "//button[@data-tab-select-handler='blacklist']")
log_info("✅ Global config page tests finished successfully")
except SystemExit as e:

View file

@ -50,7 +50,8 @@ try:
exit(1)
# Reset
key_word_filter_input.sendKeys(Keys.chord(Keys.CONTROL, "a", Keys.DELETE))
key_word_filter_input.send_keys(Keys.CONTROL, "a")
key_word_filter_input.send_keys(Keys.BACKSPACE)
# Test select filters
select_filters = [

View file

@ -11,7 +11,7 @@ from selenium.webdriver.common.keys import Keys
from wizard import DRIVER
from base import TEST_TYPE
from utils import access_page, assert_alert_message, assert_button_click, safe_get_element, wait_for_service
from utils import access_page, assert_button_click, safe_get_element, wait_for_service
exit_code = 0