]> www.ginac.de Git - ginac.git/blobdiff - check/exams.cpp
fixed another power::series() bug [Alexei Sheplyakov]
[ginac.git] / check / exams.cpp
index 01e8f25b9463241f0dc0693a61c30c3ac8a6f5bc..b175515503a2ac9d33eae90ff0bb8c25d075a77d 100644 (file)
@@ -3,7 +3,7 @@
  *  Main program that calls all individual exams. */
 
 /*
- *  GiNaC Copyright (C) 1999-2000 Johannes Gutenberg University Mainz, Germany
+ *  GiNaC Copyright (C) 1999-2004 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
  */
 
 #include <stdexcept>
-#include <iostream>
 
 #include "exams.h"
 
 int main()
 {
        unsigned result = 0;
+
+#define EXAM(which) \
+try { \
+       result += exam_ ## which (); \
+} catch (const exception &e) { \
+       cout << "Error: caught exception " << e.what() << endl; \
+       ++result; \
+}
        
-       try {
-               result += exam_paranoia();
-       } catch (const exception &e) {
-               cout << "Error: caught exception " << e.what() << endl;
-               ++result;
-       }
-       
-       try {
-               result += exam_numeric();
-       } catch (const exception &e) {
-               cout << "Error: caught exception " << e.what() << endl;
-               ++result;
-       }
-       
-       try {
-               result += exam_powerlaws();
-       } catch (const exception &e) {
-               cout << "Error: caught exception " << e.what() << endl;
-               ++result;
-       }
-       
-       try {
-               result += exam_inifcns();
-       } catch (const exception &e) {
-               cout << "Error: caught exception " << e.what() << endl;
-               ++result;
-       }
-       
-       try {
-               result += exam_differentiation();
-       } catch (const exception &e) {
-               cout << "Error: caught exception " << e.what() << endl;
-               ++result;
-       }
-       
-       try {
-               result += exam_polygcd();
-       } catch (const exception &e) {
-               cout << "Error: caught exception " << e.what() << endl;
-               ++result;
-       }
-       
-       try {
-               result += exam_normalization();
-       } catch (const exception &e) {
-               cout << "Error: caught exception " << e.what() << endl;
-               ++result;
-       }
-       
-       try {
-               result += exam_pseries();
-       } catch (const exception &e) {
-               cout << "Error: caught exception " << e.what() << endl;
-               ++result;
-       }
-       
-       try {
-               result += exam_matrices();
-       } catch (const exception &e) {
-               cout << "Error: caught exception " << e.what() << endl;
-               ++result;
-       }
-       
-       try {
-               result += exam_lsolve();
-       } catch (const exception &e) {
-               cout << "Error: caught exception " << e.what() << endl;
-               ++result;
-       }
-       
-       try {
-               result += exam_noncommut();
-       } catch (const exception &e) {
-               cout << "Error: caught exception " << e.what() << endl;
-               ++result;
-       }
-       
-       try {
-               result += exam_misc();
-       } catch (const exception &e) {
-               cout << "Error: caught exception " << e.what() << endl;
-               ++result;
-       }
+       EXAM(paranoia)
+       EXAM(numeric)
+       EXAM(powerlaws)
+       EXAM(inifcns)
+       EXAM(inifcns_nstdsums)
+       EXAM(differentiation)
+       EXAM(polygcd)
+       EXAM(normalization)
+       EXAM(pseries)
+       EXAM(matrices)
+       EXAM(lsolve)
+       EXAM(indexed)
+       EXAM(color)
+       EXAM(clifford)
+       EXAM(archive)
+       EXAM(structure)
+       EXAM(hashmap)
+       EXAM(misc)
        
        if (result) {
                cout << "Error: something went wrong. ";
@@ -121,7 +63,7 @@ int main()
                        cout << "(" << result << " individual failures)" << endl;
                }
                cout << "please check exams.out against exams.ref for more details."
-                        << endl << "happy debugging!" << endl;
+                    << endl << "happy debugging!" << endl;
        }
        
        return result;