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")
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")