changeset 16428:a8c015120a7d

truncf-ieee tests: More tests. * tests/test-truncf-ieee.c: Include isnanf-nolibm.h, infinity.h, nan.h. (main): Add tests for [MX] shaded specification in POSIX. * modules/truncf-ieee-tests (Files): Add tests/infinity.h, tests/nan.h. (Depends-on): Add isnanf-nolibm.
author Bruno Haible <bruno@clisp.org>
date Sun, 26 Feb 2012 14:26:32 +0100
parents 8ccdee076ec0
children 559c3676b8af
files ChangeLog modules/truncf-ieee-tests tests/test-truncf-ieee.c
diffstat 3 files changed, 20 insertions(+), 0 deletions(-) [+]
line wrap: on
line diff
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,5 +1,11 @@
 2012-02-26  Bruno Haible  <bruno@clisp.org>
 
+	truncf-ieee tests: More tests.
+	* tests/test-truncf-ieee.c: Include isnanf-nolibm.h, infinity.h, nan.h.
+	(main): Add tests for [MX] shaded specification in POSIX.
+	* modules/truncf-ieee-tests (Files): Add tests/infinity.h, tests/nan.h.
+	(Depends-on): Add isnanf-nolibm.
+
 	ceill-ieee tests: More tests.
 	* tests/test-ceill-ieee.c: Include isnanl-nolibm.h, infinity.h, nan.h.
 	(main): Add tests for [MX] shaded specification in POSIX.
--- a/modules/truncf-ieee-tests
+++ b/modules/truncf-ieee-tests
@@ -1,9 +1,12 @@
 Files:
 tests/test-truncf-ieee.c
 tests/minus-zero.h
+tests/infinity.h
+tests/nan.h
 tests/macros.h
 
 Depends-on:
+isnanf-nolibm
 float
 signbit
 
--- a/tests/test-truncf-ieee.c
+++ b/tests/test-truncf-ieee.c
@@ -18,7 +18,10 @@
 
 #include <math.h>
 
+#include "isnanf-nolibm.h"
 #include "minus-zero.h"
+#include "infinity.h"
+#include "nan.h"
 #include "macros.h"
 
 int
@@ -39,5 +42,13 @@
   ASSERT (!!signbit (truncf (-0.3f)) == !!signbit (minus_zerof));
   ASSERT (!!signbit (truncf (-0.7f)) == !!signbit (minus_zerof));
 
+  /* [MX] shaded specification in POSIX.  */
+
+  /* NaN.  */
+  ASSERT (isnanf (truncf (NaNf ())));
+  /* Infinity.  */
+  ASSERT (truncf (Infinityf ()) == Infinityf ());
+  ASSERT (truncf (- Infinityf ()) == - Infinityf ());
+
   return 0;
 }