Пример #1
0
def assert_multi_selected(step, select_name):
  with AssertContextManager(step):
    # Ensure its not selected unless its one of our options
    option_names = step.multiline.split('\n')
    select_box = find_field(world.browser, 'select', select_name)
    option_elems = select_box.find_elements_by_xpath('./option')
    for option in option_elems:
      if option.get_attribute('id') in option_names or \
         option.get_attribute('name') in option_names or \
         option.get_attribute('value') in option_names or \
         option.text in option_names:
        assert_true(step, option.is_selected())
      else:
        assert_true(step, not option.is_selected())
Пример #2
0
def assert_multi_selected(step, select_name):
    with AssertContextManager(step):
        # Ensure its not selected unless its one of our options
        option_names = step.multiline.split('\n')
        select_box = find_field(world.browser, 'select', select_name)
        option_elems = select_box.find_elements_by_xpath('./option')
        for option in option_elems:
            if option.get_attribute('id') in option_names or \
               option.get_attribute('name') in option_names or \
               option.get_attribute('value') in option_names or \
               option.text in option_names:
                assert_true(step, option.is_selected())
            else:
                assert_true(step, not option.is_selected())
Пример #3
0
def select_multi_items(step, select_name):
  with AssertContextManager(step):
    # Ensure only the options selected are actually selected
    option_names = step.multiline.split('\n')
    select_box = find_field(world.browser, 'select', select_name)

    select = Select(select_box)
    select.deselect_all()

    for option in option_names:
      try:
        select.select_by_value(option)
      except NoSuchElementException:
        select.select_by_visible_text(option)
Пример #4
0
def select_multi_items(step, select_name):
    with AssertContextManager(step):
        # Ensure only the options selected are actually selected
        option_names = step.multiline.split('\n')
        select_box = find_field(world.browser, 'select', select_name)

        select = Select(select_box)
        select.deselect_all()

        for option in option_names:
            try:
                select.select_by_value(option)
            except NoSuchElementException:
                select.select_by_visible_text(option)
Пример #5
0
def assert_radio_not_selected(step, value):
  box = find_field(world.browser, 'radio', value)
  assert_true(step, not box.is_selected())
Пример #6
0
def choose_radio(step, value):
  with AssertContextManager(step):
    box = find_field(world.browser, 'radio', value)
    box.select()
Пример #7
0
def assert_not_checked_checkbox(step, value):
  check_box = find_field(world.browser, 'checkbox', value)
  assert_true(step, not check_box.is_selected())
Пример #8
0
def uncheck_checkbox(step, value):
  with AssertContextManager(step):
    check_box = find_field(world.browser, 'checkbox', value)
    if check_box.is_selected():
      check_box.click()
Пример #9
0
def focus_and_press_key(step, field_name, key):
  with AssertContextManager(step):
    text_field = find_field(world.browser, 'text', field_name) or \
      find_field(world.browser, 'textarea', field_name) or \
      find_field(world.browser, 'password', field_name) or \
      find_field(world.browser, 'datetime', field_name) or \
      find_field(world.browser, 'datetime-local', field_name) or \
      find_field(world.browser, 'date', field_name) or \
      find_field(world.browser, 'month', field_name) or \
      find_field(world.browser, 'time', field_name) or \
      find_field(world.browser, 'week', field_name) or \
      find_field(world.browser, 'number', field_name) or \
      find_field(world.browser, 'range', field_name) or \
      find_field(world.browser, 'email', field_name) or \
      find_field(world.browser, 'url', field_name) or \
      find_field(world.browser, 'search', field_name) or \
      find_field(world.browser, 'tel', field_name) or \
      find_field(world.browser, 'color', field_name)
    assert_false(step, text_field is False,'Can not find a field named "%s"' % field_name)
    text_field.send_keys(getattr(Keys, key))
Пример #10
0
def fill_in_textfield(step, field_name, value):
  with AssertContextManager(step):
    text_field = find_field(world.browser, 'text', field_name) or \
      find_field(world.browser, 'textarea', field_name) or \
      find_field(world.browser, 'password', field_name) or \
      find_field(world.browser, 'datetime', field_name) or \
      find_field(world.browser, 'datetime-local', field_name) or \
      find_field(world.browser, 'date', field_name) or \
      find_field(world.browser, 'month', field_name) or \
      find_field(world.browser, 'time', field_name) or \
      find_field(world.browser, 'week', field_name) or \
      find_field(world.browser, 'number', field_name) or \
      find_field(world.browser, 'range', field_name) or \
      find_field(world.browser, 'email', field_name) or \
      find_field(world.browser, 'url', field_name) or \
      find_field(world.browser, 'search', field_name) or \
      find_field(world.browser, 'tel', field_name) or \
      find_field(world.browser, 'color', field_name)
    assert_false(step, text_field is False,'Can not find a field named "%s"' % field_name)
    text_field.clear()
    text_field.send_keys(value)
Пример #11
0
def assert_radio_not_selected(step, value):
    box = find_field(world.browser, 'radio', value)
    assert_true(step, not box.is_selected())
Пример #12
0
def choose_radio(step, value):
    with AssertContextManager(step):
        box = find_field(world.browser, 'radio', value)
        box.select()
Пример #13
0
def assert_not_checked_checkbox(step, value):
    check_box = find_field(world.browser, 'checkbox', value)
    assert_true(step, not check_box.is_selected())
Пример #14
0
def uncheck_checkbox(step, value):
    with AssertContextManager(step):
        check_box = find_field(world.browser, 'checkbox', value)
        if check_box.is_selected():
            check_box.click()
Пример #15
0
def focus_and_press_key(step, field_name, key):
    with AssertContextManager(step):
        text_field = find_field(world.browser, 'text', field_name) or \
          find_field(world.browser, 'textarea', field_name) or \
          find_field(world.browser, 'password', field_name) or \
          find_field(world.browser, 'datetime', field_name) or \
          find_field(world.browser, 'datetime-local', field_name) or \
          find_field(world.browser, 'date', field_name) or \
          find_field(world.browser, 'month', field_name) or \
          find_field(world.browser, 'time', field_name) or \
          find_field(world.browser, 'week', field_name) or \
          find_field(world.browser, 'number', field_name) or \
          find_field(world.browser, 'range', field_name) or \
          find_field(world.browser, 'email', field_name) or \
          find_field(world.browser, 'url', field_name) or \
          find_field(world.browser, 'search', field_name) or \
          find_field(world.browser, 'tel', field_name) or \
          find_field(world.browser, 'color', field_name)
        assert_false(step, text_field is False,
                     'Can not find a field named "%s"' % field_name)
        text_field.send_keys(getattr(Keys, key))
Пример #16
0
def fill_in_textfield(step, field_name, value):
    with AssertContextManager(step):
        text_field = find_field(world.browser, 'text', field_name) or \
          find_field(world.browser, 'textarea', field_name) or \
          find_field(world.browser, 'password', field_name) or \
          find_field(world.browser, 'datetime', field_name) or \
          find_field(world.browser, 'datetime-local', field_name) or \
          find_field(world.browser, 'date', field_name) or \
          find_field(world.browser, 'month', field_name) or \
          find_field(world.browser, 'time', field_name) or \
          find_field(world.browser, 'week', field_name) or \
          find_field(world.browser, 'number', field_name) or \
          find_field(world.browser, 'range', field_name) or \
          find_field(world.browser, 'email', field_name) or \
          find_field(world.browser, 'url', field_name) or \
          find_field(world.browser, 'search', field_name) or \
          find_field(world.browser, 'tel', field_name) or \
          find_field(world.browser, 'color', field_name)
        assert_false(step, text_field is False,
                     'Can not find a field named "%s"' % field_name)
        text_field.clear()
        text_field.send_keys(value)