当前位置: 首页 > 知识库问答 >
问题:

我如何使用反应器的步进验证器来验证单声道是空的?

祝允晨
2023-03-14

我正在使用StepVerifier测试值:

@Test
public void testStuff() {
    Thing thing = new Thing();
    Mono<Thing> result = Mono.just(thing);
    StepVerifier.create(result).consumeNextWith(r -> {
        assertEquals(thing, r);
    }).verifyComplete();
}

我现在想做的是测试Mono中是否缺少一个项目。这样地:

@Test
public void testNoStuff() {
    Mono<Thing> result = Mono.empty();
    StepVerifier.create(result)... // what goes here?
}

我想测试单声道实际上是空的。我该怎么做呢?

共有2个答案

越俊艾
2023-03-14

这里检查了onNext没有被调用

 StepVerifier.create(result).expectNextCount(0).verifyComplete()
羿博延
2023-03-14

只需使用verifyComplete()。如果Mono发出任何数据,它将使stepverifier失败,因为此时它不希望出现onNext信号。

 类似资料:
  • 我试图用一个自定义验证器将整个设置为无效,这似乎不起作用。。。 下面代码的目标是比较FromGroup的两个实例。 如果它们匹配,则表示未进行任何更改,因此必须无效。 否则它不匹配,这意味着已经进行了更改,所以它必须是有效的 我的变量在我记录时工作正常。它会根据变化变为真或假。 但是我无法使from无效,我已经尝试了很多方法,比如文章和堆栈溢出,这有一个stackblitz,但它似乎也不起作用。

  • 我明白验证在应用程序的几个层中都是必需的。但是,如果要在所有层中实施的验证都是相同的(大多数情况下都是这样),那么使用一个公共的验证框架是有意义的。这是Hibernate验证器的目标之一。 那么,哪条路走得更好呢?

  • 5.2 使用Spring的验证器接口进行验证 {#toc_2} Spring具有一个Validator接口可以让你用于验证对象。Validator接口在工作时需要使用一个Errors对象,以便于在验证过程中,验证器可以将验证失败的信息报告给这个Errors对象。 让我们考虑一个小的数据对象: public class Person { private String name; p

  • 首先,我是Vaadin7的新手。当我发现BeanFieldGroup.class时,我正在尝试一些vaadin演示。正如我所看到的,这个类将一个字段绑定到一个bean属性。在bean中,使用验证约束注释对属性进行注释(JSR303)。在本例中,我的pom.xml包含hibernate验证器依赖项: 我创建了validationmessage.properties文件,并在其中放了一些消息(带有匈牙

  • 我试图找到一个完整的模式列表,用于通过HTML5表单验证各种类型的输入,特别是、、等等,但我找不到任何模式。目前,这些输入验证的内置版本远非完美(甚至不检查输入的内容是否是电话号码)。所以我想知道,我可以使用哪些模式来验证用户在输入中输入了正确的格式? 以下是一些默认验证允许不允许的输入的例子: 这个字段允许在@后面有不正确域的电子邮件,它允许地址以破折号或句号开始或结束,这也是不允许的。因此,是

  • 我一直在验证下面的回答。 当我使用空手道发出获取请求时,我会得到以下响应,我想验证它。 我试过: 它说它不是字符串。你能帮我确认一下这个请求吗?