예제 #1
0
파일: web_steps.py 프로젝트: Coderic/jupo
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
파일: web_steps.py 프로젝트: simzen85/jupo
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
파일: web_steps.py 프로젝트: Coderic/jupo
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
파일: web_steps.py 프로젝트: simzen85/jupo
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
파일: web_steps.py 프로젝트: Coderic/jupo
def assert_radio_not_selected(step, value):
  box = find_field(world.browser, 'radio', value)
  assert_true(step, not box.is_selected())
예제 #6
0
파일: web_steps.py 프로젝트: Coderic/jupo
def choose_radio(step, value):
  with AssertContextManager(step):
    box = find_field(world.browser, 'radio', value)
    box.select()
예제 #7
0
파일: web_steps.py 프로젝트: Coderic/jupo
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
파일: web_steps.py 프로젝트: Coderic/jupo
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
파일: web_steps.py 프로젝트: Coderic/jupo
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
파일: web_steps.py 프로젝트: Coderic/jupo
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
파일: web_steps.py 프로젝트: simzen85/jupo
def assert_radio_not_selected(step, value):
    box = find_field(world.browser, 'radio', value)
    assert_true(step, not box.is_selected())
예제 #12
0
파일: web_steps.py 프로젝트: simzen85/jupo
def choose_radio(step, value):
    with AssertContextManager(step):
        box = find_field(world.browser, 'radio', value)
        box.select()
예제 #13
0
파일: web_steps.py 프로젝트: simzen85/jupo
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
파일: web_steps.py 프로젝트: simzen85/jupo
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
파일: web_steps.py 프로젝트: simzen85/jupo
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
파일: web_steps.py 프로젝트: simzen85/jupo
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)