![]() |
![]() |
![]() |
Cutterリファレンスマニュアル | ![]() |
---|---|---|---|---|
Top | 説明 |
void cut_assert (cut_boolean expression, ...); void cut_assert_true (cut_boolean expression, ...); void cut_assert_false (cut_boolean expression, ...); void cut_assert_null (const void *expression, ...); void cut_assert_null_string (const char *string, ...); void cut_assert_not_null (const void *expression, ...); void cut_assert_equal_int (int expected, int actual, ...); void cut_assert_equal_uint (unsigned int expected, unsigned int actual, ...); void cut_assert_equal_size (size_t expected, size_t actual, ...); void cut_assert_equal_double (double expected, double error, double actual, ...); void cut_assert_equal_string (const char *expected, const char *actual, ...); void cut_assert_equal_string_with_free (const char *expected, const char *actual, ...); void cut_assert_equal_string_or_null (const char *expected, const char *actual, ...); void cut_assert_equal_memory (const void *expected, size_t expected_size, const void *actual, size_t actual_size, ...); void cut_assert_equal_string_array (char **expected, char **actual, ...); void cut_assert_equal_string_array_with_free (char **expected, char **actual, ...); #define cut_assert_operator (lhs, operator, rhs, ...) #define cut_assert_operator_int (lhs, operator, rhs, ...) #define cut_assert_operator_uint (lhs, operator, rhs, ...) #define cut_assert_operator_size (lhs, operator, rhs, ...) #define cut_assert_operator_double (lhs, operator, rhs, ...) #define cut_assert_equal (function, expected, actual, ...) void cut_assert_errno (...); void cut_assert_file_exist (const char *path, ...); void cut_assert_path_exist (const char *path, ...); void cut_assert_path_not_exist (const char *path, ...); void cut_assert_match (const char *pattern, const char *actual, ...); void cut_assert_match_with_free (const char *pattern, const char *actual, ...); void cut_assert_equal_pointer (const void *expected, const void *actual, ...); void cut_assert_equal_fixture_data_string (const char *expected, const void *path, ...); void cut_error (const char *format, ...); void cut_error_errno (...); void cut_fail (const char *format, ...); void cut_pend (const char *format, ...); void cut_pending (const char *format, ...); void cut_notify (const char *format, ...); void cut_omit (const char *format, ...); void cut_return (void);
あなたのプログラムが期待通りに動作しているかを検証するために、期待した値が得られていることを検証したい箇所でcut_assert_XXX()
を使います。
例:
cut_assert_equal_int(3, 1 + 2);
void cut_assert (cut_boolean expression, ...);
expression
が0でもNULL
でもないとパスします。
|
チェックする式。 |
|
省略可能な整形文字列。以降のパラメータが整形文字列に挿入されます。(printf() と同じ。)このパラメータは0.1.6から非推奨となっています。代わりにcut_set_message() を使ってください。 |
void cut_assert_true (cut_boolean expression, ...);
expression
がCUT_TRUE
のとき(0でもNULL
でもないとき)パスします。
|
チェックする式。 |
|
省略可能な整形文字列。以降のパラメータが整形文字列に挿入されます。(printf() と同じ。)このパラメータは0.1.6から非推奨となっています。代わりにcut_set_message() を使ってください。 |
0.9から
void cut_assert_false (cut_boolean expression, ...);
expression
が0またはNULL
のときパスします。
|
チェックする式。 |
|
省略可能な整形文字列。以降のパラメータが整形文字列に挿入されます。(printf() と同じ。)このパラメータは0.1.6から非推奨となっています。代わりにcut_set_message() を使ってください。 |
0.9から
void cut_assert_null (const void *expression, ...);
expression
がNULL
のときパスします。
|
チェックする式。 |
|
省略可能な整形文字列。以降のパラメータが整形文字列に挿入されます。(printf() と同じ。)このパラメータは0.1.6から非推奨となっています。代わりにcut_set_message() を使ってください。 |
void cut_assert_null_string (const char *string, ...);
string
がNULL
のときパスします。
|
チェックする文字列。 |
|
省略可能な整形文字列。以降のパラメータが整形文字列に挿入されます。(printf() と同じ。)このパラメータは0.1.6から非推奨となっています。代わりにcut_set_message() を使ってください。 |
0.3から
void cut_assert_not_null (const void *expression, ...);
expression
がNULL
以外のときパスします。
|
チェックする式。 |
|
省略可能な整形文字列。以降のパラメータが整形文字列に挿入されます。(printf() と同じ。)このパラメータは0.1.6から非推奨となっています。代わりにcut_set_message() を使ってください。 |
void cut_assert_equal_int (int expected, int actual, ...);
expected
== actual
が成り立つときパスします。
|
期待する整数の値。 |
|
実際の整数の値。 |
|
省略可能な整形文字列。以降のパラメータが整形文字列に挿入されます。(printf() と同じ。)このパラメータは0.1.6から非推奨となっています。代わりにcut_set_message() を使ってください。 |
void cut_assert_equal_uint (unsigned int expected, unsigned int actual, ...);
expected
== actual
が成り立つときパスします。
|
期待する符号無し整数の値。 |
|
実際の符号無し符号整数の値。 |
|
省略可能な整形文字列。以降のパラメータが整形文字列に挿入されます。(printf() と同じ。)このパラメータは0.1.6から非推奨となっています。代わりにcut_set_message() を使ってください。 |
void cut_assert_equal_size (size_t expected, size_t actual, ...);
expected
== actual
が成り立つときパスします。
|
期待するsize_tの値。 |
|
実際のsize_tの値。 |
|
省略可能な整形文字列。以降のパラメータが整形文字列に挿入されます。(printf() と同じ。)このパラメータは0.1.6から非推奨となっています。代わりにcut_set_message() を使ってください。 |
1.0.6から
void cut_assert_equal_double (double expected, double error, double actual, ...);
(expected
- error
) <= actual
<= (expected
+ error
)が成り立つときパスします。
|
期待する浮動小数点数。 |
|
誤差範囲を示す浮動小数点数。 |
|
実際の浮動小数点数。 |
|
省略可能な整形文字列。以降のパラメータが整形文字列に挿入されます。(printf() と同じ。)このパラメータは0.1.6から非推奨となっています。代わりにcut_set_message() を使ってください。 |
void cut_assert_equal_string (const char *expected, const char *actual, ...);
expected
とactual
がどちらともNULL
、あるいはstrcmp(expected
, actual
) == 0が成り立つときにパスします。
|
期待する文字列。 |
|
実際の文字列の値。 |
|
省略可能な整形文字列。以降のパラメータが整形文字列に挿入されます。(printf() と同じ。)このパラメータは0.1.6から非推奨となっています。代わりにcut_set_message() を使ってください。 |
void cut_assert_equal_string_with_free (const char *expected, const char *actual, ...);
expected
とactual
がどちらともNULL
、あるいはstrcmp(expected
, actual
) == 0が成り立つときにパスします。
|
期待する文字列。 |
|
実際の文字列の値。(チェック後に開放される) |
|
省略可能な整形文字列。以降のパラメータが整形文字列に挿入されます。(printf() と同じ。)このパラメータは0.1.6から非推奨となっています。代わりにcut_set_message() を使ってください。 |
0.3から
void cut_assert_equal_string_or_null (const char *expected, const char *actual, ...);
cut_assert_equal_string_or_null
はバージョン0.3から非推奨になりました。新しく書くコードでは使わないでください。代わりにcut_assert_equal_string()
を使ってください。
expected
とactual
がどちらともNULL
、あるいはstrcmp(expected
, actual
) == 0が成り立つときにパスします。
|
期待する文字列。 |
|
実際の文字列の値。 |
|
省略可能な整形文字列。以降のパラメータが整形文字列に挿入されます。(printf() と同じ。)このパラメータは0.1.6から非推奨となっています。代わりにcut_set_message() を使ってください。 |
void cut_assert_equal_memory (const void *expected, size_t expected_size, const void *actual, size_t actual_size, ...);
expected_size
== actual_size
が成り立ち、かつ、memcmp(expected
, actual
, expected_size
) == 0が成り立つときにパスします。
|
期待するデータ。 |
|
expected のサイズ。 |
|
実際のデータ。 |
|
actual のサイズ。 |
|
省略可能な整形文字列。以降のパラメータが整形文字列に挿入されます。(printf() と同じ。)このパラメータは0.1.6から非推奨となっています。代わりにcut_set_message() を使ってください。 |
void cut_assert_equal_string_array (char **expected, char **actual, ...);
expected
とactual
がどちらともNULL
ではなく、どちらも同じ内容の文字列(strcmp()
== 0)を持つときにパスします。
|
期待する文字列の配列。配列はNULL 終端。 |
|
実際の文字列の配列。配列はNULL 終端。 |
|
省略可能な整形文字列。以降のパラメータが整形文字列に挿入されます。(printf() と同じ。)このパラメータは0.1.6から非推奨となっています。代わりにcut_set_message() を使ってください。 |
void cut_assert_equal_string_array_with_free (char **expected, char **actual, ...);
expected
とactual
がどちらともNULL
ではなく、どちらも同じ内容の文字列(strcmp()
== 0)を持つときにパスします。
|
期待する文字列の配列。配列はNULL 終端。 |
|
実際の文字列の配列。配列はNULL 終端。(チェック後に開放される) |
|
省略可能な整形文字列。以降のパラメータが整形文字列に挿入されます。(printf() と同じ。)このパラメータは0.1.6から非推奨となっています。代わりにcut_set_message() を使ってください。 |
0.9から
#define cut_assert_operator(lhs, operator, rhs, ...)
(lhs
operator
rhs
)が真のときにパスします。
例:
cut_assert_operator(1, <, 2) -> (1 < 2);
|
左辺値。 |
|
二項演算子。 |
|
右辺値。 |
|
省略可能な整形文字列。以降のパラメータが整形文字列に挿入されます。(printf() と同じ。)このパラメータは0.1.6から非推奨となっています。代わりにcut_set_message() を使ってください。 |
#define cut_assert_operator_int(lhs, operator, rhs, ...)
(lhs
operator
rhs
)が真のときにパスします。
例:
cut_assert_operator_int(1, <, 2) -> (1 < 2);
|
左辺の整数の値。 |
|
二項演算子。 |
|
右辺の整数の値。 |
|
省略可能な整形文字列。以降のパラメータが整形文字列に挿入されます。(printf() と同じ。)このパラメータは0.1.6から非推奨となっています。代わりにcut_set_message() を使ってください。 |
#define cut_assert_operator_uint(lhs, operator, rhs, ...)
(lhs
operator
rhs
)が真のときにパスします。
例:
cut_assert_operator_uint(1, <, 2) -> (1 < 2);
|
左辺の符号無し整数の値。 |
|
二項演算子。 |
|
右辺の符号無し整数の値。 |
|
省略可能な整形文字列。以降のパラメータが整形文字列に挿入されます。(printf() と同じ。)このパラメータは0.1.6から非推奨となっています。代わりにcut_set_message() を使ってください。 |
1.0.5から
#define cut_assert_operator_size(lhs, operator, rhs, ...)
(lhs
operator
rhs
)が真のときにパスします。
例:
cut_assert_operator_size(1, <, 2) -> (1 < 2);
|
左辺のsize_tの値。 |
|
二項演算子。 |
|
右辺のsize_tの値。 |
|
省略可能な整形文字列。以降のパラメータが整形文字列に挿入されます。(printf() と同じ。)このパラメータは0.1.6から非推奨となっています。代わりにcut_set_message() を使ってください。 |
1.0.5から
#define cut_assert_operator_double(lhs, operator, rhs, ...)
(lhs
operator
rhs
)が真のときにパスします。
例:
cut_assert_operator_double(1.1, <, 2.2) -> (1.1 < 2.2);
|
左辺の浮動小数点値。 |
|
二項演算子。 |
|
右辺の浮動小数点値。 |
|
省略可能な整形文字列。以降のパラメータが整形文字列に挿入されます。(printf() と同じ。)このパラメータは0.1.6から非推奨となっています。代わりにcut_set_message() を使ってください。 |
1.0.5から
#define cut_assert_equal(function, expected, actual, ...)
function
(expected
, actual
)がCUT_TRUE
を返すときパスします。
例:
cut_assert_equal(!strcmp, "abc", "abc"); -> パス
|
actual とexpected を比較する関数。 |
|
期待値。 |
|
実測値。 |
|
省略可能な整形文字列。以降のパラメータが整形文字列に挿入されます。(printf() と同じ。)このパラメータは0.1.6から非推奨となっています。代わりにcut_set_message() を使ってください。 |
void cut_assert_errno (...);
errnoが0だとパスします。
例:
count = write(stdout, buffer, strlen(buffer)); cut_assert_errno("Failed to write"); -> count != -1のときパス
|
省略可能な整形文字列。以降のパラメータが整形文字列に挿入されます。(printf() と同じ。)このパラメータは0.1.6から非推奨となっています。代わりにcut_set_message() を使ってください。 |
0.8から
void cut_assert_file_exist (const char *path, ...);
cut_assert_file_exist
はバージョン1.0.2から非推奨になりました。新しく書くコードでは使わないでください。代わりにcut_assert_path_exist()
を使ってください。
path
が存在するときにパスします。普通のファイルかもしれませんし、そうでないかもしれません。(例えばシンボリックリンクやディレクトリなど)
例:
cut_assert_file_exist("/tmp"); -> 多くの環境ではパス cut_assert_file_exist("/non-existent"); -> 失敗
|
テストするパス。 |
|
省略可能な整形文字列。以降のパラメータが整形文字列に挿入されます。(printf() と同じ。)このパラメータは0.1.6から非推奨となっています。代わりにcut_set_message() を使ってください。 |
0.9から
void cut_assert_path_exist (const char *path, ...);
path
が存在するときにパスします。普通のファイルかもしれませんし、そうでないかもしれません。(例えばシンボリックリンクやディレクトリなど)
例:
cut_assert_path_exist("/tmp"); -> 多くの環境ではパス cut_assert_path_exist("/non-existent"); -> 失敗
|
テストするパス。 |
|
省略可能な整形文字列。以降のパラメータが整形文字列に挿入されます。(printf() と同じ。)このパラメータは0.1.6から非推奨となっています。代わりにcut_set_message() を使ってください。 |
1.0.2から
void cut_assert_path_not_exist (const char *path, ...);
path
が存在しないとパスします。
例:
cut_assert_path_not_exist("/non-existent"); -> 多くの環境ではパス cut_assert_path_not_exist("/tmp"); -> 失敗
|
テストするパス。 |
|
省略可能な整形文字列。以降のパラメータが整形文字列に挿入されます。(printf() と同じ。)このパラメータは0.1.6から非推奨となっています。代わりにcut_set_message() を使ってください。 |
1.0.2から
void cut_assert_match (const char *pattern, const char *actual, ...);
pattern
がstring
にマッチしたときパスします。
例:
cut_assert_match("^abc", "abc"); -> パス cut_assert_match("^abc", " abc"); -> 失敗
|
正規表現パターン。(文字列で指定) |
|
マッチされる文字列。 |
|
省略可能な整形文字列。以降のパラメータが整形文字列に挿入されます。(printf() と同じ。)このパラメータは0.1.6から非推奨となっています。代わりにcut_set_message() を使ってください。 |
1.0から
void cut_assert_match_with_free (const char *pattern, const char *actual, ...);
pattern
がstring
にマッチしたときパスします。詳細は
|
正規表現。(文字列で指定) |
|
マッチされる文字列。(チェック後に開放される) |
|
省略可能な整形文字列。以降のパラメータが整形文字列に挿入されます。(printf() と同じ。)このパラメータは0.1.6から非推奨となっています。代わりにcut_set_message() を使ってください。 |
1.0から
void cut_assert_equal_pointer (const void *expected, const void *actual, ...);
expected
== actual
が成り立つときパスします。
|
期待するポインタ。 |
|
実際のポインタ。 |
|
省略可能な整形文字列。以降のパラメータが整形文字列に挿入されます。(printf() と同じ。)このパラメータは0.1.6から非推奨となっています。代わりにcut_set_message() を使ってください。 |
1.0から
void cut_assert_equal_fixture_data_string (const char *expected, const void *path, ...);
expected
== cut_get_fixture_data_string(path
, ...)が成り立つときパスします。
|
期待する文字列。 |
|
フィクスチャデータのパスの最初の要素。 |
|
パスの残りの要素。NULL 終端。 |
1.0.2から
void cut_error (const char *format, ...);
メッセージ付きでエラーを発生させます。
|
整形文字列。printf() のドキュメントを見てください。 |
|
整形文字列に挿入されるパラメータ。 |
void cut_error_errno (...);
例:
void setup (void) { mkdir("tmp", 0700); cut_error_errno("Failed to make tmp directory"); -> Error when tmp directory isn't made successfully. }
|
省略可能な整形文字列。以降のパラメータが整形文字列に挿入されます。(printf() と同じ。)このパラメータは0.1.6から非推奨となっています。代わりにcut_set_message() を使ってください。 |
1.0.2から
void cut_fail (const char *format, ...);
メッセージ付きでテストを失敗させます。
|
整形文字列。printf() のドキュメントを見てください。 |
|
整形文字列に挿入されるパラメータ。 |
void cut_pend (const char *format, ...);
メッセージ付きでこのテストが未解決であると印を付けます。テストはここで中断します。
|
整形文字列。printf() のドキュメントを見てください。 |
|
整形文字列に挿入されるパラメータ。 |
void cut_pending (const char *format, ...);
cut_pending
はバージョン0.4から非推奨になりました。新しく書くコードでは使わないでください。代わりにcut_pend()
を使ってください。
メッセージ付きでこのテストが未解決であると印を付けます。テストはここで中断します。
|
整形文字列。printf() のドキュメントを見てください。 |
|
整形文字列に挿入されるパラメータ。 |
void cut_notify (const char *format, ...);
通知用のメッセージを残します。テストは続行します。
|
整形文字列。printf() のドキュメントを見てください。 |
|
整形文字列に挿入されるパラメータ。 |
void cut_omit (const char *format, ...);
このテストを省略します。
例:
if (version < 2.0) cut_omit("Require >= 2.0");
|
整形文字列。printf() のドキュメントを見てください。 |
|
整形文字列に挿入されるパラメータ。 |
0.8から