## C++サポート付きの検証 C++サポート付きの検証 — C++サポート付きであなたのプログラムが期待通りに動作しているかを検証します。 |

## 概要

    #define             cppcut_assert_equal                 (expected,
                                                             actual,
                                                             ...)
    #define             cppcut_assert_not_equal             (expected,
                                                             actual,
                                                             ...)
    #define             cppcut_assert_null                  (object,
                                                             ...)
    #define             cppcut_assert_not_null              (object,
                                                             ...)
    #define             cppcut_assert_operator              (lhs,
                                                             operator,
                                                             rhs,
                                                             ...)

## 説明

## 詳細

### cppcut_assert_equal()

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

この検証はテンプレートを利用しています。任意のオブジェクトのリファレンスを`expected`と`actual`に渡せます。

`expected` == `actual`が成り立つときパスします。

例:

    cppcut_assert_equal(3, 1 + 2);
    cppcut_assert_equal(3, 1 + 2, cppcut_message("easy expression"));
    cppcut_assert_equal(3, 1 + 2, cppcut_message() << "easy expression"));

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

1.0.9から

### cppcut_assert_not_equal()

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

この検証はテンプレートを利用しています。任意のオブジェクトのリファレンスを`expected`と`actual`に渡せます。

`expected` != `actual`が成り立つときパスします。

例:

    cppcut_assert_not_equal(3, 3 + 1);
    cppcut_assert_not_equal(3, 3 + 1, cppcut_message("easy expression"));
    cppcut_assert_not_equal(3, 3 + 1, cppcut_message() << "easy expression"));

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

1.2.0から

### cppcut_assert_null()

    #define             cppcut_assert_null(object, ...)

この検証はテンプレートを利用しています。任意のオブジェクトのポインタを`object`に渡せます。

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

例:

    std::string message("hello");
    std::string *not_null_string = &message;
    std::string *null_string = NULL;
    cppcut_assert_null(not_null_string); // fail
    cppcut_assert_null(null_string);     // pass

`object` : | チェックするオブジェクト。
`...` : | 追加メッセージ（省略可能）。詳細は`cppcut_message()`を見てください。

1.2.0から

### cppcut_assert_not_null()

    #define             cppcut_assert_not_null(object, ...)

この検証はテンプレートを利用しています。任意のオブジェクトのポインタを`object`に渡せます。

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

例:

    std::string message("hello");
    std::string *not_null_string = &message;
    std::string *null_string = NULL;
    cppcut_assert_not_null(not_null_string); // pass
    cppcut_assert_not_null(null_string);     // fail

`object` : | チェックするオブジェクト。
`...` : | 追加メッセージ（省略可能）。詳細は`cppcut_message()`を見てください。

1.2.0から

### cppcut_assert_operator()

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

この検証はテンプレートを利用しています。任意のオブジェクトを`lhs`と`rhs`に渡せます。

(`lhs` `operator` `rhs`)が真のときにパスします。

例:

    cppcut_assert_operator(1, <, 2); // パス
    cppcut_assert_operator(1, >, 2); // 失敗

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

1.2.0から