1
0
mirror of https://github.com/catchorg/Catch2.git synced 2025-05-02 13:13:52 +00:00
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
2017-10-31 15:43:42 +01:00
2017-10-31 15:17:21 +01:00
2017-10-31 14:49:00 +01:00
2017-10-31 15:17:21 +01:00
2017-10-31 15:17:21 +01:00
2017-02-21 08:52:08 +00:00
2017-03-01 16:47:04 +00:00
2017-03-01 16:47:04 +00:00
2017-03-01 17:00:33 +00:00
2017-10-31 15:17:21 +01:00
2017-08-17 07:45:50 +01:00
2017-10-31 15:17:21 +01:00
2017-10-31 15:17:21 +01:00

catch logo

Github Releases Build Status Build status

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:

More

Description
Catch2 testing framework
Readme 68 MiB