0

我试图弄清楚如何sequenceEqualMono. 我的代码如下:

Mono<Boolean> mono = Mono.sequenceEqual(Mono.just(1), Mono.just(1));
StepVerifier.create(mono)
    .expectNext(true)
    .expectComplete()
    .verify();

这是我得到的堆栈跟踪

- java.lang.Throwable: Multiple exceptions
- java.lang.AssertionError: expectation "defaultOnSubscribe" failed (expected: onSubscribe(); actual: onNext(true))
- java.lang.AssertionError: expectation "expectNext(true)" failed (expected: onNext(true); actual: onComplete())
at reactor.test.DefaultStepVerifierBuilder$DefaultVerifySubscriber.validate(DefaultStepVerifierBuilder.java:1337)
at reactor.test.DefaultStepVerifierBuilder$DefaultVerifySubscriber.verify(DefaultStepVerifierBuilder.java:827)
at reactor.test.DefaultStepVerifierBuilder$DefaultStepVerifier.verify(DefaultStepVerifierBuilder.java:533)
at reactor.test.DefaultStepVerifierBuilder$DefaultStepVerifier.verify(DefaultStepVerifierBuilder.java:508)
4

1 回答 1

0

该运算符在订阅信号传播方面表现不佳,并且由于StepVerifier期望一直表现良好Publisher,因此您会收到错误消息。

要解决此错误,您可以定期订阅sequenceEqual并让自定义订阅者捕获事件AtomicReference或类似事件,然后断言这些事件......

于 2017-01-02T10:38:31.997 回答