X-Git-Url: https://www.ginac.de/ginac.git//ginac.git?p=ginac.git;a=blobdiff_plain;f=check%2Fexam_numeric.cpp;h=ad7da61c1dd9a53321deb53b013e526cd72241c2;hp=e9728b4510c3b0693bf76f08082d3ae633926d63;hb=f7884835d397de85e648d1957c058b7d4c0948ba;hpb=da64e515abf7243bc4c84ca3631470931c4e6691 diff --git a/check/exam_numeric.cpp b/check/exam_numeric.cpp index e9728b45..ad7da61c 100644 --- a/check/exam_numeric.cpp +++ b/check/exam_numeric.cpp @@ -1,10 +1,10 @@ /** @file exam_numeric.cpp * - * These exams creates some numbers and check the result of several boolean + * These exams creates some numbers and check the result of several Boolean * tests on these numbers like is_integer() etc... */ /* - * GiNaC Copyright (C) 1999-2005 Johannes Gutenberg University Mainz, Germany + * GiNaC Copyright (C) 1999-2019 Johannes Gutenberg University Mainz, Germany * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by @@ -21,9 +21,12 @@ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA */ -#include "exams.h" +#include "ginac.h" +using namespace GiNaC; +#include #include +using namespace std; /* Simple and maybe somewhat pointless consistency tests of assorted tests and * conversions. */ @@ -65,6 +68,11 @@ static unsigned exam_numeric1() << " erroneously not recognized as complex rational" << endl; ++result; } + if (test_crat.info(info_flags::nonnegative)) { + clog << test_crat + << " erroneously recognized as non-negative number" << endl; + ++result; + } int i = numeric(1984).to_int(); if (i-1984) { @@ -358,7 +366,7 @@ static unsigned exam_numeric6() // Read back expression from string string x_as_string = s.str(); - ex x_again(x_as_string, lst(sym)); + ex x_again(x_as_string, lst{sym}); // They should be equal if (!x_again.is_equal(x)) { @@ -378,7 +386,6 @@ unsigned exam_numeric() unsigned result = 0; cout << "examining consistency of numeric types" << flush; - clog << "----------consistency of numeric types:" << endl; result += exam_numeric1(); cout << '.' << flush; result += exam_numeric2(); cout << '.' << flush; @@ -387,12 +394,10 @@ unsigned exam_numeric() result += exam_numeric5(); cout << '.' << flush; result += exam_numeric6(); cout << '.' << flush; - if (!result) { - cout << " passed " << endl; - clog << "(no output)" << endl; - } else { - cout << " failed " << endl; - } - return result; } + +int main(int argc, char** argv) +{ + return exam_numeric(); +}