summaryrefslogtreecommitdiff
path: root/float.c
blob: e93c3c98e488f9fc722af65b2c5930c58089b65f (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
#include <float.h>
#include "test.h"

void test_float_h(void)
{
	testing_header("float.h");

	test_min(DBL_DIG, 10);
	test_defined(DBL_MANT_DIG);
	test_min(DBL_MAX_10_EXP, 37);
	test_defined(DBL_MAX_EXP);
	test_min(DBL_MIN_10_EXP, -37);
	test_defined(DBL_MIN_EXP);

	test_min(FLT_DIG, 6);
	test_defined(FLT_MANT_DIG);
	test_min(FLT_MAX_10_EXP, 37);
	test_defined(FLT_MAX_EXP);
	test_min(FLT_MIN_10_EXP, -37);
	test_defined(FLT_MIN_EXP);
	test_min(FLT_RADIX, 2);
	
	test_min(LDBL_DIG, 6);
	test_defined(LDBL_MANT_DIG);
	test_min(LDBL_MAX_10_EXP, 37);
	test_defined(LDBL_MAX_EXP);
	test_min(LDBL_MIN_10_EXP, -37);
	test_defined(LDBL_MIN_EXP);

	test_min(DBL_MAX, 1e+37);
	test_min(FLT_MAX, 1e+37);
	test_min(LDBL_MAX, 1e+37);

	test_max(DBL_EPSILON, 1e-9);
	test_max(DBL_MIN, 1e-37);
	test_max(FLT_EPSILON, 1e-5);
	test_max(FLT_MIN, 1e-37);
	test_max(LDBL_EPSILON, 1e-9);
	test_max(LDBL_MIN, 1e-37);

	#if defined __STDC_VERSION__ && 201112L <= __STDC_VERSION__
	test_min(DBL_DECIMAL_DIG, 10);
	test_min(FLT_DECIMAL_DIG, 6);
	test_min(LDBL_DECIMAL_DIG, 6);
	#endif

	testing_end();
}