diff --git a/dataworkspace/dataworkspace/tests/request_access/test_views.py b/dataworkspace/dataworkspace/tests/request_access/test_views.py index 6bfb48559a..c14b62c943 100644 --- a/dataworkspace/dataworkspace/tests/request_access/test_views.py +++ b/dataworkspace/dataworkspace/tests/request_access/test_views.py @@ -285,19 +285,57 @@ def test_user_redirected_to_summary_page_after_step_3_form_submission( "request_access:summary-page", kwargs={"pk": access_requests[0].pk} ) + # Hier... + # @pytest.mark.django_db + # @pytest.mark.parametrize( + # "access_type", (UserAccessType.REQUIRES_AUTHENTICATION, UserAccessType.OPEN) + # ) + # @mock.patch("dataworkspace.apps.core.boto3_client.boto3.client") + # @mock.patch("dataworkspace.apps.request_access.views.zendesk.helpdesk.create_ticket") + # @mock.patch("dataworkspace.apps.core.storage._upload_to_clamav") + # def test_helpdesk( + # self, + # mock_upload_to_clamav, + # helpdesk_create_ticket, + # mock_boto, + # client, + # metadata_db, + # access_type, + # ): + # mock_upload_to_clamav.return_value = ClamAVResponse({"malware": False}) + + # dataset = DatasetsCommon()._create_master(user_access_type=access_type) + # client.get(reverse("request_access:dataset", kwargs={"dataset_uuid": dataset.id})) + # access_requests = AccessRequest.objects.all() + + # screenshot = SimpleUploadedFile("file.txt", b"file_content") + # client.post( + # reverse("request_access:tools-1", kwargs={"pk": access_requests[0].pk}), + # {"training_screenshot": screenshot}, + # ) + # client.post( + # reverse("request_access:tools-2", kwargs={"pk": access_requests[0].pk}), + # follow=True, + # ) + # client.post( + # reverse("request_access:summary-page", kwargs={"pk": access_requests[0].pk}), + # follow=True, + # ) + + # assert len(helpdesk_create_ticket.call_args_list) == 1 + + @pytest.mark.django_db @pytest.mark.parametrize( "access_type", (UserAccessType.REQUIRES_AUTHENTICATION, UserAccessType.OPEN) ) @mock.patch("dataworkspace.apps.core.boto3_client.boto3.client") - # @mock.patch("dataworkspace.apps.request_access.views.zendesk.Zenpy") @mock.patch("dataworkspace.apps.request_access.views.zendesk.helpdesk.create_ticket") @mock.patch("dataworkspace.apps.core.storage._upload_to_clamav") - def test_zendesk_ticket_created_after_form_submission( + def test_helpdesk( self, mock_upload_to_clamav, - # mock_zendesk_client, - mock_helpdesk_create_ticket, + helpdesk_create_ticket, mock_boto, client, metadata_db, @@ -323,17 +361,8 @@ def test_zendesk_ticket_created_after_form_submission( follow=True, ) - print("TEST_PRINT\n"*10) - print("") - print("==") - print() - print("*"*10) - print("TEST_PRINT\n"*10) - - # assert len(mock_zenpy_client.tickets.create.call_args_list) == 1 - assert len(mock_helpdesk_create_ticket.call_args_list) == 1 - # call_args, _ = mock_zenpy_client.tickets.create.call_args_list[0] - call_args, _ = mock_helpdesk_create_ticket.call_args_list[0] + assert len(helpdesk_create_ticket.call_args_list) == 1 + call_args, _ = helpdesk_create_ticket.call_args_list[0] ticket = call_args[0] assert ticket.subject == "Access Request for A master" diff --git a/dataworkspace/dataworkspace/zendesk.py b/dataworkspace/dataworkspace/zendesk.py index 67ac4b9709..edfe906861 100644 --- a/dataworkspace/dataworkspace/zendesk.py +++ b/dataworkspace/dataworkspace/zendesk.py @@ -8,18 +8,6 @@ from dataworkspace.notify import generate_token, send_email -print("x"*80) -print("x"*80) -print("x"*80) -print(settings.HELP_DESK_INTERFACE) -print("x"*80) -print("x"*80) -print("x"*80) -print(settings.HELP_DESK_CREDS) -print("x"*80) -print("x"*80) -print("x"*80) - from helpdesk_client import get_helpdesk_interface from helpdesk_client.interfaces import ( HelpDeskTicket, @@ -94,7 +82,6 @@ def build_private_comment_text(catalogue_item, approval_url): # configure and instantiate the client helpdesk_interface = get_helpdesk_interface("helpdesk_client.interfaces.HelpDeskStubbed") -# helpdesk_interface = get_helpdesk_interface(settings.HELP_DESK_INTERFACE) helpdesk = helpdesk_interface(credentials=settings.HELP_DESK_CREDS) @@ -119,29 +106,7 @@ def create_zendesk_ticket(request, access_request, catalogue_item=None): subject = f"Access Request for {catalogue_item if catalogue_item else username}" - # client = Zenpy( - # subdomain=settings.ZENDESK_SUBDOMAIN, - # email=settings.ZENDESK_EMAIL, - # token=settings.ZENDESK_TOKEN, - # ) - - # ticket_audit = client.tickets.create( - # Ticket( - # subject=subject, - # description=ticket_description, - # requester=User(email=access_request.requester.email, name=username), - # custom_fields=[ - # CustomField(id=zendesk_service_field_id, value=zendesk_service_field_value) - # ], - # ) - # ) - - # ticket_audit.ticket.comment = Comment(body=private_comment, public=False) - # client.tickets.update(ticket_audit.ticket) - - # return ticket_audit.ticket.id - - hdt = HelpDeskTicket( + helpdesk_ticket = HelpDeskTicket( subject=subject, description=ticket_description, user=HelpDeskUser( @@ -160,15 +125,7 @@ def create_zendesk_ticket(request, access_request, catalogue_item=None): ) ) - print("X"*120, flush=True) - print(hdt, flush=True) - print("Y"*120, flush=True) - - ticket_audit = helpdesk.create_ticket(hdt) - - print("X"*120, flush=True) - print(ticket_audit.id, flush=True) - print("Y"*120, flush=True) + ticket_audit = helpdesk.create_ticket(helpdesk_ticket) return ticket_audit.id @@ -302,4 +259,4 @@ def create_support_request(user, email, message, tag=None, subject=None): ) ) - return ticket_audit.id + return ticket_audit.id \ No newline at end of file