public class ExceptionCollector extends ObjectSE
ExceptionCollector
は、コードブロックを実行し、例外を収集し、抑制された例外SEとして検出された例外を含む単一の AssertionError
SE を生成するためのテストユーティリティです。 このユーティリティは、AssertJ での SoftAssertions
サポートおよび JUnit Jupiter での assertAll()
サポートと同様のソフトアサーションのユースケースをサポートすることを目的としています。
修飾子と型 | クラスと説明 |
---|---|
static interface | ExceptionCollector.Executable Executable は、Throwable SE をスローする可能性のある一般的なコードブロックを実装するために使用できる関数インターフェースです。 |
コンストラクターと説明 |
---|
ExceptionCollector() |
修飾子と型 | メソッドと説明 |
---|---|
void | assertEmpty() この ExceptionCollector に例外が含まれていないことを表明します。 |
void | execute(ExceptionCollector.Executable executable) 提供された ExceptionCollector.Executable を実行し、スローされた例外を追跡します。 |
ListSE<ThrowableSE> | getExceptions() execute(Executable) で発生した例外のリストを取得します。 |
cloneSE, equalsSE, finalizeSE, getClassSE, hashCodeSE, notifySE, notifyAllSE, toStringSE, waitSE, waitSE, waitSE
public void execute(ExceptionCollector.Executable executable)
ExceptionCollector.Executable
を実行し、スローされた例外を追跡します。executable
- 実行する Executable
getExceptions()
, assertEmpty()
public ListSE<ThrowableSE> getExceptions()
execute(Executable)
で発生した例外のリストを取得します。assertEmpty()
public void assertEmpty() throws ExceptionSE
ExceptionCollector
に例外が含まれていないことを表明します。このコレクターが空の場合、このメソッドは事実上何もしません。
このコレクターに単一の Error
SE または Exception
SE が含まれている場合、このメソッドはエラーまたは例外を再スローします。
このコレクターに単一の Throwable
SE が含まれている場合、このメソッドは Throwable
のエラーメッセージと Throwable
を原因SEとして AssertionError
SE をスローします。
このコレクターに複数の例外が含まれている場合、このメソッドは、メッセージが「Multiple Exceptions(#):」である AssertionError
をスローし、その後に新しい行をスローします。各例外のエラーメッセージは新しい行で区切られ、#
は存在する例外の数に置き換えられます。さらに、各例外は suppressed exception
SE として AssertionError
に追加されます。