| 
									
										
										
										
											2012-06-05 20:50:47 +01:00
										 |  |  | /*
 | 
					
						
							|  |  |  |  *  Created by Phil on 05/06/2012. | 
					
						
							|  |  |  |  *  Copyright 2012 Two Blue Cubes Ltd. All rights reserved. | 
					
						
							|  |  |  |  * | 
					
						
							|  |  |  |  *  Distributed under the Boost Software License, Version 1.0. (See accompanying | 
					
						
							|  |  |  |  *  file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
 | 
					
						
							|  |  |  |  */ | 
					
						
							|  |  |  | #ifndef TWOBLUECUBES_CATCH_INTERFACES_CONFIG_H_INCLUDED
 | 
					
						
							|  |  |  | #define TWOBLUECUBES_CATCH_INTERFACES_CONFIG_H_INCLUDED
 | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2013-05-28 18:39:32 +01:00
										 |  |  | #include <iostream>
 | 
					
						
							|  |  |  | #include <string>
 | 
					
						
							| 
									
										
										
										
											2014-04-15 18:44:37 +01:00
										 |  |  | #include <vector>
 | 
					
						
							| 
									
										
										
										
											2013-05-28 18:39:32 +01:00
										 |  |  | 
 | 
					
						
							|  |  |  | #include "catch_ptr.hpp"
 | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2012-06-05 20:50:47 +01:00
										 |  |  | namespace Catch { | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2013-08-07 18:56:35 +01:00
										 |  |  |     struct Verbosity { enum Level { | 
					
						
							|  |  |  |         NoOutput = 0, | 
					
						
							|  |  |  |         Quiet, | 
					
						
							|  |  |  |         Normal | 
					
						
							|  |  |  |     }; }; | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |     struct WarnAbout { enum What { | 
					
						
							|  |  |  |         Nothing = 0x00, | 
					
						
							|  |  |  |         NoAssertions = 0x01 | 
					
						
							|  |  |  |     }; }; | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |     struct ShowDurations { enum OrNot { | 
					
						
							|  |  |  |         DefaultForReporter, | 
					
						
							|  |  |  |         Always, | 
					
						
							|  |  |  |         Never | 
					
						
							|  |  |  |     }; }; | 
					
						
							| 
									
										
										
										
											2014-09-15 18:39:31 +01:00
										 |  |  |     struct RunTests { enum InWhatOrder { | 
					
						
							|  |  |  |         InDeclarationOrder, | 
					
						
							|  |  |  |         InLexicographicalOrder, | 
					
						
							|  |  |  |         InRandomOrder | 
					
						
							|  |  |  |     }; }; | 
					
						
							| 
									
										
										
										
											2016-02-24 18:51:01 +00:00
										 |  |  |     struct UseColour { enum YesOrNo { | 
					
						
							|  |  |  |         Auto, | 
					
						
							|  |  |  |         Yes, | 
					
						
							|  |  |  |         No | 
					
						
							|  |  |  |     }; };     | 
					
						
							| 
									
										
										
										
											2013-08-07 18:56:35 +01:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2014-05-16 18:24:07 +01:00
										 |  |  |     class TestSpec; | 
					
						
							| 
									
										
										
										
											2014-04-15 18:44:37 +01:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2013-05-28 18:39:32 +01:00
										 |  |  |     struct IConfig : IShared { | 
					
						
							| 
									
										
										
										
											2013-07-03 19:14:59 +01:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2012-08-13 07:46:10 +01:00
										 |  |  |         virtual ~IConfig(); | 
					
						
							| 
									
										
										
										
											2013-07-03 19:14:59 +01:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2012-06-05 20:50:47 +01:00
										 |  |  |         virtual bool allowThrows() const = 0; | 
					
						
							| 
									
										
										
										
											2013-05-28 18:39:32 +01:00
										 |  |  |         virtual std::ostream& stream() const = 0; | 
					
						
							|  |  |  |         virtual std::string name() const = 0; | 
					
						
							|  |  |  |         virtual bool includeSuccessfulResults() const = 0; | 
					
						
							| 
									
										
										
										
											2013-05-28 18:51:53 +01:00
										 |  |  |         virtual bool shouldDebugBreak() const = 0; | 
					
						
							| 
									
										
										
										
											2013-05-28 18:39:32 +01:00
										 |  |  |         virtual bool warnAboutMissingAssertions() const = 0; | 
					
						
							| 
									
										
										
										
											2013-05-28 18:51:53 +01:00
										 |  |  |         virtual int abortAfter() const = 0; | 
					
						
							| 
									
										
										
										
											2014-04-22 18:23:42 +01:00
										 |  |  |         virtual bool showInvisibles() const = 0; | 
					
						
							| 
									
										
										
										
											2013-08-07 18:56:35 +01:00
										 |  |  |         virtual ShowDurations::OrNot showDurations() const = 0; | 
					
						
							| 
									
										
										
										
											2014-05-16 18:24:07 +01:00
										 |  |  |         virtual TestSpec const& testSpec() const = 0; | 
					
						
							| 
									
										
										
										
											2014-09-15 18:39:31 +01:00
										 |  |  |         virtual RunTests::InWhatOrder runOrder() const = 0; | 
					
						
							|  |  |  |         virtual unsigned int rngSeed() const = 0; | 
					
						
							| 
									
										
										
										
											2016-02-24 18:51:01 +00:00
										 |  |  |         virtual UseColour::YesOrNo useColour() const = 0; | 
					
						
							| 
									
										
										
										
											2012-06-05 20:50:47 +01:00
										 |  |  |     }; | 
					
						
							|  |  |  | } | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | #endif // TWOBLUECUBES_CATCH_INTERFACES_CONFIG_H_INCLUDED
 |