You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Description
There are already very useful macros for asserting:
a specified type of exception is thrown (REQUIRE_THROWS_AS and CHECK_THROWS_AS)
an exception is thrown with specified message (REQUIRE_THROWS_WITH and CHECK_THROWS_WITH)
What I miss is the combination of the two, that is macros for asserting an exception of specified type is thrown with a specified message, for example:
REQUIRE_THROWS_AS_WITH( expression, exception type, string or string matcher )
CHECK_THROWS_AS_WITH(expression, exception type, string or string matcher )
I know I can create my custom matcher and use REQUIRE_THROWS_MATCHES or CHECK_THROWS_MATCHES macros, but I find that much more cumbersome.
The text was updated successfully, but these errors were encountered:
Only works for exceptions that publicly derive from `std::exception`
and the matching is done exactly, including case and whitespace.
Closescatchorg#1649Closescatchorg#1728
# Please enter the commit message for your changes. Lines starting
# with '#' will be ignored, and an empty message aborts the commit.
# On branch master
# Your branch is up-to-date with 'origin/master'.
#
# Changes to be committed:
# modified: ../docs/matchers.md
# modified: ../include/internal/catch_capture_matchers.h
# modified: ../projects/CMakeLists.txt
# modified: ../projects/SelfTest/Baselines/compact.sw.approved.txt
# modified: ../projects/SelfTest/Baselines/console.std.approved.txt
# modified: ../projects/SelfTest/Baselines/console.sw.approved.txt
# modified: ../projects/SelfTest/Baselines/junit.sw.approved.txt
# modified: ../projects/SelfTest/Baselines/xml.sw.approved.txt
# modified: ../projects/SelfTest/UsageTests/Matchers.tests.cpp
#
# Untracked files:
# ./
# ../clang-full/
# ../clang-test/
# ../clang10-build/
# ../coverage-build/
# ../gcc-build/
# ../gcc-full/
# ../include/internal/catch_matchers_exception.cpp
# ../include/internal/catch_matchers_exception.hpp
# ../misc-build/
# ../msvc-sln/
# ../notes.txt
# ../test-install/
#
Description
There are already very useful macros for asserting:
REQUIRE_THROWS_AS
andCHECK_THROWS_AS
)REQUIRE_THROWS_WITH
andCHECK_THROWS_WITH
)What I miss is the combination of the two, that is macros for asserting an exception of specified type is thrown with a specified message, for example:
I know I can create my custom matcher and use
REQUIRE_THROWS_MATCHES
orCHECK_THROWS_MATCHES
macros, but I find that much more cumbersome.The text was updated successfully, but these errors were encountered: