Множественные утверждения (assertAll) - Kotest - PullRequest
2 голосов
/ 13 июля 2020

Есть ли способ проверить несколько утверждений в Kotest в стиле DSL - без метода Assertions.assertAll из JUnit?

Могу ли я написать что-то вроде

firstValue shouldBe 1
and secondValue shouldBe 2

вместо

assertAll(
    { fistValue shouldBe 1 },
    { secondValue shouldBe 2 })

1 Ответ

1 голос
/ 13 июля 2020

Я обычно делаю это с помощью assertSoftly. Вероятно, это именно то, что вам нужно. Из документации

assertSoftly {
  foo shouldBe bar
  foo should contain(baz)
}

Или использование его в качестве параметра

assertSoftly(foo) {
    shouldNotEndWith("b")
    length shouldBe 3
}

Однако ваш синтаксис работает так же хорошо. На самом деле вам не нужно мягко утверждать.

firstValue shouldBe 1
secondValue shouldBe 2

выполнит оба утверждения. Если первый не проходит, тест вылетает раньше срока. С assertSoftly будут проверены оба утверждения.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...