diff --git a/src/main/java/org/springframework/data/querydsl/QuerydslRepositoryInvokerAdapter.java b/src/main/java/org/springframework/data/querydsl/QuerydslRepositoryInvokerAdapter.java index 64f1a1e02..836d8f327 100644 --- a/src/main/java/org/springframework/data/querydsl/QuerydslRepositoryInvokerAdapter.java +++ b/src/main/java/org/springframework/data/querydsl/QuerydslRepositoryInvokerAdapter.java @@ -44,13 +44,14 @@ public class QuerydslRepositoryInvokerAdapter implements RepositoryInvoker { * * @param delegate must not be {@literal null}. * @param executor must not be {@literal null}. - * @param predicate can be {@literal null}. + * @param predicate must not be {@literal null}. */ public QuerydslRepositoryInvokerAdapter(RepositoryInvoker delegate, QuerydslPredicateExecutor executor, Predicate predicate) { Assert.notNull(delegate, "Delegate RepositoryInvoker must not be null"); Assert.notNull(executor, "QuerydslPredicateExecutor must not be null"); + Assert.notNull(predicate, "Predicate must not be null"); this.delegate = delegate; this.executor = executor; diff --git a/src/test/java/org/springframework/data/querydsl/QuerydslRepositoryInvokerAdapterUnitTests.java b/src/test/java/org/springframework/data/querydsl/QuerydslRepositoryInvokerAdapterUnitTests.java index 0bbb37a10..2cd2ae810 100755 --- a/src/test/java/org/springframework/data/querydsl/QuerydslRepositoryInvokerAdapterUnitTests.java +++ b/src/test/java/org/springframework/data/querydsl/QuerydslRepositoryInvokerAdapterUnitTests.java @@ -15,6 +15,7 @@ */ package org.springframework.data.querydsl; +import static org.assertj.core.api.Assertions.*; import static org.mockito.Mockito.*; import java.io.Serializable; @@ -24,7 +25,6 @@ import org.junit.jupiter.api.Test; import org.junit.jupiter.api.extension.ExtendWith; import org.mockito.Mock; import org.mockito.junit.jupiter.MockitoExtension; - import org.springframework.data.domain.PageRequest; import org.springframework.data.domain.Sort; import org.springframework.data.repository.support.RepositoryInvoker; @@ -35,6 +35,7 @@ import com.querydsl.core.types.Predicate; * Unit tests for {@link QuerydslRepositoryInvokerAdapter}. * * @author Oliver Gierke + * @author Mark Paluch * @soundtrack Emilie Nicolas - Grown Up */ @ExtendWith(MockitoExtension.class) @@ -51,6 +52,13 @@ class QuerydslRepositoryInvokerAdapterUnitTests { this.adapter = new QuerydslRepositoryInvokerAdapter(delegate, executor, predicate); } + @Test // GH-1501 + void rejectsNullPredicate() { + + assertThatIllegalArgumentException() + .isThrownBy(() -> new QuerydslRepositoryInvokerAdapter(delegate, executor, null)); + } + @Test // DATACMNS-669 void forwardsFindAllToExecutorWithPredicate() {