From 33a2978ce2114d860d73e41084b8e917c4233118 Mon Sep 17 00:00:00 2001 From: Piotr Jaszczyk Date: Thu, 28 Feb 2019 12:14:17 +0100 Subject: Emit CBS config updates only Add an update method to CbsClient which emits an item only when the configuration has accentually changed. Change-Id: I6023fb1cc069b06bd2c4baf94406538965b6534c Issue-ID: DCAEGEN2-1233 Signed-off-by: Piotr Jaszczyk --- .../services/cbs/client/impl/CbsClientImplIT.java | 22 +++++++++++++++++++++- 1 file changed, 21 insertions(+), 1 deletion(-) (limited to 'rest-services/cbs-client/src/test/java/org/onap') diff --git a/rest-services/cbs-client/src/test/java/org/onap/dcaegen2/services/sdk/rest/services/cbs/client/impl/CbsClientImplIT.java b/rest-services/cbs-client/src/test/java/org/onap/dcaegen2/services/sdk/rest/services/cbs/client/impl/CbsClientImplIT.java index 309bb62f..8a0977d9 100644 --- a/rest-services/cbs-client/src/test/java/org/onap/dcaegen2/services/sdk/rest/services/cbs/client/impl/CbsClientImplIT.java +++ b/rest-services/cbs-client/src/test/java/org/onap/dcaegen2/services/sdk/rest/services/cbs/client/impl/CbsClientImplIT.java @@ -98,7 +98,8 @@ class CbsClientImplIT { final RequestDiagnosticContext diagnosticContext = RequestDiagnosticContext.create(); // when - final Flux result = sut.flatMapMany(cbsClient -> cbsClient.get(diagnosticContext, Duration.ZERO, Duration.ofMillis(10))); + final Flux result = sut + .flatMapMany(cbsClient -> cbsClient.get(diagnosticContext, Duration.ZERO, Duration.ofMillis(10))); // then final int itemsToTake = 5; @@ -108,6 +109,25 @@ class CbsClientImplIT { .verify(Duration.ofSeconds(5)); } + @Test + void testCbsClientWithUpdatesCall() { + // given + final Mono sut = CbsClientFactory.createCbsClient(sampleEnvironment); + final RequestDiagnosticContext diagnosticContext = RequestDiagnosticContext.create(); + final Duration period = Duration.ofMillis(10); + + // when + final Flux result = sut + .flatMapMany(cbsClient -> cbsClient.updates(diagnosticContext, Duration.ZERO, period)); + + // then + final Duration timeToCollectItemsFor = period.multipliedBy(50); + StepVerifier.create(result.take(timeToCollectItemsFor).map(this::sampleConfigValue)) + .expectNext(EXPECTED_CONFIG_VALUE) + .expectComplete() + .verify(Duration.ofSeconds(5)); + } + private String sampleConfigValue(JsonObject obj) { return obj.get(SAMPLE_CONFIG_KEY).getAsString(); } -- cgit 1.2.3-korg