Exemplo n.º 1
0
 def create_obj_and_get_obj(self, obj):
     """Creates obj via LHN and returns a created obj."""
     object_name = objects.get_plural(obj.type)
     conftest_utils.get_lhn_accordion(self._driver,
                                      object_name).create_new()
     self.submit_obj_modal(obj)
     return self.build_obj_from_page()
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 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.º 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
 def test_mapping_via_lhn(
     self, selenium, new_product_ui, new_project_ui, new_system_ui,
     new_data_asset_ui, new_process_ui
 ):
   """LHN mapping tests from smoke tests, section 6."""
   objects = [new_product_ui, new_project_ui, new_system_ui,
              new_data_asset_ui, new_process_ui]
   for object_ in objects:
     selenium.get(object_.url)
     header = dashboard.Header(selenium)
     # map objects
     for mapped_object in objects:
       # don't map an object to itself
       if mapped_object != object_:
         extended_info = (
             conftest_utils.get_lhn_accordion(
                 selenium,
                 mapped_object.object_name).hover_over_visible_member(
                 mapped_object.title_entered.text))
         if not extended_info.is_mapped:
           extended_info.map_to_object()
           # workaround for CORE-3324
           selenium_utils.hover_over_element(
               selenium, header.toggle_user_dropdown.element)
           # close LHN so that the contents are seen
           header.close_lhn_menu()
           widget = (
               factory.get_cls_widget(mapped_object.object_name)(selenium))
           # check that the focus is on relevant widget
           assert widget.name_from_url in mapped_object.object_name
           # check items count
           assert widget.member_count == 1
     # check that all mapped widgets are shown
     widget_bar = dashboard.Dashboard(selenium)
     for mapped_object in objects:
       if mapped_object != object_:
         # select a widget
         getattr(widget_bar,
                 factory.get_method_select(mapped_object.object_name))()
         # verify widget
         widget = (
             factory.get_cls_widget(mapped_object.object_name)(selenium))
         assert widget.name_from_url in mapped_object.object_name
Exemplo n.º 7
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