mirror of
				https://github.com/catchorg/Catch2.git
				synced 2025-11-04 14:09:33 +01:00 
			
		
		
		
	
							
								
								
									
										17
									
								
								projects/ExtraTests/X12-CustomDebugBreakMacro.cpp
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										17
									
								
								projects/ExtraTests/X12-CustomDebugBreakMacro.cpp
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,17 @@
 | 
			
		||||
// X12-CustomDebugBreakMacro.cpp
 | 
			
		||||
// Test that user-defined `CATCH_BREAK_INTO_DEBUGGER` is respected and used.
 | 
			
		||||
 | 
			
		||||
#include <iostream>
 | 
			
		||||
 | 
			
		||||
void custom_debug_break() {
 | 
			
		||||
    std::cerr << "Pretty please, break into debugger\n";
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
#define CATCH_BREAK_INTO_DEBUGGER() custom_debug_break()
 | 
			
		||||
 | 
			
		||||
#define CATCH_CONFIG_MAIN
 | 
			
		||||
#include <catch2/catch.hpp>
 | 
			
		||||
 | 
			
		||||
TEST_CASE("Failing test that breaks into debugger", "[macros]") {
 | 
			
		||||
    REQUIRE(1 == 2);
 | 
			
		||||
}
 | 
			
		||||
@@ -142,6 +142,14 @@ if (MSVC)
 | 
			
		||||
    add_test(NAME WindowsHeader COMMAND WindowsHeader -r compact)
 | 
			
		||||
endif()
 | 
			
		||||
 | 
			
		||||
add_executable(DebugBreakMacros ${TESTS_DIR}/X12-CustomDebugBreakMacro.cpp)
 | 
			
		||||
add_test(NAME DebugBreakMacros COMMAND DebugBreakMacros --break)
 | 
			
		||||
set_tests_properties(
 | 
			
		||||
    DebugBreakMacros
 | 
			
		||||
  PROPERTIES
 | 
			
		||||
    PASS_REGULAR_EXPRESSION "Pretty please, break into debugger"
 | 
			
		||||
)
 | 
			
		||||
 | 
			
		||||
set( EXTRA_TEST_BINARIES
 | 
			
		||||
    PrefixedMacros
 | 
			
		||||
    DisabledMacros
 | 
			
		||||
@@ -150,6 +158,7 @@ set( EXTRA_TEST_BINARIES
 | 
			
		||||
    FallbackStringifier
 | 
			
		||||
    DisableStringification
 | 
			
		||||
    BenchmarkingMacros
 | 
			
		||||
    DebugBreakMacros
 | 
			
		||||
)
 | 
			
		||||
 | 
			
		||||
# Shared config
 | 
			
		||||
 
 | 
			
		||||
		Reference in New Issue
	
	Block a user