{"action":"created","issue":{"url":"https://api.github.com/repos/philsquared/Catch/issues/220","labels_url":"https://api.github.com/repos/philsquared/Catch/issues/220/labels{/name}","comments_url":"https://api.github.com/repos/philsquared/Catch/issues/220/comments","events_url":"https://api.github.com/repos/philsquared/Catch/issues/220/events","html_url":"https://github.com/philsquared/Catch/issues/220","id":22984906,"number":220,"title":"Dealing with failure: assertions/terminate","user":{"login":"gnzlbg","id":904614,"avatar_url":"https://avatars.githubusercontent.com/u/904614?v=3","gravatar_id":"","url":"https://api.github.com/users/gnzlbg","html_url":"https://github.com/gnzlbg","followers_url":"https://api.github.com/users/gnzlbg/followers","following_url":"https://api.github.com/users/gnzlbg/following{/other_user}","gists_url":"https://api.github.com/users/gnzlbg/gists{/gist_id}","starred_url":"https://api.github.com/users/gnzlbg/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/gnzlbg/subscriptions","organizations_url":"https://api.github.com/users/gnzlbg/orgs","repos_url":"https://api.github.com/users/gnzlbg/repos","events_url":"https://api.github.com/users/gnzlbg/events{/privacy}","received_events_url":"https://api.github.com/users/gnzlbg/received_events","type":"User","site_admin":false},"labels":[],"state":"open","locked":false,"assignee":null,"milestone":null,"comments":12,"created_at":"2013-11-20T11:10:08Z","updated_at":"2015-07-27T18:13:37Z","closed_at":null,"body":"Right now there aren't any _documented_ ways of checking that my program fails correctly when no exceptions are involved. In particular, calls to `std::terminate` and to `assert()` (in debug mode only, i.e. when `NDEBUG` is not defined). \r\n\r\nIn google-test one can do:  EXPECT_DEATH/EXPECT_DEBUG_DEATH to test for failure in general and failure in debug mode only as well as to test that the correct failure message is printed (although for asserts I always write a regexp that catches everything).\r\n\r\nNote: a workaround is to define your ASSERT macro to throw an exception and _hope_ that no-one catches it. But this is just a workaround. \r\n"},"comment":{"url":"https://api.github.com/repos/philsquared/Catch/issues/comments/125292707","html_url":"https://github.com/philsquared/Catch/issues/220#issuecomment-125292707","issue_url":"https://api.github.com/repos/philsquared/Catch/issues/220","id":125292707,"user":{"login":"martinmoene","id":1999290,"avatar_url":"https://avatars.githubusercontent.com/u/1999290?v=3","gravatar_id":"","url":"https://api.github.com/users/martinmoene","html_url":"https://github.com/martinmoene","followers_url":"https://api.github.com/users/martinmoene/followers","following_url":"https://api.github.com/users/martinmoene/following{/other_user}","gists_url":"https://api.github.com/users/martinmoene/gists{/gist_id}","starred_url":"https://api.github.com/users/martinmoene/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/martinmoene/subscriptions","organizations_url":"https://api.github.com/users/martinmoene/orgs","repos_url":"https://api.github.com/users/martinmoene/repos","events_url":"https://api.github.com/users/martinmoene/events{/privacy}","received_events_url":"https://api.github.com/users/martinmoene/received_events","type":"User","site_admin":false},"created_at":"2015-07-27T18:13:37Z","updated_at":"2015-07-27T18:13:37Z","body":"[gnzlbg's comment on reddit](https://www.reddit.com/r/cpp/comments/3eozv4/a_game_of_tag_catch_c_automated_test_cases_in/cthl2jl)."}}