Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
Expand Up @@ -12,30 +12,23 @@
import com.commercetools.monitoring.datadog.DatadogMiddleware;
import com.datadog.api.client.ApiException;
import com.datadog.api.client.v2.api.MetricsApi;
import com.tngtech.junit.dataprovider.DataProvider;
import com.tngtech.junit.dataprovider.DataProviderExtension;
import com.tngtech.junit.dataprovider.UseDataProvider;
import com.tngtech.junit.dataprovider.UseDataProviderExtension;

import io.vrap.rmf.base.client.*;

import org.assertj.core.api.Assertions;
import org.junit.jupiter.api.TestTemplate;
import org.junit.jupiter.api.extension.ExtendWith;
import org.junit.jupiter.params.ParameterizedTest;
import org.junit.jupiter.params.provider.MethodSource;
import org.mockito.Mockito;

@ExtendWith(DataProviderExtension.class)
@ExtendWith(UseDataProviderExtension.class)
public class TelemetryMiddlewareTest {

@DataProvider
public static Object[][] responses() {
return new Object[][] { { 200, 2 }, { 201, 2 }, { 400, 3 }, { 401, 3 }, { 403, 3 }, { 404, 3 }, { 409, 3 },
{ 499, 3 }, { 500, 3 }, { 502, 3 }, { 503, 3 }, { 504, 3 }, { 599, 3 }, };
}

@TestTemplate
@UseDataProvider("responses")
@ParameterizedTest
@MethodSource("responses")
public void testCounts(int statusCode, int count) throws ApiException {
MetricsApi metricsApi = Mockito.mock(MetricsApi.class);
Mockito.when(metricsApi.submitMetrics(Mockito.any())).thenReturn(null);
Expand All @@ -59,8 +52,8 @@ public void testCounts(int statusCode, int count) throws ApiException {
}));
}

@TestTemplate
@UseDataProvider("responses")
@ParameterizedTest
@MethodSource("responses")
public void testHttpCounts(int statusCode, int count) throws URISyntaxException, ApiException {
MetricsApi metricsApi = Mockito.mock(MetricsApi.class);
Mockito.when(metricsApi.submitMetrics(Mockito.any())).thenReturn(null);
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -14,10 +14,6 @@
import com.commercetools.api.models.error.ErrorObject;
import com.commercetools.api.models.error.ErrorResponse;
import com.commercetools.api.models.error.InvalidJsonInputError;
import com.tngtech.junit.dataprovider.DataProvider;
import com.tngtech.junit.dataprovider.DataProviderExtension;
import com.tngtech.junit.dataprovider.UseDataProvider;
import com.tngtech.junit.dataprovider.UseDataProviderExtension;

import io.vrap.rmf.base.client.*;
import io.vrap.rmf.base.client.error.*;
Expand All @@ -26,13 +22,10 @@

import org.assertj.core.api.Assertions;
import org.junit.jupiter.api.Test;
import org.junit.jupiter.api.TestTemplate;
import org.junit.jupiter.api.extension.ExtendWith;
import org.junit.jupiter.params.ParameterizedTest;
import org.junit.jupiter.params.provider.MethodSource;

@ExtendWith(DataProviderExtension.class)
@ExtendWith(UseDataProviderExtension.class)
public class ErrorTest {
@DataProvider
public static Object[][] exceptions() {
return new Object[][] { { 400, BadRequestException.class }, { 401, UnauthorizedException.class },
{ 403, ForbiddenException.class }, { 404, NotFoundException.class },
Expand All @@ -53,8 +46,8 @@ public void deprecatedAttributesAccessor() throws IOException {
assertThat(error.getDetailedErrorMessage()).isEqualTo("actions -> name: Missing required value");
}

@TestTemplate
@UseDataProvider("exceptions")
@ParameterizedTest
@MethodSource("exceptions")
public void testErrorInvalidResponse(int statusCode, Class<ApiHttpException> exceptionClass) {
ErrorMiddleware middleware = ErrorMiddleware.of(ApiHttpExceptionFactory.of(ResponseSerializer.of()));

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -6,32 +6,25 @@
import com.commercetools.api.models.order.OrderSearchRequestBuilder;
import com.commercetools.api.models.order.OrderSearchSortOrder;
import com.fasterxml.jackson.core.JsonProcessingException;
import com.tngtech.junit.dataprovider.DataProvider;
import com.tngtech.junit.dataprovider.DataProviderExtension;
import com.tngtech.junit.dataprovider.UseDataProvider;
import com.tngtech.junit.dataprovider.UseDataProviderExtension;

import io.vrap.rmf.base.client.utils.json.JsonUtils;

import org.assertj.core.api.Assertions;
import org.json.JSONException;
import org.junit.jupiter.api.TestTemplate;
import org.junit.jupiter.api.extension.ExtendWith;
import org.junit.jupiter.params.ParameterizedTest;
import org.junit.jupiter.params.provider.MethodSource;
import org.skyscreamer.jsonassert.JSONAssert;

@ExtendWith(UseDataProviderExtension.class)
@ExtendWith(DataProviderExtension.class)
public class OrderQueryBuilderTest {
@TestTemplate
@UseDataProvider("searchBuilder")
@ParameterizedTest
@MethodSource("searchBuilder")
public void buildUnchecked(OrderSearchRequestBuilder builder, String expectedQuery)
throws JSONException, JsonProcessingException {
OrderSearchRequest request = builder.buildUnchecked();
Assertions.assertThat(request).isInstanceOf(OrderSearchRequest.class);
JSONAssert.assertEquals(expectedQuery, JsonUtils.toJsonString(request), true);
}

@DataProvider
public static Object[][] searchBuilder() {
return new Object[][] { new Object[] { OrderSearchRequest.builder()
.withQuery(q -> q.and(b -> b
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -4,33 +4,26 @@
import java.util.Collections;

import com.commercetools.api.client.*;
import com.tngtech.junit.dataprovider.DataProvider;
import com.tngtech.junit.dataprovider.DataProviderExtension;
import com.tngtech.junit.dataprovider.UseDataProvider;
import com.tngtech.junit.dataprovider.UseDataProviderExtension;

import io.vrap.rmf.base.client.*;

import org.apache.commons.lang3.tuple.Pair;
import org.assertj.core.api.Assertions;
import org.assertj.core.util.Lists;
import org.junit.jupiter.api.TestTemplate;
import org.junit.jupiter.api.extension.ExtendWith;
import org.junit.jupiter.params.ParameterizedTest;
import org.junit.jupiter.params.provider.MethodSource;

@ExtendWith(UseDataProviderExtension.class)
@ExtendWith(DataProviderExtension.class)
public class PagedQueryRequestTest {

private final static ApiRoot apiRoot = ApiRoot.of();

@TestTemplate
@UseDataProvider("requestWithMethodParameters")
@ParameterizedTest
@MethodSource("requestWithMethodParameters")
public void defaultMethods(ApiHttpRequest request, String httpMethod, String uri) {
Assertions.assertThat(httpMethod).isEqualTo(request.getMethod().name().toLowerCase());
Assertions.assertThat(request.getUri().toString()).isEqualTo(uri);
}

@DataProvider
public static Object[][] requestWithMethodParameters() {
return new Object[][] {
new Object[] { apiRoot.withProjectKey("test_projectKey")
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -20,26 +20,19 @@
import com.commercetools.api.predicates.query.state.StateQueryBuilderDsl;
import com.commercetools.api.predicates.query.tax_category.TaxRateQueryBuilderDsl;
import com.commercetools.api.predicates.query.type.TypeQueryBuilderDsl;
import com.tngtech.junit.dataprovider.DataProvider;
import com.tngtech.junit.dataprovider.DataProviderExtension;
import com.tngtech.junit.dataprovider.UseDataProvider;
import com.tngtech.junit.dataprovider.UseDataProviderExtension;

import org.assertj.core.api.Assertions;
import org.junit.jupiter.api.TestTemplate;
import org.junit.jupiter.api.extension.ExtendWith;
import org.junit.jupiter.params.ParameterizedTest;
import org.junit.jupiter.params.provider.MethodSource;

@ExtendWith(UseDataProviderExtension.class)
@ExtendWith(DataProviderExtension.class)
public class QueryTests {

@TestTemplate
@UseDataProvider("predicates")
@ParameterizedTest
@MethodSource("predicates")
public void predicateRender(QueryPredicate t, String expectedPredicate) {
Assertions.assertThat(t.render()).isEqualTo(expectedPredicate);
}

@DataProvider
public static Object[][] predicates() {
return new Object[][] { new Object[] { CartQueryBuilderDsl.of().id().is("abc"), "id = \"abc\"", },
new Object[] { CartQueryBuilderDsl.of().id().is("abc").not(), "not(id = \"abc\")", },
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -12,18 +12,12 @@
import com.commercetools.api.models.Identifiable;
import com.commercetools.api.models.common.DefaultCurrencyUnits;
import com.commercetools.api.search.products.*;
import com.tngtech.junit.dataprovider.DataProvider;
import com.tngtech.junit.dataprovider.DataProviderExtension;
import com.tngtech.junit.dataprovider.UseDataProvider;
import com.tngtech.junit.dataprovider.UseDataProviderExtension;

import org.assertj.core.api.Assertions;
import org.junit.jupiter.api.Test;
import org.junit.jupiter.api.TestTemplate;
import org.junit.jupiter.api.extension.ExtendWith;
import org.junit.jupiter.params.ParameterizedTest;
import org.junit.jupiter.params.provider.MethodSource;

@ExtendWith(UseDataProviderExtension.class)
@ExtendWith(DataProviderExtension.class)
public class SearchTests {

@Test
Expand Down Expand Up @@ -58,19 +52,18 @@ public void postRequest() {
"filter=categories.id%3A+%22abc%22&filter.facets=categories.id%3A+%22def%22&filter.query=categories.id%3A+%22ghi%22&facet=categories.id");
}

@TestTemplate
@UseDataProvider("filterExpressions")
@ParameterizedTest
@MethodSource("filterExpressions")
public void filterRender(FilterExpression searchExpression, String expectedPredicate) {
Assertions.assertThat(searchExpression.render()).isEqualTo(expectedPredicate);
}

@TestTemplate
@UseDataProvider("facetExpressions")
@ParameterizedTest
@MethodSource("facetExpressions")
public void facetRender(FilterExpression searchExpression, String expectedPredicate) {
Assertions.assertThat(searchExpression.render()).isEqualTo(expectedPredicate);
}

@DataProvider
public static Object[][] filterExpressions() {
return new Object[][] { new Object[] { ProductFilterExpressionBuilder.of().key().is("foo"), "key: \"foo\"" },
new Object[] { ProductFilterExpressionBuilder.of().key().exists(), "key: exists" },
Expand Down Expand Up @@ -291,7 +284,6 @@ public static Object[][] filterExpressions() {
};
}

@DataProvider
public static Object[][] facetExpressions() {
return new Object[][] {
new Object[] { ProductFacetExpressionBuilder.of().categories().id().alias("cat"),
Expand Down
1 change: 0 additions & 1 deletion gradle-scripts/extensions.gradle
Original file line number Diff line number Diff line change
Expand Up @@ -52,7 +52,6 @@ ext {

junit = [
junit: 'org.junit.jupiter:junit-jupiter:5.11.4',
dataprovider: 'com.tngtech.junit.dataprovider:junit-jupiter-dataprovider:2.10',
jsonassert: 'org.skyscreamer:jsonassert:1.5.3',
assertj: 'org.assertj:assertj-core:3.27.3'
]
Expand Down
1 change: 0 additions & 1 deletion gradle-scripts/subproject-dependencies.gradle
Original file line number Diff line number Diff line change
@@ -1,6 +1,5 @@
dependencies {
testImplementation junit.junit
testImplementation junit.dataprovider
testImplementation junit.assertj
testImplementation awaitility.awaitility
testImplementation logback.classic
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -7,23 +7,15 @@
import java.time.Duration;
import java.util.concurrent.CompletableFuture;

import com.tngtech.junit.dataprovider.DataProvider;
import com.tngtech.junit.dataprovider.DataProviderExtension;
import com.tngtech.junit.dataprovider.UseDataProvider;
import com.tngtech.junit.dataprovider.UseDataProviderExtension;

import io.vrap.rmf.base.client.*;
import io.vrap.rmf.base.client.error.*;

import org.assertj.core.api.Assertions;
import org.junit.jupiter.api.TestTemplate;
import org.junit.jupiter.api.extension.ExtendWith;
import org.junit.jupiter.params.ParameterizedTest;
import org.junit.jupiter.params.provider.MethodSource;

@ExtendWith(DataProviderExtension.class)
@ExtendWith(UseDataProviderExtension.class)
public class ErrorMiddlewareTest {

@DataProvider
public static Object[][] exceptions() {
return new Object[][] { { 400, BadRequestException.class }, { 401, UnauthorizedException.class },
{ 403, ForbiddenException.class }, { 404, NotFoundException.class },
Expand All @@ -33,8 +25,8 @@ public static Object[][] exceptions() {
{ 599, ApiServerException.class }, };
}

@TestTemplate
@UseDataProvider("exceptions")
@ParameterizedTest
@MethodSource("exceptions")
public void testError(int statusCode, Class<ApiHttpException> exceptionClass) {
ErrorMiddleware middleware = ErrorMiddleware.of(HttpExceptionFactory.of(ResponseSerializer.of()));

Expand All @@ -50,8 +42,8 @@ public void testError(int statusCode, Class<ApiHttpException> exceptionClass) {
}).matches(e -> e.getStatusCode() == statusCode);
}

@TestTemplate
@UseDataProvider("exceptions")
@ParameterizedTest
@MethodSource("exceptions")
public void testErrorInvalidResponse(int statusCode, Class<ApiHttpException> exceptionClass) {
ErrorMiddleware middleware = ErrorMiddleware.of(HttpExceptionFactory.of(ResponseSerializer.of()));

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -9,31 +9,23 @@
import java.util.concurrent.CompletableFuture;
import java.util.function.Function;

import com.tngtech.junit.dataprovider.DataProvider;
import com.tngtech.junit.dataprovider.DataProviderExtension;
import com.tngtech.junit.dataprovider.UseDataProvider;
import com.tngtech.junit.dataprovider.UseDataProviderExtension;

import io.vrap.rmf.base.client.*;
import io.vrap.rmf.base.client.error.*;

import org.assertj.core.api.Assertions;
import org.junit.jupiter.api.TestTemplate;
import org.junit.jupiter.api.extension.ExtendWith;
import org.junit.jupiter.params.ParameterizedTest;
import org.junit.jupiter.params.provider.MethodSource;

@ExtendWith(DataProviderExtension.class)
@ExtendWith(UseDataProviderExtension.class)
public class TelemetryMiddlewareTest {

@DataProvider
public static Object[][] responses() {
return new Object[][] { { 200, 1, 0 }, { 201, 1, 0 }, { 400, 1, 1 }, { 401, 1, 1 }, { 403, 1, 1 },
{ 404, 1, 1 }, { 409, 1, 1 }, { 499, 1, 1 }, { 500, 1, 1 }, { 502, 1, 1 }, { 503, 1, 1 }, { 504, 1, 1 },
{ 599, 1, 1 }, };
}

@TestTemplate
@UseDataProvider("responses")
@ParameterizedTest
@MethodSource("responses")
public void testCounts(int statusCode, int count, int errorCount) {
TestTelemetryMiddleware middleware = new TestTelemetryMiddleware();

Expand All @@ -50,8 +42,8 @@ public void testCounts(int statusCode, int count, int errorCount) {
Assertions.assertThat(middleware.errorCount).isEqualTo(errorCount);
}

@TestTemplate
@UseDataProvider("responses")
@ParameterizedTest
@MethodSource("responses")
public void testHttpCounts(int statusCode, int count, int errorCount) throws URISyntaxException {
TestTelemetryMiddleware middleware = new TestTelemetryMiddleware();

Expand Down
Loading