From 20a1220cd14919bf3051b07ae31b7108a346356f Mon Sep 17 00:00:00 2001 From: Mark Paluch Date: Mon, 27 Sep 2021 11:30:30 +0200 Subject: [PATCH] Drop support for RxJava 1. Closes #2469 --- pom.xml | 14 ------ .../util/ReactiveWrapperConverters.java | 50 ------------------- .../repository/util/ReactiveWrappers.java | 21 +------- .../QueryExecutionResultHandlerUnitTests.java | 35 ++++++------- ...eactiveRepositoryInformationUnitTests.java | 30 ----------- ...pperRepositoryFactorySupportUnitTests.java | 38 +------------- .../repository/query/ParametersUnitTests.java | 2 +- .../query/ResultProcessorUnitTests.java | 8 +-- .../QueryExecutionConvertersUnitTests.java | 6 +-- .../ReactiveWrapperConvertersUnitTests.java | 34 ------------- .../util/ReactiveWrappersUnitTests.java | 8 --- .../CoroutineCrudRepositoryUnitTests.kt | 4 +- 12 files changed, 30 insertions(+), 220 deletions(-) diff --git a/pom.xml b/pom.xml index e97b51f66..d4f75b1d5 100644 --- a/pom.xml +++ b/pom.xml @@ -112,20 +112,6 @@ - - io.reactivex - rxjava - ${rxjava} - true - - - - io.reactivex - rxjava-reactive-streams - ${rxjava-reactive-streams} - true - - io.reactivex.rxjava2 rxjava diff --git a/src/main/java/org/springframework/data/repository/util/ReactiveWrapperConverters.java b/src/main/java/org/springframework/data/repository/util/ReactiveWrapperConverters.java index 26053251e..0b51446ea 100644 --- a/src/main/java/org/springframework/data/repository/util/ReactiveWrapperConverters.java +++ b/src/main/java/org/springframework/data/repository/util/ReactiveWrapperConverters.java @@ -22,8 +22,6 @@ import kotlinx.coroutines.flow.FlowKt; import kotlinx.coroutines.reactive.ReactiveFlowKt; import reactor.core.publisher.Flux; import reactor.core.publisher.Mono; -import rx.Observable; -import rx.Single; import java.util.ArrayList; import java.util.List; @@ -54,8 +52,6 @@ import org.springframework.util.ClassUtils; *

* This class discovers reactive wrapper availability and their conversion support based on the class path. Reactive * wrapper types might be supported/on the class path but conversion may require additional dependencies. - *

- * Note: As of Spring Data 2.4, support for RxJava 1.x is deprecated in favor of RxJava 2 and 3. * * @author Mark Paluch * @author Oliver Gierke @@ -72,12 +68,6 @@ public abstract class ReactiveWrapperConverters { static { - if (ReactiveWrappers.isAvailable(ReactiveLibrary.RXJAVA1)) { - - REACTIVE_WRAPPERS.add(RxJava1SingleWrapper.INSTANCE); - REACTIVE_WRAPPERS.add(RxJava1ObservableWrapper.INSTANCE); - } - if (ReactiveWrappers.isAvailable(ReactiveLibrary.RXJAVA2)) { REACTIVE_WRAPPERS.add(RxJava2SingleWrapper.INSTANCE); @@ -341,46 +331,6 @@ public abstract class ReactiveWrapperConverters { } } - // ------------------------------------------------------------------------- - // RxJava 1 converters - // ------------------------------------------------------------------------- - - /** - * Wrapper for RxJava 1's {@link Single}. - */ - private enum RxJava1SingleWrapper implements ReactiveTypeWrapper> { - - INSTANCE; - - @Override - public Class> getWrapperClass() { - return Single.class; - } - - @Override - public Single map(Object wrapper, Function function) { - return ((Single) wrapper).map(function::apply); - } - } - - /** - * Wrapper for RxJava 1's {@link Observable}. - */ - private enum RxJava1ObservableWrapper implements ReactiveTypeWrapper> { - - INSTANCE; - - @Override - public Class> getWrapperClass() { - return Observable.class; - } - - @Override - public Observable map(Object wrapper, Function function) { - return ((Observable) wrapper).map(function::apply); - } - } - // ------------------------------------------------------------------------- // RxJava 2 converters // ------------------------------------------------------------------------- diff --git a/src/main/java/org/springframework/data/repository/util/ReactiveWrappers.java b/src/main/java/org/springframework/data/repository/util/ReactiveWrappers.java index 7be194215..a3a5c9a44 100644 --- a/src/main/java/org/springframework/data/repository/util/ReactiveWrappers.java +++ b/src/main/java/org/springframework/data/repository/util/ReactiveWrappers.java @@ -35,8 +35,6 @@ import org.springframework.util.ClassUtils; *

* Supported types are discovered by their availability on the class path. This class is typically used to determine * multiplicity and whether a reactive wrapper type is acceptable for a specific operation. - *

- * Note: As of Spring Data 2.4, support for RxJava 1.x is deprecated in favor of RxJava 2 and 3. * * @author Mark Paluch * @author Christoph Strobl @@ -45,9 +43,6 @@ import org.springframework.util.ClassUtils; * @author Hantsy Bai * @since 2.0 * @see org.reactivestreams.Publisher - * @see rx.Single - * @see rx.Observable - * @see rx.Completable * @see io.reactivex.Single * @see io.reactivex.Maybe * @see io.reactivex.Observable @@ -68,12 +63,6 @@ public abstract class ReactiveWrappers { private static final boolean PROJECT_REACTOR_PRESENT = ClassUtils.isPresent("reactor.core.publisher.Flux", ReactiveWrappers.class.getClassLoader()); - @Deprecated - private static final boolean RXJAVA1_PRESENT = ClassUtils.isPresent("rx.Observable", - ReactiveWrappers.class.getClassLoader()) - && ClassUtils.isPresent("rx.RxReactiveStreams", - ReactiveWrappers.class.getClassLoader()); - @Deprecated private static final boolean RXJAVA2_PRESENT = ClassUtils.isPresent("io.reactivex.Flowable", ReactiveWrappers.class.getClassLoader()); @@ -98,17 +87,11 @@ public abstract class ReactiveWrappers { PROJECT_REACTOR, - /** - * @deprecated since 2.4, use RxJava 3 instead. To be removed with Spring Data 3.0. - */ - @Deprecated - RXJAVA1, - /** * @deprecated since 2.6, use RxJava 3 instead. To be removed with Spring Data 3.0. */ @Deprecated - RXJAVA2, RXJAVA3, KOTLIN_COROUTINES, MUTINY; + RXJAVA2, RXJAVA3, KOTLIN_COROUTINES; } /** @@ -134,8 +117,6 @@ public abstract class ReactiveWrappers { switch (reactiveLibrary) { case PROJECT_REACTOR: return PROJECT_REACTOR_PRESENT; - case RXJAVA1: - return RXJAVA1_PRESENT; case RXJAVA2: return RXJAVA2_PRESENT; case RXJAVA3: diff --git a/src/test/java/org/springframework/data/repository/core/support/QueryExecutionResultHandlerUnitTests.java b/src/test/java/org/springframework/data/repository/core/support/QueryExecutionResultHandlerUnitTests.java index a017f283e..8da8a5ddc 100755 --- a/src/test/java/org/springframework/data/repository/core/support/QueryExecutionResultHandlerUnitTests.java +++ b/src/test/java/org/springframework/data/repository/core/support/QueryExecutionResultHandlerUnitTests.java @@ -18,14 +18,14 @@ package org.springframework.data.repository.core.support; import static java.util.Arrays.*; import static org.assertj.core.api.Assertions.*; +import io.reactivex.rxjava3.core.Completable; +import io.reactivex.rxjava3.core.Observable; +import io.reactivex.rxjava3.core.Single; import io.vavr.control.Option; import io.vavr.control.Try; import lombok.Value; import reactor.core.publisher.Flux; import reactor.core.publisher.Mono; -import rx.Completable; -import rx.Observable; -import rx.Single; import java.lang.reflect.Method; import java.math.BigDecimal; @@ -41,6 +41,7 @@ import java.util.stream.Collectors; import org.assertj.core.api.SoftAssertions; import org.junit.jupiter.api.Test; import org.reactivestreams.Publisher; + import org.springframework.dao.InvalidDataAccessApiUsageException; import org.springframework.data.repository.Repository; import org.springframework.data.util.Streamable; @@ -120,7 +121,7 @@ class QueryExecutionResultHandlerUnitTests { assertThat(result).isInstanceOf(Publisher.class); Mono mono = Mono.from((Publisher) result); - assertThat(mono.block()).isEqualTo(entity.toBlocking().value()); + assertThat(mono.block()).isEqualTo(entity.blockingGet()); } @Test // DATACMNS-836 @@ -133,7 +134,7 @@ class QueryExecutionResultHandlerUnitTests { assertThat(result).isInstanceOf(Mono.class); Mono mono = (Mono) result; - assertThat(mono.block()).isEqualTo(entity.toBlocking().value()); + assertThat(mono.block()).isEqualTo(entity.blockingGet()); } @Test // DATACMNS-836 @@ -146,7 +147,7 @@ class QueryExecutionResultHandlerUnitTests { assertThat(result).isInstanceOf(Flux.class); Flux flux = (Flux) result; - assertThat(flux.next().block()).isEqualTo(entity.toBlocking().value()); + assertThat(flux.next().block()).isEqualTo(entity.blockingGet()); } @Test // DATACMNS-836 @@ -159,7 +160,7 @@ class QueryExecutionResultHandlerUnitTests { assertThat(result).isInstanceOf(Publisher.class); Mono mono = Mono.from((Publisher) result); - assertThat(mono.block()).isEqualTo(entity.toBlocking().first()); + assertThat(mono.block()).isEqualTo(entity.blockingFirst()); } @Test // DATACMNS-836 @@ -172,7 +173,7 @@ class QueryExecutionResultHandlerUnitTests { assertThat(result).isInstanceOf(Mono.class); Mono mono = (Mono) result; - assertThat(mono.block()).isEqualTo(entity.toBlocking().first()); + assertThat(mono.block()).isEqualTo(entity.blockingFirst()); } @Test // DATACMNS-836 @@ -185,7 +186,7 @@ class QueryExecutionResultHandlerUnitTests { assertThat(result).isInstanceOf(Flux.class); Flux flux = (Flux) result; - assertThat(flux.next().block()).isEqualTo(entity.toBlocking().first()); + assertThat(flux.next().block()).isEqualTo(entity.blockingFirst()); } @Test // DATACMNS-836 @@ -198,7 +199,7 @@ class QueryExecutionResultHandlerUnitTests { assertThat(result).isInstanceOf(Single.class); Single single = (Single) result; - assertThat(single.toBlocking().value()).isEqualTo(entity.toBlocking().first()); + assertThat(single.blockingGet()).isEqualTo(entity.blockingFirst()); } @Test // DATACMNS-836 @@ -211,7 +212,7 @@ class QueryExecutionResultHandlerUnitTests { assertThat(result).isInstanceOf(Observable.class); Observable observable = (Observable) result; - assertThat(observable.toBlocking().first()).isEqualTo(entity.toBlocking().value()); + assertThat(observable.blockingFirst()).isEqualTo(entity.blockingGet()); } @Test // DATACMNS-836 @@ -224,7 +225,7 @@ class QueryExecutionResultHandlerUnitTests { assertThat(result).isInstanceOf(Single.class); Single single = (Single) result; - assertThat(single.toBlocking().value()).isEqualTo(entity.block()); + assertThat(single.blockingGet()).isEqualTo(entity.block()); } @Test // DATACMNS-836 @@ -237,7 +238,7 @@ class QueryExecutionResultHandlerUnitTests { assertThat(result).isInstanceOf(Completable.class); Completable completable = (Completable) result; - assertThat(completable.get()).isNull(); + completable.blockingAwait(); } @Test // DATACMNS-836 @@ -250,7 +251,7 @@ class QueryExecutionResultHandlerUnitTests { assertThat(result).isInstanceOf(Completable.class); Completable completable = (Completable) result; - assertThat(completable.get()).isInstanceOf(InvalidDataAccessApiUsageException.class); + assertThatExceptionOfType(InvalidDataAccessApiUsageException.class).isThrownBy(completable::blockingAwait); } @Test // DATACMNS-836 @@ -290,7 +291,7 @@ class QueryExecutionResultHandlerUnitTests { assertThat(result).isInstanceOf(Observable.class); Observable observable = (Observable) result; - assertThat(observable.toBlocking().first()).isEqualTo(entity.block()); + assertThat(observable.blockingFirst()).isEqualTo(entity.block()); } @Test // DATACMNS-836 @@ -303,7 +304,7 @@ class QueryExecutionResultHandlerUnitTests { assertThat(result).isInstanceOf(Single.class); Single single = (Single) result; - assertThat(single.toBlocking().value()).isEqualTo(entity.next().block()); + assertThat(single.blockingGet()).isEqualTo(entity.next().block()); } @Test // DATACMNS-836 @@ -316,7 +317,7 @@ class QueryExecutionResultHandlerUnitTests { assertThat(result).isInstanceOf(Observable.class); Observable observable = (Observable) result; - assertThat(observable.toBlocking().first()).isEqualTo(entity.next().block()); + assertThat(observable.blockingFirst()).isEqualTo(entity.next().block()); } @Test // DATACMNS-836 diff --git a/src/test/java/org/springframework/data/repository/core/support/ReactiveRepositoryInformationUnitTests.java b/src/test/java/org/springframework/data/repository/core/support/ReactiveRepositoryInformationUnitTests.java index 1b5ca11f1..8746c540e 100644 --- a/src/test/java/org/springframework/data/repository/core/support/ReactiveRepositoryInformationUnitTests.java +++ b/src/test/java/org/springframework/data/repository/core/support/ReactiveRepositoryInformationUnitTests.java @@ -17,10 +17,8 @@ package org.springframework.data.repository.core.support; import static org.assertj.core.api.Assertions.*; -import io.reactivex.Completable; import io.reactivex.Flowable; import reactor.core.publisher.Flux; -import rx.Observable; import java.lang.reflect.Method; @@ -29,7 +27,6 @@ import org.junit.jupiter.api.extension.ExtendWith; import org.mockito.junit.jupiter.MockitoExtension; import org.reactivestreams.Publisher; -import org.springframework.data.repository.Repository; import org.springframework.data.repository.core.RepositoryMetadata; import org.springframework.data.repository.reactive.ReactiveCrudRepository; import org.springframework.data.repository.reactive.ReactiveSortingRepository; @@ -47,26 +44,6 @@ class ReactiveRepositoryInformationUnitTests { static final Class BASE_CLASS = ReactiveJavaInterfaceWithGenerics.class; - @Test // DATACMNS-836 - void discoversRxJava1MethodWithoutComparingReturnType() throws Exception { - - Method reference = extractTargetMethodFromRepository(RxJava1InterfaceWithGenerics.class, "deleteAll"); - - assertThat(reference.getDeclaringClass()).isEqualTo(ReactiveCrudRepository.class); - assertThat(reference.getName()).isEqualTo("deleteAll"); - } - - @Test // DATACMNS-836 - void discoversRxJava1MethodWithConvertibleArguments() throws Exception { - - Method reference = extractTargetMethodFromRepository(RxJava1InterfaceWithGenerics.class, "saveAll", - Observable.class); - - assertThat(reference.getDeclaringClass()).isEqualTo(ReactiveCrudRepository.class); - assertThat(reference.getName()).isEqualTo("saveAll"); - assertThat(reference.getParameterTypes()[0]).isEqualTo(Publisher.class); - } - @Test // DATACMNS-988 void discoversRxJava2MethodWithoutComparingReturnType() throws Exception { @@ -136,13 +113,6 @@ class ReactiveRepositoryInformationUnitTests { return composition.findMethod(repositoryType.getMethod(methodName, args)).get(); } - interface RxJava1InterfaceWithGenerics extends Repository { - - Observable saveAll(Observable entities); - - Completable deleteAll(); - } - interface RxJava2InterfaceWithGenerics extends RxJava2CrudRepository {} interface ReactiveJavaInterfaceWithGenerics extends ReactiveCrudRepository {} diff --git a/src/test/java/org/springframework/data/repository/core/support/ReactiveWrapperRepositoryFactorySupportUnitTests.java b/src/test/java/org/springframework/data/repository/core/support/ReactiveWrapperRepositoryFactorySupportUnitTests.java index ce94819b2..ef9da2c59 100644 --- a/src/test/java/org/springframework/data/repository/core/support/ReactiveWrapperRepositoryFactorySupportUnitTests.java +++ b/src/test/java/org/springframework/data/repository/core/support/ReactiveWrapperRepositoryFactorySupportUnitTests.java @@ -15,13 +15,12 @@ */ package org.springframework.data.repository.core.support; -import static org.mockito.ArgumentMatchers.*; import static org.mockito.Mockito.*; import io.reactivex.Completable; import io.reactivex.Maybe; +import io.reactivex.rxjava3.core.Single; import reactor.core.publisher.Mono; -import rx.Single; import java.io.Serializable; @@ -32,7 +31,6 @@ import org.mockito.Mock; import org.mockito.junit.jupiter.MockitoExtension; import org.mockito.junit.jupiter.MockitoSettings; import org.mockito.quality.Strictness; -import org.reactivestreams.Publisher; import org.springframework.data.repository.Repository; import org.springframework.data.repository.reactive.ReactiveSortingRepository; @@ -67,32 +65,6 @@ class ReactiveWrapperRepositoryFactorySupportUnitTests { verify(backingRepo, times(0)).findById(1); } - @Test // DATACMNS-836, DATACMNS-1154 - void callsRxJava1MethodOnBaseImplementationWithExactArguments() { - - Serializable id = 1L; - when(backingRepo.existsById(id)).thenReturn(Mono.just(true)); - - RxJava1ConvertingRepository repository = factory.getRepository(RxJava1ConvertingRepository.class); - repository.existsById(id); - repository.existsById((Long) id); - - verify(backingRepo, times(2)).existsById(id); - } - - @Test // DATACMNS-836, DATACMNS-1063, DATACMNS-1154 - @SuppressWarnings("unchecked") - void callsRxJava1MethodOnBaseImplementationWithTypeConversion() { - - when(backingRepo.existsById(any(Publisher.class))).thenReturn(Mono.just(true)); - - Single ids = Single.just(1L); - - RxJava1ConvertingRepository repository = factory.getRepository(RxJava1ConvertingRepository.class); - repository.existsById(ids); - - verify(backingRepo, times(1)).existsById(any(Publisher.class)); - } @Test // DATACMNS-988, DATACMNS-1154 void callsRxJava2MethodOnBaseImplementationWithExactArguments() { @@ -118,14 +90,6 @@ class ReactiveWrapperRepositoryFactorySupportUnitTests { verify(backingRepo, times(1)).deleteById(id); } - interface RxJava1ConvertingRepository extends Repository { - - Single existsById(Single id); - - Single existsById(Serializable id); - - Single existsById(Long id); - } interface RxJava2ConvertingRepository extends Repository { diff --git a/src/test/java/org/springframework/data/repository/query/ParametersUnitTests.java b/src/test/java/org/springframework/data/repository/query/ParametersUnitTests.java index 46af3f772..f02a803f2 100755 --- a/src/test/java/org/springframework/data/repository/query/ParametersUnitTests.java +++ b/src/test/java/org/springframework/data/repository/query/ParametersUnitTests.java @@ -17,7 +17,7 @@ package org.springframework.data.repository.query; import static org.assertj.core.api.Assertions.*; -import rx.Single; +import io.reactivex.rxjava3.core.Single; import java.lang.reflect.Method; import java.util.Optional; diff --git a/src/test/java/org/springframework/data/repository/query/ResultProcessorUnitTests.java b/src/test/java/org/springframework/data/repository/query/ResultProcessorUnitTests.java index abbc08ab8..66fb33d3a 100755 --- a/src/test/java/org/springframework/data/repository/query/ResultProcessorUnitTests.java +++ b/src/test/java/org/springframework/data/repository/query/ResultProcessorUnitTests.java @@ -19,12 +19,12 @@ import static org.assertj.core.api.Assertions.*; import static org.mockito.Mockito.*; import io.reactivex.Flowable; +import io.reactivex.rxjava3.core.Observable; +import io.reactivex.rxjava3.core.Single; import lombok.Getter; import reactor.core.publisher.Flux; import reactor.core.publisher.Mono; import reactor.test.StepVerifier; -import rx.Observable; -import rx.Single; import java.lang.reflect.Method; import java.util.ArrayList; @@ -241,7 +241,7 @@ class ResultProcessorUnitTests { assertThat(result).isInstanceOf(Single.class); - Object content = ((Single) result).toBlocking().value(); + Object content = ((Single) result).blockingGet(); assertThat(content).isInstanceOf(Sample.class); } @@ -288,7 +288,7 @@ class ResultProcessorUnitTests { assertThat(result).isInstanceOf(Observable.class); - List content = ((Observable) result).toList().toBlocking().single(); + List content = ((Observable) result).toList().blockingGet(); assertThat(content).isNotEmpty(); assertThat(content.get(0)).isInstanceOf(SampleProjection.class); diff --git a/src/test/java/org/springframework/data/repository/util/QueryExecutionConvertersUnitTests.java b/src/test/java/org/springframework/data/repository/util/QueryExecutionConvertersUnitTests.java index c65e9b2c7..e5a5c0fb2 100755 --- a/src/test/java/org/springframework/data/repository/util/QueryExecutionConvertersUnitTests.java +++ b/src/test/java/org/springframework/data/repository/util/QueryExecutionConvertersUnitTests.java @@ -18,15 +18,15 @@ package org.springframework.data.repository.util; import static org.assertj.core.api.Assertions.*; import static org.springframework.data.repository.util.QueryExecutionConverters.*; +import io.reactivex.rxjava3.core.Completable; +import io.reactivex.rxjava3.core.Observable; +import io.reactivex.rxjava3.core.Single; import io.vavr.collection.Seq; import io.vavr.control.Try; import io.vavr.control.Try.Failure; import lombok.Value; import reactor.core.publisher.Flux; import reactor.core.publisher.Mono; -import rx.Completable; -import rx.Observable; -import rx.Single; import scala.Option; import java.io.IOException; diff --git a/src/test/java/org/springframework/data/repository/util/ReactiveWrapperConvertersUnitTests.java b/src/test/java/org/springframework/data/repository/util/ReactiveWrapperConvertersUnitTests.java index 85a4998a5..38e08a6ad 100644 --- a/src/test/java/org/springframework/data/repository/util/ReactiveWrapperConvertersUnitTests.java +++ b/src/test/java/org/springframework/data/repository/util/ReactiveWrapperConvertersUnitTests.java @@ -26,9 +26,6 @@ import kotlinx.coroutines.reactive.ReactiveFlowKt; import reactor.core.publisher.Flux; import reactor.core.publisher.Mono; import reactor.test.StepVerifier; -import rx.Completable; -import rx.Observable; -import rx.Single; import org.junit.jupiter.api.Test; import org.reactivestreams.Publisher; @@ -50,14 +47,6 @@ class ReactiveWrapperConvertersUnitTests { assertThat(ReactiveWrapperConverters.supports(Object.class)).isFalse(); } - @Test // DATACMNS-836 - void shouldSupportRxJava1Types() { - - assertThat(ReactiveWrapperConverters.supports(Single.class)).isTrue(); - assertThat(ReactiveWrapperConverters.supports(Observable.class)).isTrue(); - assertThat(ReactiveWrapperConverters.supports(Completable.class)).isTrue(); - } - @Test // DATACMNS-836 void shouldSupportRxJava2Types() { @@ -99,13 +88,6 @@ class ReactiveWrapperConvertersUnitTests { assertThat(ReactiveWrapperConverters.toWrapper(foo, Mono.class)).isSameAs(foo); } - @Test // DATACMNS-836 - void toWrapperShouldConvertMonoToRxJava1Single() { - - Mono foo = Mono.just("foo"); - assertThat(ReactiveWrapperConverters.toWrapper(foo, Single.class)).isInstanceOf(Single.class); - } - @Test // DATACMNS-836 void toWrapperShouldConvertMonoToRxJava2Single() { @@ -245,22 +227,6 @@ class ReactiveWrapperConvertersUnitTests { assertThat(map.next().block()).isEqualTo(1L); } - @Test // DATACMNS-836 - void shouldMapRxJava1Single() { - - Single foo = Single.just("foo"); - Single map = ReactiveWrapperConverters.map(foo, source -> 1L); - assertThat(map.toBlocking().value()).isEqualTo(1L); - } - - @Test // DATACMNS-836 - void shouldMapRxJava1Observable() { - - Observable foo = Observable.just("foo"); - Observable map = ReactiveWrapperConverters.map(foo, source -> 1L); - assertThat(map.toBlocking().first()).isEqualTo(1L); - } - @Test // DATACMNS-836 void shouldMapRxJava2Single() { diff --git a/src/test/java/org/springframework/data/repository/util/ReactiveWrappersUnitTests.java b/src/test/java/org/springframework/data/repository/util/ReactiveWrappersUnitTests.java index 8c2d67eb6..dd491ee7c 100644 --- a/src/test/java/org/springframework/data/repository/util/ReactiveWrappersUnitTests.java +++ b/src/test/java/org/springframework/data/repository/util/ReactiveWrappersUnitTests.java @@ -21,8 +21,6 @@ import io.reactivex.Completable; import io.reactivex.Flowable; import reactor.core.publisher.Flux; import reactor.core.publisher.Mono; -import rx.Observable; -import rx.Single; import java.util.concurrent.CompletableFuture; @@ -43,10 +41,8 @@ class ReactiveWrappersUnitTests { assertThat(ReactiveWrappers.isNoValueType(Mono.class)).isFalse(); assertThat(ReactiveWrappers.isNoValueType(Flux.class)).isFalse(); - assertThat(ReactiveWrappers.isNoValueType(Single.class)).isFalse(); assertThat(ReactiveWrappers.isNoValueType(Completable.class)).isTrue(); assertThat(ReactiveWrappers.isNoValueType(CompletableFuture.class)).isFalse(); - assertThat(ReactiveWrappers.isNoValueType(Observable.class)).isFalse(); assertThat(ReactiveWrappers.isNoValueType(Publisher.class)).isFalse(); assertThat(ReactiveWrappers.isNoValueType(io.reactivex.Single.class)).isFalse(); assertThat(ReactiveWrappers.isNoValueType(io.reactivex.Maybe.class)).isFalse(); @@ -65,10 +61,8 @@ class ReactiveWrappersUnitTests { assertThat(ReactiveWrappers.isSingleValueType(Mono.class)).isTrue(); assertThat(ReactiveWrappers.isSingleValueType(Flux.class)).isFalse(); - assertThat(ReactiveWrappers.isSingleValueType(Single.class)).isTrue(); assertThat(ReactiveWrappers.isSingleValueType(Completable.class)).isFalse(); assertThat(ReactiveWrappers.isSingleValueType(CompletableFuture.class)).isFalse(); - assertThat(ReactiveWrappers.isSingleValueType(Observable.class)).isFalse(); assertThat(ReactiveWrappers.isSingleValueType(Publisher.class)).isFalse(); assertThat(ReactiveWrappers.isSingleValueType(io.reactivex.Single.class)).isTrue(); assertThat(ReactiveWrappers.isSingleValueType(io.reactivex.Completable.class)).isFalse(); @@ -89,10 +83,8 @@ class ReactiveWrappersUnitTests { assertThat(ReactiveWrappers.isMultiValueType(Mono.class)).isFalse(); assertThat(ReactiveWrappers.isMultiValueType(Flux.class)).isTrue(); - assertThat(ReactiveWrappers.isMultiValueType(Single.class)).isFalse(); assertThat(ReactiveWrappers.isSingleValueType(Completable.class)).isFalse(); assertThat(ReactiveWrappers.isSingleValueType(CompletableFuture.class)).isFalse(); - assertThat(ReactiveWrappers.isMultiValueType(Observable.class)).isTrue(); assertThat(ReactiveWrappers.isMultiValueType(Publisher.class)).isTrue(); assertThat(ReactiveWrappers.isMultiValueType(io.reactivex.Single.class)).isFalse(); assertThat(ReactiveWrappers.isSingleValueType(io.reactivex.Completable.class)).isFalse(); diff --git a/src/test/kotlin/org/springframework/data/repository/kotlin/CoroutineCrudRepositoryUnitTests.kt b/src/test/kotlin/org/springframework/data/repository/kotlin/CoroutineCrudRepositoryUnitTests.kt index e37387030..8be79bac4 100644 --- a/src/test/kotlin/org/springframework/data/repository/kotlin/CoroutineCrudRepositoryUnitTests.kt +++ b/src/test/kotlin/org/springframework/data/repository/kotlin/CoroutineCrudRepositoryUnitTests.kt @@ -18,6 +18,8 @@ package org.springframework.data.repository.kotlin import io.mockk.every import io.mockk.mockk import io.mockk.verify +import io.reactivex.rxjava3.core.Observable +import io.reactivex.rxjava3.core.Single import kotlinx.coroutines.flow.Flow import kotlinx.coroutines.flow.flowOf import kotlinx.coroutines.flow.toList @@ -34,8 +36,6 @@ import org.springframework.data.repository.reactive.ReactiveCrudRepository import org.springframework.data.repository.sample.User import reactor.core.publisher.Flux import reactor.core.publisher.Mono -import rx.Observable -import rx.Single /** * Unit tests for Coroutine repositories.