## 検証 検証 — あなたのプログラムが期待通りに動作しているかを検証します。 |

## Functions

void | cut_assert ()
void | cut_assert_true ()
void | cut_assert_false ()
void | cut_assert_equal_boolean ()
void | cut_assert_not_equal_boolean ()
void | cut_assert_null ()
void | cut_assert_null_string ()
void | cut_assert_not_null ()
void | cut_assert_equal_int ()
void | cut_assert_not_equal_int ()
#define | cut_assert_equal_int_least8()
#define | cut_assert_not_equal_int_least8()
#define | cut_assert_equal_int_least16()
#define | cut_assert_not_equal_int_least16()
#define | cut_assert_equal_int_least32()
#define | cut_assert_not_equal_int_least32()
#define | cut_assert_equal_int_least64()
#define | cut_assert_not_equal_int_least64()
#define | cut_assert_equal_int_fast8()
#define | cut_assert_not_equal_int_fast8()
#define | cut_assert_equal_int_fast16()
#define | cut_assert_not_equal_int_fast16()
#define | cut_assert_equal_int_fast32()
#define | cut_assert_not_equal_int_fast32()
#define | cut_assert_equal_int_fast64()
#define | cut_assert_not_equal_int_fast64()
#define | cut_assert_equal_intptr()
#define | cut_assert_not_equal_intptr()
#define | cut_assert_equal_intmax()
#define | cut_assert_not_equal_intmax()
void | cut_assert_equal_uint ()
void | cut_assert_not_equal_uint ()
#define | cut_assert_equal_uint_least8()
#define | cut_assert_not_equal_uint_least8()
#define | cut_assert_equal_uint_least16()
#define | cut_assert_not_equal_uint_least16()
#define | cut_assert_equal_uint_least32()
#define | cut_assert_not_equal_uint_least32()
#define | cut_assert_equal_uint_least64()
#define | cut_assert_not_equal_uint_least64()
#define | cut_assert_equal_uint_fast8()
#define | cut_assert_not_equal_uint_fast8()
#define | cut_assert_equal_uint_fast16()
#define | cut_assert_not_equal_uint_fast16()
#define | cut_assert_equal_uint_fast32()
#define | cut_assert_not_equal_uint_fast32()
#define | cut_assert_equal_uint_fast64()
#define | cut_assert_not_equal_uint_fast64()
#define | cut_assert_equal_uintptr()
#define | cut_assert_not_equal_uintptr()
#define | cut_assert_equal_uintmax()
#define | cut_assert_not_equal_uintmax()
void | cut_assert_equal_size ()
void | cut_assert_not_equal_size ()
void | cut_assert_equal_double ()
void | cut_assert_not_equal_double ()
#define | cut_assert_equal_char()
#define | cut_assert_not_equal_char()
void | cut_assert_equal_string ()
void | cut_assert_not_equal_string ()
void | cut_assert_equal_string_with_free ()
void | cut_assert_equal_string_or_null ()
void | cut_assert_equal_substring ()
void | cut_assert_not_equal_substring ()
void | cut_assert_equal_memory ()
void | cut_assert_not_equal_memory ()
void | cut_assert_equal_string_array ()
void | cut_assert_equal_string_array_with_free ()
#define | cut_assert_operator()
#define | cut_assert_operator_int()
#define | cut_assert_operator_uint()
#define | cut_assert_operator_size()
#define | cut_assert_operator_double()
#define | cut_assert_equal()
void | cut_assert_errno ()
void | cut_assert_file_exist ()
void | cut_assert_path_exist ()
void | cut_assert_exist_path ()
void | cut_assert_path_not_exist ()
void | cut_assert_not_exist_path ()
void | cut_assert_match ()
void | cut_assert_match_with_free ()
void | cut_assert_equal_pointer ()
void | cut_assert_equal_fixture_data_string ()
#define | cut_assert_equal_sockaddr()
#define | cut_assert_equal_file_raw()
#define | cut_assert_not_equal_file_raw()
void | cut_error ()
void | cut_error_errno ()
void | cut_fail ()
void | cut_pend ()
void | cut_pending ()
void | cut_notify ()
void | cut_omit ()
void | cut_return ()

## 説明

あなたのプログラムが期待通りに動作しているかを検証するために、期待した値が得られていることを検証したい箇所で`cut_assert_XXX()`を使います。

例:

    1
    cut_assert_equal_int(3, 1 + 2);

## Functions

### cut_assert ()

    void
    cut_assert (cut_boolean expression,
                ...);

`expression`が0でも`NULL`でもないとパスします。

例:

    1
    2
    3
    char *string;
    string = malloc(16);
    cut_assert(string);

    1
    2
    3
    MyObject *object;
    object = my_object_new();
    cut_assert(object, cut_message("my_object_new() should not be failed"));

#### Parameters

expression | チェックする式。 |
... | 追加メッセージ（省略可能）。詳細は`cut_message()`を見てください。 |

### cut_assert_true ()

    void
    cut_assert_true (cut_boolean expression,
                     ...);

`expression`が`CUT_TRUE`のとき（0でも`NULL`でもないとき）パスします。

#### Parameters

expression | チェックする式。 |
... | 追加メッセージ（省略可能）。詳細は`cut_message()`を見てください。 |

Since: 0.9

### cut_assert_false ()

    void
    cut_assert_false (cut_boolean expression,
                      ...);

`expression`が0または`NULL`のときパスします。

#### Parameters

expression | チェックする式。 |
... | 追加メッセージ（省略可能）。詳細は`cut_message()`を見てください。 |

Since: 0.9

### cut_assert_equal_boolean ()

    void
    cut_assert_equal_boolean (cut_boolean expected,
                              cut_boolean actual,
                              ...);

`expected`と`actual`が両方とも`CUT_TRUE`の値か、両方とも`CUT_FALSE`の値のときパスします。

例:

    1
    2
    3
    cut_assert_equal_boolean(CUT_TRUE, CUT_TRUE);   -> Pass
    cut_assert_equal_boolean(CUT_FALSE, CUT_FALSE); -> Pass
    cut_assert_equal_boolean(CUT_TRUE, CUT_FALSE);  -> Fail

#### Parameters

expected | 期待する真偽値。 |
actual | 実際の真偽値。 |
... | 追加メッセージ（省略可能）。詳細は`cut_message()`を見てください。 |

Since: 1.0.7

### cut_assert_not_equal_boolean ()

    void
    cut_assert_not_equal_boolean (cut_boolean expected,
                                  cut_boolean actual,
                                  ...);

`expected`が`CUT_TRUE`の値だが`actual`は`CUT_FALSE`の値のとき、または、`expected`が`CUT_FALSE`の値だが`actual`は`CUT_TRUE`の値のときにパスします。

例:

    1
    2
    3
    cut_assert_not_equal_boolean(CUT_TRUE, CUT_TRUE);   -> Fail
    cut_assert_not_equal_boolean(CUT_FALSE, CUT_FALSE); -> Fail
    cut_assert_not_equal_boolean(CUT_TRUE, CUT_FALSE);  -> Pass

#### Parameters

expected | 期待する真偽値。 |
actual | 実際の真偽値。 |
... | 追加メッセージ（省略可能）。詳細は`cut_message()`を見てください。 |

Since: 1.0.7

### cut_assert_null ()

    void
    cut_assert_null (const void *expression,
                     ...);

`expression`が`NULL`のときパスします。

#### Parameters

expression | チェックする式。 |
... | 追加メッセージ（省略可能）。詳細は`cut_message()`を見てください。 |

### cut_assert_null_string ()

    void
    cut_assert_null_string (const char *string,
                            ...);

`string`が`NULL`のときパスします。

#### Parameters

string | チェックする文字列。 |
... | 追加メッセージ（省略可能）。詳細は`cut_message()`を見てください。 |

Since: 0.3

### cut_assert_not_null ()

    void
    cut_assert_not_null (const void *expression,
                         ...);

`expression`が`NULL`以外のときパスします。

#### Parameters

expression | チェックする式。 |
... | 追加メッセージ（省略可能）。詳細は`cut_message()`を見てください。 |

### cut_assert_equal_int ()

    void
    cut_assert_equal_int (int expected,
                          int actual,
                          ...);

Passes if `expected` == `actual` .

#### Parameters

expected | 期待する整数の値。 |
actual | 実際の整数の値。 |
... | 追加メッセージ（省略可能）。詳細は`cut_message()`を見てください。 |

### cut_assert_not_equal_int ()

    void
    cut_assert_not_equal_int (int expected,
                              int actual,
                              ...);

Passes if `expected` != `actual` .

#### Parameters

expected | 期待する整数の値。 |
actual | 実際の整数の値。 |
... | 追加メッセージ（省略可能）。詳細は`cut_message()`を見てください。 |

Since: 1.0.7

### cut_assert_equal_int_least8()

    #define             cut_assert_equal_int_least8(expected, actual, ...)

Passes if `expected` == `actual` .

この関数はCUT_SUPPORT_C99_STDINT_TYPESが定義されているときだけ使用できます。

#### Parameters

expected | 期待する整数の値。 |
actual | 実際の整数の値。 |
... | 追加メッセージ（省略可能）。詳細は`cut_message()`を見てください。 |

Since: 1.1.0

### cut_assert_not_equal_int_least8()

    #define             cut_assert_not_equal_int_least8(expected, actual, ...)

Passes if `expected` != `actual` .

この関数はCUT_SUPPORT_C99_STDINT_TYPESが定義されているときだけ使用できます。

#### Parameters

expected | 期待する整数の値。 |
actual | 実際の整数の値。 |
... | 追加メッセージ（省略可能）。詳細は`cut_message()`を見てください。 |

Since: 1.1.0

### cut_assert_equal_int_least16()

    #define             cut_assert_equal_int_least16(expected, actual, ...)

Passes if `expected` == `actual` .

この関数はCUT_SUPPORT_C99_STDINT_TYPESが定義されているときだけ使用できます。

#### Parameters

expected | 期待する整数の値。 |
actual | 実際の整数の値。 |
... | 追加メッセージ（省略可能）。詳細は`cut_message()`を見てください。 |

Since: 1.1.0

### cut_assert_not_equal_int_least16()

    #define             cut_assert_not_equal_int_least16(expected, actual, ...)

Passes if `expected` != `actual` .

この関数はCUT_SUPPORT_C99_STDINT_TYPESが定義されているときだけ使用できます。

#### Parameters

expected | 期待する整数の値。 |
actual | 実際の整数の値。 |
... | 追加メッセージ（省略可能）。詳細は`cut_message()`を見てください。 |

Since: 1.1.0

### cut_assert_equal_int_least32()

    #define             cut_assert_equal_int_least32(expected, actual, ...)

Passes if `expected` == `actual` .

この関数はCUT_SUPPORT_C99_STDINT_TYPESが定義されているときだけ使用できます。

#### Parameters

expected | 期待する整数の値。 |
actual | 実際の整数の値。 |
... | 追加メッセージ（省略可能）。詳細は`cut_message()`を見てください。 |

Since: 1.1.0

### cut_assert_not_equal_int_least32()

    #define             cut_assert_not_equal_int_least32(expected, actual, ...)

Passes if `expected` != `actual` .

この関数はCUT_SUPPORT_C99_STDINT_TYPESが定義されているときだけ使用できます。

#### Parameters

expected | 期待する整数の値。 |
actual | 実際の整数の値。 |
... | 追加メッセージ（省略可能）。詳細は`cut_message()`を見てください。 |

Since: 1.1.0

### cut_assert_equal_int_least64()

    #define             cut_assert_equal_int_least64(expected, actual, ...)

Passes if `expected` == `actual` .

この関数はCUT_SUPPORT_C99_STDINT_TYPESが定義されているときだけ使用できます。

#### Parameters

expected | 期待する整数の値。 |
actual | 実際の整数の値。 |
... | 追加メッセージ（省略可能）。詳細は`cut_message()`を見てください。 |

Since: 1.1.0

### cut_assert_not_equal_int_least64()

    #define             cut_assert_not_equal_int_least64(expected, actual, ...)

Passes if `expected` != `actual` .

この関数はCUT_SUPPORT_C99_STDINT_TYPESが定義されているときだけ使用できます。

#### Parameters

expected | 期待する整数の値。 |
actual | 実際の整数の値。 |
... | 追加メッセージ（省略可能）。詳細は`cut_message()`を見てください。 |

Since: 1.1.0

### cut_assert_equal_int_fast8()

    #define             cut_assert_equal_int_fast8(expected, actual, ...)

Passes if `expected` == `actual` .

この関数はCUT_SUPPORT_C99_STDINT_TYPESが定義されているときだけ使用できます。

#### Parameters

expected | 期待する整数の値。 |
actual | 実際の整数の値。 |
... | 追加メッセージ（省略可能）。詳細は`cut_message()`を見てください。 |

Since: 1.1.0

### cut_assert_not_equal_int_fast8()

    #define             cut_assert_not_equal_int_fast8(expected, actual, ...)

Passes if `expected` != `actual` .

この関数はCUT_SUPPORT_C99_STDINT_TYPESが定義されているときだけ使用できます。

#### Parameters

expected | 期待する整数の値。 |
actual | 実際の整数の値。 |
... | 追加メッセージ（省略可能）。詳細は`cut_message()`を見てください。 |

Since: 1.1.0

### cut_assert_equal_int_fast16()

    #define             cut_assert_equal_int_fast16(expected, actual, ...)

Passes if `expected` == `actual` .

この関数はCUT_SUPPORT_C99_STDINT_TYPESが定義されているときだけ使用できます。

#### Parameters

expected | 期待する整数の値。 |
actual | 実際の整数の値。 |
... | 追加メッセージ（省略可能）。詳細は`cut_message()`を見てください。 |

Since: 1.1.0

### cut_assert_not_equal_int_fast16()

    #define             cut_assert_not_equal_int_fast16(expected, actual, ...)

Passes if `expected` != `actual` .

この関数はCUT_SUPPORT_C99_STDINT_TYPESが定義されているときだけ使用できます。

#### Parameters

expected | 期待する整数の値。 |
actual | 実際の整数の値。 |
... | 追加メッセージ（省略可能）。詳細は`cut_message()`を見てください。 |

Since: 1.1.0

### cut_assert_equal_int_fast32()

    #define             cut_assert_equal_int_fast32(expected, actual, ...)

Passes if `expected` == `actual` .

この関数はCUT_SUPPORT_C99_STDINT_TYPESが定義されているときだけ使用できます。

#### Parameters

expected | 期待する整数の値。 |
actual | 実際の整数の値。 |
... | 追加メッセージ（省略可能）。詳細は`cut_message()`を見てください。 |

Since: 1.1.0

### cut_assert_not_equal_int_fast32()

    #define             cut_assert_not_equal_int_fast32(expected, actual, ...)

Passes if `expected` != `actual` .

この関数はCUT_SUPPORT_C99_STDINT_TYPESが定義されているときだけ使用できます。

#### Parameters

expected | 期待する整数の値。 |
actual | 実際の整数の値。 |
... | 追加メッセージ（省略可能）。詳細は`cut_message()`を見てください。 |

Since: 1.1.0

### cut_assert_equal_int_fast64()

    #define             cut_assert_equal_int_fast64(expected, actual, ...)

Passes if `expected` == `actual` .

この関数はCUT_SUPPORT_C99_STDINT_TYPESが定義されているときだけ使用できます。

#### Parameters

expected | 期待する整数の値。 |
actual | 実際の整数の値。 |
... | 追加メッセージ（省略可能）。詳細は`cut_message()`を見てください。 |

Since: 1.1.0

### cut_assert_not_equal_int_fast64()

    #define             cut_assert_not_equal_int_fast64(expected, actual, ...)

Passes if `expected` != `actual` .

この関数はCUT_SUPPORT_C99_STDINT_TYPESが定義されているときだけ使用できます。

#### Parameters

expected | 期待する整数の値。 |
actual | 実際の整数の値。 |
... | 追加メッセージ（省略可能）。詳細は`cut_message()`を見てください。 |

Since: 1.1.0

### cut_assert_equal_intptr()

    #define             cut_assert_equal_intptr(expected, actual, ...)

Passes if `expected` == `actual` .

この関数はCUT_SUPPORT_C99_STDINT_TYPESが定義されているときだけ使用できます。

#### Parameters

expected | 期待する整数の値。 |
actual | 実際の整数の値。 |
... | 追加メッセージ（省略可能）。詳細は`cut_message()`を見てください。 |

Since: 1.1.0

### cut_assert_not_equal_intptr()

    #define             cut_assert_not_equal_intptr(expected, actual, ...)

Passes if `expected` != `actual` .

この関数はCUT_SUPPORT_C99_STDINT_TYPESが定義されているときだけ使用できます。

#### Parameters

expected | 期待する整数の値。 |
actual | 実際の整数の値。 |
... | 追加メッセージ（省略可能）。詳細は`cut_message()`を見てください。 |

Since: 1.1.0

### cut_assert_equal_intmax()

    #define             cut_assert_equal_intmax(expected, actual, ...)

Passes if `expected` == `actual` .

この関数はCUT_SUPPORT_C99_STDINT_TYPESが定義されているときだけ使用できます。

#### Parameters

expected | 期待する整数の値。 |
actual | 実際の整数の値。 |
... | 追加メッセージ（省略可能）。詳細は`cut_message()`を見てください。 |

Since: 1.1.0

### cut_assert_not_equal_intmax()

    #define             cut_assert_not_equal_intmax(expected, actual, ...)

Passes if `expected` != `actual` .

この関数はCUT_SUPPORT_C99_STDINT_TYPESが定義されているときだけ使用できます。

#### Parameters

expected | 期待する整数の値。 |
actual | 実際の整数の値。 |
... | 追加メッセージ（省略可能）。詳細は`cut_message()`を見てください。 |

Since: 1.1.0

### cut_assert_equal_uint ()

    void
    cut_assert_equal_uint (unsigned int expected,
                           unsigned int actual,
                           ...);

Passes if `expected` == `actual` .

#### Parameters

expected | 期待する符号無し整数の値。 |
actual | 実際の符号無し符号整数の値。 |
... | 追加メッセージ（省略可能）。詳細は`cut_message()`を見てください。 |

### cut_assert_not_equal_uint ()

    void
    cut_assert_not_equal_uint (unsigned int expected,
                               unsigned int actual,
                               ...);

Passes if `expected` != `actual` .

#### Parameters

expected | 期待する符号無し整数の値。 |
actual | 実際の符号無し符号整数の値。 |
... | 追加メッセージ（省略可能）。詳細は`cut_message()`を見てください。 |

Since: 1.0.7

### cut_assert_equal_uint_least8()

    #define             cut_assert_equal_uint_least8(expected, actual, ...)

Passes if `expected` == `actual` .

この関数はCUT_SUPPORT_C99_STDINT_TYPESが定義されているときだけ使用できます。

#### Parameters

expected | 期待する符号無し整数の値。 |
actual | 実際の符号無し符号整数の値。 |
... | 追加メッセージ（省略可能）。詳細は`cut_message()`を見てください。 |

Since: 1.1.0

### cut_assert_not_equal_uint_least8()

    #define             cut_assert_not_equal_uint_least8(expected, actual, ...)

Passes if `expected` != `actual` .

この関数はCUT_SUPPORT_C99_STDINT_TYPESが定義されているときだけ使用できます。

#### Parameters

expected | 期待する符号無し整数の値。 |
actual | 実際の符号無し符号整数の値。 |
... | 追加メッセージ（省略可能）。詳細は`cut_message()`を見てください。 |

Since: 1.1.0

### cut_assert_equal_uint_least16()

    #define             cut_assert_equal_uint_least16(expected, actual, ...)

Passes if `expected` == `actual` .

この関数はCUT_SUPPORT_C99_STDINT_TYPESが定義されているときだけ使用できます。

#### Parameters

expected | 期待する符号無し整数の値。 |
actual | 実際の符号無し符号整数の値。 |
... | 追加メッセージ（省略可能）。詳細は`cut_message()`を見てください。 |

Since: 1.1.0

### cut_assert_not_equal_uint_least16()

    #define             cut_assert_not_equal_uint_least16(expected, actual, ...)

Passes if `expected` != `actual` .

この関数はCUT_SUPPORT_C99_STDINT_TYPESが定義されているときだけ使用できます。

#### Parameters

expected | 期待する符号無し整数の値。 |
actual | 実際の符号無し符号整数の値。 |
... | 追加メッセージ（省略可能）。詳細は`cut_message()`を見てください。 |

Since: 1.1.0

### cut_assert_equal_uint_least32()

    #define             cut_assert_equal_uint_least32(expected, actual, ...)

Passes if `expected` == `actual` .

この関数はCUT_SUPPORT_C99_STDINT_TYPESが定義されているときだけ使用できます。

#### Parameters

expected | 期待する符号無し整数の値。 |
actual | 実際の符号無し符号整数の値。 |
... | 追加メッセージ（省略可能）。詳細は`cut_message()`を見てください。 |

Since: 1.1.0

### cut_assert_not_equal_uint_least32()

    #define             cut_assert_not_equal_uint_least32(expected, actual, ...)

Passes if `expected` != `actual` .

この関数はCUT_SUPPORT_C99_STDINT_TYPESが定義されているときだけ使用できます。

#### Parameters

expected | 期待する符号無し整数の値。 |
actual | 実際の符号無し符号整数の値。 |
... | 追加メッセージ（省略可能）。詳細は`cut_message()`を見てください。 |

Since: 1.1.0

### cut_assert_equal_uint_least64()

    #define             cut_assert_equal_uint_least64(expected, actual, ...)

Passes if `expected` == `actual` .

この関数はCUT_SUPPORT_C99_STDINT_TYPESが定義されているときだけ使用できます。

#### Parameters

expected | 期待する符号無し整数の値。 |
actual | 実際の符号無し符号整数の値。 |
... | 追加メッセージ（省略可能）。詳細は`cut_message()`を見てください。 |

Since: 1.1.0

### cut_assert_not_equal_uint_least64()

    #define             cut_assert_not_equal_uint_least64(expected, actual, ...)

Passes if `expected` != `actual` .

この関数はCUT_SUPPORT_C99_STDINT_TYPESが定義されているときだけ使用できます。

#### Parameters

expected | 期待する符号無し整数の値。 |
actual | 実際の符号無し符号整数の値。 |
... | 追加メッセージ（省略可能）。詳細は`cut_message()`を見てください。 |

Since: 1.1.0

### cut_assert_equal_uint_fast8()

    #define             cut_assert_equal_uint_fast8(expected, actual, ...)

Passes if `expected` == `actual` .

この関数はCUT_SUPPORT_C99_STDINT_TYPESが定義されているときだけ使用できます。

#### Parameters

expected | 期待する符号無し整数の値。 |
actual | 実際の符号無し符号整数の値。 |
... | 追加メッセージ（省略可能）。詳細は`cut_message()`を見てください。 |

Since: 1.1.0

### cut_assert_not_equal_uint_fast8()

    #define             cut_assert_not_equal_uint_fast8(expected, actual, ...)

Passes if `expected` != `actual` .

この関数はCUT_SUPPORT_C99_STDINT_TYPESが定義されているときだけ使用できます。

#### Parameters

expected | 期待する符号無し整数の値。 |
actual | 実際の符号無し符号整数の値。 |
... | 追加メッセージ（省略可能）。詳細は`cut_message()`を見てください。 |

Since: 1.1.0

### cut_assert_equal_uint_fast16()

    #define             cut_assert_equal_uint_fast16(expected, actual, ...)

Passes if `expected` == `actual` .

この関数はCUT_SUPPORT_C99_STDINT_TYPESが定義されているときだけ使用できます。

#### Parameters

expected | 期待する符号無し整数の値。 |
actual | 実際の符号無し符号整数の値。 |
... | 追加メッセージ（省略可能）。詳細は`cut_message()`を見てください。 |

Since: 1.1.0

### cut_assert_not_equal_uint_fast16()

    #define             cut_assert_not_equal_uint_fast16(expected, actual, ...)

Passes if `expected` != `actual` .

この関数はCUT_SUPPORT_C99_STDINT_TYPESが定義されているときだけ使用できます。

#### Parameters

expected | 期待する符号無し整数の値。 |
actual | 実際の符号無し符号整数の値。 |
... | 追加メッセージ（省略可能）。詳細は`cut_message()`を見てください。 |

Since: 1.1.0

### cut_assert_equal_uint_fast32()

    #define             cut_assert_equal_uint_fast32(expected, actual, ...)

Passes if `expected` == `actual` .

この関数はCUT_SUPPORT_C99_STDINT_TYPESが定義されているときだけ使用できます。

#### Parameters

expected | 期待する符号無し整数の値。 |
actual | 実際の符号無し符号整数の値。 |
... | 追加メッセージ（省略可能）。詳細は`cut_message()`を見てください。 |

Since: 1.1.0

### cut_assert_not_equal_uint_fast32()

    #define             cut_assert_not_equal_uint_fast32(expected, actual, ...)

Passes if `expected` != `actual` .

この関数はCUT_SUPPORT_C99_STDINT_TYPESが定義されているときだけ使用できます。

#### Parameters

expected | 期待する符号無し整数の値。 |
actual | 実際の符号無し符号整数の値。 |
... | 追加メッセージ（省略可能）。詳細は`cut_message()`を見てください。 |

Since: 1.1.0

### cut_assert_equal_uint_fast64()

    #define             cut_assert_equal_uint_fast64(expected, actual, ...)

Passes if `expected` == `actual` .

この関数はCUT_SUPPORT_C99_STDINT_TYPESが定義されているときだけ使用できます。

#### Parameters

expected | 期待する符号無し整数の値。 |
actual | 実際の符号無し符号整数の値。 |
... | 追加メッセージ（省略可能）。詳細は`cut_message()`を見てください。 |

Since: 1.1.0

### cut_assert_not_equal_uint_fast64()

    #define             cut_assert_not_equal_uint_fast64(expected, actual, ...)

Passes if `expected` != `actual` .

この関数はCUT_SUPPORT_C99_STDINT_TYPESが定義されているときだけ使用できます。

#### Parameters

expected | 期待する符号無し整数の値。 |
actual | 実際の符号無し符号整数の値。 |
... | 追加メッセージ（省略可能）。詳細は`cut_message()`を見てください。 |

Since: 1.1.0

### cut_assert_equal_uintptr()

    #define             cut_assert_equal_uintptr(expected, actual, ...)

Passes if `expected` == `actual` .

この関数はCUT_SUPPORT_C99_STDINT_TYPESが定義されているときだけ使用できます。

#### Parameters

expected | 期待する符号無し整数の値。 |
actual | 実際の符号無し符号整数の値。 |
... | 追加メッセージ（省略可能）。詳細は`cut_message()`を見てください。 |

Since: 1.1.0

### cut_assert_not_equal_uintptr()

    #define             cut_assert_not_equal_uintptr(expected, actual, ...)

Passes if `expected` != `actual` .

この関数はCUT_SUPPORT_C99_STDINT_TYPESが定義されているときだけ使用できます。

#### Parameters

expected | 期待する符号無し整数の値。 |
actual | 実際の符号無し符号整数の値。 |
... | 追加メッセージ（省略可能）。詳細は`cut_message()`を見てください。 |

Since: 1.1.0

### cut_assert_equal_uintmax()

    #define             cut_assert_equal_uintmax(expected, actual, ...)

Passes if `expected` == `actual` .

この関数はCUT_SUPPORT_C99_STDINT_TYPESが定義されているときだけ使用できます。

#### Parameters

expected | 期待する符号無し整数の値。 |
actual | 実際の符号無し符号整数の値。 |
... | 追加メッセージ（省略可能）。詳細は`cut_message()`を見てください。 |

Since: 1.1.0

### cut_assert_not_equal_uintmax()

    #define             cut_assert_not_equal_uintmax(expected, actual, ...)

Passes if `expected` != `actual` .

この関数はCUT_SUPPORT_C99_STDINT_TYPESが定義されているときだけ使用できます。

#### Parameters

expected | 期待する符号無し整数の値。 |
actual | 実際の符号無し符号整数の値。 |
... | 追加メッセージ（省略可能）。詳細は`cut_message()`を見てください。 |

Since: 1.1.0

### cut_assert_equal_size ()

    void
    cut_assert_equal_size (size_t expected,
                           size_t actual,
                           ...);

Passes if `expected` == `actual` .

#### Parameters

expected | 期待するsize_tの値。 |
actual | 実際のsize_tの値。 |
... | 追加メッセージ（省略可能）。詳細は`cut_message()`を見てください。 |

Since: 1.0.6

### cut_assert_not_equal_size ()

    void
    cut_assert_not_equal_size (size_t expected,
                               size_t actual,
                               ...);

Passes if `expected` != `actual` .

#### Parameters

expected | 期待するsize_tの値。 |
actual | 実際のsize_tの値。 |
... | 追加メッセージ（省略可能）。詳細は`cut_message()`を見てください。 |

Since: 1.0.7

### cut_assert_equal_double ()

    void
    cut_assert_equal_double (double expected,
                             double error,
                             double actual,
                             ...);

Passes if (`expected` - `error` ) <= `actual` <= (`expected` + `error` ).

#### Parameters

expected | 期待する浮動小数点数。 |
error | 誤差範囲を示す浮動小数点数。 |
actual | 実際の浮動小数点数。 |
... | 追加メッセージ（省略可能）。詳細は`cut_message()`を見てください。 |

### cut_assert_not_equal_double ()

    void
    cut_assert_not_equal_double (double expected,
                                 double error,
                                 double actual,
                                 ...);

Passes if `actual` < (`expected` - `error` ) && (`expected` + `error` ) < `actual` .

#### Parameters

expected | 期待する浮動小数点数。 |
error | 誤差範囲を示す浮動小数点数。 |
actual | 実際の浮動小数点数。 |
... | 追加メッセージ（省略可能）。詳細は`cut_message()`を見てください。 |

Since: 1.0.7

### cut_assert_equal_char()

    #define             cut_assert_equal_char(expected, actual, ...)

Passes if `expected` == `actual` .

例:

    1
    2
    cut_assert_equal_char('a', 'a'); -> Pass
    cut_assert_equal_char('a', 'b'); -> Fail

#### Parameters

expected | 期待する文字。 |
actual | 実際の文字。 |
... | 追加メッセージ（省略可能）。詳細は`cut_message()`を見てください。 |

Since: 1.1.3

### cut_assert_not_equal_char()

    #define             cut_assert_not_equal_char(expected, actual, ...)

Passes if `expected` != `actual` .

例:

    1
    2
    cut_assert_not_equal_char('a', 'b'); -> Pass
    cut_assert_not_equal_char('a', 'a'); -> Fail

#### Parameters

expected | 期待する文字。 |
actual | 実際の文字。 |
... | 追加メッセージ（省略可能）。詳細は`cut_message()`を見てください。 |

Since: 1.1.3

### cut_assert_equal_string ()

    void
    cut_assert_equal_string (const char *expected,
                             const char *actual,
                             ...);

Passes if both `expected` and `actual` are `NULL` or strcmp(`expected` , `actual` ) == 0.

例:

    1
    2
    3
    4
    5
    cut_assert_equal_string("abc", "abc"); -> Pass
    cut_assert_equal_string(NULL, NULL);   -> Pass
    cut_assert_equal_string("abc", "ABC"); -> Fail
    cut_assert_equal_string("abc", NULL);  -> Fail
    cut_assert_equal_string(NULL, "abc");  -> Fail

#### Parameters

expected | 期待する文字列。 |
actual | 実際の文字列の値。 |
... | 追加メッセージ（省略可能）。詳細は`cut_message()`を見てください。 |

### cut_assert_not_equal_string ()

    void
    cut_assert_not_equal_string (const char *expected,
                                 const char *actual,
                                 ...);

Passes if one of `expected` and `actual` is `NULL` or strcmp(`expected` , `actual` ) != 0.

例:

    1
    2
    3
    4
    5
    cut_assert_not_equal_string("abc", NULL);  -> Pass
    cut_assert_not_equal_string(NULL, "abc");  -> Pass
    cut_assert_not_equal_string("abc", "ABC"); -> Pass
    cut_assert_not_equal_string("abc", "abc"); -> Fail
    cut_assert_not_equal_string(NULL, NULL);   -> Fail

#### Parameters

expected | 期待する文字列。 |
actual | 実際の文字列の値。 |
... | 追加メッセージ（省略可能）。詳細は`cut_message()`を見てください。 |

Since: 1.0.7

### cut_assert_equal_string_with_free ()

    void
    cut_assert_equal_string_with_free (const char *expected,
                                       const char *actual,
                                       ...);

Passes if both `expected` and `actual` are `NULL` or strcmp(`expected` , `actual` ) == 0.

使用例は`cut_assert_equal_string()`を見てください。

#### Parameters

expected | 期待する文字列。 |
actual | 実際の文字列の値。（チェック後に開放される） |
... | 追加メッセージ（省略可能）。詳細は`cut_message()`を見てください。 |

Since: 0.3

### cut_assert_equal_string_or_null ()

    void
    cut_assert_equal_string_or_null (const char *expected,
                                     const char *actual,
                                     ...);

`cut_assert_equal_string_or_null` has been deprecated since version 0.3 and should not be used in newly-written code.

Use `cut_assert_equal_string()` instead.

#### Parameters

expected | 期待する文字列。 |
actual | 実際の文字列の値。 |
... | 追加メッセージ（省略可能）。詳細は`cut_message()`を見てください。 |

### cut_assert_equal_substring ()

    void
    cut_assert_equal_substring (const char *expected,
                                const char *actual,
                                size_t length,
                                ...);

Passes if (1) both `expected` and `actual` are `NULL` and `length` == 1 or (2) strncmp(`expected` , `actual` , `length` ) == 0.

例:

    1
    2
    3
    4
    5
    6
    cut_assert_equal_substring("abcdef", "abcDEF", 3); -> Pass
    cut_assert_equal_substring(NULL, NULL, 0);         -> Pass
    cut_assert_equal_substring(NULL, NULL, 3);         -> Fail
    cut_assert_equal_substring("abc", "ABC", 3);       -> Fail
    cut_assert_equal_substring("abc", NULL, 3);        -> Fail
    cut_assert_equal_substring(NULL, "abc", 3);        -> Fail

#### Parameters

expected | 期待する文字列。 |
actual | 実際の文字列の値。 |
length | compared string length. |
... | 追加メッセージ（省略可能）。詳細は`cut_message()`を見てください。 |

Since: 1.0.7

### cut_assert_not_equal_substring ()

    void
    cut_assert_not_equal_substring (const char *expected,
                                    const char *actual,
                                    size_t length,
                                    ...);

Passes if (1) one of `expected` and `actual` is `NULL` or (2) strncmp(`expected` , `actual` , `length` ) != 0.

例:

    1
    2
    3
    4
    5
    6
    cut_assert_not_equal_substring("abc", "ABC", 3);       -> Pass
    cut_assert_not_equal_substring("abc", NULL, 3);        -> Pass
    cut_assert_not_equal_substring(NULL, "abc", 3);        -> Pass
    cut_assert_not_equal_substring("abcdef", "abcDEF", 3); -> Fail
    cut_assert_not_equal_substring(NULL, NULL, 0);         -> Fail
    cut_assert_not_equal_substring(NULL, NULL, 3);         -> Fail

#### Parameters

expected | 期待する文字列。 |
actual | 実際の文字列の値。 |
length | compared string length. |
... | 追加メッセージ（省略可能）。詳細は`cut_message()`を見てください。 |

Since: 1.0.7

### cut_assert_equal_memory ()

    void
    cut_assert_equal_memory (const void *expected,
                             size_t expected_size,
                             const void *actual,
                             size_t actual_size,
                             ...);

Passes if `expected_size` == `actual_size` and memcmp(`expected` , `actual` , `expected_size` ) == 0.

#### Parameters

expected | 期待するデータ。 |
expected_size | a size of `expected` . |
actual | 実際のデータ。 |
actual_size | a size of `actual` . |
... | 追加メッセージ（省略可能）。詳細は`cut_message()`を見てください。 |

### cut_assert_not_equal_memory ()

    void
    cut_assert_not_equal_memory (const void *expected,
                                 size_t expected_size,
                                 const void *actual,
                                 size_t actual_size,
                                 ...);

Passes if `expected_size` != `actual_size` or memcmp(`expected` , `actual` , `expected_size` ) != 0.

#### Parameters

expected | 期待するデータ。 |
expected_size | a size of `expected` . |
actual | 実際のデータ。 |
actual_size | a size of `actual` . |
... | 追加メッセージ（省略可能）。詳細は`cut_message()`を見てください。 |

Since: 1.0.7

### cut_assert_equal_string_array ()

    void
    cut_assert_equal_string_array (char **expected,
                                   char **actual,
                                   ...);

`expected`と`actual`がどちらとも`NULL`ではなく、どちらも同じ内容の文字列(`strcmp()` == 0)を持つときにパスします。

#### Parameters

expected | 期待する文字列の配列。配列は`NULL`終端。 |
actual | 実際の文字列の配列。配列は`NULL`終端。 |
... | 追加メッセージ（省略可能）。詳細は`cut_message()`を見てください。 |

### cut_assert_equal_string_array_with_free ()

    void
    cut_assert_equal_string_array_with_free
                                   (char **expected,
                                    char **actual,
                                    ...);

`expected`と`actual`がどちらとも`NULL`ではなく、どちらも同じ内容の文字列(`strcmp()` == 0)を持つときにパスします。

#### Parameters

expected | 期待する文字列の配列。配列は`NULL`終端。 |
actual | 実際の文字列の配列。配列は`NULL`終端。（チェック後に開放される） |
... | 追加メッセージ（省略可能）。詳細は`cut_message()`を見てください。 |

Since: 0.9

### cut_assert_operator()

    #define             cut_assert_operator(lhs, operator, rhs, ...)

Passes if (`lhs` `operator` `rhs` ) is TRUE.

例:

    1
    cut_assert_operator(1, <, 2) -> (1 < 2);

#### Parameters

lhs | 左辺値。 |
operator | 二項演算子。 |
rhs | 右辺値。 |
... | 追加メッセージ（省略可能）。詳細は`cut_message()`を見てください。 |

### cut_assert_operator_int()

    #define             cut_assert_operator_int(lhs, operator, rhs, ...)

Passes if (`lhs` `operator` `rhs` ) is TRUE.

例:

    1
    cut_assert_operator_int(1, <, 2) -> (1 < 2);

#### Parameters

lhs | 左辺の整数の値。 |
operator | 二項演算子。 |
rhs | 右辺の整数の値。 |
... | 追加メッセージ（省略可能）。詳細は`cut_message()`を見てください。 |

### cut_assert_operator_uint()

    #define             cut_assert_operator_uint(lhs, operator, rhs, ...)

Passes if (`lhs` `operator` `rhs` ) is TRUE.

例:

    1
    cut_assert_operator_uint(1, <, 2) -> (1 < 2);

#### Parameters

lhs | 左辺の符号無し整数の値。 |
operator | 二項演算子。 |
rhs | 右辺の符号無し整数の値。 |
... | 追加メッセージ（省略可能）。詳細は`cut_message()`を見てください。 |

Since: 1.0.5

### cut_assert_operator_size()

    #define             cut_assert_operator_size(lhs, operator, rhs, ...)

Passes if (`lhs` `operator` `rhs` ) is TRUE.

例:

    1
    cut_assert_operator_size(1, <, 2) -> (1 < 2);

#### Parameters

lhs | 左辺のsize_tの値。 |
operator | 二項演算子。 |
rhs | 右辺のsize_tの値。 |
... | 追加メッセージ（省略可能）。詳細は`cut_message()`を見てください。 |

Since: 1.0.5

### cut_assert_operator_double()

    #define             cut_assert_operator_double(lhs, operator, rhs, ...)

Passes if (`lhs` `operator` `rhs` ) is TRUE.

例:

    1
    cut_assert_operator_double(1.1, <, 2.2) -> (1.1 < 2.2);

#### Parameters

lhs | 左辺の浮動小数点値。 |
operator | 二項演算子。 |
rhs | 右辺の浮動小数点値。 |
... | 追加メッセージ（省略可能）。詳細は`cut_message()`を見てください。 |

Since: 1.0.5

### cut_assert_equal()

    #define             cut_assert_equal(function, expected, actual, ...)

Passes if `function` (`expected` , `actual` ) returns `CUT_TRUE`.

例:

    1
    cut_assert_equal(!strcmp, "abc", "abc"); -> Pass

#### Parameters

function | a function that compares `actual` with `expected` . |
expected | 期待値。 |
actual | 実測値。 |
... | 追加メッセージ（省略可能）。詳細は`cut_message()`を見てください。 |

### cut_assert_errno ()

    void
    cut_assert_errno (...);

errnoが0だとパスします。

例:

    1
    2
    count = write(stdout, buffer, strlen(buffer));
    cut_assert_errno("Failed to write");            -> Pass when count != -1

#### Parameters

... | 追加メッセージ（省略可能）。詳細は`cut_message()`を見てください。 |

Since: 0.8

### cut_assert_file_exist ()

    void
    cut_assert_file_exist (const char *path,
                           ...);

`cut_assert_file_exist` has been deprecated since version 1.0.2 and should not be used in newly-written code.

Use `cut_assert_path_exist()` instead.

`path`が存在するときにパスします。普通のファイルかもしれませんし、そうでないかもしれません。（例えばシンボリックリンクやディレクトリなど）

例:

    1
    2
    cut_assert_file_exist("/tmp");             -> Pass on many environment
    cut_assert_file_exist("/non-existent");    -> Fail

#### Parameters

path | テストするパス。 |
... | 追加メッセージ（省略可能）。詳細は`cut_message()`を見てください。 |

Since: 0.9

### cut_assert_path_exist ()

    void
    cut_assert_path_exist (const char *path,
                           ...);

`cut_assert_path_exist` has been deprecated since version 1.1.5 and should not be used in newly-written code.

Use `cut_assert_exist_path()` instead.

`path`が存在するときにパスします。普通のファイルかもしれませんし、そうでないかもしれません。（例えばシンボリックリンクやディレクトリなど）

例:

    1
    2
    cut_assert_path_exist("/tmp");             -> Pass on many environment
    cut_assert_path_exist("/non-existent");    -> Fail

#### Parameters

path | テストするパス。 |
... | 追加メッセージ（省略可能）。詳細は`cut_message()`を見てください。 |

Since: 1.0.2

### cut_assert_exist_path ()

    void
    cut_assert_exist_path (const char *path,
                           ...);

`path`が存在するときにパスします。普通のファイルかもしれませんし、そうでないかもしれません。（例えばシンボリックリンクやディレクトリなど）

例:

    1
    2
    cut_assert_exist_path("/tmp");             -> Pass on many environment
    cut_assert_exist_path("/non-existent");    -> Fail

#### Parameters

path | テストするパス。 |
... | 追加メッセージ（省略可能）。詳細は`cut_message()`を見てください。 |

Since: 1.1.5

### cut_assert_path_not_exist ()

    void
    cut_assert_path_not_exist (const char *path,
                               ...);

`cut_assert_path_not_exist` has been deprecated since version 1.1.5 and should not be used in newly-written code.

Use `cut_assert_not_exist_path()` instead.

`path`が存在しないとパスします。

例:

    1
    2
    cut_assert_path_not_exist("/non-existent");    -> Pass on many environment
    cut_assert_path_not_exist("/tmp");             -> Fail

#### Parameters

path | テストするパス。 |
... | 追加メッセージ（省略可能）。詳細は`cut_message()`を見てください。 |

Since: 1.0.2

### cut_assert_not_exist_path ()

    void
    cut_assert_not_exist_path (const char *path,
                               ...);

`path`が存在しないとパスします。

例:

    1
    2
    cut_assert_not_exist_path("/non-existent");    -> Pass on many environment
    cut_assert_not_exist_path("/tmp");             -> Fail

#### Parameters

path | テストするパス。 |
... | 追加メッセージ（省略可能）。詳細は`cut_message()`を見てください。 |

Since: 1.1.5

### cut_assert_match ()

    void
    cut_assert_match (const char *pattern,
                      const char *actual,
                      ...);

Passes if `pattern` matches `string` .

例:

    1
    2
    cut_assert_match("^abc", "abc");            -> Pass
    cut_assert_match("^abc", " abc");           -> Fail

#### Parameters

pattern | 正規表現。 |
actual | マッチされる文字列。 |
... | 追加メッセージ（省略可能）。詳細は`cut_message()`を見てください。 |

Since: 1.0

### cut_assert_match_with_free ()

    void
    cut_assert_match_with_free (const char *pattern,
                                const char *actual,
                                ...);

Passes if `pattern` matches `string` . See `cut_assert_match()` for detail.

#### Parameters

pattern | 正規表現。（文字列で指定） |
actual | マッチされる文字列。（チェック後に開放される） |
... | 追加メッセージ（省略可能）。詳細は`cut_message()`を見てください。 |

Since: 1.0

### cut_assert_equal_pointer ()

    void
    cut_assert_equal_pointer (const void *expected,
                              const void *actual,
                              ...);

Passes if `expected` == `actual` .

#### Parameters

expected | 期待するポインタ。 |
actual | 実際のポインタ。 |
... | 追加メッセージ（省略可能）。詳細は`cut_message()`を見てください。 |

Since: 1.0

### cut_assert_equal_fixture_data_string ()

    void
    cut_assert_equal_fixture_data_string (const char *expected,
                                          const void *path,
                                          ...);

Passes if `expected` == cut_get_fixture_data_string(`path` , ...).

#### Parameters

expected | 期待する文字列。 |
path | フィクスチャデータのパスの最初の要素。 |
... | パスの残りの要素。`NULL`終端。 |

Since: 1.0.2

### cut_assert_equal_sockaddr()

    #define             cut_assert_equal_sockaddr(expected, actual, ...)

Passes if `expected` == `actual` .

この検証はCUT_DISABLE_SOCKET_SUPPORTを定義すると無効にできます。

#### Parameters

expected | 期待するソケットアドレス。 |
actual | 実際のソケットアドレス。 |
... | 追加メッセージ（省略可能）。詳細は`cut_message()`を見てください。 |

Since: 1.1.1

### cut_assert_equal_file_raw()

    #define             cut_assert_equal_file_raw(expected, actual, ...)

Passes if the content of `expected` == the content of `actual` .

#### Parameters

expected | パス。 |
actual | パス。 |
... | 追加メッセージ（省略可能）。詳細は`cut_message()`を見てください。 |

Since: 1.1.4

### cut_assert_not_equal_file_raw()

    #define             cut_assert_not_equal_file_raw(expected, actual, ...)

Passes if the content of `expected` != the content of `actual` .

#### Parameters

expected | パス。 |
actual | パス。 |
... | 追加メッセージ（省略可能）。詳細は`cut_message()`を見てください。 |

Since: 1.1.4

### cut_error ()

    void
    cut_error (const char *format,
               ...);

メッセージ付きでエラーを発生させます。

#### Parameters

format | 整形文字列。`printf()`のドキュメントを見てください。 |
... | 整形文字列に挿入されるパラメータ。 |

### cut_error_errno ()

    void
    cut_error_errno (...);

例:

    1
    2
    3
    4
    5
    6
    7
    void
    setup (void)
    {
        mkdir("tmp", 0700);
        cut_error_errno("Failed to make tmp directory");
          -> Error when tmp directory isn't made successfully.
    }

#### Parameters

... | 追加メッセージ（省略可能）。詳細は`cut_message()`を見てください。 |

Since: 1.0.2

### cut_fail ()

    void
    cut_fail (const char *format,
              ...);

メッセージ付きでテストを失敗させます。

#### Parameters

format | 整形文字列。`printf()`のドキュメントを見てください。 |
... | 整形文字列に挿入されるパラメータ。 |

### cut_pend ()

    void
    cut_pend (const char *format,
              ...);

メッセージ付きでこのテストが未解決であると印を付けます。テストはここで中断します。

#### Parameters

format | 整形文字列。`printf()`のドキュメントを見てください。 |
... | 整形文字列に挿入されるパラメータ。 |

### cut_pending ()

    void
    cut_pending (const char *format,
                 ...);

`cut_pending` has been deprecated since version 0.4 and should not be used in newly-written code.

Use `cut_pend()` instead.

メッセージ付きでこのテストが未解決であると印を付けます。テストはここで中断します。

#### Parameters

format | 整形文字列。`printf()`のドキュメントを見てください。 |
... | 整形文字列に挿入されるパラメータ。 |

### cut_notify ()

    void
    cut_notify (const char *format,
                ...);

通知用のメッセージを残します。テストは続行します。

#### Parameters

format | 整形文字列。`printf()`のドキュメントを見てください。 |
... | 整形文字列に挿入されるパラメータ。 |

### cut_omit ()

    void
    cut_omit (const char *format,
              ...);

このテストを省略します。

例:

    1
    2
    if (version < 2.0)
      cut_omit("Require >= 2.0");

#### Parameters

format | 整形文字列。`printf()`のドキュメントを見てください。 |
... | 整形文字列に挿入されるパラメータ。 |

Since: 0.8

### cut_return ()

    void
    cut_return (void);

このテストを終了します。

例:

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    static void
    sub_xxx (void)
    {
      some_assertions();
      if (no_need_more_test)
        cut_return();
      some_assertions();
    }

    void
    test_xxx (void)
    {
       some_assertions();
       cut_trace(sub_xxx());
       some_assertions();
    }

Since: 1.0.6

## Types and Values