| 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_equal_boolean (cut_boolean expected, cut_boolean actual); void cut_assert_not_equal_boolean (cut_boolean expected, cut_boolean actual); 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_not_equal_int (int expected, int actual); void cut_assert_equal_uint (unsigned int expected, unsigned int actual, ...); void cut_assert_not_equal_uint (unsigned int expected, unsigned int actual); void cut_assert_equal_size (size_t expected, size_t actual, ...); void cut_assert_not_equal_size (size_t expected, size_t actual); void cut_assert_equal_double (double expected, double error, double actual, ...); void cut_assert_not_equal_double (double expected, double error, double actual); void cut_assert_equal_string (const char *expected, const char *actual, ...); void cut_assert_not_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_substring (const char *expected, const char *actual, size_t length); void cut_assert_not_equal_substring (const char *expected, const char *actual, size_t length); void cut_assert_equal_memory (const void *expected, size_t expected_size, const void *actual, size_t actual_size, ...); void cut_assert_not_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_equal_boolean (cut_boolean expected, cut_boolean actual);
expectedとactualが両方ともCUT_TRUEの値か、両方ともCUT_FALSEの値のときパスします。
例:
cut_assert_equal_boolean(CUT_TRUE, CUT_TRUE); -> パス cut_assert_equal_boolean(CUT_FALSE, CUT_FALSE); -> パス cut_assert_equal_boolean(CUT_TRUE, CUT_FALSE); -> 失敗
|
期待する真偽値。 |
|
実際の真偽値。 |
1.0.7から
void cut_assert_not_equal_boolean (cut_boolean expected, cut_boolean actual);
expectedがCUT_TRUEの値だがactualはCUT_FALSEの値のとき、または、expectedがCUT_FALSEの値だがactualはCUT_TRUEの値のときにパスします。
例:
cut_assert_not_equal_boolean(CUT_TRUE, CUT_TRUE); -> 失敗 cut_assert_not_equal_boolean(CUT_FALSE, CUT_FALSE); -> 失敗 cut_assert_not_equal_boolean(CUT_TRUE, CUT_FALSE); -> パス
|
期待する真偽値。 |
|
実際の真偽値。 |
1.0.7から
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_not_equal_int (int expected,
int actual);
expected != actualが成り立つときパスします。
|
期待する整数の値。 |
|
実際の整数の値。 |
1.0.7から
void cut_assert_equal_uint (unsigned int expected,
unsigned int actual,
...);
expected == actualが成り立つときパスします。
|
期待する符号無し整数の値。 |
|
実際の符号無し符号整数の値。 |
|
省略可能な整形文字列。以降のパラメータが整形文字列に挿入されます。(printf()と同じ。)このパラメータは0.1.6から非推奨となっています。代わりにcut_set_message()を使ってください。 |
void cut_assert_not_equal_uint (unsigned int expected,
unsigned int actual);
expected != actualが成り立つときパスします。
|
期待する符号無し整数の値。 |
|
実際の符号無し符号整数の値。 |
1.0.7から
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_not_equal_size (size_t expected,
size_t actual);
expected != actualが成り立つときパスします。
|
期待するsize_tの値。 |
|
実際のsize_tの値。 |
1.0.7から
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_not_equal_double (double expected,
double error,
double actual);
actual < (expected - error) && (expected + error) < actualが成り立つときパスします。
|
期待する浮動小数点数。 |
|
誤差範囲を示す浮動小数点数。 |
|
実際の浮動小数点数。 |
1.0.7から
void cut_assert_equal_string (const char *expected,
const char *actual,
...);
expectedとactualがどちらともNULL、あるいはstrcmp(expected, actual) == 0が成り立つときにパスします。
例:
cut_assert_equal_string("abc", "abc"); -> パス
cut_assert_equal_string(NULL, NULL); -> パス
cut_assert_equal_string("abc", "ABC"); -> 失敗
cut_assert_equal_string("abc", NULL); -> 失敗
cut_assert_equal_string(NULL, "abc"); -> 失敗
|
期待する文字列。 |
|
実際の文字列の値。 |
|
省略可能な整形文字列。以降のパラメータが整形文字列に挿入されます。(printf()と同じ。)このパラメータは0.1.6から非推奨となっています。代わりにcut_set_message()を使ってください。 |
void cut_assert_not_equal_string (const char *expected,
const char *actual);
expectedかactualのどちらかがNULLのとき、または、strcmp(expected, actual) != 0のときパスします。
例:
cut_assert_equal_string("abc", "ABC"); -> パス
cut_assert_equal_string("abc", NULL); -> パス
cut_assert_equal_string(NULL, "abc"); -> パス
cut_assert_equal_string("abc", "abc"); -> 失敗
cut_assert_equal_string(NULL, NULL); -> 失敗
|
期待する文字列。 |
|
実際の文字列の値。 |
1.0.7から
void cut_assert_equal_string_with_free (const char *expected,
const char *actual,
...);
expectedとactualがどちらともNULL、あるいはstrcmp(expected, actual) == 0が成り立つときにパスします。
使用例はcut_assert_equal_string()を見てください。
|
期待する文字列。 |
|
実際の文字列の値。(チェック後に開放される) |
|
省略可能な整形文字列。以降のパラメータが整形文字列に挿入されます。(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_substring (const char *expected,
const char *actual,
size_t length);
(1)expectedとactualが両方ともNULLでlength == 1が成り立つとき、または、(2) strncmp(expected, actual, length) == 0が成り立つときパスします。
例:
cut_assert_equal_substring("abcdef", "abcDEF", 3); -> パス
cut_assert_equal_substring(NULL, NULL, 0); -> パス
cut_assert_equal_substring(NULL, NULL, 3); -> 失敗
cut_assert_equal_substring("abc", "ABC", 3); -> 失敗
cut_assert_equal_substring("abc", NULL, 3); -> 失敗
cut_assert_equal_substring(NULL, "abc", 3); -> 失敗
|
期待する文字列。 |
|
実際の文字列の値。 |
|
compared string length. |
1.0.7から
void cut_assert_not_equal_substring (const char *expected,
const char *actual,
size_t length);
(1) expectedとactualのどちらかがNULL、または、(2) strncmp(expected, actual, length) != 0が成り立つときパスします。
例:
cut_assert_not_equal_substring("abc", "ABC", 3); -> パス
cut_assert_not_equal_substring("abc", NULL, 3); -> パス
cut_assert_not_equal_substring(NULL, "abc", 3); -> パス
cut_assert_not_equal_substring("abcdef", "abcDEF", 3); -> 失敗
cut_assert_not_equal_substring(NULL, NULL, 0); -> 失敗
cut_assert_not_equal_substring(NULL, NULL, 3); -> 失敗
|
期待する文字列。 |
|
実際の文字列の値。 |
|
compared string length. |
1.0.7から
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_not_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のサイズ。 |
1.0.7から
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から