マクロ


require(processExitsWith:observing:_:
sourceLocation:performing:)


式によってプロセスが与えられた方法で終了することを確認し、終了しなかった場合はエラーを throw します。


Swift 6.2+ Xcode 26.0+   Beta  

@discardableResult @freestanding(expression)
macro require(
    processExitsWith expectedExitCondition: ExitTest.Condition,
    observing observedValues: [any PartialKeyPath<ExitTest.Result> & Sendable] = [],
    _ comment: @autoclosure () -> Comment? = nil,
    sourceLocation: SourceLocation = #_sourceLocation,
    performing expression: @escaping () async throws -> Void
) -> ExitTest.Result?





パラメータ


expectedExitCondition

予想される終了条件。


observedValues

このマクロによって監視され返される終了テスト内の結果を表すキーパスの配列。ExitStatus プロパティは常に返されます。


comment

予想を説明するコメント。


sourceLocation

記録された予想と問題の原因となるソースの場所。


expression

評価されるべき式。



戻り値


終了テストが終了したときの状態を記述する ExitTest.Result のインスタンス。



以下で言及


終了テスト



概観


Throws
子プロセスの終了条件が expectedExitCondition と等しくない場合は ExpectationFailedError のインスタンス。


#require() のこのオーバーロードは、式によって現在のプロセスが終了し、その終了方法によってテストの成功/失敗が決まる場合に使用します。例えば、fatalError() の呼び出しによってプロセスが終了することをテストするには、以下のようにします。


try await #require(processExitsWith: .failure) {
  fatalError()
}




以下も見よ


プロセスの終了方法を確認する


終了テスト

テストプロセスを終了する可能性のある機能をテストするには、テストの終了を使用します。


macro expect(processExitsWith: ExitTest.Condition, observing: [any PartialKeyPath<ExitTest.Result> & Sendable], @autoclosure () -> Comment?, sourceLocation: SourceLocation, performing: () async throws -> Void) -> ExitTest.Result?

式によってプロセスが与えられた方法で終了することを確認します。


enum ExitStatus

プロセスが終了時に報告する可能性のあるステータスを記述する列挙型。


struct ExitTest

終了テストを記述する型。



<BETA SOFTWARE>
このドキュメントには、開発中の API または技術に関する予備的な情報が含まれています。この情報は変更されることがあり、このドキュメントに従って実装されたソフトウェアは、最終的なオペレーティングシステムソフトウェアでテストする必要があります。

Apple の Beta ソフトウエアについての詳細














トップへ












トップへ












トップへ












トップへ












トップへ












トップへ












トップへ












トップへ












トップへ












トップへ












トップへ












トップへ












トップへ












トップへ












トップへ












トップへ












トップへ