次のマクロまたは関数を使用すると、テスト ケース実行時に stdin/stdout/stderr をリダイレクトできます。
マクロ | 説明 |
---|
CppTest_StreamRedirect* CppTest_RedirectStdInput(const char* value);
| 指定の文字列の値を入力ストリームに設定します。 |
CppTest_StreamRedirect* CppTest_RedirectNStdInput(const char* value, unsigned int size)
| 指定の文字列の先頭 size 文字の値を入力ストリームに設定します。 |
CppTest_StreamRedirect* CppTest_RedirectStdOutput()
| 現在実行されているテスト ケースの stdout ストリームをリダイレクトします。返された CppTest_StreamRedirect オブジェクトをテスト ケースの事後条件セクションで使用して、ストリームの内容を検証できます。以前の stdout ストリームの値は、現在のテスト ケースの実行が終了するときに自動的に復元されます。 |
CppTest_StreamRedirect* CppTest_RedirectStdError()
| 現在実行されているテスト ケースの stderr ストリームをリダイレクトします。返された CppTest_StreamRedirect オブジェクトをテスト ケースの事後条件セクションで使用して、ストリームの内容を検証できます。以前の stderr ストリームの値は、現在のテスト ケースの実行が終了するときに自動的に復元されます。 |
CppTest_StreamCompare(CppTest_StreamRedirect* redirect, const char* value)
| リダイレクトされた stdout または stderr ストリームの内容を検証するために使用します。value がストリーム値に一致した場合は 0 を返し、value がストリーム値より小さい場合は負の整数を返し、value がストリーム値よりも大きい場合は正の整数を返します。 |
CppTest_StreamNCompare(CppTest_StreamRedirect* redirect, const char* value, unsigned int size)
| リダイレクトされた stdout または stderr ストリームの内容を検証するために使用します。value がストリーム値に一致した場合は 0 を返し、value がストリーム値より小さい場合は負の整数を返し、value がストリーム値よりも大きい場合は正の整数を返します。ストリームの先頭 size 文字だけが比較されます。 |
int CppTest_StreamSearch(CppTest_StreamRedirect* redirect, const char* pattern)
| リダイレクトされた stdout または stderr ストリームの内容を検証するために使用します。リダイレクトされたストリームを指定された patternで検索します。パターンが見つかった場合はインデックスを返し、見つからなかった場合は -1 を返します。 |
int CppTest_StreamNSearch(CppTest_StreamRedirect* redirect, const char* pattern, unsigned int size)
| リダイレクトされた stdout または stderr ストリームの内容を検証するために使用します。リダイレクトされたストリームを指定された patternの先頭 size 文字で検索します。パターンが見つかった場合はインデックスを返し、見つからなかった場合は -1 を返します。 |
char* CppTest_StreamReadData(CppTest_StreamRedirect* redirect, unsigned int* len)
| リダイレクトされたストリームから読み込んだデータを格納したバッファーへのポインターを返します。バッファーのサイズは len パラメーターに返されます (関数に null 以外を渡した場合)。バッファーは cpptestMalloc() 関数を使用してアロケートされます。返されたバッファーは cpptestFree() 関数を使用して開放する必要があります。 |
void CppTest_StreamReset(CppTest_StreamRedirect* redirect)
| C++test の内部的なストリームをデフォルトの状態にリセットします。リダイレクト されたストリームは、テスト ケースの実行が終了するときに自動的にリセットされます。 |