| 
									
										
										
										
											2018-03-04 09:16:51 -08:00
										 |  |  | // Formatting library for C++ - test main function.
 | 
					
						
							|  |  |  | //
 | 
					
						
							|  |  |  | // Copyright (c) 2012 - present, Victor Zverovich
 | 
					
						
							|  |  |  | // All rights reserved.
 | 
					
						
							|  |  |  | //
 | 
					
						
							|  |  |  | // For the license information refer to format.h.
 | 
					
						
							| 
									
										
										
										
											2014-05-02 06:33:21 -07:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2015-10-18 09:16:10 -07:00
										 |  |  | #include <cstdlib>
 | 
					
						
							| 
									
										
										
										
											2018-06-06 16:57:59 +03:00
										 |  |  | #include "gtest.h"
 | 
					
						
							| 
									
										
										
										
											2014-05-02 06:33:21 -07:00
										 |  |  | 
 | 
					
						
							|  |  |  | #ifdef _WIN32
 | 
					
						
							| 
									
										
										
										
											2019-01-12 18:27:38 -08:00
										 |  |  | #  include <windows.h>
 | 
					
						
							| 
									
										
										
										
											2015-03-16 18:05:45 -07:00
										 |  |  | #endif
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | #ifdef _MSC_VER
 | 
					
						
							| 
									
										
										
										
											2019-01-12 18:27:38 -08:00
										 |  |  | #  include <crtdbg.h>
 | 
					
						
							| 
									
										
										
										
											2015-03-16 18:05:45 -07:00
										 |  |  | #else
 | 
					
						
							| 
									
										
										
										
											2019-01-12 18:27:38 -08:00
										 |  |  | #  define _CrtSetReportFile(a, b)
 | 
					
						
							|  |  |  | #  define _CrtSetReportMode(a, b)
 | 
					
						
							| 
									
										
										
										
											2014-05-02 06:33:21 -07:00
										 |  |  | #endif
 | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2019-01-12 18:27:38 -08:00
										 |  |  | int main(int argc, char** argv) { | 
					
						
							| 
									
										
										
										
											2014-08-23 10:25:21 -07:00
										 |  |  | #ifdef _WIN32
 | 
					
						
							| 
									
										
										
										
											2014-07-10 11:05:26 -07:00
										 |  |  |   // Don't display any error dialogs. This also suppresses message boxes
 | 
					
						
							|  |  |  |   // on assertion failures in MinGW where _set_error_mode/CrtSetReportMode
 | 
					
						
							|  |  |  |   // doesn't help.
 | 
					
						
							|  |  |  |   SetErrorMode(SEM_FAILCRITICALERRORS | SEM_NOGPFAULTERRORBOX | | 
					
						
							| 
									
										
										
										
											2019-01-12 18:27:38 -08:00
										 |  |  |                SEM_NOOPENFILEERRORBOX); | 
					
						
							| 
									
										
										
										
											2015-03-16 18:05:45 -07:00
										 |  |  | #endif
 | 
					
						
							| 
									
										
										
										
											2014-05-02 06:33:21 -07:00
										 |  |  |   // Disable message boxes on assertion failures.
 | 
					
						
							|  |  |  |   _CrtSetReportMode(_CRT_ERROR, _CRTDBG_MODE_FILE | _CRTDBG_MODE_DEBUG); | 
					
						
							|  |  |  |   _CrtSetReportFile(_CRT_ERROR, _CRTDBG_FILE_STDERR); | 
					
						
							|  |  |  |   _CrtSetReportMode(_CRT_ASSERT, _CRTDBG_MODE_FILE | _CRTDBG_MODE_DEBUG); | 
					
						
							|  |  |  |   _CrtSetReportFile(_CRT_ASSERT, _CRTDBG_FILE_STDERR); | 
					
						
							| 
									
										
										
										
											2015-10-18 09:16:10 -07:00
										 |  |  |   try { | 
					
						
							| 
									
										
										
										
											2015-10-19 08:39:31 -07:00
										 |  |  |     testing::InitGoogleTest(&argc, argv); | 
					
						
							| 
									
										
										
										
											2015-10-18 09:16:10 -07:00
										 |  |  |     return RUN_ALL_TESTS(); | 
					
						
							|  |  |  |   } catch (...) { | 
					
						
							|  |  |  |     // Catch all exceptions to make Coverity happy.
 | 
					
						
							|  |  |  |   } | 
					
						
							|  |  |  |   return EXIT_FAILURE; | 
					
						
							| 
									
										
										
										
											2014-05-02 06:33:21 -07:00
										 |  |  | } |