これらのマクロを使用すると、テスト ケースおよびスタブのソースでテスト ケースの実行を検証できます。

マクロ定義
CPPTEST_FAIL(message)

カスタム メッセージとともに無条件で失敗します。

CPPTEST_ASSERT(condition)

true に評価される条件を検証します。

CPPTEST_ASSERT_BITS(mask, expected, actual)CPPTEST_ASSERT_BITS_MESSAGE と同じですが、汎用的なアサーション メッセージを使用します。
CPPTEST_ASSERT_BITS_MESSAGE(message, mask, expected, actual)

expected 値と actual 値のマスクされたビット (usingmask) が等しいことを検証し、失敗したときにはカスタム メッセージを出力します (mask、expected、actual は整数型)。expected および actual で mask の上位ビットだけが比較されます。

CPPTEST_ASSERT_BITS_HIGH(mask, actual)CPPTEST_ASSERT_BITS_HIGH と同じですが、汎用的なアサーション メッセージを使用します。
CPPTEST_ASSERT_BITS_HIGH_MESSAGE(message, mask, actual)

actual 値のマスクされたビット (usingmask) が high であることを検証し、失敗したときにはカスタム メッセージを出力します (mask、actual は整数型)。mask の上位ビットだけが actual で検査されます。

CPPTEST_ASSERT_BITS_LOW(mask, actual)CPPTEST_ASSERT_BITS_LOW と同じですが、汎用的なアサーション メッセージを使用します。
CPPTEST_ASSERT_BITS_LOW_MESSAGE(message, mask, actual)actual 値のマスクされたビット (usingmask) が low であることを検証し、失敗したときにはカスタム メッセージを出力します (mask、actual は整数型)。mask の上位ビットだけが actual で検査されます。
CPPTEST_ASSERT_BIT_HIGH_MESSAGE(message, n, actual)

actual の n 番目のビットが high であることを検証し、失敗したときにはカスタム メッセージを出力します (n 、actual は整数型)。

CPPTEST_ASSERT_BIT_HIGH(n, actual)CPPTEST_ASSERT_BIT_HIGH と同じですが、汎用的なアサーション メッセージを使用します。
CPPTEST_ASSERT_BIT_LOW_MESSAGE(message, n, actual)

actual の n 番目のビットが low であることを検証し、失敗したときにはカスタム メッセージを出力します (n 、actual は整数型)。

CPPTEST_ASSERT_BIT_LOW(n, actual)CPPTEST_ASSERT_BIT_LOW と同じですが、汎用的なアサーション メッセージを使用します。
CPPTEST_ASSERT_MESSAGE(message, condition)

true に評価される条件を検証します。失敗したときにはカスタム メッセージを出力します。

CPPTEST_ASSERT_EQUAL(expected, actual)2 つの値が等しいことを検証します。
CPPTEST_ASSERT_EQUAL_MESSAGE(message, expected, actual)2 つの値が等しいことを検証します。失敗したときにはカスタム メッセージを出力します。
CPPTEST_ASSERT_BOOL_EQUAL(expected, actual)

2 つのブール値が等しいことを検証します。失敗したときには expected と actual の両方の値を出力します。失敗したアサーションは、品質タスク ビューから C++test によって自動的に承認できます。

CPPTEST_ASSERT_BOOL_EQUAL_MESSAGE(message, expected, actual)

2 つのブール値が等しいことを検証します。失敗したときにはカスタム メッセージを出力します。

CPPTEST_ASSERT_INTEGER_EQUAL(expected, actual)

2 つの整数値が等しいことを検証します。失敗したときには expected と actual の両方の値を出力します。失敗したアサーションは、品質タスク ビューから C++test によって自動的に承認できます。

CPPTEST_ASSERT_INTEGER_EQUAL_MESSAGE(message, expected, actual)

2 つの整数値が等しいことを検証します失敗したときにはカスタム メッセージを出力します。

CPPTEST_ASSERT_INTEGER_EQUAL_DELTA(expected, actual, delta)

2 つの整数値が等しいことを検証します ('delta' の精度まで)

CPPTEST_ASSERT_INTEGER_EQUAL_DELTA _MESSAGE(message, expected, actual, delta)

2 つの整数値が等しいことを検証します ('delta' の精度まで)失敗したときにはカスタム メッセージを出力します。

CPPTEST_ASSERT_INTEGER_ARRAY_EQUAL(expected, actual, size)

2 つの整数値の配列が等しいことを検証します配列の先頭から 'size' までの要素が比較されます。

CPPTEST_ASSERT_INTEGER_ARRAY_EQUAL _DELTA(expected, actual, size, delta)

2 つの整数値の配列が等しいことを検証します ('delta' の精度まで)配列の先頭から 'size' までの要素が比較されます。

CPPTEST_ASSERT_UINTEGER_EQUAL(expect ed, actual)

2 つの符号なし整数値が等しいことを検証します。失敗したときには expected と actual の両方の値を出力します。失敗したアサーションは、品質タスク ビューから C++test によって自動的に承認できます。

CPPTEST_ASSERT_UINTEGER_EQUAL_MESSAGE(message, expected, actual)

2 つの符号なし整数値が等しいことを検証します。失敗したときにはカスタム メッセージを出力します。

CPPTEST_ASSERT_UINTEGER_EQUAL_DELTA(expected, actual, delta)

2 つの符号なし整数値が等しいことを検証します ('delta' の精度まで)


CPPTEST_ASSERT_UINTEGER_EQUAL_DELTA_MESSAGE(message, expected, actual, delta)

2 つの符号なし整数値が等しいことを検証します ('delta' の精度まで)失敗したときにはカスタム メッセージを出力します。

CPPTEST_ASSERT_UINTEGER_ARRAY_EQUAL(expected, actual, size)

2 つの符号なし整数値の配列が等しいことを検証します配列の先頭から 'size' までの要素が比較されます。

CPPTEST_ASSERT_UINTEGER_ARRAY_EQUAL_DELTA(expected, actual, size, delta)

2 つの符号なし整数値の配列が等しいことを検証します ('delta' の精度まで)。配列の先頭から 'size' までの要素が比較されます。

CPPTEST_ASSERT_FLOAT_EQUAL_DELTA(expected, actual, delta)

2 つの浮動小数点値が等しいことを検証します ('delta' の精度まで)

CPPTEST_ASSERT_FLOAT_EQUAL_DELTA_MESSAGE(message, expected, actual, delta)

 2 つの浮動小数点値が等しいことを検証します ('delta' の精度まで)失敗したときにはカスタム メッセージを出力します。

CPPTEST_ASSERT_FLOAT_ARRAY_EQUAL_DELTA(expected, actual, size, delta)

 2 つの浮動小数点値の配列が等しいことを検証します ('delta' の精度まで)

CPPTEST_ASSERT_CSTR_EQUAL(expected, actual)

2 つの C 形式の文字列が等しいことを検証します。失敗したときには expected と actual の両方の値を出力します。失敗したアサーションは、品質タスク ビューから C++test によって自動的に承認できます。

CPPTEST_ASSERT_CSTR_EQUAL_MESSAGE (message, expected, actual)

2 つの C 形式の文字列が等しいことを検証します。失敗したときにはカスタム メッセージを出力します。

CPPTEST_ASSERT_CSTR_ARRAY_EQUAL(expected, actual, size)

2 つの C 形式の文字列の配列が等しいことを検証します。配列の先頭から 'size' までの要素が比較されます。

CPPTEST_ASSERT_CSTR_N_EQUAL(expected, actual, max_size)

2 つの C 形式の文字列が等しいことを検証します。文字列の先頭から 'max_size' までの文字が比較されます。失敗したときには expected と actual の両方の値を出力します。失敗したアサーションは、品質タスク ビューから C++test によって自動的に承認できます。

CPPTEST_ASSERT_CSTR_N_EQUAL_MESSAGE(message, expected, actual, max_size)

2 つの C 形式の文字列が等しいことを検証します。文字列の先頭から 'max_size' までの文字が比較されます。失敗したときにはカスタム メッセージを出力します。

CPPTEST_ASSERT_MEM_BUFFER_EQUAL(expected, actual, size)

2 つのデータ バッファーが等しいことを検証します。'size' バイトが比較されます。失敗したときには expected と actual の両方の値を出力します。失敗したアサーションは、品質タスク ビューから C++test によって自動的に承認できます。

CPPTEST_ASSERT_MEM_BUFFER_EQUAL_MESSAGE(message, expected, actual, size)

2 つのデータ バッファーが等しいことを検証します。'size' バイトが比較されます。失敗したときにはカスタム メッセージを出力します。

CPPTEST_ASSERT_PTR_EQUAL(expected, actual)

2 つのポインター値が等しいことを検証します失敗したときには expected と actual の両方の値を出力します。失敗したアサーションは、品質タスク ビューから C++test によって自動的に承認できます。

CPPTEST_ASSERT_PTR_EQUAL_MESSAGE(message, expected, actual)

2 つのポインター値が等しいことを検証します失敗したときにはカスタム メッセージを出力します。

CPPTEST_ASSERT_PTR_ARRAY_EQUAL(expected, actual, size)

2 つのポインターの配列が等しいことを検証します配列の先頭から 'size' までの要素が比較されます。

CPPTEST_ASSERT_WCSTR_EQUAL(expected, actual)

2 つの C 形式のワイド文字列が等しいことを検証します。失敗したときには expected と actual の両方の値を出力します。失敗したアサーションは、品質タスク ビューから C++test によって自動的に承認できます。

CPPTEST_ASSERT_WCSTR_EQUAL_MESSAGE(message, expected, actual)

2 つの C 形式のワイド文字列が等しいことを検証します。失敗したときにはカスタム メッセージを出力します。

CPPTEST_ASSERT_ENUM_EQUAL(scoped_enum_name, expected, actual)

2 つの汎整数値が等しいことを検証します。失敗したときには expected と actual の両方の値を列挙子として出力します。汎整数値が 指定された enum の列挙子にマッピングできない場合、エラーがレポートされます。詳細は「列挙値の扱い」を参照してください。

CPPTEST_ASSERT_ENUM_EQUAL_MESSAGE(scoped_enum_name, msg, expected, actual)

2 つの汎整数値が等しいことを検証します。上の CPPTEST_ASSERT_ENUM_EQUAL に似ていますが、失敗したときにはカスタム メッセージを出力します。詳細は「列挙値の扱い」を参照してください。

CPPTEST_ASSERT_THROW(expression, ExceptionType)

指定された expression が指定された型の例外をスローすることを検証します。

CPPTEST_ASSERT_THROW_MESSAGE(message, expression, ExceptionType)

指定された expression が指定された型の例外をスローすることを検証します。失敗したときにはカスタム メッセージを出力します。

CPPTEST_ASSERT_NO_THROW(expression)

指定された expression が例外をスローしないことを検証します。

CPPTEST_ASSERT_NO_THROW_MESSAGE(message, expression)

指定された expression が例外をスローしないことを検証します。失敗したときにはカスタム メッセージを出力します。

CPPTEST_ASSERT_EXTERNAL(program, param1, param2, param3)

外部アプリケーションを使用して値を検証します。最初のパラメーターは、実行する実行可能ファイルを指定します。プログラムは 3 つのパラメーターを受け取ります (param1、param2、param3)。ゼロ以外の値が返された場合、アサーションは失敗し、プログラムはの標準出力が失敗メッセージとして使用されます。

CPPTEST_ASSERT_EXTERNAL_MESSAGE(message, program, param1, param2, param3)

外部アプリケーションを使用して値を検証します。最初のパラメーターは、実行する実行可能ファイルを指定します。プログラムは 3 つのパラメーターを受け取ります (param1、param2、param3)。ゼロ以外の値が返された場合、アサーションは失敗し、カスタム メッセージが失敗メッセージとして使用されます。

CPPTEST_ASSERT_MEMORY_LEAKS()

現在のテスト ケース実行中に割り当てられた動的メモリ ブロックが、このマクロ呼び出しより前に解放されていることを検証します。

注意: このマクロを使用するには 、テスト コンフィギュレーションでメモリ監視機能が有効化されている必要があります (「実行時エラー検出」を参照)。

CPPTEST_ASSERT_EQUAL_FMT(expected, actual, format)

2 つの値が等しいことを検証します。アサーションとともに expected / actual 値をカスタム書式でレポートします。

アサーションは C 言語標準の snprintf() 関数を使用して、expected / actual 値をカスタム パターン (<format> 文字列) を使用した文字列表現に変換します。

追加の注意事項:

  • C 言語標準の snprintf() 関数が C++test のハーネスで利用できる必要があります。
  • 書式文字列 (<format>) は C 言語標準の printf() に準拠している必要があります。
  • <expected>、<actual>、<delta> 値は、printf() が許容/期待する実際の型に従って指定されている必要があります。たとえば、浮動小数点値の書式文字列が "%f" の場合、有効な浮動小数点値を指定する必要があります (たとえば 0 ではなく 0.0)。
  • 結果値の文字列にはバッファー サイズが定義されています。actual 値の文字列サイズがバッファー サイズを超える場合、実行時エラーがレポートされます。
  • 出力バッファーのデフォルトのサイズは 24 バイトに設定されています。バッファーのサイズは、プロジェクト プロパティの [C++test] > [ビルド設定] > [コンパイラ オプション] に次の値を追加することでカスタマイズできます: -DCPPTEST_FMT_BUFFER_SIZE=<new buffer size in bytes>.
CPPTEST_ASSERT_EQUAL_DELTA_FMT(expected, actual, delta, format
  • No labels