def test(data):
    actions.navigate(data.env.url + 'elements/')
    browser = actions.get_browser()
    selector = 'this is a link to'
    actions.step('Find all elements by partial_link_text')
    links = browser.find_all(partial_link_text=selector)
    assert len(links) == 1
Esempio n. 2
0
def assert_page_in_list(page_name):
    actions.step('Verify that page {} is in the list'.format(page_name))
    imported_pages = elements('#pageObjects>div>input.page-name')
    for page in imported_pages:
        if page.get_attribute('value') == page_name:
            return
    raise AssertionError('Page {} was not found in the list'.format(page_name))
def test(data):
    actions.navigate(data.env.url + 'dynamic-elements/?delay=5')
    browser = actions.get_browser()
    execution.settings['implicit_wait'] = 10
    actions.step('Find element by id with settings timeout')
    button = browser.find(id='button-five')
    assert button.text == 'Click Me'
Esempio n. 4
0
def add_tag(tag_name):
    actions.step('Add tag {}'.format(tag_name))
    tags_input_element = element(tags_input)
    value = tags_input_element.value
    if value:
        tag_name = ', ' + tag_name
    tags_input_element.send_keys(tag_name)
Esempio n. 5
0
def test(data):
    actions.navigate(data.env.url+'elements/')
    browser = actions.get_browser()
    execution.settings['implicit_wait'] = 0
    actions.step('Find element by id with settings timeout equals zero')
    button = browser.find(id='button-one')
    assert button.text == 'Click Me'
Esempio n. 6
0
def add_suite(suite_name):
    actions.step('Add suite {}'.format(suite_name))
    suite_name_split = suite_name.split('.')
    if len(suite_name_split) > 1:
        list_common.add_file_to_folder(suite_name_split, create_folders=True)
    else:
        add_suite_to_current_folder(suite_name)
Esempio n. 7
0
def test(data):
    actions.navigate(data.env.url + 'elements/')
    browser = actions.get_browser()
    selector = '//input[@type="checkbox"]'
    actions.step('Find all elements by xpath')
    checkboxes = browser.find_all(xpath=selector)
    assert len(checkboxes) == 2
Esempio n. 8
0
def add_test(test_name):
    actions.step('Add test {}'.format(test_name))
    test_name_split = test_name.split('.')
    if len(test_name_split) > 1:
        list_common.add_file_to_folder(test_name_split, create_folders=True)
    else:
        add_test_to_current_folder(test_name)
Esempio n. 9
0
def add_folder(folder_name):
    actions.step('Add folder {}'.format(folder_name))
    folder_name_split = folder_name.split('.')
    if len(folder_name_split) > 1:
        list_common.add_folder(folder_name_split)
    else:
        list_common.add_folder_to_current_folder(folder_name)
Esempio n. 10
0
def verify_page_in_list(page_name):
    actions.step('Verify that page {} is in the list'.format(page_name))
    imported_pages = elements('#pageObjects>div>input.selected-page')
    for page in imported_pages:
        if page.get_attribute('value') == page_name:
            return
    raise Exception('Page {} was not found in the list'.format(page_name))
Esempio n. 11
0
def add_page(page_name):
    actions.step('Add page {}'.format(page_name))
    page_name_split = page_name.split('.')
    if len(page_name_split) > 1:
        list_common.add_file_to_folder(page_name_split, create_folders=True)
    else:
        add_page_to_current_folder(page_name)
Esempio n. 12
0
def verify_error_message(error_message):
    actions.step('Verify that the error {} is displayed'.format(error_message))
    actions.wait_for_element_visible(error_modal)
    errors = elements(css='#errorList>li')
    for error in errors:
        if error.text == error_message:
            return
    raise Exception('Error message {} was not found'.format(error_message))
Esempio n. 13
0
def access_project(project_name):
    actions.step('Access project {}'.format(project_name))
    items = elements(project_list_item)
    for item in items:
        if item.text == project_name:
            item.click()
            return
    raise Exception('Project {} not found'.format(project_name))
Esempio n. 14
0
def test(data):
    actions.navigate(data.env.url + 'dynamic-elements/?delay=5')
    browser = actions.get_browser()
    actions.step('Find element by id with timeout')
    try:
        button = browser.find(id='button-one', timeout=3, wait_displayed=True)
    except ElementNotDisplayed:
        pass
def test(data):
    actions.navigate(data.env.url + 'elements/')
    browser = actions.get_browser()
    selector = '.invalid-selector-value'
    actions.step('Find all elements by css')
    elems = browser.find_all(css=selector)
    assert type(elems) == list
    assert len(elems) == 0
Esempio n. 16
0
def test(data):
    actions.navigate(data.env.url + 'elements/')
    browser = actions.get_browser()
    actions.step('Find parent element')
    body = browser.find('body')
    actions.step('Find child element by id')
    inputs = body.find_all(tag_name='input')
    assert len(inputs) == 5
Esempio n. 17
0
def test(data):
    actions.navigate(data.env.url+'elements/')
    browser = actions.get_browser()
    selector = 'exampleRadioButtons'
    actions.step('Find all elements by name')
    radio_buttons = browser.find_all(name=selector)
    assert len(radio_buttons) == 2
    for radio in radio_buttons:
        assert type(radio) == ExtendedWebElement
Esempio n. 18
0
def assert_toast_message_is_displayed_and_contains(toast_message):
    actions.step('Assert a toast is displayed with message {}'.format(toast_message))
    for _ in range(6):
        toasts = elements('div.toast>.toast-message')
        for toast in toasts:
            if toast_message in toast.text:
                return True
        time.sleep(0.5)
    assert False, 'Toast with message "{}" was not found'.format(toast_message)
Esempio n. 19
0
def test(data):
    actions.navigate(data.env.url + 'elements/')
    browser = actions.get_browser()
    selector = '.invalid-selector-value'
    actions.step('Find element by css')
    try:
        elem = browser.find(css=selector)
    except ElementNotFound:
        pass
def test(data):
    actions.navigate(data.env.url + 'elements/')
    browser = actions.get_browser()
    actions.step('Find parent element by id')
    container = browser.find(id='button-one-container')
    actions.step('Find child element by id')
    click_button = container.find(id='button-one')
    assert type(click_button) == ExtendedWebElement
    assert click_button.text == 'Click Me'
Esempio n. 21
0
def test(data):
    actions.navigate(data.env.url + 'elements/')
    browser = actions.get_browser()
    selector = 'img#image1'
    actions.step('Find element by css')
    img = browser.find(css=selector)
    assert type(img) == ExtendedWebElement
    assert img.selector_type == 'css'
    assert img.selector_value == selector
    assert img.name == selector
Esempio n. 22
0
def test(data):
    actions.navigate(data.env.url+'elements/')
    browser = actions.get_browser()
    actions.step('Find element by tuple without element name')
    click_me_button = browser.find(('id', 'button-one'))
    assert type(click_me_button) == ExtendedWebElement
    assert click_me_button.text == 'Click Me'
    assert click_me_button.selector_type == 'id'
    assert click_me_button.selector_value == 'button-one'
    assert click_me_button.name == 'button-one'
Esempio n. 23
0
def wait_for_test_to_run(timeout=10):
    actions.step('Wait for test to run')
    get_browser().wait_for_element_displayed('#testRunModal', timeout=10)
    selector = '#testRunModal i.fa.fa-cog.fa-spin'
    for _ in range(timeout):
        spinners = elements(selector)
        if not any(x.is_displayed() for x in spinners):
            return
        time.sleep(1)
    raise TimeoutError('waiting for test to finish running')
Esempio n. 24
0
def test(data):
    actions.navigate(data.env.url + 'elements/')
    browser = actions.get_browser()
    selector = '//img[@id="image1"]'
    actions.step('Find element by xpath')
    img = browser.find(xpath=selector)
    assert type(img) in [ExtendedRemoteWebElement, ExtendedFirefoxWebElement]
    assert img.selector_type == 'xpath'
    assert img.selector_value == selector
    assert img.name == selector
Esempio n. 25
0
def test(data):
    actions.navigate(data.env.url + 'elements/')
    browser = actions.get_browser()
    click_me_button = browser.find_element_by_id('button-one')
    assert type(click_me_button) == WebElement
    actions.step('Find element given a WebElement')
    result_click_me_button = browser.find(click_me_button)
    assert type(result_click_me_button) == ExtendedWebElement
    actions.step('Find element given a ExtendedWebElement')
    result_click_me_button = browser.find(click_me_button)
    assert type(result_click_me_button) == ExtendedWebElement
Esempio n. 26
0
def test(data):
    actions.navigate(data.env.url + 'elements/')
    browser = actions.get_browser()
    selector = 'img'
    actions.step('Find element by tag_name')
    img = browser.find(tag_name=selector)
    assert type(img) in [ExtendedRemoteWebElement, ExtendedFirefoxWebElement]
    assert img.selector_type == 'tag_name'
    assert img.selector_value == selector
    assert img.name == selector
    assert '/static/images/forkme.png' in img.get_attribute('src')
Esempio n. 27
0
def test(data):
    actions.navigate(data.env.url + 'elements/')
    browser = actions.get_browser()
    selector = 'textarea-name'
    actions.step('Find element by name')
    text_area = browser.find(name=selector)
    assert type(text_area) == ExtendedWebElement
    assert text_area.text == ''
    assert text_area.selector_type == 'name'
    assert text_area.selector_value == selector
    assert text_area.name == selector
Esempio n. 28
0
def test(data):
    actions.navigate(data.env.url + 'elements/')
    browser = actions.get_browser()
    selector = 'input[type="checkbox"]'
    actions.step('Find element by tuple')
    checkboxes = browser.find_all(('css', selector))
    assert len(checkboxes) == 2
    for checkbox in checkboxes:
        assert checkbox.selector_type == 'css'
        assert checkbox.selector_value == selector
        assert checkbox.name == selector
def test(data):
    actions.navigate(data.env.url + 'elements/')
    browser = actions.get_browser()
    selector = 'this is a link to index'
    actions.step('Find element by link_text')
    link = browser.find(link_text=selector)
    assert type(link) == ExtendedWebElement
    assert link.text == selector
    assert link.selector_type == 'link_text'
    assert link.selector_value == selector
    assert link.name == selector
Esempio n. 30
0
def test(data):
    actions.navigate(data.env.url+'elements/')
    browser = actions.get_browser()
    selector = 'img'
    actions.step('Find element by tag_name')
    img = browser.find(tag_name=selector)
    assert type(img) == ExtendedWebElement
    assert img.selector_type == 'tag_name'
    assert img.selector_value == selector
    assert img.name == selector
    assert '/static/images/cat-image.jpg' in img.get_attribute('src')