Проблема с созданием нового сопоставителя из последовательности сопоставлений состоит в том, что становится труднее найти сбой сопоставителя.
Лучший вариант, на мой взгляд, состоит в том, чтобы сравнивать с каждым сопоставителем в отдельности, например:
val matchers: Seq[Matcher[Boolean]] = Seq(
((_: Boolean).equals(false), "was true 1"),
((_: Boolean).equals(true), "was false 2"),
((_: Boolean).equals(true), "was false 3")
)
"work with matcher sequence" in {
matchers.foreach(beMatching => false must beMatching)
}
Из выходных данных видно, что сопоставления вызываются отдельно, и первый сбой вызывает сбой теста с сообщением этого сопоставителя .
В зависимости от имеющегося у вас случая, может быть даже лучше сгенерировать Ожидания для каждого сопоставителя, поэтому он выполнит их все и покажет вам правильный обзор, а не только первый сбой. Я не зашел так далеко (пока).