def see_the_right_stop_and_duration_time(step): stop_cell = world.wait_for_element('#stop-%s' % world.rows, 5, 0.5) assert that(stop_cell.text).equals(datetime.datetime.now().strftime("%B%e, %Y,%l:%M %P")), \ 'The stop time is not current' duration_cell = world.wait_for_element('#duration-%s' % world.rows, 5, 0.5) assert that(duration_cell.text).equals("00:00:03"), \ 'The duration is incorrect'
def click_on_a_story(step): story = world.wait_for_element("div.story-header a", 5, 0.5) assert story, 'There are no stories.' world.story = world.wait_for_element("div.story-header a", 5, 0.5).value def ensure_story_opens(): loaded = None try: link = world.browser.find_link_by_text(world.story).first.click() except: loaded = world.wait_for_element('#story-main') return loaded is not None world.wait_for_condition(ensure_story_opens, 10, 0.1)
def ensure_story_opens(): loaded = None try: link = world.browser.find_link_by_text(world.story).first.click() except: loaded = world.wait_for_element('#story-main') return loaded is not None
def tag_was_deleted(): selector = '//span[@class="tag-name" and contains(., "%s")]' % tag_name try: tag = world.wait_for_element(selector, 5, 0.5) except AssertionError: tag = None return tag is None
def click_the_close_button_of_a_tag(step, tag_name): selector = '//span[@class="tag-delete ui-icon ui-icon-close" and ' \ 'preceding-sibling::span[@class="tag-name" and ' \ 'contains(., "%s")]]' % tag_name button = world.wait_for_element(selector, 5, 0.5) assert button, 'The tag "%s" was not found' % tag_name button.click()
def ensure_dialog_loads(): world.browser.execute_script('$(".phase-controls").css' '("visibility","visible")') button = world.wait_for_many_elements('div.phase button')[number * 2 - 3 + nth] assert button, 'There is no %s button for phase %s' % (button_name, number) button.click() form = world.wait_for_element('#%s-phase-dialog' % button_name.lower()) try: assert form.visible except AssertionError: pass return form.visible
def see_the_validation_error_for_field(step, form, value): form = form.lower() selector = '//div[@id="%s-phase-dialog"]//div[contains(., "%s")]' % (form, value) error = world.wait_for_element(selector, dont_fail=True) assert error, 'No validation errors as expected'
def see_the_phase_form(step, form): found = world.wait_for_element('#%s-phase-dialog' % form) assert found.visible, 'The %s Form was not found' % form.capitalize() name = step.given(u'see the form field "name"') description = step.given(u'see the form field "description"') strories_limit = step.given(u'see the form field "stories_limit"')
def see_a_tag_with_name(step, tag_name): selector = '//span[@class="tag-name" and contains(., "%s")]' % tag_name tag = world.wait_for_element(selector, 5, 0.5) assert tag, 'The tag was not created'
def click_the_star_button(step): start = world.wait_for_element("#time-entries-start", 5, 0.5) assert start, 'There is not the start button' cells = world.browser.find_by_css('#table-container td') world.len_table = len(cells) start.click()
def click_elsewhere(step): selector = '#story-number' elsewhere = world.wait_for_element("#story-number", 5, 0.5) elsewhere.click()
def replace_tag_name(step, new_name): selector = '//input[@class="new-tag-name"]' input = world.wait_for_element(selector, 5, 0.5) input.click() input.value = new_name
def see_text_box_with_tag_name(step, tag_name): selector = 'input.new-tag-name' input = world.wait_for_element(selector, 5, 0.5) assert input, 'Such input does not exist'
def double_click_a_tag(step, tag_name): selector = '//span[@class="tag-name" and contains(., "%s")]' % tag_name tag = world.wait_for_element(selector, 5, 0.5) assert tag, 'Such tag does not exist' world.browser.execute_script('$(".tag-name:contains(%s)").dblclick()' % tag_name)
def click_on_a_link_project(step): projects = world.wait_for_element("#projects ul li a", 5, 0.5) assert projects, 'There are no projects.' world.project = world.wait_for_element("div.portlet-header a", 5, 0.5).value projects.click()
def see_an_error_message(step, message): error_message = world.wait_for_element('#agile-message', dont_fail=True) if not error_message.visible: assert False, 'The message was not shown' assert that(error_message.text).equals(message), \ 'The message was not the expected'
def wait_for_the_requested_port(step, port): found = world.wait_for_element('#%s' % port) assert found, 'This is not the %s port'
def see_the_project_form(step, form): found = world.wait_for_element('#add-project', 5, 0.5) assert found, 'The %s Project Form was not found' % form.capitalize()
def see_the_requested_port(step, port): port = world.wait_for_element("#%s" % port) assert port, 'The requested port does not exist in this page.'
def click_the_stop_button(step): world.rows = world.len_table2 / 4 stop = world.wait_for_element("#time-entries-stop", 5, 0.5) assert stop, 'There is not the stop button' stop.click()
def add_a_new_tag(step, tag_name): selector = '#new-tag' input = world.wait_for_element(selector, 5, 0.5) assert input, 'The input for a new tag is not present.' input.value = tag_name world.browser.execute_script('$("%s").focusout();' % selector)