現在、bashから実行される単体テストをいくつか行っています。ユニットテストは、bashスクリプトで初期化、実行、クリーンアップされます。このスクリプトには、通常、init()、execute()、およびcleanup()関数が含まれています。ただし、必須ではありません。定義されているかどうかをテストしたいと思います。
私は以前ソースを手探りで落ち着かせることでこれを行いましたが、それは間違っているようでした。これを行うためのよりエレガントな方法はありますか?
編集:次のスニペットは魅力のように機能します:
fn_exists()
{
LC_ALL=C type $1 | grep -q 'shell function'
}
type -t
およびを使用してgrepを保存できます==
。
type test_function
いるtest_function on funktio.
ときとist eine Funktion
ドイツ語を使用しているとき。
LC_ALL=C
でのresque
fn_exists foo || foo() { :; }