現在ユニットテストに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
こんなのは見つけたけど、結局あまり良い解決策は見つけられなかった。
My Daily Programming Life...
0 コメント:
Post a Comment