Reporting an exception in Boost::test

Using the boost::test framework, is there a way to detect if an exception (of some type) has been thrown from a function?

Upvotes: 6

Views: 1250

Answers (1)

Adam Bowen
Adam Bowen

Reputation: 11230

Are you looking to test that a function correctly throws under some circumstances? If so

BOOST_CHECK_THROW( function(), exception_type );

will do it. You can use

BOOST_CHECK_EXCEPTION( function(), exception_type, predicate )

to call an arbitrary predicate on the exception when it's caught and

BOOST_CHECK_NO_THROW( function() )

to ensure a function doesn't throw.

See: http://www.boost.org/doc/libs/1_44_0/libs/test/doc/html/utf/testing-tools/reference.html

Upvotes: 7

Related Questions