[PATCH 10/10] d3dx9/tests: Use compare_float() in test_D3DXSHScale().

Henri Verbeet hverbeet at codeweavers.com
Thu May 4 05:06:04 CDT 2017


Signed-off-by: Henri Verbeet <hverbeet at codeweavers.com>
---
 dlls/d3dx9_36/tests/math.c | 10 ++++------
 1 file changed, 4 insertions(+), 6 deletions(-)

diff --git a/dlls/d3dx9_36/tests/math.c b/dlls/d3dx9_36/tests/math.c
index 617253c..37b69c6 100644
--- a/dlls/d3dx9_36/tests/math.c
+++ b/dlls/d3dx9_36/tests/math.c
@@ -25,10 +25,6 @@
 
 #define ARRAY_SIZE 5
 
-#define admitted_error 0.0001f
-
-#define relative_error(exp, out) (fabsf(exp) < 1e-38f ? fabsf(exp - out) : fabsf(1.0f - (out) / (exp)))
-
 static BOOL compare_float(float f, float g, unsigned int ulps)
 {
     int x = *(int *)&f;
@@ -3590,8 +3586,9 @@ static void test_D3DXSHRotateZ(void)
 
 static void test_D3DXSHScale(void)
 {
+    float a[49], b[49], expected, *received_array;
     unsigned int i, order;
-    FLOAT a[49], b[49], expected, *received_array;
+    BOOL equal;
 
     for (i = 0; i < 49; i++)
     {
@@ -3611,7 +3608,8 @@ static void test_D3DXSHScale(void)
             /* D3DXSHScale does not modify the elements of the array after the order * order-th element */
             else
                 expected = a[i];
-            ok(relative_error(b[i], expected) < admitted_error, "order %d, element %d, expected %f, received %f\n", order, i, expected, b[i]);
+            equal = compare_float(b[i], expected, 0);
+            ok(equal, "order %u, element %u, expected %.8e, received %.8e.\n", order, i, expected, b[i]);
         }
     }
 }
-- 
2.1.4




More information about the wine-patches mailing list