From 644a95d3aa13aa2c92490572dedf66f6edfba6bd Mon Sep 17 00:00:00 2001 From: philsquared Date: Sat, 2 Jun 2012 09:43:13 -0700 Subject: [PATCH] Updated Supplying your own main() (markdown) --- Supplying-your-own-main().md | 22 +++++++++++----------- 1 file changed, 11 insertions(+), 11 deletions(-) diff --git a/Supplying-your-own-main().md b/Supplying-your-own-main().md index 4ba2d60..e29af54 100644 --- a/Supplying-your-own-main().md +++ b/Supplying-your-own-main().md @@ -1,18 +1,18 @@ -The easiest way to use Catch is to let it supply main() for you and handle configuring itself from the command line. +The easiest way to use CATCH is to let it supply main() for you and handle configuring itself from the command line. This is achieved by #defining CATCH_CONFIG_MAIN before the #include for catch.hpp in exactly one source file. Sometimes, though, you'd like to write your own version of main(). You can do this by #defining CATCH_CONFIG_RUNNER instead. -Catch then supports this in three ways: +CATCH then supports this in three ways: -1. Forward onto Catch's main but write code before and/ or after for global setup/ cleanup purposes. Catch will still configure itself from the command line as before. -2. As above but your can programatically set parts, or all, of Catch's configuration. +1. Forward onto CATCH's main but write code before and/ or after for global setup/ cleanup purposes. CATCH will still configure itself from the command line as before. +2. As above but your can programatically set parts, or all, of CATCH's configuration. 3. Set configuration and run specific tests directly from your own code. Let's look at each of these in a little more detail. -# Wrapping Catch's main() +# Wrapping CATCH's main() ```c++ #define CATCH_CONFIG_RUNNER @@ -30,7 +30,7 @@ int main (int argc, char* const argv[]) } ``` -# Configuring Catch +# Configuring CATCH ```c++ #define CATCH_CONFIG_RUNNER @@ -41,12 +41,12 @@ int main (int argc, char* const argv[]) // Create a default config object Catch::Config config; - Configure Catch to send all its output to a stringstream + // Configure CATCH to send all its output to a stringstream std::ostringstream oss; config.setStreamBuf( oss.rdbuf() ); - // Forward on to Catch's main, but using our custom config. - // Catch will still parse the command line and set the config + // Forward on to CATCH's main, but using our custom config. + // CATCH will still parse the command line and set the config // object up further int result = Catch::Main( argc, argv, config ); @@ -67,10 +67,10 @@ int main (int argc, char* const argv[]) // Create a default config object Catch::Config config; - // Configure Catch to run all tests starting with "mytests" + // Configure CATCH to run all tests starting with "mytests" config.addTestSpec( "mytests/*" ); - // Forward on to Catch's main using our custom config. + // Forward on to CATCH's main using our custom config. // This overload doesn't take command line arguments // So the config object must be fully set up return Catch::Main( config );