4
4
* SPDX-License-Identifier: LGPL-2.1-or-later
5
5
*/
6
6
7
- #include < float.h>
8
-
9
7
/* *************************************************************************************
10
8
* TEST CODE
11
9
**************************************************************************************/
@@ -17,37 +15,37 @@ TEST_CASE ("Testing parseFloat(LookaheadMode lookahead = SKIP_ALL, char ignore =
17
15
WHEN (" Only a integer (no comma) is contained in stream" )
18
16
{
19
17
mock << " 12" ;
20
- REQUIRE (mock.parseFloat () == 12 .0f );
18
+ uassert_float_equal (mock.parseFloat (), 12 .0f );
21
19
}
22
20
WHEN (" A positive float is contained in stream" )
23
21
{
24
22
mock << " 12.34" ;
25
- REQUIRE (mock.parseFloat () == 12 .34f );
23
+ uassert_float_equal (mock.parseFloat (), 12 .34f );
26
24
}
27
25
WHEN (" A negative float is contained in stream" )
28
26
{
29
27
mock << " -12.34" ;
30
- REQUIRE (mock.parseFloat () == -12 .34f );
28
+ uassert_float_equal (mock.parseFloat (), -12 .34f );
31
29
}
32
30
WHEN (" A float is prepended by digits" )
33
31
{
34
32
mock << " abcdef12.34" ;
35
- REQUIRE (mock.parseFloat () == 12 .34f );
33
+ uassert_float_equal (mock.parseFloat (), 12 .34f );
36
34
}
37
35
WHEN (" The integer is prepended by whitespace chars" )
38
36
{
39
37
mock << " \r\n\t 12.34" ;
40
- REQUIRE (mock.parseFloat () == 12 .34f );
38
+ uassert_float_equal (mock.parseFloat (), 12 .34f );
41
39
}
42
40
WHEN (" A float is provided with too many digits after the decimal point" )
43
41
{
44
42
mock << " 3.1415926535897932384626433832795028841971693993751058209749445923078164062862089986280348253421170679821480865132823066470938446095505822317253594081284811174502841027019385211055596446229489549303819644288109756659334461284756482337867831652712019091456485669234603486104543266482133936072602491412737245870064" ;
45
- REQUIRE (mock.parseFloat () == Approx ( 3 .141592654f ) );
43
+ uassert_float_equal (mock.parseFloat (), 3 .141592654f );
46
44
}
47
45
WHEN (" A float is larger than LONG_MAX" )
48
46
{
49
47
mock << " 602200000000000000000000.00" ;
50
- REQUIRE (mock.parseFloat () == Approx ( 6 .022e23f) );
48
+ uassert_float_equal (mock.parseFloat (), 6 .022e23f);
51
49
}
52
50
}
53
51
@@ -58,19 +56,19 @@ TEST_CASE ("Testing parseFloat(LookaheadMode lookahead = SKIP_NONE, char ignore
58
56
WHEN (" Only a integer is contained in stream" )
59
57
{
60
58
mock << " 12.34" ;
61
- REQUIRE (mock.parseFloat (SKIP_NONE) == 12 .34f );
59
+ uassert_float_equal (mock.parseFloat (SKIP_NONE), 12 .34f );
62
60
REQUIRE (mock.readString () == String (" " ));
63
61
}
64
62
WHEN (" The integer is prepended by digits" )
65
63
{
66
64
mock << " abcdef12.34" ;
67
- REQUIRE (mock.parseFloat (SKIP_NONE) == 0 );
65
+ uassert_float_equal (mock.parseFloat (SKIP_NONE), 0 );
68
66
REQUIRE (mock.readString () == String (" abcdef12.34" ));
69
67
}
70
68
WHEN (" The integer is prepended by whitespace chars" )
71
69
{
72
70
mock << " \r\n\t 12.34" ;
73
- REQUIRE (mock.parseFloat (SKIP_NONE) == 0 );
71
+ uassert_float_equal (mock.parseFloat (SKIP_NONE), 0 );
74
72
REQUIRE (mock.readString () == String (" \r\n\t 12.34" ));
75
73
}
76
74
}
@@ -82,7 +80,7 @@ TEST_CASE ("Testing parseFloat(LookaheadMode lookahead = SKIP_WHITESPACE, char i
82
80
WHEN (" The integer is prepended by whitespace chars" )
83
81
{
84
82
mock << " \r\n\t 12.34" ;
85
- REQUIRE (mock.parseFloat (SKIP_WHITESPACE) == 12 .34f );
83
+ uassert_float_equal (mock.parseFloat (SKIP_WHITESPACE), 12 .34f );
86
84
REQUIRE (mock.readString () == String (" " ));
87
85
}
88
86
}
@@ -95,19 +93,19 @@ TEST_CASE ("Testing parseFloat(LookaheadMode lookahead = SKIP_ALL, char ignore =
95
93
WHEN (" A float is contained in stream" )
96
94
{
97
95
mock << " 12.34" ;
98
- REQUIRE (mock.parseFloat (SKIP_ALL, ' a' ) == 12 .34f );
96
+ uassert_float_equal (mock.parseFloat (SKIP_ALL, ' a' ), 12 .34f );
99
97
REQUIRE (mock.readString () == String (" " ));
100
98
}
101
99
WHEN (" The float contains only ignore char values" )
102
100
{
103
101
mock << " 12a.3a4a" ;
104
- REQUIRE (mock.parseFloat (SKIP_ALL, ' a' ) == 12 .34f );
102
+ uassert_float_equal (mock.parseFloat (SKIP_ALL, ' a' ), 12 .34f );
105
103
REQUIRE (mock.readString () == String (" " ));
106
104
}
107
105
WHEN (" The integer contains other than ignore chars" )
108
106
{
109
107
mock << " 1bed234" ;
110
- REQUIRE (mock.parseFloat (SKIP_ALL, ' a' ) == 1 .0f );
108
+ uassert_float_equal (mock.parseFloat (SKIP_ALL, ' a' ), 1 .0f );
111
109
REQUIRE (mock.readString () == String (" bed234" ));
112
110
}
113
111
}
0 commit comments