My Daily Programming Life...

CppUnitでstd::exceptionのテストはできない?

現在ユニットテストにCppUnitを使っている。最近使い始めて、今日直面した問題。
あるメソッドがstd::exceptionを投げることを確認するテストをしたかった。
CPPUNIT_ASSERT_THROW( obj.foo() , std::exception );
が・・・
コンパイルエラー : error C2312(Visual Studio 2005)が出てしまう。
問題は、上記マクロがstd::expressionを用いて実装されていること。
std::expeptionのcatch部分が二つになってしまう。

http://www.nabble.com/CPPUNIT_ASSERT_THROW-double-handling-of-STL-std::exception-tc9497496.html
こんなのは見つけたけど、結局あまり良い解決策は見つけられなかった。

0 コメント:

Post a Comment

feedSubscribe to my feed