ATF-CHECK(1) | FreeBSD General Commands Manual | ATF-CHECK(1) |
名称
atf-check — コマンドを実行して、その結果を解析する書式
atf-check | [ -s qual:value][ -o action:arg ...][ -e action:arg ...][ -x] command |
atf-check | -h |
解説
atf-check は、与えられたコマンドを実行し、終了コード、stdout と stderr を含め、その結果を解析します。最初の概要の形式で、 atf-check は、提供されるコマンドを実行し、引数によって指定されたチェックを適用します。デフォルトで、あたかも -s exit:0 -o empty -e empty で実行されるかのように、動作します。同じ出力チャネルのための複数のチェックは、許可され、指定されるなら、それらの結果は、論理的に組み合わされ、 (出力が提供されるチェックとすべて一致しなければならないことを意味します)。
2 番目の概要の形式で、 atf-check は、すべてのサポートされたオプションとそれらの目的に関する情報を印刷 (表示) します。
次のオプションが利用可能です:
- -h
- すべての利用可能なオプションの概略とそれらの目的を表示します。
- -s qual:value
-
終了ステータスを解析します。次のうちの 1 つでなければなりません:
- exit:<value>
- プログラムがきちんと終了して、その終了状態が value と等しいことをチェックします。終了コードをすべて省略することができ、その場合に、あらゆるクリーンな終了が、受け付けられます。
- ignore
- 終了チェックを無視します。
- signal:<value>
- プログラムがシグナルのために終了し、それを終了したシグナルが value であることをチェックします。シグナルを数値または名前として両方を指定することができ、または、すべてを省略することもできます、その場合に、あらゆるシグナルが受け付けられます。
効果的にチェックを逆にする、これらのチェッカのほとんどに、‘not-’文字列を前に付けることができます。
- -o action:arg
-
標準出力を解析します。次のうちの 1 つでなければなりません:
- empty
- stdout が空であるかチェックします。
- ignore
- stdout を無視します。
- file:<path>
- 与えられたファイルと stdout を比較します。
- inline:<value>
- stdout をインラインの値と比較します。
- match:<regexp>
- stdout 中の正規表現を検索します。
- save:<path>
- 与えられたファイルに stdout を保存します。
効果的にチェックを逆にする、これらのチェッカのほとんどに、‘not-’文字列を前に付けることができます。
- -e action:arg
- (上記と同一の構文) 標準エラーを解析します。
- -x
- atf-config(1) の ATF_SHELL によって定義されたシステムシェルでそれを実行して、シェルのコマンドラインとして command を実行します。シェルをクォートの問題を防ぐために、たとえ可能性があったとしても、このフラグを使用しないようにするべきです。
終了ステータス
atf-check atf-check は、成功すれば、0 で終了し、失敗すれば、他の (不特定) 値で終了します。使用例
# 終了コード 0, stdout/stderr には何もなし atf-check 'true' # 失敗が予想されるなら, 典型的な使用法 atf-check -s not-exit:0 'false' # stdout/stderr をチェックする echo foobar >expout atf-check -o file:expout -e inline:"xx\tyy\n"\ 'echo foobar ; printf "xx\tyy\n" >&2' # クラッシュをチェックする atf-check -s signal:sigsegv my_program # 組み合わせのチェック atf-check -o match:foo -o not-match:bar echo foo baz
June 27, 2010 | FreeBSD |