Skip to content

Commit fd14969

Browse files
committed
Merge #2738 into 3.4.8
Added `FluxSwitchMapTest.test2596()` as slow test, which is one of the worst offenders.
2 parents 409a5cf + 5e979bb commit fd14969

18 files changed

+56
-3
lines changed

reactor-core/src/test/java/reactor/core/publisher/FluxBufferPredicateTest.java

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -36,6 +36,7 @@
3636
import java.util.stream.Collectors;
3737

3838
import org.assertj.core.api.Assertions;
39+
import org.junit.jupiter.api.Tag;
3940
import org.junit.jupiter.api.Test;
4041
import org.reactivestreams.Subscriber;
4142
import org.reactivestreams.Subscription;
@@ -826,6 +827,7 @@ protected void hookOnSubscribe(Subscription subscription) {
826827
}
827828

828829
@Test
830+
@Tag("slow")
829831
public void requestRaceWithOnNextLoops() {
830832
for (int i = 0; i < ROUNDS; i++) {
831833
requestRaceWithOnNext();

reactor-core/src/test/java/reactor/core/publisher/FluxBufferWhenTest.java

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -32,6 +32,7 @@
3232
import java.util.logging.Level;
3333

3434
import org.assertj.core.api.Condition;
35+
import org.junit.jupiter.api.Tag;
3536
import org.junit.jupiter.api.Test;
3637
import org.junit.jupiter.api.Timeout;
3738
import org.reactivestreams.Subscription;
@@ -61,6 +62,7 @@ public class FluxBufferWhenTest {
6162

6263
//see https://github.com/reactor/reactor-core/issues/969
6364
@Test
65+
@Tag("slow")
6466
public void bufferedCanCompleteIfOpenNeverCompletesDropping() {
6567
//this test ensures that dropping buffers will complete if the source is exhausted before the open publisher finishes
6668
Mono<Integer> buffered = Flux.range(1, 200)
@@ -82,6 +84,7 @@ public void bufferedCanCompleteIfOpenNeverCompletesDropping() {
8284

8385
//see https://github.com/reactor/reactor-core/issues/969
8486
@Test
87+
@Tag("slow")
8588
public void bufferedCanCompleteIfOpenNeverCompletesOverlapping() {
8689
//this test ensures that overlapping buffers will complete if the source is exhausted before the open publisher finishes
8790
Mono<Integer> buffered = Flux.range(1, 200)
@@ -102,6 +105,7 @@ public void bufferedCanCompleteIfOpenNeverCompletesOverlapping() {
102105

103106
//see https://github.com/reactor/reactor-core/issues/969
104107
@Test
108+
@Tag("slow")
105109
public void timedOutBuffersDontLeak() throws InterruptedException {
106110
LongAdder created = new LongAdder();
107111
MemoryUtils.RetainedDetector retainedDetector = new MemoryUtils.RetainedDetector();

reactor-core/src/test/java/reactor/core/publisher/FluxGroupByTest.java

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -23,6 +23,7 @@
2323
import java.util.concurrent.atomic.AtomicLong;
2424

2525
import org.junit.jupiter.api.Disabled;
26+
import org.junit.jupiter.api.Tag;
2627
import org.junit.jupiter.api.Test;
2728
import org.junit.jupiter.api.Timeout;
2829
import org.reactivestreams.Subscription;
@@ -387,6 +388,7 @@ public void twoGroupsLongAsyncMergeHidden() {
387388
}
388389

389390
@Test
391+
@Tag("slow")
390392
public void twoGroupsLongAsyncMergeHidden2() {
391393
ForkJoinPool forkJoinPool = new ForkJoinPool();
392394

reactor-core/src/test/java/reactor/core/publisher/FluxRefCountGraceTest.java

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -22,6 +22,7 @@
2222
import java.util.concurrent.atomic.AtomicLong;
2323
import java.util.concurrent.atomic.AtomicReference;
2424

25+
import org.junit.jupiter.api.Tag;
2526
import org.junit.jupiter.api.Test;
2627
import reactor.core.CoreSubscriber;
2728
import reactor.core.Disposable;
@@ -271,6 +272,7 @@ public void raceSubscribeAndCancel() {
271272

272273
//see https://github.com/reactor/reactor-core/issues/1260
273274
@Test
275+
@Tag("slow")
274276
public void raceSubscribeAndCancelNoTimeout() {
275277
final Flux<String> testFlux = Flux.<String>create(fluxSink -> fluxSink.next("Test").complete())
276278
.replay(1)

reactor-core/src/test/java/reactor/core/publisher/FluxSwitchMapTest.java

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -21,6 +21,7 @@
2121
import java.util.function.Consumer;
2222
import java.util.function.Predicate;
2323

24+
import org.junit.jupiter.api.Tag;
2425
import org.junit.jupiter.api.Test;
2526
import org.junit.jupiter.api.Timeout;
2627
import org.junit.jupiter.params.ParameterizedTest;
@@ -43,6 +44,7 @@ public class FluxSwitchMapTest {
4344
@ParameterizedTest
4445
@ValueSource(ints = {0}) // TODO: add for prefetch one
4546
@Timeout(120_000)
47+
@Tag("slow")
4648
// test for issue https://github.com/reactor/reactor-core/issues/2554
4749
public void test2596() {
4850
final Scheduler scheduler = Schedulers.newSingle("test");

reactor-core/src/test/java/reactor/core/publisher/FluxTakeTest.java

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -22,6 +22,7 @@
2222
import java.util.concurrent.atomic.AtomicLong;
2323

2424
import org.assertj.core.api.Assertions;
25+
import org.junit.jupiter.api.Tag;
2526
import org.junit.jupiter.api.Test;
2627
import org.mockito.Mockito;
2728
import org.reactivestreams.Publisher;
@@ -705,6 +706,7 @@ public void scanFuseableSubscriber() {
705706
}
706707

707708
@Test
709+
@Tag("slow")
708710
public void onSubscribeRaceRequestingShouldBeConsistentForTakeFuseableTest() throws InterruptedException {
709711
for (int i = 0; i < 5; i++) {
710712
int take = 3000;
@@ -718,6 +720,7 @@ public void onSubscribeRaceRequestingShouldBeConsistentForTakeFuseableTest() thr
718720
}
719721

720722
@Test
723+
@Tag("slow")
721724
public void onSubscribeRaceRequestingShouldBeConsistentForTakeConditionalTest() throws InterruptedException {
722725
for (int i = 0; i < 5; i++) {
723726
int take = 3000;
@@ -732,6 +735,7 @@ public void onSubscribeRaceRequestingShouldBeConsistentForTakeConditionalTest()
732735
}
733736

734737
@Test
738+
@Tag("slow")
735739
public void onSubscribeRaceRequestingShouldBeConsistentForTakeTest() throws InterruptedException {
736740
for (int i = 0; i < 5; i++) {
737741
int take = 3000;

reactor-core/src/test/java/reactor/core/publisher/FluxWindowWhenTest.java

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -26,6 +26,7 @@
2626

2727
import org.assertj.core.api.Assertions;
2828
import org.assertj.core.api.Condition;
29+
import org.junit.jupiter.api.Tag;
2930
import org.junit.jupiter.api.Test;
3031
import org.reactivestreams.Publisher;
3132
import org.reactivestreams.Subscription;
@@ -65,6 +66,7 @@ static <T> void expect(AssertSubscriber<Flux<T>> ts, int index, T... values) {
6566

6667
//see https://github.com/reactor/reactor-core/issues/975
6768
@Test
69+
@Tag("slow")
6870
public void noWindowRetained_gh975() throws InterruptedException {
6971
LongAdder created = new LongAdder();
7072
class Wrapper {

reactor-core/src/test/java/reactor/core/publisher/MonoCollectListTest.java

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -26,6 +26,7 @@
2626
import java.util.function.Function;
2727

2828
import org.assertj.core.api.SoftAssertions;
29+
import org.junit.jupiter.api.Tag;
2930
import org.junit.jupiter.api.Test;
3031
import org.reactivestreams.Subscription;
3132
import reactor.core.CoreSubscriber;
@@ -43,6 +44,7 @@
4344
import static org.assertj.core.api.Assertions.assertThat;
4445
import static reactor.test.publisher.TestPublisher.Violation.CLEANUP_ON_TERMINATE;
4546

47+
@Tag("slow")
4648
public class MonoCollectListTest {
4749

4850
static final Logger LOGGER = Loggers.getLogger(MonoCollectListTest.class);
@@ -218,6 +220,7 @@ public void discardOnCancel() {
218220

219221

220222
@Test
223+
@Tag("slow")
221224
public void discardCancelNextRace() {
222225
AtomicInteger doubleDiscardCounter = new AtomicInteger();
223226
Context discardingContext = Operators.enableOnDiscard(null, o -> {
@@ -247,6 +250,7 @@ public void discardCancelNextRace() {
247250
}
248251

249252
@Test
253+
@Tag("slow")
250254
public void discardCancelCompleteRace() {
251255
AtomicInteger doubleDiscardCounter = new AtomicInteger();
252256
Context discardingContext = Operators.enableOnDiscard(null, o -> {

reactor-core/src/test/java/reactor/core/publisher/MonoCompletionStageTest.java

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -21,6 +21,7 @@
2121
import java.util.concurrent.CompletionStage;
2222
import java.util.concurrent.atomic.AtomicReference;
2323

24+
import org.junit.jupiter.api.Tag;
2425
import org.junit.jupiter.api.Test;
2526
import org.reactivestreams.Subscription;
2627

@@ -74,6 +75,7 @@ public void cancelFutureImmediatelyCancelledLoop() {
7475
}
7576

7677
@Test
78+
@Tag("slow")
7779
public void cancelFutureDelayedCancelledLoop() {
7880
for (int i = 0; i < 500; i++) {
7981
CompletableFuture<Integer> future = new CompletableFuture<>();
@@ -95,6 +97,7 @@ public void cancelFutureDelayedCancelledLoop() {
9597
}
9698

9799
@Test
100+
@Tag("slow")
98101
public void cancelFutureTimeoutCancelledLoop() {
99102
for (int i = 0; i < 500; i++) {
100103
CompletableFuture<Integer> future = new CompletableFuture<>();

reactor-core/src/test/java/reactor/core/publisher/MonoIgnoreThenTest.java

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -19,6 +19,7 @@
1919
import java.time.Duration;
2020

2121
import org.junit.jupiter.api.Nested;
22+
import org.junit.jupiter.api.Tag;
2223
import org.junit.jupiter.api.Test;
2324
import org.reactivestreams.Publisher;
2425

@@ -67,7 +68,8 @@ void justThenIgnoreWithCancel() {
6768
}
6869

6970
@Test
70-
// https://github.com/reactor/reactor-core/issues/2561
71+
@Tag("slow")
72+
// https://github.com/reactor/reactor-core/issues/2561
7173
void raceTest2561() {
7274
final Scheduler scheduler = Schedulers.newSingle("non-test-thread");
7375
final Mono<String> getCurrentThreadName =

0 commit comments

Comments
 (0)