def test_asmt_tmpl_creation(self, new_program_rest, new_audit_rest, selenium): """Check if Assessment Template can be created from Audit page via Assessment Templates widget. Preconditions: - Audit created under Program via REST API. """ expected_asmt_tmpl = ( entities_factory.AssessmentTemplatesFactory().create().repr_ui()) (webui_service.AssessmentTemplatesService( selenium).create_obj_via_tree_view(src_obj=new_audit_rest, obj=expected_asmt_tmpl)) actual_asmt_tmpls_tab_count = ( webui_service.AssessmentTemplatesService( selenium).get_count_objs_from_tab(src_obj=new_audit_rest)) assert len([expected_asmt_tmpl]) == actual_asmt_tmpls_tab_count actual_asmt_tmpls = (webui_service.AssessmentTemplatesService( selenium).get_list_objs_from_tree_view(src_obj=new_audit_rest)) # due to 'expected_asmt_tmpl.updated_at = None' actual_asmt_tmpls = [ actual_asmt_tmpl.update_attrs(updated_at=None) for actual_asmt_tmpl in actual_asmt_tmpls ] assert [expected_asmt_tmpl] == actual_asmt_tmpls, ( messages.AssertionMessages.format_err_msg_equal( [expected_asmt_tmpl], actual_asmt_tmpls))
def test_clonable_audit_related_objs_move_to_cloned_audit( self, create_and_clone_audit_w_params_to_update, selenium): """Check via UI that clonable audit related object Assessment Template move to cloned Audit using all initial Assessment Templates's states. Preconditions: -Execution and return of fixture 'create_and_clone_audit_w_params_to_update'. Test parameters: - 'create_and_clone_audit_w_params_to_update' which contains params to update asmt tmpl status via REST API. """ # todo: add getting objects from Assessment Template's Info Widget actual_audit = create_and_clone_audit_w_params_to_update[ "actual_audit"] expected_asmt_tmpl = (create_and_clone_audit_w_params_to_update[ "expected_assessment_template"].repr_ui()) actual_asmt_tmpls = (webui_service.AssessmentTemplatesService( selenium).get_list_objs_from_tree_view(src_obj=actual_audit)) # 'expected_asmt_tmpl': slug, updated_at (None) *factory # 'actual_asmt_tmpls': created_at, updated_at, custom_attributes, # modified_by, audit, assignees, verifiers, # template_object_type (None) exclude_attrs = ( Representation.tree_view_attrs_to_exclude + ("slug", "modified_by", "audit", "assignees", "verifiers", "template_object_type", "custom_attributes")) self.general_equal_assert(expected_asmt_tmpl, actual_asmt_tmpls, *exclude_attrs)
def test_clonable_audit_related_objs_move_to_cloned_audit( self, create_and_clone_audit_w_params_to_update, selenium): """Check via UI that clonable audit related object Assessment Template move to cloned Audit using all initial Assessment Templates's states. Preconditions: -Execution and return of fixture 'create_and_clone_audit_w_params_to_update'. Test parameters: - 'create_and_clone_audit_w_params_to_update' which contains params to update asmt tmpl status via REST API. """ actual_audit = create_and_clone_audit_w_params_to_update[ "actual_audit"] expected_asmt_tmpl = (create_and_clone_audit_w_params_to_update[ "expected_assessment_template"].repr_ui()) actual_asmt_tmpls = (webui_service.AssessmentTemplatesService( selenium).get_list_objs_from_tree_view(src_obj=actual_audit)) # 'expected_asmt_tmpl': slug, updated_at (None) *factory # 'actual_asmt_tmpls': created_at, updated_at, custom_attributes, # modified_by (None) is_expect_ggrc_3423 = (expected_asmt_tmpl.status != ObjectStates.DRAFT) exclude_attrs = (Representation.tree_view_attrs_to_exclude + ("slug", "modified_by")) self.general_equal_assert( expected_asmt_tmpl, actual_asmt_tmpls, *(exclude_attrs if not is_expect_ggrc_3423 else exclude_attrs + ("status", ))) if is_expect_ggrc_3423: self.xfail_equal_assert(expected_asmt_tmpl, actual_asmt_tmpls, "Issue in app GGRC-3423", "status")
def test_asmt_tmpl_creation(self, new_audit_rest, selenium): """Check if Assessment Template can be created from Audit page via Assessment Templates widget. Preconditions: - Audit created under Program via REST API. """ audit = new_audit_rest[0] expected_asmt_tmpl = AssessmentTemplatesFactory().create() (webui_service.AssessmentTemplatesService(selenium). create_via_tree_view(source_obj=audit, asmt_tmpl_obj=expected_asmt_tmpl)) actual_asmt_tmpls_tab_count = ( webui_service.AssessmentTemplatesService(selenium). get_count_from_tab(source_obj=audit)) assert len([expected_asmt_tmpl]) == actual_asmt_tmpls_tab_count actual_asmt_tmpls = (webui_service.AssessmentTemplatesService(selenium). get_objs_from_tree_view(source_obj=audit)) assert [expected_asmt_tmpl] == actual_asmt_tmpls, ( messages.ERR_MSG_FORMAT.format( [expected_asmt_tmpl], actual_asmt_tmpls))
def test_clonable_audit_related_objs_move_to_cloned_audit( self, create_and_clone_audit, selenium): """Check via UI that clonable audit related object Assessment Template move to cloned Audit. Preconditions: -Execution and return of fixture 'create_and_clone_audit'. """ actual_audit = create_and_clone_audit["actual_audit"] expected_asmt_tmpl = create_and_clone_audit["expected_asmt_tmpl"] actual_asmt_tmpls = (webui_service.AssessmentTemplatesService( selenium).get_list_objs_from_tree_view(src_obj=actual_audit)) assert [expected_asmt_tmpl ] == actual_asmt_tmpls, (messages.ERR_MSG_FORMAT.format( [expected_asmt_tmpl], actual_asmt_tmpls))
def test_clonable_audit_related_objs_move_to_cloned_audit( self, create_and_clone_audit, selenium): """Check via UI that clonable audit related object Assessment Template move to cloned Audit. Preconditions: -Execution and return of fixture 'create_and_clone_audit'. """ actual_audit = create_and_clone_audit["actual_audit"] expected_asmt_tmpl = ( create_and_clone_audit["expected_assessment_template"].repr_ui()) actual_asmt_tmpls = (webui_service.AssessmentTemplatesService( selenium).get_list_objs_from_tree_view(src_obj=actual_audit)) # due to 'expected_asmt_tmpl.slug = None', # 'expected_asmt_tmpl.updated_at = {None: None}' self.general_assert(expected_asmt_tmpl, actual_asmt_tmpls, "slug", "updated_at")
def test_clonable_audit_related_objs_move_to_cloned_audit( self, create_and_clone_audit, selenium): """Check via UI that clonable audit related object Assessment Template move to cloned Audit. Preconditions: -Execution and return of fixture 'create_and_clone_audit'. """ actual_audit = create_and_clone_audit["actual_audit"] expected_asmt_tmpl = ( create_and_clone_audit["expected_assessment_template"].repr_ui()) actual_asmt_tmpls = (webui_service.AssessmentTemplatesService( selenium).get_list_objs_from_tree_view(src_obj=actual_audit)) # due to 'expected_asmt_tmpl.slug = None', # 'expected_asmt_tmpl.updated_at = {None: None}' actual_asmt_tmpls = [ actual_asmt_tmpl.update_attrs(slug=None, updated_at=None) for actual_asmt_tmpl in actual_asmt_tmpls ] assert [expected_asmt_tmpl] == actual_asmt_tmpls, ( messages.AssertionMessages.format_err_msg_equal( [expected_asmt_tmpl], actual_asmt_tmpls))
def test_asmt_tmpl_creation(self, program, audit, selenium): """Check if Assessment Template can be created from Audit page via Assessment Templates widget. Preconditions: - Audit created under Program via REST API. """ expected_asmt_tmpl = ( entities_factory.AssessmentTemplatesFactory().create()) asmt_tmpls_ui_service = webui_service.AssessmentTemplatesService( selenium) asmt_tmpls_ui_service.create_obj_via_tree_view(src_obj=audit, obj=expected_asmt_tmpl) actual_asmt_tmpls_tab_count = ( asmt_tmpls_ui_service.get_count_objs_from_tab(src_obj=audit)) assert len([expected_asmt_tmpl]) == actual_asmt_tmpls_tab_count actual_asmt_tmpls = asmt_tmpls_ui_service.get_list_objs_from_tree_view( src_obj=audit) # 'expected_asmt_tmpls': modified_by (None) *factory # 'actual_asmt_tmpls': assignees, verifiers, template_object_type (None) self.general_equal_assert([expected_asmt_tmpl], actual_asmt_tmpls, "modified_by", "assignees", "verifiers", "template_object_type", "slug")
def test_asmt_tmpl_creation(self, new_program_rest, new_audit_rest, selenium): """Check if Assessment Template can be created from Audit page via Assessment Templates widget. Preconditions: - Audit created under Program via REST API. """ expected_asmt_tmpl = ( entities_factory.AssessmentTemplatesFactory().create().repr_ui()) asmt_tmpls_ui_service = webui_service.AssessmentTemplatesService( selenium) asmt_tmpls_ui_service.create_obj_via_tree_view(src_obj=new_audit_rest, obj=expected_asmt_tmpl) actual_asmt_tmpls_tab_count = ( asmt_tmpls_ui_service.get_count_objs_from_tab( src_obj=new_audit_rest)) assert len([expected_asmt_tmpl]) == actual_asmt_tmpls_tab_count actual_asmt_tmpls = asmt_tmpls_ui_service.get_list_objs_from_tree_view( src_obj=new_audit_rest) # 'expected_asmt_tmpl': modified_by (None) *factory self.general_equal_assert([expected_asmt_tmpl], actual_asmt_tmpls, "modified_by")