Mercurial > gnulib
annotate tests/test-modf.c @ 40186:8964917f9574
autoupdate
author | Karl Berry <karl@freefriends.org> |
---|---|
date | Mon, 18 Feb 2019 08:02:49 -0800 |
parents | b06060465f09 |
children |
rev | line source |
---|---|
12801 | 1 /* Test of modf() function. |
40057
b06060465f09
maint: Run 'make update-copyright'
Paul Eggert <eggert@cs.ucla.edu>
parents:
19484
diff
changeset
|
2 Copyright (C) 2010-2019 Free Software Foundation, Inc. |
12801 | 3 |
4 This program is free software: you can redistribute it and/or modify | |
5 it under the terms of the GNU General Public License as published by | |
6 the Free Software Foundation; either version 3 of the License, or | |
7 (at your option) any later version. | |
8 | |
9 This program is distributed in the hope that it will be useful, | |
10 but WITHOUT ANY WARRANTY; without even the implied warranty of | |
11 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | |
12 GNU General Public License for more details. | |
13 | |
14 You should have received a copy of the GNU General Public License | |
19190 | 15 along with this program. If not, see <https://www.gnu.org/licenses/>. */ |
12801 | 16 |
17 /* Written by Bruno Haible <bruno@clisp.org>, 2010. */ | |
18 | |
19 #include <config.h> | |
20 | |
21 #include <math.h> | |
22 | |
23 #include "signature.h" | |
24 SIGNATURE_CHECK (modf, double, (double, double *)); | |
25 | |
16562 | 26 #include <float.h> |
27 | |
12801 | 28 #include "macros.h" |
29 | |
16562 | 30 #define DOUBLE double |
31 #define L_(literal) literal | |
32 #define MANT_DIG DBL_MANT_DIG | |
33 #define MODF modf | |
34 #define RANDOM randomd | |
35 #include "test-modf.h" | |
12801 | 36 |
37 int | |
38 main () | |
39 { | |
40 /* A particular positive value. */ | |
41 x = 5.972406760; | |
42 y = modf (x, &z); | |
43 ASSERT (y >= 0.972406759 && y <= 0.972406761); | |
44 ASSERT (z == 5.0); | |
45 | |
46 /* A particular negative value. */ | |
47 x = -5.972406760; | |
48 y = modf (x, &z); | |
15837
dd898709f077
modf tests: Make test sharper.
Bruno Haible <bruno@clisp.org>
parents:
14079
diff
changeset
|
49 ASSERT (y >= -0.972406761 && y <= -0.972406759); |
12801 | 50 ASSERT (z == -5.0); |
51 | |
16562 | 52 test_function (); |
53 | |
12801 | 54 return 0; |
55 } |