diff --git a/api/consumer/searchDocumentReference/tests/test_search_document_reference_consumer.py b/api/consumer/searchDocumentReference/tests/test_search_document_reference_consumer.py index 3d6e65ba4..4f5c3333a 100644 --- a/api/consumer/searchDocumentReference/tests/test_search_document_reference_consumer.py +++ b/api/consumer/searchDocumentReference/tests/test_search_document_reference_consumer.py @@ -1,4 +1,5 @@ import json +from unittest.mock import patch from moto import mock_aws @@ -720,7 +721,10 @@ def test_search_document_reference_invalid_category( @mock_aws @mock_repository -def test_search_document_reference_invalid_json(repository: DocumentPointerRepository): +@patch("api.consumer.searchDocumentReference.search_document_reference.logger") +def test_search_document_reference_invalid_json( + mock_logger, repository: DocumentPointerRepository +): doc_ref = load_document_reference("Y05868-736253002-Valid") doc_pointer = DocumentPointer.from_document_reference(doc_ref) repository.create(doc_pointer) @@ -783,3 +787,7 @@ def test_search_document_reference_invalid_json(repository: DocumentPointerRepos {"resource": expected_operation_outcome}, ], } + + assert any( + call[0][0].name == "CONSEARCH005" for call in mock_logger.log.call_args_list + ) diff --git a/api/consumer/searchPostDocumentReference/tests/test_search_post_document_reference_consumer.py b/api/consumer/searchPostDocumentReference/tests/test_search_post_document_reference_consumer.py index 4a181fdc7..127a6dc12 100644 --- a/api/consumer/searchPostDocumentReference/tests/test_search_post_document_reference_consumer.py +++ b/api/consumer/searchPostDocumentReference/tests/test_search_post_document_reference_consumer.py @@ -1,4 +1,5 @@ import json +from unittest.mock import patch from moto import mock_aws @@ -480,8 +481,9 @@ def test_search_document_reference_invalid_category( @mock_aws @mock_repository +@patch("api.consumer.searchPostDocumentReference.search_post_document_reference.logger") def test_search_post_document_reference_invalid_json_adds_operation_outcome( - repository: DocumentPointerRepository, + mock_logger, repository: DocumentPointerRepository ): doc_ref = load_document_reference("Y05868-736253002-Valid") doc_pointer = DocumentPointer.from_document_reference(doc_ref) @@ -547,3 +549,7 @@ def test_search_post_document_reference_invalid_json_adds_operation_outcome( {"resource": expected_operation_outcome}, ], } + + assert any( + call[0][0].name == "CONPOSTSEARCH005" for call in mock_logger.log.call_args_list + ) diff --git a/api/producer/searchDocumentReference/tests/test_search_document_reference_producer.py b/api/producer/searchDocumentReference/tests/test_search_document_reference_producer.py index 92de1ef8e..848098dc9 100644 --- a/api/producer/searchDocumentReference/tests/test_search_document_reference_producer.py +++ b/api/producer/searchDocumentReference/tests/test_search_document_reference_producer.py @@ -1,4 +1,5 @@ import json +from unittest.mock import patch from moto import mock_aws @@ -457,7 +458,10 @@ def test_search_document_reference_filters_by_pointer_types( @mock_aws @mock_repository -def test_search_document_reference_invalid_json(repository: DocumentPointerRepository): +@patch("api.producer.searchDocumentReference.search_document_reference.logger") +def test_search_document_reference_invalid_json( + mock_logger, repository: DocumentPointerRepository +): doc_ref = load_document_reference("Y05868-736253002-Valid") doc_pointer = DocumentPointer.from_document_reference(doc_ref) repository.create(doc_pointer) @@ -514,3 +518,7 @@ def test_search_document_reference_invalid_json(repository: DocumentPointerRepos {"resource": expected_operation_outcome}, ], } + + assert any( + call[0][0].name == "PROSEARCH005" for call in mock_logger.log.call_args_list + ) diff --git a/api/producer/searchPostDocumentReference/tests/test_search_post_document_reference_producer.py b/api/producer/searchPostDocumentReference/tests/test_search_post_document_reference_producer.py index c95a6dba6..63f4f7f5b 100644 --- a/api/producer/searchPostDocumentReference/tests/test_search_post_document_reference_producer.py +++ b/api/producer/searchPostDocumentReference/tests/test_search_post_document_reference_producer.py @@ -1,4 +1,5 @@ import json +from unittest.mock import patch from moto import mock_aws @@ -474,7 +475,9 @@ def test_search_document_reference_filters_by_pointer_types( @mock_aws @mock_repository +@patch("api.producer.searchPostDocumentReference.search_post_document_reference.logger") def test_search_post_document_reference_invalid_json_adds_operation_outcome( + mock_logger, repository: DocumentPointerRepository, ): doc_ref = load_document_reference("Y05868-736253002-Valid") @@ -535,3 +538,7 @@ def test_search_post_document_reference_invalid_json_adds_operation_outcome( {"resource": expected_operation_outcome}, ], } + + assert any( + call[0][0].name == "PROPOSTSEARCH005" for call in mock_logger.log.call_args_list + ) diff --git a/layer/nrlf/core/log_references.py b/layer/nrlf/core/log_references.py index 5c812c66a..c071b0981 100644 --- a/layer/nrlf/core/log_references.py +++ b/layer/nrlf/core/log_references.py @@ -7,6 +7,14 @@ class _Reference: level: str message: str + # WARNING: This makes all _Reference objects unequal unless they are the same instance. + # It's fine for our use case, but be cautious if you compare _Reference objects. + def __eq__(self, other): + return self is other + + def __hash__(self): + return id(self) + class LogReference(Enum): # Request Handler Logs