summaryrefslogtreecommitdiffstats
path: root/datafile-aai-client/src/test/java
diff options
context:
space:
mode:
authorelinuxhenrik <henrik.b.andersson@est.tech>2018-09-14 15:49:10 +0200
committerelinuxhenrik <henrik.b.andersson@est.tech>2018-09-17 08:06:07 +0200
commitf394594ec70aaf1eefa4f23b80226c3426dbc17a (patch)
tree89e280889259b11c2651b06fb55d679cf5faf410 /datafile-aai-client/src/test/java
parent7ceca5db40ff6cbd88c95fe335a6a6e582189066 (diff)
Deliver first version of Datafile
Change-Id: Iadd1455d7fe45b4c022dd7fde2f8a506d1b7cd57 Issue-ID: DCAEGEN2-640 Signed-off-by: elinuxhenrik <henrik.b.andersson@est.tech>
Diffstat (limited to 'datafile-aai-client/src/test/java')
-rw-r--r--datafile-aai-client/src/test/java/org/onap/dcaegen2/collectors/datafile/service/AaiConsumerClientTest.java95
-rw-r--r--datafile-aai-client/src/test/java/org/onap/dcaegen2/collectors/datafile/service/AaiHttpClientImplTest.java55
-rw-r--r--datafile-aai-client/src/test/java/org/onap/dcaegen2/collectors/datafile/service/producer/AaiProducerReactiveHttpClientTest.java142
3 files changed, 0 insertions, 292 deletions
diff --git a/datafile-aai-client/src/test/java/org/onap/dcaegen2/collectors/datafile/service/AaiConsumerClientTest.java b/datafile-aai-client/src/test/java/org/onap/dcaegen2/collectors/datafile/service/AaiConsumerClientTest.java
deleted file mode 100644
index 719418fb..00000000
--- a/datafile-aai-client/src/test/java/org/onap/dcaegen2/collectors/datafile/service/AaiConsumerClientTest.java
+++ /dev/null
@@ -1,95 +0,0 @@
-/*
- * ============LICENSE_START=======================================================
- * Datafile Collector Service
- * ================================================================================
- * Copyright (C) 2018 NOKIA Intellectual Property. All rights reserved.
- * ================================================================================
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- * ============LICENSE_END=========================================================
- */
-
-package org.onap.dcaegen2.collectors.datafile.service;
-
-import static org.mockito.ArgumentMatchers.any;
-import static org.mockito.Mockito.mock;
-import static org.mockito.Mockito.when;
-
-import java.io.IOException;
-import java.lang.reflect.Field;
-import java.util.HashMap;
-import java.util.Map;
-import java.util.Optional;
-
-import org.apache.http.client.ResponseHandler;
-import org.apache.http.client.methods.HttpGet;
-import org.apache.http.impl.client.CloseableHttpClient;
-import org.junit.jupiter.api.Assertions;
-import org.junit.jupiter.api.BeforeAll;
-import org.junit.jupiter.api.Test;
-import org.onap.dcaegen2.collectors.datafile.config.AaiClientConfiguration;
-import org.onap.dcaegen2.collectors.datafile.model.ConsumerDmaapModel;
-import org.onap.dcaegen2.collectors.datafile.service.AaiConsumerClient;
-
-class AaiConsumerClientTest {
-
- private static AaiConsumerClient testedObject;
- private static AaiClientConfiguration aaiHttpClientConfigurationMock = mock(AaiClientConfiguration.class);
- private static CloseableHttpClient closeableHttpClientMock = mock(CloseableHttpClient.class);
- private static final String JSON_MESSAGE = "{ \"pnf-id\": \"example-pnf-id-val-22343\", "
- + "\"regional-resource-zone\":null, \"ipaddress-v4-oam\": \"11.22.33.44\" }";
- private static ConsumerDmaapModel consumerDmaapModelMock = mock(ConsumerDmaapModel.class);
- private static final String PNF_NAME = "nokia-pnf-nhfsadhff";
-
- @BeforeAll
- static void setup() throws NoSuchFieldException, IllegalAccessException {
-
- Map<String, String> aaiHeaders = new HashMap<>();
- aaiHeaders.put("X-FromAppId", "datafile");
- aaiHeaders.put("X-TransactionId", "9999");
- aaiHeaders.put("Accept", "application/json");
- aaiHeaders.put("Authorization", "Basic QUFJOkFBSQ==");
- aaiHeaders.put("Real-Time", "true");
- aaiHeaders.put("Content-Type", "application/json");
-
- when(aaiHttpClientConfigurationMock.aaiHost()).thenReturn("54.45.33.2");
- when(aaiHttpClientConfigurationMock.aaiProtocol()).thenReturn("https");
- when(aaiHttpClientConfigurationMock.aaiPort()).thenReturn(1234);
- when(aaiHttpClientConfigurationMock.aaiUserName()).thenReturn("Datafile");
- when(aaiHttpClientConfigurationMock.aaiUserPassword()).thenReturn("Datafile");
- when(aaiHttpClientConfigurationMock.aaiBasePath()).thenReturn("/aai/v11");
- when(aaiHttpClientConfigurationMock.aaiPnfPath()).thenReturn("/network/pnfs/pnf");
- when(aaiHttpClientConfigurationMock.aaiHeaders()).thenReturn(aaiHeaders);
-
- when(consumerDmaapModelMock.getPnfName()).thenReturn(PNF_NAME);
-
- testedObject = new AaiConsumerClient(aaiHttpClientConfigurationMock);
- setField();
- }
-
-
- @Test
- void getExtendedDetails_returnsSuccess() throws IOException {
-
- when(closeableHttpClientMock.execute(any(HttpGet.class), any(ResponseHandler.class)))
- .thenReturn(Optional.of(JSON_MESSAGE));
- Optional<String> actualResult = testedObject.getHttpResponse(consumerDmaapModelMock);
- Assertions.assertEquals(Optional.of(JSON_MESSAGE), actualResult);
- }
-
-
- private static void setField() throws NoSuchFieldException, IllegalAccessException {
- Field field = testedObject.getClass().getDeclaredField("closeableHttpClient");
- field.setAccessible(true);
- field.set(testedObject, closeableHttpClientMock);
- }
-}
diff --git a/datafile-aai-client/src/test/java/org/onap/dcaegen2/collectors/datafile/service/AaiHttpClientImplTest.java b/datafile-aai-client/src/test/java/org/onap/dcaegen2/collectors/datafile/service/AaiHttpClientImplTest.java
deleted file mode 100644
index dcf29549..00000000
--- a/datafile-aai-client/src/test/java/org/onap/dcaegen2/collectors/datafile/service/AaiHttpClientImplTest.java
+++ /dev/null
@@ -1,55 +0,0 @@
-/*
- * ============LICENSE_START=======================================================
- * Datafile Collector Service
- * ================================================================================
- * Copyright (C) 2018 NOKIA Intellectual Property. All rights reserved.
- * ================================================================================
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- * ============LICENSE_END=========================================================
- */
-
-package org.onap.dcaegen2.collectors.datafile.service;
-
-import static org.junit.Assert.assertNotNull;
-import static org.mockito.Mockito.mock;
-import static org.mockito.Mockito.when;
-
-import org.junit.jupiter.api.BeforeAll;
-import org.junit.jupiter.api.Test;
-import org.onap.dcaegen2.collectors.datafile.config.AaiClientConfiguration;
-import org.onap.dcaegen2.collectors.datafile.service.AaiClientImpl;
-
-class AaiHttpClientImplTest {
-
- private static AaiClientImpl testedObject;
-
-
- @BeforeAll
- public static void setup() {
- AaiClientConfiguration aaiHttpClientConfigurationMock = mock(AaiClientConfiguration.class);
- when(aaiHttpClientConfigurationMock.aaiHost()).thenReturn("54.45.33.2");
- when(aaiHttpClientConfigurationMock.aaiProtocol()).thenReturn("https");
- when(aaiHttpClientConfigurationMock.aaiPort()).thenReturn(1234);
- when(aaiHttpClientConfigurationMock.aaiUserName()).thenReturn("PNF");
- when(aaiHttpClientConfigurationMock.aaiUserPassword()).thenReturn("PNF");
- when(aaiHttpClientConfigurationMock.aaiIgnoreSslCertificateErrors()).thenReturn(true);
-
- testedObject = new AaiClientImpl(aaiHttpClientConfigurationMock);
- }
-
- @Test
- public void getAaiHttpClientObject_shouldNotBeNull() {
- assertNotNull(testedObject.getAaiHttpClient());
- }
-}
-
diff --git a/datafile-aai-client/src/test/java/org/onap/dcaegen2/collectors/datafile/service/producer/AaiProducerReactiveHttpClientTest.java b/datafile-aai-client/src/test/java/org/onap/dcaegen2/collectors/datafile/service/producer/AaiProducerReactiveHttpClientTest.java
deleted file mode 100644
index 65f13553..00000000
--- a/datafile-aai-client/src/test/java/org/onap/dcaegen2/collectors/datafile/service/producer/AaiProducerReactiveHttpClientTest.java
+++ /dev/null
@@ -1,142 +0,0 @@
-/*-
- * ============LICENSE_START=======================================================
- * Datafile Collector Service
- * ================================================================================
- * Copyright (C) 2018 NOKIA Intellectual Property. All rights reserved.
- * ================================================================================
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- * ============LICENSE_END=========================================================
- */
-
-package org.onap.dcaegen2.collectors.datafile.service.producer;
-
-import static org.mockito.ArgumentMatchers.any;
-import static org.mockito.Mockito.doReturn;
-import static org.mockito.Mockito.mock;
-import static org.mockito.Mockito.spy;
-import static org.mockito.Mockito.when;
-import static org.springframework.web.reactive.function.client.ExchangeFilterFunctions.basicAuthentication;
-
-import java.net.URI;
-import java.net.URISyntaxException;
-import java.util.HashMap;
-import java.util.Map;
-import org.junit.jupiter.api.Assertions;
-import org.junit.jupiter.api.BeforeAll;
-import org.junit.jupiter.api.Test;
-import org.onap.dcaegen2.collectors.datafile.config.AaiClientConfiguration;
-import org.onap.dcaegen2.collectors.datafile.model.ConsumerDmaapModel;
-import org.onap.dcaegen2.collectors.datafile.model.ConsumerDmaapModelForUnitTest;
-import org.onap.dcaegen2.collectors.datafile.service.producer.AaiProducerReactiveHttpClient;
-import org.springframework.web.reactive.function.client.WebClient;
-import org.springframework.web.reactive.function.client.WebClient.ResponseSpec;
-import reactor.core.publisher.Mono;
-import reactor.test.StepVerifier;
-
-
-class AaiProducerReactiveHttpClientTest {
-
- private static AaiProducerReactiveHttpClient aaiProducerReactiveHttpClient;
-
- private static final Integer SUCCESS_RESPONSE = 200;
-
- private static AaiClientConfiguration aaiConfigurationMock = mock(AaiClientConfiguration.class);
- private static WebClient webClient = mock(WebClient.class);
-
- private static ConsumerDmaapModel dmaapModel = new ConsumerDmaapModelForUnitTest();
- private static WebClient.RequestBodyUriSpec requestBodyUriSpec;
- private static ResponseSpec responseSpec;
-
- private static Map<String, String> aaiHeaders;
-
- @BeforeAll
- static void setUp() {
- setupHeaders();
-
- when(aaiConfigurationMock.aaiHost()).thenReturn("54.45.33.2");
- when(aaiConfigurationMock.aaiProtocol()).thenReturn("https");
- when(aaiConfigurationMock.aaiPort()).thenReturn(1234);
- when(aaiConfigurationMock.aaiUserName()).thenReturn("Datafile");
- when(aaiConfigurationMock.aaiUserPassword()).thenReturn("Datafile");
- when(aaiConfigurationMock.aaiBasePath()).thenReturn("/aai/v11");
- when(aaiConfigurationMock.aaiPnfPath()).thenReturn("/network/pnfs/pnf");
- when(aaiConfigurationMock.aaiHeaders()).thenReturn(aaiHeaders);
-
- aaiProducerReactiveHttpClient = new AaiProducerReactiveHttpClient(aaiConfigurationMock);
-
- webClient = spy(WebClient.builder()
- .defaultHeaders(httpHeaders -> httpHeaders.setAll(aaiHeaders))
- .filter(basicAuthentication(aaiConfigurationMock.aaiUserName(), aaiConfigurationMock.aaiUserPassword()))
- .build());
-
- requestBodyUriSpec = mock(WebClient.RequestBodyUriSpec.class);
- responseSpec = mock(ResponseSpec.class);
- }
-
-
- @Test
- void getAaiProducerResponse_shouldReturn200() {
- //given
- Mono<Integer> expectedResult = Mono.just(SUCCESS_RESPONSE);
-
- //when
- mockWebClientDependantObject();
- doReturn(expectedResult).when(responseSpec).bodyToMono(Integer.class);
- aaiProducerReactiveHttpClient.createAaiWebClient(webClient);
- Mono<Integer> response = aaiProducerReactiveHttpClient.getAaiProducerResponse(Mono.just(dmaapModel));
-
- //then
- StepVerifier.create(response).expectSubscription()
- .expectNextMatches(results -> {
- Assertions.assertEquals(results, expectedResult.block());
- return true;
- }).verifyComplete();
- }
-
- @Test
- void getHttpResponse_whenUriSyntaxExceptionHasBeenThrown() throws URISyntaxException {
- ///given
- aaiProducerReactiveHttpClient = spy(aaiProducerReactiveHttpClient);
- //when
- when(webClient.patch()).thenReturn(requestBodyUriSpec);
- aaiProducerReactiveHttpClient.createAaiWebClient(webClient);
- when(aaiProducerReactiveHttpClient.getUri("pnfName")).thenThrow(URISyntaxException.class);
-
- //then
- StepVerifier.create(
- aaiProducerReactiveHttpClient.getAaiProducerResponse(
- Mono.just(dmaapModel)
- )).expectSubscription().expectError(Exception.class).verify();
- }
-
-
- private void mockWebClientDependantObject() {
- WebClient.RequestHeadersSpec requestHeadersSpec = mock(WebClient.RequestHeadersSpec.class);
- when(webClient.patch()).thenReturn(requestBodyUriSpec);
- when(requestBodyUriSpec.uri((URI) any())).thenReturn(requestBodyUriSpec);
- when(requestBodyUriSpec.body(any())).thenReturn(requestHeadersSpec);
- doReturn(responseSpec).when(requestHeadersSpec).retrieve();
- doReturn(responseSpec).when(responseSpec).onStatus(any(), any());
- }
-
- private static void setupHeaders() {
- aaiHeaders = new HashMap<>();
- aaiHeaders.put("X-FromAppId", "Datafile");
- aaiHeaders.put("X-TransactionId", "vv-temp");
- aaiHeaders.put("Accept", "application/json");
- aaiHeaders.put("Real-Time", "true");
- aaiHeaders.put("Content-Type", "application/merge-patch+json");
- }
-
-}
-