import static org.assertj.core.api.Assertions.assertThat;
import static org.mockito.ArgumentMatchers.any;
-import static org.mockito.ArgumentMatchers.anyString;
import static org.mockito.BDDMockito.given;
import static org.mockito.Mockito.mock;
import static org.mockito.Mockito.verify;
import com.google.gson.JsonObject;
import java.net.InetSocketAddress;
import org.junit.jupiter.api.Test;
-import org.onap.dcaegen2.services.sdk.rest.services.adapters.http.CloudHttpClient;
+import org.mockito.Mockito;
+import org.onap.dcaegen2.services.sdk.rest.services.adapters.http.HttpMethod;
+import org.onap.dcaegen2.services.sdk.rest.services.adapters.http.HttpRequest;
+import org.onap.dcaegen2.services.sdk.rest.services.adapters.http.HttpResponse;
+import org.onap.dcaegen2.services.sdk.rest.services.adapters.http.ImmutableHttpRequest;
+import org.onap.dcaegen2.services.sdk.rest.services.adapters.http.ImmutableHttpResponse;
+import org.onap.dcaegen2.services.sdk.rest.services.adapters.http.RxHttpClient;
import org.onap.dcaegen2.services.sdk.rest.services.model.logging.RequestDiagnosticContext;
import reactor.core.publisher.Mono;
* @since February 2019
*/
class CbsClientImplTest {
- private final CloudHttpClient httpClient = mock(CloudHttpClient.class);
+ private final RxHttpClient httpClient = mock(RxHttpClient.class);
@Test
void shouldFetchUsingProperUrl() {
InetSocketAddress cbsAddress = InetSocketAddress.createUnresolved("cbshost", 6969);
String serviceName = "dcaegen2-ves-collector";
final CbsClientImpl cut = CbsClientImpl.create(httpClient, cbsAddress, serviceName);
- final JsonObject httpResponse = new JsonObject();
- given(httpClient.get(anyString(), any(RequestDiagnosticContext.class), any(Class.class))).willReturn(Mono.just(httpResponse));
+ final HttpResponse httpResponse = ImmutableHttpResponse.builder()
+ .url("http://xxx")
+ .statusCode(200)
+ .rawBody("{}".getBytes())
+ .build();
+ given(httpClient.call(any(HttpRequest.class))).willReturn(Mono.just(httpResponse));
RequestDiagnosticContext diagnosticContext = RequestDiagnosticContext.create();
// when
// then
final String expectedUrl = "http://cbshost:6969/service_component/dcaegen2-ves-collector";
- verify(httpClient).get(expectedUrl, diagnosticContext, JsonObject.class);
- assertThat(result).isSameAs(httpResponse);
+ verify(httpClient).call(ImmutableHttpRequest.builder()
+ .method(HttpMethod.GET)
+ .url(expectedUrl)
+ .diagnosticContext(diagnosticContext)
+ .build());
+ assertThat(result.toString()).isEqualTo(httpResponse.bodyAsString());
}
}
\ No newline at end of file