mirror of
				https://github.com/catchorg/Catch2.git
				synced 2025-10-31 20:27:11 +01:00 
			
		
		
		
	
			
				
					
						
					
					00af677577973758b3b35e1c94ab4142c45c3f67
				
			
			
		
	 Pfiffikus
		
	
	00af677577
	
	
	Approx rework: default scale == 0, epsilon applies to Approx::value
			Pfiffikus
		
	
	00af677577
	
	
	Approx rework: default scale == 0, epsilon applies to Approx::value
		
			
			Also adds check to Approx::epsilon that the new epsilon has a valid (ie one between 0 and 1) Based on http://realtimecollisiondetection.net/blog/?p=89 https://randomascii.wordpress.com/2012/02/25/comparing-floating-point-numbers-2012-edition/ https://docs.oracle.com/cd/E19957-01/806-3568/ncg_goldberg.html https://en.wikipedia.org/wiki/Approximation_error#Formal_Definition The given epsilon should refer to the target value, otherwise the result would be unexpected, e.g. 101.02 == Approx(100).epsilon(0.01) is true. The default scale should be invisible, thus, e.g. 101.01 == Approx(100).epsilon(0.01) gets false. Finally even 101.000001 == Approx(100).epsilon(0.01) is false
The latest version of the single header can be downloaded directly using this link
What's the Catch?
Catch stands for C++ Automated Test Cases in Headers and is a multi-paradigm test framework for C++. which also supports Objective-C and, maybe, C. It is primarily distributed as a single header file, although certain extensions may require additional headers.
How to use it
This documentation comprises these three parts:
- Why do we need yet another C++ Test Framework?
- Tutorial - getting started
- Reference section - all the details
More
- Issues and bugs can be raised on the Issue tracker on GitHub
- For discussion or questions please use the dedicated Google Groups forum
- See who else is using Catch
Description
				A modern, C++-native, test framework for unit-tests, TDD and BDD - using C++14, C++17 and later (C++11 support is in v2.x branch, and C++03 on the Catch1.x branch)
						
						
						
						
						
							
								 Readme
							
						
						
						
						
							
							
							 80 MiB
						
					
					Languages
				
				
								
								
									C++
								
								90%
							
						
							
								
								
									CMake
								
								5.4%
							
						
							
								
								
									Python
								
								3.4%
							
						
							
								
								
									Meson
								
								0.7%
							
						
							
								
								
									Starlark
								
								0.3%
							
						
					