def test_get_value_from_cookie_with_correct_value():
    finder = Finder("driver", "logger")
    test_interrogator = Interrogator(MockDriver(), finder, "logger")
    name = "cookie-consent"
    result = test_interrogator.get_value_from_cookie(name)
    assert_that(result, equal_to("%7B%22preferences%22%3Atrue%7D"),
                f"Incorrect cookie value when searching for name: '{name}'")
Ejemplo n.º 2
0
def test_get_value_from_cookie_with_wrong_key_value():
    finder = Finder("driver", "logger")
    test_interrogator = Interrogator(MockDriver(), finder, "logger")
    name = "nhsuk-consent"
    result = test_interrogator.get_value_from_cookie(name)
    assert_that(result, equal_to(""),
                f"Incorrect cookie value when searching for name: '{name}'")
Ejemplo n.º 3
0
def test_is_element_or_parent_visible_no_elements_found():
    mock_finder = MagicMock()
    mock_finder.elements.return_value = []
    interrogate = Interrogator(None, mock_finder, None)

    result = interrogate.is_element_or_parent_visible(default_page_element)

    assert_that(result, equal_to(False), "No elements should have been found")
Ejemplo n.º 4
0
def test_is_element_or_parent_visible_parent_visible():
    mock_finder = MagicMock()
    mock_finder.elements.return_value = [MockElement(False, False, True)]
    interrogate = Interrogator(None, mock_finder, None)

    result = interrogate.is_element_or_parent_visible(default_page_element)

    assert_that(result, equal_to(True), "Element's parent should be visible")
Ejemplo n.º 5
0
def test_get_number_of_elements():
    mock_finder = MagicMock()
    mock_finder.elements.return_value = ["element_1", "element_2", "element_3"]
    interrogate = Interrogator(None, mock_finder, None)

    result = interrogate.get_number_of_elements(default_page_element)

    assert_that(result, equal_to(3), "Incorrect number of elements found")
Ejemplo n.º 6
0
def test_get_current_url():
    mock_driver = MagicMock()
    mock_driver.current_url = "test/url"
    interrogate = Interrogator(mock_driver, None, None)

    result = interrogate.get_current_url()

    assert_that(result, equal_to("test/url"), "The correct URL was not found")
Ejemplo n.º 7
0
def test_get_attribute_no_element_found():
    mock_finder = MagicMock()
    mock_finder.elements.return_value = []
    interrogate = Interrogator(None, mock_finder, None)

    result = interrogate.get_attribute(default_page_element, "test_attr")

    assert_that(result, equal_to(""), "No elements should have been found")
Ejemplo n.º 8
0
def test_is_element_visible():
    elements = [MockElement("true")]
    finder = MockFinder(list_of_elements_to_return=elements)
    test_interrogator = Interrogator("", finder, "logger")

    test_interrogator.is_element_visible(PageElement(By.ID, "some_id"))
    assert_that(elements[0].is_displayed_called, is_(1),
                "is_displayed was not called the expected amount of times")
Ejemplo n.º 9
0
def test_element_has_class_no_elements_found():
    mock_finder = MagicMock()
    mock_finder.elements.return_value = []
    interrogate = Interrogator(None, mock_finder, None)

    result = interrogate.element_has_class(default_page_element, "test_class")

    assert_that(result, equal_to(False), "No elements should have been found")
Ejemplo n.º 10
0
def test_is_element_enabled_no_element_found():
    mock_finder = MagicMock()
    mock_finder.elements.return_value = []
    interrogate = Interrogator(None, mock_finder, None)

    result = interrogate.is_element_enabled(default_page_element)

    assert_that(result, equal_to(False), "Element should not be found")
Ejemplo n.º 11
0
def test_get_number_of_elements_with_background_url_no_elements_found():
    mock_finder = MagicMock()
    mock_finder.elements.return_value = []
    interrogate = Interrogator(None, mock_finder, None)

    result = interrogate.get_number_of_elements_with_background_url(
        default_page_element)

    assert_that(result, equal_to(0), "No elements should have been found")
Ejemplo n.º 12
0
def test_table_is_not_empty_handles_table_body_not_found():
    mock_finder = MagicMock()
    mock_finder.element.return_value = None
    interrogate = Interrogator(None, mock_finder, MagicMock(name="logger"))

    result = interrogate.table_is_not_empty(default_page_element)

    assert_that(result, equal_to(False),
                "Empty table body should have been handled")
Ejemplo n.º 13
0
def test_is_element_visible_and_contains_text_no_elements_found():
    mock_finder = MagicMock()
    mock_finder.visible_elements.return_value = []
    interrogate = Interrogator(None, mock_finder, None)

    result = interrogate.is_element_visible_and_contains_text(
        default_page_element, "test-text")

    assert_that(result, equal_to(False), "No elements should be found")
Ejemplo n.º 14
0
def test_get_text():
    mock_element = MagicMock()
    mock_element.text = "text_content"
    mock_finder = MagicMock()
    mock_finder.element.return_value = mock_element
    interrogate = Interrogator(None, mock_finder, None)

    result = interrogate.get_text(default_page_element)

    assert_that(result, equal_to("text_content"), "Text not found correctly")
Ejemplo n.º 15
0
def test_is_element_enabled():
    mock_element = MagicMock()
    mock_element.is_enabled.return_value = True
    mock_finder = MagicMock()
    mock_finder.elements.return_value = [mock_element]
    interrogate = Interrogator(None, mock_finder, None)

    result = interrogate.is_element_enabled(default_page_element)

    assert_that(result, equal_to(True), "Element should not be enabled")
Ejemplo n.º 16
0
def test_element_contains_link_incorrect_link():
    mock_finder = MagicMock()
    mock_finder.elements.return_value = [MockElement(True)]
    interrogate = Interrogator(None, mock_finder, None)

    result = interrogate.element_contains_link(default_page_element,
                                               "test_url_2")

    assert_that(result, equal_to(False),
                "Element should not have been found with the incorrect link")
Ejemplo n.º 17
0
def test_element_parent_has_class():
    mock_finder = MagicMock()
    mock_finder.elements.return_value = [MockElement(True, False, True)]
    interrogate = Interrogator(None, mock_finder, None)

    result = interrogate.element_parent_has_class(default_page_element,
                                                  "test_class")

    assert_that(result, equal_to(True),
                "Parent should have been found with the expected class")
Ejemplo n.º 18
0
def test_element_sibling_has_class_incorrect_class():
    mock_finder = MagicMock()
    mock_finder.elements.return_value = [MockElement(True)]
    interrogate = Interrogator(None, mock_finder, None)

    result = interrogate.element_sibling_has_class(default_page_element,
                                                   "test_class_2")

    assert_that(result, equal_to(False),
                "Sibling should not have been found with the incorrect class")
def test_get_all_cookies():
    driver = MagicMock()
    driver.get_cookies.return_value = "test_cookie"

    interrogate = Interrogator(driver, None, None)

    cookies = interrogate.get_all_cookies()

    driver.get_cookies.assert_called_once()
    assert_that(cookies, equal_to("test_cookie"),
                "Cookies not returned correctly")
Ejemplo n.º 20
0
def test_table_is_not_empty(mock_get_table_row_count):
    mock_finder = MagicMock()
    mock_finder.element.return_value = [
        "element_1", "element_2", "element_3", "element_4", "element_5"
    ]
    interrogate = Interrogator(None, mock_finder, MagicMock(name="logger"))

    result = interrogate.table_is_not_empty(default_page_element)

    check_mocked_functions_called(mock_get_table_row_count)
    assert_that(result, equal_to(True), "Empty table should have been handled")
Ejemplo n.º 21
0
def test_is_image_visible_by_checking_src_no_src_url():
    interrogate = Interrogator(None, None, None)
    mock_get_attribute = MagicMock(return_value=None)
    interrogate.get_attribute = mock_get_attribute

    result = interrogate.is_image_visible_by_checking_src(default_page_element)

    mock_get_attribute.assert_called_once_with(default_page_element, "src")
    assert_that(
        result, equal_to(True),
        "The image should be considered visible if it has no source URL")
Ejemplo n.º 22
0
def test_element_has_class_incorrect_class():
    mock_element = MagicMock()
    mock_element.is_displayed.return_value = True
    mock_element.get_attribute.return_value = "class1 class2"
    mock_finder = MagicMock()
    mock_finder.elements.return_value = [mock_element]
    interrogate = Interrogator(None, mock_finder, None)

    result = interrogate.element_has_class(default_page_element, "test_class")

    assert_that(result, equal_to(False), "The class should not match")
Ejemplo n.º 23
0
def test_get_attribute():
    mock_element = MagicMock()
    mock_element.get_attribute.return_value = "test_attr_val"
    mock_finder = MagicMock()
    mock_finder.elements.return_value = [mock_element]
    interrogate = Interrogator(None, mock_finder, None)

    result = interrogate.get_attribute(default_page_element, "test_attr")

    assert_that(result, equal_to("test_attr_val"),
                "Element attribute not returned correctly")
Ejemplo n.º 24
0
def test_is_checkbox_selected():
    mock_element = MagicMock()
    mock_element.is_selected.return_value = "result of is_selected"
    mock_finder = MagicMock()
    mock_finder.element.return_value = mock_element
    interrogate = Interrogator(None, mock_finder, None)

    result = interrogate.is_checkbox_selected(default_page_element)

    assert_that(result, equal_to("result of is_selected"),
                "Selection of checkbox should be inspected")
def test_is_element_visible():
    mock_driver = MagicMock()
    elements = [MockElement("true")]
    finder = MockFinder(list_of_elements_to_return=elements)
    wait_time = 10
    test_interrogator = Interrogator(mock_driver, finder, wait_time, "logger")

    test_interrogator.is_element_visible(PageElement(By.ID, "some_id"))
    assert_that(mock_driver.implicitly_wait.call_count, equal_to(2),
                "Expected two calls to implicitly_wait")
    assert_that(elements[0].is_displayed_called, is_(1),
                "is_displayed was not called the expected amount of times")
Ejemplo n.º 26
0
def test_is_checkbox_visible():
    mock_is_element_or_parent_visible = MagicMock(
        return_value="result of is_displayed")
    interrogate = Interrogator(None, None, None)
    interrogate.is_element_or_parent_visible = mock_is_element_or_parent_visible

    result = interrogate.is_checkbox_visible(default_page_element)

    mock_is_element_or_parent_visible.assert_called_once_with(
        default_page_element)
    assert_that(result, equal_to("result of is_displayed"),
                "Result not returned correctly")
Ejemplo n.º 27
0
def test_are_elements_visible_one_not_displayed():
    elements = [
        MockElement(True, False),
        MockElement(True, False),
        MockElement(False, False)
    ]
    mock_finder = MagicMock()
    mock_finder.elements.return_value = elements
    interrogate = Interrogator(None, mock_finder, None)

    result = interrogate.are_elements_visible(default_page_element)

    assert_that(result, equal_to(False), "One element should not be visible")
Ejemplo n.º 28
0
def test_get_table_row_count():
    mock_element = MagicMock()
    mock_element.find_elements_by_tag_name.return_value = [
        "element_1", "element_2"
    ]
    mock_finder = MagicMock()
    mock_finder.element.return_value = mock_element
    interrogate = Interrogator(None, mock_finder, None)

    result = interrogate.get_table_row_count(default_page_element)

    mock_element.find_elements_by_tag_name.assert_called_once_with("tr")
    assert_that(result, equal_to(2), "Incorrect number of rows found")
Ejemplo n.º 29
0
def test_are_elements_visible_one_aria_hidden():
    elements = [
        MockElement(True, False),
        MockElement(True, False),
        MockElement(True, True)
    ]
    mock_finder = MagicMock()
    mock_finder.elements.return_value = elements
    interrogate = Interrogator(None, mock_finder, None)

    result = interrogate.are_elements_visible(default_page_element)

    assert_that(result, equal_to(False), "One element should be aria hidden")
Ejemplo n.º 30
0
def test_get_number_of_elements_with_background_url_no_backgrounds():
    mock_element_1 = MagicMock()
    mock_element_2 = MagicMock()
    mock_element_1.value_of_css_property.return_value = "1234"
    mock_element_2.value_of_css_property.return_value = "abcd"
    mock_finder = MagicMock()
    mock_finder.elements.return_value = [mock_element_1, mock_element_2]
    interrogate = Interrogator(None, mock_finder, None)

    result = interrogate.get_number_of_elements_with_background_url(
        default_page_element)

    assert_that(result, equal_to(0), "No elements should have been found")