diff options
author | 2020-10-30 10:23:45 +0100 | |
---|---|---|
committer | 2020-11-02 17:06:40 +0000 | |
commit | e19fc5ef16b5daf6cd383b2092411fc355bb0192 (patch) | |
tree | 2e71e267f7038999d03fb2d2189e76599e76f9f3 /src/test/java/org/onap/dcae/configuration/cbs | |
parent | 7be86e2ca0247f5939406f07c6fdefcee0cf963f (diff) |
Fetch configuration from CBS
- Fix memory leak.
- Add reactive configuration fetching from Consul. Now configuration is updated when any change in VES configuration has been done in Consul.
Change-Id: I9cd42e04844c9e99d4d03951185523b569dc9483
Issue-ID: DCAEGEN2-2495
Signed-off-by: Zebek Bogumil <bogumil.zebek@nokia.com>
(cherry picked from commit 1599617246f0ffec1b1c7840f9c7c42318183dcd)
Diffstat (limited to 'src/test/java/org/onap/dcae/configuration/cbs')
-rw-r--r-- | src/test/java/org/onap/dcae/configuration/cbs/CbsClientConfigurationProviderTest.java (renamed from src/test/java/org/onap/dcae/configuration/cbs/CbsClientConfigurationResolverTest.java) | 6 | ||||
-rw-r--r-- | src/test/java/org/onap/dcae/configuration/cbs/CbsClientFactoryTest.java | 36 | ||||
-rw-r--r-- | src/test/java/org/onap/dcae/configuration/cbs/CbsConfigResolverTest.java | 88 |
3 files changed, 3 insertions, 127 deletions
diff --git a/src/test/java/org/onap/dcae/configuration/cbs/CbsClientConfigurationResolverTest.java b/src/test/java/org/onap/dcae/configuration/cbs/CbsClientConfigurationProviderTest.java index 57824595..b3c06d9c 100644 --- a/src/test/java/org/onap/dcae/configuration/cbs/CbsClientConfigurationResolverTest.java +++ b/src/test/java/org/onap/dcae/configuration/cbs/CbsClientConfigurationProviderTest.java @@ -25,7 +25,7 @@ import org.junit.Test; import org.junit.jupiter.api.condition.DisabledIfEnvironmentVariable; import org.onap.dcaegen2.services.sdk.rest.services.cbs.client.model.CbsClientConfiguration; -public class CbsClientConfigurationResolverTest { +public class CbsClientConfigurationProviderTest { private static final String DEFAULT_PROTOCOL = "http"; private static final String DEFAULT_HOSTNAME = "config-binding-service"; @@ -36,7 +36,7 @@ public class CbsClientConfigurationResolverTest { @DisabledIfEnvironmentVariable(named = "CONFIG_BINDING_SERVICE", matches = ".+") public void shouldLoadDefaultConfigWhenEnvNotPresent() { // when - CbsClientConfiguration configuration = new CbsClientConfigurationResolver().resolveCbsClientConfiguration(); + CbsClientConfiguration configuration = new CbsClientConfigurationProvider().get(); // then assertThat(configuration.protocol()).isEqualTo(DEFAULT_PROTOCOL); @@ -44,4 +44,4 @@ public class CbsClientConfigurationResolverTest { assertThat(configuration.port()).isEqualTo(DEFAULT_PORT); assertThat(configuration.appName()).isEqualTo(DEFAULT_APP_NAME); } -}
\ No newline at end of file +} diff --git a/src/test/java/org/onap/dcae/configuration/cbs/CbsClientFactoryTest.java b/src/test/java/org/onap/dcae/configuration/cbs/CbsClientFactoryTest.java deleted file mode 100644 index 4b17f68d..00000000 --- a/src/test/java/org/onap/dcae/configuration/cbs/CbsClientFactoryTest.java +++ /dev/null @@ -1,36 +0,0 @@ -/*- - * ============LICENSE_START======================================================= - * org.onap.dcaegen2.collectors.ves - * ================================================================================ - * Copyright (C) 2020 Nokia. 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.dcae.configuration.cbs; - -import static org.assertj.core.api.Assertions.assertThat; - -import org.junit.Test; - -public class CbsClientFactoryTest { - - @Test - public void createsClientSuccessfully() { - // when - CbsConfigResolver cbsConfigResolver = new CbsConfigResolverFactory().create(); - - // then - assertThat(cbsConfigResolver).isNotNull(); - } -}
\ No newline at end of file diff --git a/src/test/java/org/onap/dcae/configuration/cbs/CbsConfigResolverTest.java b/src/test/java/org/onap/dcae/configuration/cbs/CbsConfigResolverTest.java deleted file mode 100644 index 6f729997..00000000 --- a/src/test/java/org/onap/dcae/configuration/cbs/CbsConfigResolverTest.java +++ /dev/null @@ -1,88 +0,0 @@ -/*- - * ============LICENSE_START======================================================= - * org.onap.dcaegen2.collectors.ves - * ================================================================================ - * Copyright (C) 2020 Nokia. 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.dcae.configuration.cbs; - -import com.github.tomakehurst.wiremock.junit.WireMockRule; -import org.json.JSONObject; -import org.junit.Rule; -import org.junit.Test; -import org.junit.runner.RunWith; -import org.mockito.InjectMocks; -import org.mockito.Mock; -import org.mockito.junit.MockitoJUnitRunner; -import org.onap.dcaegen2.services.sdk.rest.services.cbs.client.model.CbsClientConfiguration; -import org.onap.dcaegen2.services.sdk.rest.services.cbs.client.model.ImmutableCbsClientConfiguration; - -import static com.github.tomakehurst.wiremock.client.WireMock.aResponse; -import static com.github.tomakehurst.wiremock.client.WireMock.get; -import static com.github.tomakehurst.wiremock.client.WireMock.stubFor; -import static com.github.tomakehurst.wiremock.client.WireMock.urlEqualTo; -import static com.github.tomakehurst.wiremock.core.WireMockConfiguration.wireMockConfig; -import static org.assertj.core.api.Assertions.assertThat; -import static org.mockito.Mockito.when; - -@RunWith(MockitoJUnitRunner.Silent.class) -public class CbsConfigResolverTest { - - private static final String VES_CONFIG = "{\"collector.port\": 8081}"; - private static final String HOSTNAME = "localhost"; - private static final String PROTOCOL = "http"; - private static final String APP_NAME = "VESCollector"; - - @Rule - public final WireMockRule wireMockRule = new WireMockRule( - wireMockConfig().dynamicPort().dynamicPort()); - - @Mock - private CbsClientConfigurationResolver cbsClientConfigurationResolver; - - @InjectMocks - private CbsConfigResolver cbsConfigResolver; - - @Test - public void shouldFetchConfigurationFromCBS() { - // given - stubCBSToReturnAppConfig(); - mockCbsClientConfiguration(); - - // when - JSONObject appConfig = cbsConfigResolver.getAppConfig().get(); - - // then - assertThat(appConfig).isNotNull(); - assertThat(appConfig.toString()).isEqualTo(new JSONObject(VES_CONFIG).toString()); - } - - private void stubCBSToReturnAppConfig() { - stubFor(get(urlEqualTo("/service_component/VESCollector")) - .willReturn(aResponse().withBody(CbsConfigResolverTest.VES_CONFIG))); - } - - private void mockCbsClientConfiguration() { - final int PORT = wireMockRule.port(); - CbsClientConfiguration cbsClientConfiguration = ImmutableCbsClientConfiguration.builder() - .protocol(PROTOCOL) - .hostname(HOSTNAME) - .port(PORT) - .appName(APP_NAME) - .build(); - when(cbsClientConfigurationResolver.resolveCbsClientConfiguration()).thenReturn(cbsClientConfiguration); - } -}
\ No newline at end of file |