Prüfung auf Durchsetzung im Boost-Test-Framework

Ich benutze das Boost-Test-Framework, um meinen C ++ - Code in Einheiten zu testen, und habe mich gefragt, ob es möglich ist, zu testen, ob eine Funktion dies bestätigt. Ja, klingt ein bisschen seltsam, aber ertrage es mit mir! Viele meiner Funktionen überprüfen die Eingabeparameter bei der Eingabe und geben an, ob sie ungültig sind. Es wäre hilfreich, dies zu testen. Beispielsweise

void MyFunction(int param)
{
    assert(param > 0); // param cannot be less than 1
    ...
}

Ich möchte in der Lage sein, so etwas zu tun:

BOOST_CHECK_ASSERT(MyFunction(0), true);
BOOST_CHECK_ASSERT(MyFunction(-1), true);
BOOST_CHECK_ASSERT(MyFunction(1), false);
...

Sie können mit dem Boost-Test prüfen, ob Ausnahmen ausgelöst wurden. Ich habe mich also gefragt, ob es auch Assert-Magie gibt ...

Antworten auf die Frage(12)

Ihre Antwort auf die Frage