aboutsummaryrefslogtreecommitdiffstats
path: root/certService/src/test/java/org/onap/aaf/certservice/api
diff options
context:
space:
mode:
authorBartosz Gardziejewski <bartosz.gardziejewski@nokia.com>2020-02-12 11:53:42 +0100
committerBartosz Gardziejewski <bartosz.gardziejewski@nokia.com>2020-02-13 10:53:19 +0100
commit1d90088826d5bb2f141be9683d9e31b606fca978 (patch)
treee2cf2fb2f81f607ed0f8142ee08bd9879355cbcb /certService/src/test/java/org/onap/aaf/certservice/api
parent41a5418f3d93fb09d5544c2070b42d5d5f4e216a (diff)
Return hardcoded CA certs and certification chain.
Issue-ID: AAF-995 Signed-off-by: Bartosz Gardziejewski <bartosz.gardziejewski@nokia.com> Change-Id: I38b498c4deeedc4ea4323065c5f7b5ddd137209f
Diffstat (limited to 'certService/src/test/java/org/onap/aaf/certservice/api')
-rw-r--r--certService/src/test/java/org/onap/aaf/certservice/api/CertificationServiceTest.java53
1 files changed, 46 insertions, 7 deletions
diff --git a/certService/src/test/java/org/onap/aaf/certservice/api/CertificationServiceTest.java b/certService/src/test/java/org/onap/aaf/certservice/api/CertificationServiceTest.java
index 9367fcb1..8ee88db5 100644
--- a/certService/src/test/java/org/onap/aaf/certservice/api/CertificationServiceTest.java
+++ b/certService/src/test/java/org/onap/aaf/certservice/api/CertificationServiceTest.java
@@ -20,19 +20,26 @@
package org.onap.aaf.certservice.api;
+import com.google.gson.Gson;
import org.junit.jupiter.api.BeforeEach;
import org.junit.jupiter.api.Test;
import org.mockito.Mock;
import org.mockito.MockitoAnnotations;
+import org.onap.aaf.certservice.certification.CertificationModelFactory;
import org.onap.aaf.certservice.certification.CsrModelFactory;
import org.onap.aaf.certservice.certification.CsrModelFactory.StringBase64;
import org.onap.aaf.certservice.certification.exceptions.CsrDecryptionException;
+import org.onap.aaf.certservice.certification.exceptions.DecryptionException;
+import org.onap.aaf.certservice.certification.exceptions.PemDecryptionException;
+import org.onap.aaf.certservice.certification.model.CertificationModel;
import org.onap.aaf.certservice.certification.model.CsrModel;
import org.springframework.http.HttpStatus;
import org.springframework.http.ResponseEntity;
import java.io.IOException;
+import java.util.Arrays;
+import static org.assertj.core.api.Assertions.assertThat;
import static org.junit.jupiter.api.Assertions.assertEquals;
import static org.junit.jupiter.api.Assertions.assertTrue;
import static org.mockito.ArgumentMatchers.any;
@@ -47,43 +54,75 @@ class CertificationServiceTest {
@Mock
private CsrModelFactory csrModelFactory;
+ @Mock
+ private CertificationModelFactory certificationModelFactory;
+
@BeforeEach
void serUp() {
MockitoAnnotations.initMocks(this);
- certificationService = new CertificationService(csrModelFactory);
+ certificationService = new CertificationService(csrModelFactory, certificationModelFactory);
}
@Test
- void shouldReturnDataAboutCsrBaseOnEncodedParameters() throws CsrDecryptionException {
+ void shouldReturnDataAboutCsrBaseOnEncodedParameters() throws DecryptionException {
// given
final String testStringCsr = "testData";
+ final String testCaName = "TestCa";
CsrModel mockedCsrModel = mock(CsrModel.class);
+ CertificationModel testCertificationModel = new CertificationModel(
+ Arrays.asList("ENTITY_CERT", "INTERMEDIATE_CERT"),
+ Arrays.asList("CA_CERT", "EXTRA_CA_CERT")
+ );
when(mockedCsrModel.toString()).thenReturn(testStringCsr);
when(csrModelFactory.createCsrModel(any(StringBase64.class), any(StringBase64.class)))
.thenReturn(mockedCsrModel);
+ when(certificationModelFactory.createCertificationModel(mockedCsrModel, testCaName))
+ .thenReturn(testCertificationModel);
// when
ResponseEntity<String> testResponse =
- certificationService.signCertificate("TestCa", "encryptedCSR", "encryptedPK");
+ certificationService.signCertificate(testCaName, "encryptedCSR", "encryptedPK");
+
+ CertificationModel responseCertificationModel = new Gson().fromJson(testResponse.getBody(), CertificationModel.class);
// then
assertEquals(HttpStatus.OK, testResponse.getStatusCode());
+ assertThat(responseCertificationModel
+ ).isEqualToComparingFieldByField(testCertificationModel);
+
+ }
+
+ @Test
+ void shouldReturnBadRequestWhenCreatingCsrModelFails() throws DecryptionException {
+ // given
+ when(csrModelFactory.createCsrModel(any(StringBase64.class), any(StringBase64.class)))
+ .thenThrow(new CsrDecryptionException("CSR creation fail",new IOException()));
+
+ // when
+ ResponseEntity<String> testResponse =
+ certificationService.signCertificate("TestCa", "encryptedCSR", "encryptedPK");
+
+ String expectedMessage = "Wrong certificate signing request (CSR) format";
+
+ // then
+ assertEquals(HttpStatus.BAD_REQUEST, testResponse.getStatusCode());
assertTrue(
- testResponse.toString().contains(testStringCsr)
+ testResponse.toString().contains(expectedMessage)
);
+
}
@Test
- void shouldReturnBadRequestWhenCreatingCsrModelFails() throws CsrDecryptionException {
+ void shouldReturnBadRequestWhenCreatingPemModelFails() throws DecryptionException {
// given
when(csrModelFactory.createCsrModel(any(StringBase64.class), any(StringBase64.class)))
- .thenThrow(new CsrDecryptionException("creation fail",new IOException()));
+ .thenThrow(new PemDecryptionException("PEM creation fail",new IOException()));
// when
ResponseEntity<String> testResponse =
certificationService.signCertificate("TestCa", "encryptedCSR", "encryptedPK");
- String expectedMessage = "Wrong certificate signing request (CSR) format";
+ String expectedMessage = "Wrong key (PK) format";
// then
assertEquals(HttpStatus.BAD_REQUEST, testResponse.getStatusCode());