| 
									
										
										
										
											2011-01-11 09:13:31 +00:00
										 |  |  | /*
 | 
					
						
							|  |  |  |  *  Created by Phil on 07/01/2011. | 
					
						
							|  |  |  |  *  Copyright 2011 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_CAPTURE_H_INCLUDED
 | 
					
						
							|  |  |  | #define TWOBLUECUBES_CATCH_INTERFACES_CAPTURE_H_INCLUDED
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | #include <string>
 | 
					
						
							|  |  |  | #include "catch_result_type.h"
 | 
					
						
							| 
									
										
										
										
											2012-09-28 19:21:14 +01:00
										 |  |  | #include "catch_common.h"
 | 
					
						
							| 
									
										
										
										
											2011-01-11 09:13:31 +00:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2012-05-15 08:02:36 +01:00
										 |  |  | namespace Catch { | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2012-11-22 19:17:20 +00:00
										 |  |  |     class TestCase; | 
					
						
							| 
									
										
										
										
											2012-10-16 08:27:21 +01:00
										 |  |  |     class AssertionResult; | 
					
						
							| 
									
										
										
										
											2012-10-17 08:14:22 +01:00
										 |  |  |     struct AssertionInfo; | 
					
						
							| 
									
										
										
										
											2012-11-30 08:58:46 +00:00
										 |  |  |     struct SectionInfo; | 
					
						
							| 
									
										
										
										
											2015-09-26 18:12:21 -07:00
										 |  |  |     struct SectionEndInfo; | 
					
						
							| 
									
										
										
										
											2013-06-28 17:09:57 +01:00
										 |  |  |     struct MessageInfo; | 
					
						
							| 
									
										
										
										
											2013-02-02 19:58:04 +00:00
										 |  |  |     class ScopedMessageBuilder; | 
					
						
							| 
									
										
										
										
											2013-12-03 18:52:41 +00:00
										 |  |  |     struct Counts; | 
					
						
							| 
									
										
										
										
											2011-01-11 09:13:31 +00:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2012-05-15 08:02:36 +01:00
										 |  |  |     struct IResultCapture { | 
					
						
							| 
									
										
										
										
											2013-07-03 19:14:59 +01:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2012-08-13 07:46:10 +01:00
										 |  |  |         virtual ~IResultCapture(); | 
					
						
							| 
									
										
										
										
											2013-07-03 19:14:59 +01:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2013-02-02 19:58:04 +00:00
										 |  |  |         virtual void assertionEnded( AssertionResult const& result ) = 0; | 
					
						
							| 
									
										
										
										
											2012-11-30 08:58:46 +00:00
										 |  |  |         virtual bool sectionStarted(    SectionInfo const& sectionInfo, | 
					
						
							| 
									
										
										
										
											2012-05-15 08:02:36 +01:00
										 |  |  |                                         Counts& assertions ) = 0; | 
					
						
							| 
									
										
										
										
											2015-09-26 18:12:21 -07:00
										 |  |  |         virtual void sectionEnded( SectionEndInfo const& endInfo ) = 0; | 
					
						
							|  |  |  |         virtual void sectionEndedEarly( SectionEndInfo const& endInfo ) = 0; | 
					
						
							| 
									
										
										
										
											2013-06-28 17:09:57 +01:00
										 |  |  |         virtual void pushScopedMessage( MessageInfo const& message ) = 0; | 
					
						
							|  |  |  |         virtual void popScopedMessage( MessageInfo const& message ) = 0; | 
					
						
							| 
									
										
										
										
											2013-07-03 19:14:59 +01:00
										 |  |  | 
 | 
					
						
							|  |  |  |         virtual std::string getCurrentTestName() const = 0; | 
					
						
							|  |  |  |         virtual const AssertionResult* getLastResult() const = 0; | 
					
						
							| 
									
										
										
										
											2014-08-22 08:07:39 +01:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2014-08-22 19:33:28 +01:00
										 |  |  |         virtual void handleFatalErrorCondition( std::string const& message ) = 0; | 
					
						
							| 
									
										
										
										
											2011-01-11 09:13:31 +00:00
										 |  |  |     }; | 
					
						
							| 
									
										
										
										
											2014-05-28 18:53:01 +01:00
										 |  |  | 
 | 
					
						
							|  |  |  |     IResultCapture& getResultCapture(); | 
					
						
							| 
									
										
										
										
											2011-01-11 09:13:31 +00:00
										 |  |  | } | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | #endif // TWOBLUECUBES_CATCH_INTERFACES_CAPTURE_H_INCLUDED
 |