![]() |
![]() |
![]() |
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_take_replace (const char *target, const char *pattern, const char *replacement); 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, ...); const char * cut_build_path (const char *path, ...);
テストを書くためには、テスト環境を前処理・後処理するコードや、検証する結果を準備するコードなどたくさんのコードを書く必要があります。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_take_replace (const char *target, const char *pattern, const char *replacement);
target
文字列中で、pattern
にマッチする部分をreplacement
で置き換えます。
|
置換対象の文字列。 |
|
正規表現パターン。(文字列で指定) |
|
マッチした部分を置き換える文字列。 |
戻り値 : |
Cutterが所有する複製された文字列。解放しないで下さい。 |
1.0.6から
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から
const char * cut_build_path (const char *path, ...);
path
と続く要素を使ってパスを作ります。
|
削除するパスの最初の要素。 |
|
パスの残りの要素。NULL 終端。 |
戻り値 : |
Cutterが所有する作成したパス。解放しないで下さい。 |
1.0.7から