Catch C++ テスト フレームワークを使用しています。私は別のテストコードファイルを持っています。
#define CATCH_CONFIG_MAIN
#include "catch.hpp"
#include "my_own_headers.h"
TEST_CASE( "test of thisnthat", "[thisnthat]" )
{
SomeStuff a(42);
...
コード定義を変更するために使用できるビルド時に Catch が定義するシンボルはありますか?
例: いくつかの特別なコンストラクターを持つ必要がある構造体があるとしますが、特定のテスト ケースのためのテスト目的のみです。テスト コードをビルドするときにこのコンストラクターを使用できるようにしたいのですが、通常のビルドではこの関数を有効にしないでください。
// someheader.h
struct SomeStuff
{
int someValue;
#if BUILD_IS_TEST_MODE
SomeStuff( int a ), someValue(a) {}
#endif
};
使える記号は?
https://github.com/philsquared/Catch/blob/master/docs/configuration.mdを調べましたが、関連するものが見つかりませんでした。