diff options
author | zimmerma <zimmerma@280ebfd0-de03-0410-8827-d642c229c3f4> | 2004-02-14 23:05:51 +0000 |
---|---|---|
committer | zimmerma <zimmerma@280ebfd0-de03-0410-8827-d642c229c3f4> | 2004-02-14 23:05:51 +0000 |
commit | 6e5ffc68a8061e42a2680dd99455f89e2f4f8ca9 (patch) | |
tree | 3150eedf9dc6ae8d160042147ff46ac533e723dd /tests/tui_div.c | |
parent | f095a6c8a44a63379841097ddfbf4682e56e4036 (diff) | |
download | mpfr-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.c | 21 |
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); } |