2010-11-09 3 views
5

Mit dem boost::test Framework gibt es eine Möglichkeit zu erkennen, ob eine Ausnahme (irgendeines Typs) von einer Funktion ausgelöst wurde?Eine Exception in Boost melden :: test

+0

möglich Duplikat [? Wie geben Sie, dass eine Ausnahme zu erwarten sollte Boost.Test mit] (http://stackoverflow.com/questions/172854/how-do-you-specify -das-eine-Ausnahme-sollte-erwartet-mit-Boost-Test sein) – Ferruccio

Antwort

6

Möchten Sie testen, ob eine Funktion unter bestimmten Umständen korrekt ausgelöst wird? Wenn ja

BOOST_CHECK_THROW(function(), exception_type); 

es tun wird. Sie können

BOOST_CHECK_EXCEPTION(function(), exception_type, predicate) 

verwenden ein beliebiges Prädikat auf die Ausnahme zu rufen, wenn sie gefangen und

BOOST_CHECK_NO_THROW(function()) 

eine Funktion werfen nicht zu gewährleisten.

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

+0

das ist, was ich gesucht habe. –