File: fix-test-failures.diff

package info (click to toggle)
scalc 0.2.4-5
  • links: PTS
  • area: main
  • in suites: bullseye, buster
  • size: 1,724 kB
  • ctags: 826
  • sloc: sh: 10,131; cpp: 1,580; makefile: 34
file content (30 lines) | stat: -rw-r--r-- 980 bytes parent folder | download | duplicates (3)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
Index: scalc/tests/scalc_test_suite.cc
===================================================================
--- scalc.orig/tests/scalc_test_suite.cc	2010-08-02 19:13:18.615030465 +0200
+++ scalc/tests/scalc_test_suite.cc	2013-02-15 14:52:16.207204292 +0100
@@ -39,14 +39,22 @@
       if(e->evaluable())
 	{
 	  double value = e->evaluate();
-	  if(value != expected)
-	    {
+          double rel = fabs(value - expected)/value;
+	  if(value != expected) {
+            if(rel < 1e-10)
+	      cerr << "Evaluation of '" << expression 
+		   << "' returned a value differing from <" << expected 
+                   <<  "> by <" 
+		   << expected - value << "> (rel: " << rel 
+                   << ") : ignoring" << endl; 
+            else {
 	      cerr << "Evaluation of '" << expression 
 		   << "' returned <" << value 
 		   << "> and should have returned <" 
 		   << expected << ">" << endl; 
 	      failures ++;
-	    }
+            }
+          }
 	}
       else
 	{