Exemplo n.º 1
0
  def test_edit_modal(self, selenium, new_program):
    """Tests if data is saved after editing the program info page edit modal"""
    _, program_info = new_program
    selenium.get(program_info.url)

    program_info_page = info_widget.Programs(selenium)
    modal = program_info_page \
        .press_object_settings() \
        .select_edit()
    test_utils.ModalNewPrograms.enter_test_data(modal)
    test_utils.ModalNewPrograms.set_start_end_dates(modal, 1, -2)
    modal.save_and_close()

    updated_program_info_page = info_widget.Programs(selenium)
    assert test_utils.HtmlParser.parse_text(modal.ui_title.text) == \
        updated_program_info_page.title_entered.text
    assert modal.ui_description.text == \
        updated_program_info_page.description_entered.text
    assert modal.ui_notes.text == updated_program_info_page.notes_entered.text
    assert updated_program_info_page.primary_contact_entered.text in \
        modal.ui_primary_contact.text
    assert updated_program_info_page.secondary_contact_entered.text in \
        modal.ui_secondary_contact.text
    assert modal.ui_program_url.text == \
        updated_program_info_page.program_url_entered.text
    assert modal.ui_reference_url.text == \
        updated_program_info_page.reference_url_entered.text
Exemplo n.º 2
0
 def new_ui_fixture(web_driver, fixture):
     """Extract arguments of 'new_ui_fixture' fixture from fixture name,
 create new objects via UI (LHN) and return UI page object.
 """
     fixture_params = fixture.replace("new_", "").replace("_ui", "")
     obj_name = fixture_params
     obj_count = counters.BATCH_COUNT
     if (objects.get_plural(obj_name) in objects.ALL_OBJS
             and objects.get_plural(obj_name) != objects.PROGRAMS):
         obj_name = objects.get_plural(obj_name)
         obj_count = 1
         objs_info_pages = [
             conftest_utils.create_obj_via_lhn(
                 web_driver, getattr(element.Lhn, obj_name.upper()))
             for _ in xrange(obj_count)
         ]
         return objs_info_pages
     elif objects.get_plural(obj_name) == objects.PROGRAMS:
         modal = conftest_utils.get_lhn_accordion(
             web_driver, getattr(element.Lhn,
                                 objects.PROGRAMS.upper())).create_new()
         test_utils.ModalNewPrograms.enter_test_data(modal)
         modal.save_and_close()
         program_info_page = info_widget.Programs(web_driver)
         return modal, program_info_page
Exemplo n.º 3
0
def new_program(selenium, new_control):
  """Creates a new program object and returns the program info page with the
  saved modal"""
  # pylint: disable=redefined-outer-name
  modal = conftest_utils.get_lhn_accordion(
      selenium, constants.element.Lhn.PROGRAMS)\
      .create_new()
  test_utils.ModalNewPrograms.enter_test_data(modal)
  modal.save_and_close()
  program_info_page = info_widget.Programs(selenium)
  yield modal, program_info_page
Exemplo n.º 4
0
 def test_edit_modal(self, selenium, new_program_ui):
   """Tests if data is saved after editing program info page edit modal.
   """
   _, program_info = new_program_ui
   selenium.get(program_info.url)
   program_info_page = info_widget.Programs(selenium)
   modal = program_info_page.open_info_3bbs().select_edit()
   test_utils.ModalNewPrograms.enter_test_data(modal)
   test_utils.ModalNewPrograms.set_start_end_dates(modal, 1, -2)
   modal.save_and_close()
   updated_program_info_page = info_widget.Programs(selenium)
   assert (test_utils.HtmlParser.parse_text(modal.ui_title.text) ==
           updated_program_info_page.title_entered.text)
   assert (modal.ui_description.text ==
           updated_program_info_page.description_entered.text)
   assert modal.ui_notes.text == updated_program_info_page.notes_entered.text
   assert (modal.ui_program_url.text ==
           updated_program_info_page.program_url_entered.text)
   assert (modal.ui_reference_url.text ==
           updated_program_info_page.reference_url_entered.text)
Exemplo n.º 5
0
def new_program_ui(selenium, new_control_ui):
    """Create a new Program object via UI (LHN).
  Return: Program modal and Program Info widget.
  """
    # pylint: disable=redefined-outer-name
    # pylint: disable=unused-argument
    modal = conftest_utils.get_lhn_accordion(
        selenium, constants.element.Lhn.PROGRAMS).create_new()
    test_utils.ModalNewPrograms.enter_test_data(modal)
    modal.save_and_close()
    program_info_page = info_widget.Programs(selenium)
    yield modal, program_info_page
Exemplo n.º 6
0
 def test_edit_modal(self, selenium, new_program_ui):
   """Tests if data is saved after editing program info page edit modal.
   """
   _, program_info_page = new_program_ui
   selenium_utils.open_url(selenium, program_info_page.url)
   program_info_page = info_widget.Programs(selenium)
   modal = program_info_page.open_info_3bbs().select_edit()
   test_utils.ModalNewPrograms.enter_test_data(modal)
   test_utils.ModalNewPrograms.set_start_date(modal, 1)
   modal.save_and_close()
   selenium_utils.open_url(selenium, program_info_page.url)
   updated_program_info_page = info_widget.Programs(selenium)
   expected_list_texts = [
       test_utils.HtmlParser.parse_text(modal.ui_title.text),
       modal.ui_description.text, modal.ui_notes.text
   ]
   actual_list_texts = [
       updated_program_info_page.title.text,
       updated_program_info_page.description_entered.text,
       updated_program_info_page.notes_entered.text
   ]
   assert expected_list_texts == actual_list_texts
Exemplo n.º 7
0
 def test_permalink(self, selenium, new_program_ui):
   """Verify url is copied to clipboard."""
   _, program_info = new_program_ui
   selenium.get(program_info.url)
   program_info_page = info_widget.Programs(selenium)
   program_info_page.open_info_3bbs().select_get_permalink()
   # test notification alert
   base.AnimatedComponent(
       selenium, [locator.WidgetInfoProgram.ALERT_LINK_COPIED],
       wait_until_visible=True)
   # test generated link
   modal = program_info_page.open_info_3bbs().select_edit()
   modal.ui_title.paste_from_clipboard(modal.ui_description)
   assert modal.ui_title.text == program_info_page.url