summaryrefslogtreecommitdiff
path: root/tests/tui_div.c
diff options
context:
space:
mode:
authorzimmerma <zimmerma@280ebfd0-de03-0410-8827-d642c229c3f4>2004-02-14 23:05:51 +0000
committerzimmerma <zimmerma@280ebfd0-de03-0410-8827-d642c229c3f4>2004-02-14 23:05:51 +0000
commit6e5ffc68a8061e42a2680dd99455f89e2f4f8ca9 (patch)
tree3150eedf9dc6ae8d160042147ff46ac533e723dd /tests/tui_div.c
parentf095a6c8a44a63379841097ddfbf4682e56e4036 (diff)
downloadmpfr-6e5ffc68a8061e42a2680dd99455f89e2f4f8ca9.tar.gz
new coverage tests
git-svn-id: svn://scm.gforge.inria.fr/svn/mpfr/trunk@2714 280ebfd0-de03-0410-8827-d642c229c3f4
Diffstat (limited to 'tests/tui_div.c')
-rw-r--r--tests/tui_div.c21
1 files changed, 21 insertions, 0 deletions
diff --git a/tests/tui_div.c b/tests/tui_div.c
index 2f0512218..56134776f 100644
--- a/tests/tui_div.c
+++ b/tests/tui_div.c
@@ -134,6 +134,27 @@ check_nan (void)
MPFR_ASSERTN (mpfr_ui_div (q, 0L, d, GMP_RNDZ) == 0); /* exact */
MPFR_ASSERTN (mpfr_nan_p (q));
+ /* 1/+0 = +inf */
+ mpfr_set_ui (d, 0L, GMP_RNDN);
+ MPFR_ASSERTN (mpfr_ui_div (q, 1L, d, GMP_RNDZ) == 0); /* exact */
+ MPFR_ASSERTN (mpfr_inf_p (q) && mpfr_sgn (q) > 0);
+
+ /* 1/-0 = -inf */
+ mpfr_set_ui (d, 0L, GMP_RNDN);
+ mpfr_neg (d, d, GMP_RNDN);
+ MPFR_ASSERTN (mpfr_ui_div (q, 1L, d, GMP_RNDZ) == 0); /* exact */
+ MPFR_ASSERTN (mpfr_inf_p (q) && mpfr_sgn (q) < 0);
+
+ /* 0/1 = +0 */
+ mpfr_set_ui (d, 1L, GMP_RNDN);
+ MPFR_ASSERTN (mpfr_ui_div (q, 0L, d, GMP_RNDZ) == 0); /* exact */
+ MPFR_ASSERTN (mpfr_cmp_ui (q, 0) == 0 && MPFR_IS_POS (q));
+
+ /* 0/-1 = -0 */
+ mpfr_set_si (d, -1, GMP_RNDN);
+ MPFR_ASSERTN (mpfr_ui_div (q, 0L, d, GMP_RNDZ) == 0); /* exact */
+ MPFR_ASSERTN (mpfr_cmp_ui (q, 0) == 0 && MPFR_IS_NEG (q));
+
mpfr_clear (d);
mpfr_clear (q);
}