![]() |
![]() |
![]() |
Cutterリファレンスマニュアル | ![]() |
---|---|---|---|---|
Top | 説明 |
void * cut_take (void *object
,CutDestroyFunction destroy_function
); const void * cut_take_memory (void *memory
); const char * cut_take_string (char *string
); const char * cut_take_strdup (const char *string
); const char * cut_take_strndup (const char *string
,size_t size
); const void * cut_take_memdup (const void *memory
,size_t size
); const char * cut_take_printf (const char *format
,...
); char ** cut_take_string_array (char **strings
); const char * cut_take_diff (const char *from
,const char *to
); const char * cut_append_diff (const char *message
,const char *from
,const char *to
); const char * cut_inspect_string_array (const char **strings
); void cut_set_fixture_data_dir (const char *path
,...
); char * cut_build_fixture_data_path (const char *path
,...
); const char * cut_get_fixture_data_string (const char *path
,...
); void cut_remove_path (const char *path
,...
); cut_boolean cut_equal_string (const char *string1
,const char *string2
); cut_boolean cut_equal_double (double double1
,double double2
,double error
);
テストを書くためには、テスト環境を前処理・後処理するコードや、検証する結果を準備するコードなどたくさんのコードを書く必要があります。Cutterはもっと簡単にテストを書くためにユーティリティを提供します。
このユーティリティはGLibサポート無しでも使えます。
void * cut_take (void *object
,CutDestroyFunction destroy_function
);
object
の所有権をCutterに渡し、object
自身を返します。object
はdestroy_func
を用いて破棄されます。
|
Cutterが所有権をもつことになるオブジェクト。 |
|
オブジェクト用の破棄関数。 |
戻り値 : |
Cutterが所有するobject 。解放しないで下さい。 |
1.0.5から
const void * cut_take_memory (void *memory
);
memory
の所有権をCutterに渡し、memory
自身を返します。memory
はfree()
で破棄されます。
|
Cutterが所有権を持つことになるメモリ。 |
戻り値 : |
Cutterが所有するmemory 。解放しないで下さい。 |
1.0.5から
const char * cut_take_string (char *string
);
string
の所有権をCutterに渡し、string
それ自身を返します。
|
Cutterが所有権を持つことになる文字列。 |
戻り値 : |
Cutterが所有するstring 。解放しないで下さい。 |
const char * cut_take_strdup (const char *string
);
string
を複製し、その所有権をCutterに渡し、複製されたメモリを返します。
|
複製される文字列。 |
戻り値 : |
Cutterが所有する複製された文字列。解放しないで下さい。 |
1.0.5から
const char * cut_take_strndup (const char *string
,size_t size
);
string
の先頭size
バイトを複製し、その所有権ををCutterに渡し、複製された文字列を返します。複製された文字列は常にNULL
終端しています。
|
複製される文字列。 |
|
複製するバイト数。 |
戻り値 : |
Cutterが所有する複製された文字列。解放しないで下さい。 |
1.0.5から
const void * cut_take_memdup (const void *memory
,size_t size
);
memory
のsize
バイトを複製し、その所有権をCutterに渡し、複製されたメモリを返します。
|
複製されるメモリ。 |
|
複製するバイト数。 |
戻り値 : |
Cutterが所有する複製されたメモリ。解放しないで下さい。 |
1.0.5から
const char * cut_take_printf (const char *format
,...
);
printf()
のように文字列を整形しますが、整形された文字列はCutterが所有します。
|
整形文字列。printf() のドキュメントを見てください。 |
|
整形文字列に挿入されるパラメータ。 |
戻り値 : |
Cutterが所有する整形された文字列。解放しないで下さい。 |
char ** cut_take_string_array (char **strings
);
配列の所有権をCutterに渡し、strings
それ自身を返します。
|
Cutterが所有権を持つことになる文字列の配列。 |
戻り値 : |
Cutterが所有するstrings 。解放しないで下さい。 |
const char * cut_take_diff (const char *from
,const char *to
);
from
とto
のdiffを計算します。diffの所有者はCutterです。
|
元の文字列。 |
|
修正された文字列。 |
戻り値 : |
Cutterが所有するfrom とto のdiff。開放しないでください。 |
const char * cut_append_diff (const char *message
,const char *from
,const char *to
);
cut_append_diff
はバージョン1.0.9から非推奨になりました。新しく書くコードでは使わないでください。代わりにcut_set_expected()
とcut_set_actual()
を使ってください。
from
とto
のdiffを計算し、そのdiffをmessage
に追加します。戻り値の文字列の所有者はCutterです。
|
diffが追加される文字列。 |
|
元の文字列。 |
|
修正された文字列。 |
戻り値 : |
from とto 間のdiff付きのmessage 。必要なさそうなdiffであればmessage と同じ。開放しないでください。 |
1.0.3から
const char * cut_inspect_string_array (const char **strings
);
strings
を人が読みやすい文字列に整形します。整形された文字列の所有者はCutterです。
|
整形される文字列の配列。 |
戻り値 : |
Cutterが所有する整形された文字列。解放しないで下さい。 |
void cut_set_fixture_data_dir (const char *path
,...
);
cut_get_fixture_data_string()
などで使われるフィクスチャデータのディレクトリを指定します。
|
フィクスチャデータディレクトリのパスの最初の要素。 |
|
パスの残りの要素。1.0.7からNULL 終端が必須となりました。 |
1.0.2から
char * cut_build_fixture_data_path (const char *path
,...
);
フィクスチャデータへのパスを生成します。もし、path
が相対パスなら、パスはcut_set_fixture_data_dir()
で指定したディレクトリか、現在のディレクトリからの相対パスとして処理されます。
|
フィクスチャデータのパスの最初の要素。 |
|
パスの残りの要素。1.0.7からNULL 終端が必須となりました。 |
戻り値 : |
フィクスチャデータのパス。返された文字列が必要なくなったときは開放してください。 |
1.0.2から
const char * cut_get_fixture_data_string (const char *path
,...
);
"path
/..."にあるフィクスチャデータを読み込み、文字列として返します。文字列はCutterが所持します。cut_build_fixture_data_path()
の説明にはフィクスチャデータのパスがどのように決定されるかが書かれています。
|
フィクスチャデータのパスの最初の要素。 |
|
パスの残りの要素。1.0.7からNULL 終端が必須となりました。 |
戻り値 : |
フィクスチャデータの内容。開放しないください。 |
1.0.2から
void cut_remove_path (const char *path
,...
);
path
と、その下にあるパスを再帰的に削除します。いかなるエラーも報告しません。
|
削除するパスの最初の要素。 |
|
パスの残りの要素。1.0.7からNULL 終端が必須となりました。 |
1.0.2から
cut_boolean cut_equal_string (const char *string1
,const char *string2
);
string1
とstring2
を比較します。string1
あるいはstring2
、または両方がNULL
でもかまいません。
1.0.5から
cut_boolean cut_equal_double (double double1
,double double2
,double error
);
double1
とdouble2
を誤差範囲error
で比較します。
|
浮動小数点値。 |
|
浮動小数点値。 |
|
誤差範囲を示す浮動小数点数。 |
戻り値 : |
|double1 - double2 | <= error ならCUT_TRUE 、そうでなければCUT_FALSE 。 |
1.0.5から