summaryrefslogtreecommitdiffstats
path: root/certService/src/test/java/org/onap/aaf/certservice/certification/CertificationExceptionControllerTest.java
diff options
context:
space:
mode:
authorBartosz Gardziejewski <bartosz.gardziejewski@nokia.com>2020-02-27 10:26:32 +0100
committerTomasz Golabek <tomasz.golabek@nokia.com>2020-03-05 13:44:05 +0100
commitd43531d4072653b86cc86459816e54806ad589c2 (patch)
tree1a19068cede89992c4f37e8e8b25ec6afc94b53c /certService/src/test/java/org/onap/aaf/certservice/certification/CertificationExceptionControllerTest.java
parent8f26d1f4274f18bd9502386700919933045e2316 (diff)
Create adapter for Cmpv2Client
connected-with: https://gerrit.onap.org/r/c/aaf/certservice/+/102401 Issue-ID: AAF-997 Signed-off-by: Bartosz Gardziejewski <bartosz.gardziejewski@nokia.com> Signed-off-by: Tomasz Golabek <tomasz.golabek@nokia.com> Change-Id: Ieb85cd9c93f7a5470fca37a9de4bead3c543199a
Diffstat (limited to 'certService/src/test/java/org/onap/aaf/certservice/certification/CertificationExceptionControllerTest.java')
-rw-r--r--certService/src/test/java/org/onap/aaf/certservice/certification/CertificationExceptionControllerTest.java74
1 files changed, 65 insertions, 9 deletions
diff --git a/certService/src/test/java/org/onap/aaf/certservice/certification/CertificationExceptionControllerTest.java b/certService/src/test/java/org/onap/aaf/certservice/certification/CertificationExceptionControllerTest.java
index 1a92c0c8..10a818e4 100644
--- a/certService/src/test/java/org/onap/aaf/certservice/certification/CertificationExceptionControllerTest.java
+++ b/certService/src/test/java/org/onap/aaf/certservice/certification/CertificationExceptionControllerTest.java
@@ -23,13 +23,17 @@ package org.onap.aaf.certservice.certification;
import com.google.gson.Gson;
import org.junit.jupiter.api.BeforeEach;
import org.junit.jupiter.api.Test;
+import org.onap.aaf.certservice.certification.exception.Cmpv2ClientAdapterException;
import org.onap.aaf.certservice.certification.exception.Cmpv2ServerNotFoundException;
import org.onap.aaf.certservice.certification.exception.CsrDecryptionException;
import org.onap.aaf.certservice.certification.exception.ErrorResponseModel;
import org.onap.aaf.certservice.certification.exception.KeyDecryptionException;
+import org.onap.aaf.certservice.cmpv2client.exceptions.CmpClientException;
+import org.springframework.http.HttpStatus;
import org.springframework.http.ResponseEntity;
import static org.junit.jupiter.api.Assertions.assertEquals;
+import static org.junit.jupiter.api.Assertions.assertThrows;
class CertificationExceptionControllerTest {
@@ -43,46 +47,98 @@ class CertificationExceptionControllerTest {
@Test
void shouldReturnResponseEntityWithAppropriateErrorMessageWhenGivenCsrDecryptionException() {
- // given
+ // Given
String expectedMessage = "Wrong certificate signing request (CSR) format";
CsrDecryptionException csrDecryptionException = new CsrDecryptionException("test csr exception");
- // when
+ // When
ResponseEntity<String> responseEntity = certificationExceptionController.handle(csrDecryptionException);
ErrorResponseModel response = new Gson().fromJson(responseEntity.getBody(), ErrorResponseModel.class);
- // then
+ // Then
+ assertEquals(HttpStatus.BAD_REQUEST, responseEntity.getStatusCode());
assertEquals(expectedMessage, response.getErrorMessage());
}
@Test
void shouldReturnResponseEntityWithAppropriateErrorMessageWhenGivenKeyDecryptionException() {
- // given
+ // Given
String expectedMessage = "Wrong key (PK) format";
KeyDecryptionException csrDecryptionException = new KeyDecryptionException("test pk exception");
- // when
+ // When
ResponseEntity<String> responseEntity = certificationExceptionController.handle(csrDecryptionException);
ErrorResponseModel response = new Gson().fromJson(responseEntity.getBody(), ErrorResponseModel.class);
- // then
+ // Then
+ assertEquals(HttpStatus.BAD_REQUEST, responseEntity.getStatusCode());
assertEquals(expectedMessage, response.getErrorMessage());
}
@Test
void shouldReturnResponseEntityWithAppropriateErrorMessageWhenGivenCaNameIsNotPresentInConfig() {
- // given
+ // Given
String expectedMessage = "Certification authority not found for given CAName";
Cmpv2ServerNotFoundException csrDecryptionException = new Cmpv2ServerNotFoundException("test Ca exception");
- // when
+ // When
ResponseEntity<String> responseEntity = certificationExceptionController.handle(csrDecryptionException);
ErrorResponseModel response = new Gson().fromJson(responseEntity.getBody(), ErrorResponseModel.class);
- // then
+ // Then
+ assertEquals(HttpStatus.NOT_FOUND, responseEntity.getStatusCode());
assertEquals(expectedMessage, response.getErrorMessage());
}
+
+ @Test
+ void shouldReturnResponseEntityWithAppropriateErrorMessageWhenCallingCmpClientFail() {
+ // Given
+ String expectedMessage = "Exception occurred during call to cmp client";
+ CmpClientException cmpClientException = new CmpClientException("Calling CMPv2 client failed");
+
+ // When
+ ResponseEntity<String> responseEntity = certificationExceptionController.handle(cmpClientException);
+
+ ErrorResponseModel response = new Gson().fromJson(responseEntity.getBody(), ErrorResponseModel.class);
+
+ // Then
+ assertEquals(HttpStatus.INTERNAL_SERVER_ERROR, responseEntity.getStatusCode());
+ assertEquals(expectedMessage, response.getErrorMessage());
+ }
+
+ @Test
+ void shouldReturnResponseEntityWithAppropriateErrorMessageWhenModelTransformationInAdapterFail() {
+ // Given
+ String expectedMessage = "Exception occurred parsing cmp client response";
+ Cmpv2ClientAdapterException cmpv2ClientAdapterException = new Cmpv2ClientAdapterException(new Throwable());
+
+ // When
+ ResponseEntity<String> responseEntity = certificationExceptionController.handle(cmpv2ClientAdapterException);
+
+ ErrorResponseModel response = new Gson().fromJson(responseEntity.getBody(), ErrorResponseModel.class);
+
+ // Then
+ assertEquals(HttpStatus.INTERNAL_SERVER_ERROR, responseEntity.getStatusCode());
+ assertEquals(expectedMessage, response.getErrorMessage());
+ }
+
+ @Test
+ void shouldThrowCmpClientExceptionWhenNotHandledRunTimeExceptionOccur() {
+ // Given
+ String expectedMessage = "Runtime exception occurred calling cmp client business logic";
+ RuntimeException runtimeException = new RuntimeException("Unknown runtime exception");
+
+ // When
+ Exception exception = assertThrows(
+ CmpClientException.class, () ->
+ certificationExceptionController.handle(runtimeException)
+ );
+
+ // Then
+ assertEquals(expectedMessage, exception.getMessage());
+ }
+
}