summaryrefslogtreecommitdiff
path: root/tests
diff options
context:
space:
mode:
authorpelissip <pelissip@280ebfd0-de03-0410-8827-d642c229c3f4>2004-02-24 09:12:03 +0000
committerpelissip <pelissip@280ebfd0-de03-0410-8827-d642c229c3f4>2004-02-24 09:12:03 +0000
commit53062736c152be21b77b11fec1a29699e6c7a30c (patch)
treeb1f384e00645646e00499ef066720a3eae61e504 /tests
parenta6c20cdb1b58fb4d3c3bc2d03c0b10f951a8b8b5 (diff)
downloadmpfr-53062736c152be21b77b11fec1a29699e6c7a30c.tar.gz
Improve test coverage.
git-svn-id: svn://scm.gforge.inria.fr/svn/mpfr/trunk@2797 280ebfd0-de03-0410-8827-d642c229c3f4
Diffstat (limited to 'tests')
-rw-r--r--tests/tmul_2exp.c13
-rw-r--r--tests/tset_str.c6
-rw-r--r--tests/tzeta.c4
3 files changed, 21 insertions, 2 deletions
diff --git a/tests/tmul_2exp.c b/tests/tmul_2exp.c
index 511ef540d..645210f72 100644
--- a/tests/tmul_2exp.c
+++ b/tests/tmul_2exp.c
@@ -116,6 +116,19 @@ main (int argc, char *argv[])
}
}
+ if (MPFR_EXP_MAX >= LONG_MAX/2 && MPFR_EXP_MIN <= LONG_MAX/2-LONG_MAX-1)
+ {
+ mpfr_set_ui (w, 1, GMP_RNDN);
+ mpfr_mul_2ui (w, w, LONG_MAX/2, GMP_RNDZ);
+ mpfr_div_2ui (w, w, LONG_MAX+1, GMP_RNDZ);
+ mpfr_mul_2ui (w, w, LONG_MAX+1-LONG_MAX/2, GMP_RNDZ);
+ if (!mpfr_cmp_ui (w, 1))
+ {
+ printf ("Underflow LONG_MAX error!\n");
+ exit (1);
+ }
+ }
+
mpfr_clears (w, z, NULL);
tests_end_mpfr ();
diff --git a/tests/tset_str.c b/tests/tset_str.c
index 9ead70df4..f90db1f34 100644
--- a/tests/tset_str.c
+++ b/tests/tset_str.c
@@ -480,6 +480,12 @@ main (int argc, char *argv[])
MPFR_ASSERTN(mpfr_cmp_ui (x, 1) == 0 && ret == -1);
ret = mpfr_set_str (x, "1p10toto", 16, GMP_RNDN);
MPFR_ASSERTN(mpfr_cmp_ui (x, 1) == 0 && ret == -1);
+ ret = mpfr_set_str (x, "", 16, GMP_RNDN);
+ MPFR_ASSERTN(mpfr_cmp_ui (x, 1) == 0 && ret == -1);
+ ret = mpfr_set_str (x, "+", 16, GMP_RNDN);
+ MPFR_ASSERTN(mpfr_cmp_ui (x, 1) == 0 && ret == -1);
+ ret = mpfr_set_str (x, "-", 16, GMP_RNDN);
+ MPFR_ASSERTN(mpfr_cmp_ui (x, 1) == 0 && ret == -1);
ret = mpfr_set_str (x, "this_is_an_invalid_number_in_base_36", 36, GMP_RNDN);
MPFR_ASSERTN(mpfr_cmp_ui (x, 1) == 0 && ret == -1);
mpfr_set_prec (x, 135);
diff --git a/tests/tzeta.c b/tests/tzeta.c
index dd5f8b67e..1519b26c0 100644
--- a/tests/tzeta.c
+++ b/tests/tzeta.c
@@ -115,7 +115,7 @@ static const char *const val[] = {
"-2.0", "0.0",
"-1.0", "-0.000101010101010101010101010101010101010101010101010101010101010",
"-0.9", "-0.000110011110011111010001010001100010111101001010100110001110110",
- /* "-0.8", "-0.000111110011101010001011100011010010000001010011110100010001110", */
+ /* "-0.8", "-0.000111110011101010001011100011010010000001010011110100010001110",
"-0.7", "-0.00100101011011111100110011110011111010111111000110110100010110",
"-0.6", "-0.00101100101100100100110111111000110010111010110010111000001100",
"-0.5", "-0.00110101001110000000100000011001100100010000111100010001111100",
@@ -130,7 +130,7 @@ static const char *const val[] = {
"0.4", "-1.0010001010000010000110111000100101001000001011101010110101011",
"0.5", "-1.0111010111011001110010110000011111100111001111111110111000110",
"0.6", "-1.1111001111100001100111101110010001001000001101100110110000100",
- /* "0.7", "-10.110001110100010001110111000101010011110011000110010100101000",
+ "0.7", "-10.110001110100010001110111000101010011110011000110010100101000",
"0.8", "-100.01110000000000101000010010000011000000111101100101100011010",
"0.9", "-1001.0110111000011011111100111100111011100010001111111010000100",
"0.99","-0.11000110110110001101011010110001011010011000110001011100101110E7",