CHECK
from glogを使用するいくつかのコードをテストしていますが、このチェックが特定のシナリオで失敗することをテストしたいと思います。私のコードは次のようになります:
void MyClass::foo() {
// stuff...
// It's actually important that the binary gets aborted if this flag is false
CHECK(some_flag) << "flag must be true";
// more stuff...
}
私はいくつかの調査をgtest
行い、これをテストする方法を調べました。EXPECT_FATAL_FALIURE
、EXPECT_NONFATAL_FAILURE
、を見つけましたが、HAS_FATAL_FAILURE
それらの使い方がわかりませんでした。に変更すれば正しく機能すると確信していますが、テスト以外のファイルにテストの依存関係を導入しています...厄介CHECK(some_flag)
です。EXPECT_TRUE(some_flag)
EXPECT_FATAL_FAILURE
gtest
アボートシグナル(または発生するものCHECK
)をキャッチしてそれを期待する方法はありますか?