mirror of
https://github.com/catchorg/Catch2.git
synced 2025-08-03 22:05:39 +02:00
Move tests from projects/ to tests/
This commit is contained in:
31
tests/ExtraTests/X02-DisabledMacros.cpp
Normal file
31
tests/ExtraTests/X02-DisabledMacros.cpp
Normal file
@@ -0,0 +1,31 @@
|
||||
// X02-DisabledMacros.cpp
|
||||
// Test that CATCH_CONFIG_DISABLE turns off TEST_CASE autoregistration
|
||||
// and expressions in assertion macros are not run.
|
||||
|
||||
#define CATCH_CONFIG_MAIN
|
||||
#include <catch2/catch.hpp>
|
||||
|
||||
|
||||
// CATCH_CONFIG_DISABLE also prevents reporter registration.
|
||||
// We need to manually register at least one reporter for our tests
|
||||
static Catch::ReporterRegistrar<Catch::ConsoleReporter> temporary( "console" );
|
||||
|
||||
#include <iostream>
|
||||
|
||||
struct foo {
|
||||
foo(){
|
||||
REQUIRE_NOTHROW( print() );
|
||||
}
|
||||
void print() const {
|
||||
std::cout << "This should not happen\n";
|
||||
}
|
||||
};
|
||||
|
||||
// Construct foo, but `foo::print` should not be run
|
||||
foo f;
|
||||
|
||||
// This test should not be run, because it won't be registered
|
||||
TEST_CASE( "Disabled Macros" ) {
|
||||
std::cout << "This should not happen\n";
|
||||
FAIL();
|
||||
}
|
Reference in New Issue
Block a user