Index: trunk/psLib/test/math/tap_psPolynomialEval3D.c
===================================================================
--- trunk/psLib/test/math/tap_psPolynomialEval3D.c	(revision 11423)
+++ trunk/psLib/test/math/tap_psPolynomialEval3D.c	(revision 13124)
@@ -4,6 +4,6 @@
 *  ORD and CHEB type polynomials.
 *
-*  @version  $Revision: 1.5 $  $Name: not supported by cvs2svn $
-*  @date  $Date: 2007-01-30 04:52:42 $
+*  @version  $Revision: 1.6 $  $Name: not supported by cvs2svn $
+*  @date  $Date: 2007-05-02 04:20:06 $
 *
 * Copyright 2004-2005 Maui High Performance Computing Center, Univ. of Hawaii
@@ -121,5 +121,27 @@
     psLogSetFormat("HLNM");
     psLogSetLevel(PS_LOG_INFO);
-    plan_tests(32);
+    plan_tests(44);
+
+
+    // Allocate polynomial with unallowed type
+    {
+        psMemId id = psMemGetId();
+        psPolynomial3D* polyOrd = psPolynomial3DAlloc(99, TERMS-1, TERMS-1, TERMS-1);
+        ok(polyOrd == NULL, "psPolynomial3DAlloc() returned NULL with unallowed type");
+        psFree(polyOrd);
+        ok(!psMemCheckLeaks (id, NULL, NULL, false), "no memory leaks");
+
+    }
+
+
+    // Evaluate NULL polynomial
+    {
+        psMemId id = psMemGetId();
+        psF64 result = psPolynomial3DEval(NULL, 0.0, 0.0, 0.0);
+        ok(isnan(result), "psPolynomial3DEval() returned NAN with NULL polynomial");
+        ok(!psMemCheckLeaks (id, NULL, NULL, false), "no memory leaks");
+
+    }
+
 
     // Allocate and evaluate an ordinary polynomial structure
@@ -202,21 +224,4 @@
 
 
-
-    // Allocate polynomial with unallowed type
-    // XXX: This is odd.
-    {
-        psMemId id = psMemGetId();
-        psPolynomial3D* polyOrd = psPolynomial3DAlloc(99, TERMS-1, TERMS-1, TERMS-1);
-        ok(polyOrd == NULL, "psPolynomial3DAlloc() returned NULL with unallowed type");
-        //        skip_start(polyOrd == NULL, 1, "Skipping tests because psPolynomial3DAlloc() failed");
-        //        // Attempt to evaluation invalid polynomial type
-        //        psF64 result = psPolynomial3DEval(polyOrd,0.0, 0.0, 0.0);
-        //        ok(isnan(result), "psPolynomial3DEval() did not return NAN, as expected");
-        //        skip_end();
-        psFree(polyOrd);
-        ok(!psMemCheckLeaks (id, NULL, NULL, false), "no memory leaks");
-
-    }
-
     // Allocate polynomial, test the psPolynomial3DEvalVector() routines
     {
@@ -267,29 +272,63 @@
         ok(!errorFlag, "psPolynomial3DEvalVector() produced the correct answers");
 
-        // Attempt to invoke function with null polynomial
-        ok(psPolynomial3DEvalVector(NULL,inputOrdX,inputOrdY,inputOrdZ) == NULL, "psPolynomial3DEvalVector() produced NULL when called with NULL polynomial");
-
-        // Attempt to invoke function with null input vector
-        ok(psPolynomial3DEvalVector(polyOrd,NULL,inputOrdY,inputOrdZ) == NULL, "psPolynomial3DEvalVector() produced NULL when called with NULL input vector");
-
-        // Attempt to invoke function with null input vector
-        ok(psPolynomial3DEvalVector(polyOrd,inputOrdX,NULL,inputOrdZ) == NULL, "psPolynomial3DEvalVector() produced NULL when called with NULL input vector");
-
-        // Attempt to invoke function with null input vector
-        ok(psPolynomial3DEvalVector(polyOrd,inputOrdX,inputOrdY,NULL) == NULL, "psPolynomial3DEvalVector() produced NULL when called with NULL input vector");
-
-        // Attempt to invoke function with a non F64 type input vector
-        inputOrdX->type.type = PS_TYPE_U8;
-        ok(psPolynomial3DEvalVector(polyOrd,inputOrdX,inputOrdY,inputOrdZ) == NULL, "psPolynomial3DEvalVector() produced NULL when called with non F64 input vector");
+
+        // Attempt to invoke function with NULL polynomial
+        {
+            psMemId id = psMemGetId();
+            ok(psPolynomial3DEvalVector(NULL,inputOrdX,inputOrdY,inputOrdZ) == NULL, "psPolynomial3DEvalVector() produced NULL when called with NULL polynomial");
+            ok(!psMemCheckLeaks (id, NULL, NULL, false), "no memory leaks");
+        }
+
+
+        // Attempt to invoke function with NULL input vector
+        {
+            psMemId id = psMemGetId();
+            ok(psPolynomial3DEvalVector(polyOrd,NULL,inputOrdY,inputOrdZ) == NULL, "psPolynomial3DEvalVector() produced NULL when called with NULL input vector");
+            ok(!psMemCheckLeaks (id, NULL, NULL, false), "no memory leaks");
+        }
+    
+
+        // Attempt to invoke function with NULL input vector
+        {
+            psMemId id = psMemGetId();
+            ok(psPolynomial3DEvalVector(polyOrd,inputOrdX,NULL,inputOrdZ) == NULL, "psPolynomial3DEvalVector() produced NULL when called with NULL input vector");
+            ok(!psMemCheckLeaks (id, NULL, NULL, false), "no memory leaks");
+        }
+
+
+        // Attempt to invoke function with NULL input vector
+        {
+            psMemId id = psMemGetId();
+            ok(psPolynomial3DEvalVector(polyOrd,inputOrdX,inputOrdY,NULL) == NULL, "psPolynomial3DEvalVector() produced NULL when called with NULL input vector");
+            ok(!psMemCheckLeaks (id, NULL, NULL, false), "no memory leaks");
+        }
+
+
+        // Attempt to invoke function with a non F64 type input vector
+        {
+            psMemId id = psMemGetId();
+            inputOrdX->type.type = PS_TYPE_U8;
+            ok(psPolynomial3DEvalVector(polyOrd,inputOrdX,inputOrdY,inputOrdZ) == NULL, "psPolynomial3DEvalVector() produced NULL when called with non F64 input vector");
+            ok(!psMemCheckLeaks (id, NULL, NULL, false), "no memory leaks");
+        }
         inputOrdX->type.type = PS_TYPE_F64;
 
-        // Attempt to invoke function with a non F64 type input vector
-        inputOrdY->type.type = PS_TYPE_U8;
-        ok(psPolynomial3DEvalVector(polyOrd,inputOrdX,inputOrdY,inputOrdZ) == NULL, "psPolynomial3DEvalVector() produced NULL when called with non F64 input vector");
+
+        // Attempt to invoke function with a non F64 type input vector
+        {
+            psMemId id = psMemGetId();
+            inputOrdY->type.type = PS_TYPE_U8;
+            ok(psPolynomial3DEvalVector(polyOrd,inputOrdX,inputOrdY,inputOrdZ) == NULL, "psPolynomial3DEvalVector() produced NULL when called with non F64 input vector");
+            ok(!psMemCheckLeaks (id, NULL, NULL, false), "no memory leaks");
+        }
         inputOrdY->type.type = PS_TYPE_F64;
 
         // Attempt to invoke function with a non F64 type input vector
-        inputOrdZ->type.type = PS_TYPE_U8;
-        ok(psPolynomial3DEvalVector(polyOrd,inputOrdX,inputOrdY,inputOrdZ) == NULL, "psPolynomial3DEvalVector() produced NULL when called with non F64 input vector");
+        {
+            psMemId id = psMemGetId();
+            inputOrdZ->type.type = PS_TYPE_U8;
+            ok(psPolynomial3DEvalVector(polyOrd,inputOrdX,inputOrdY,inputOrdZ) == NULL, "psPolynomial3DEvalVector() produced NULL when called with non F64 input vector");
+            ok(!psMemCheckLeaks (id, NULL, NULL, false), "no memory leaks");
+        }
         psFree(outputOrd);
         skip_end();
@@ -302,6 +341,4 @@
 
 
-
-
     // Allocate polynomial, test the psPolynomial3DEvalVector() routines
     {
@@ -351,29 +388,63 @@
         ok(!errorFlag, "psPolynomial3DEvalVector() produced the correct answers");
 
-        // Attempt to invoke function with null polynomial
-        ok(psPolynomial3DEvalVector(NULL,inputChebX,inputChebY,inputChebZ) == NULL, "psPolynomial3DEvalVector() produced NULL when called with NULL polynomial");
-
-        // Attempt to invoke function with null input vector
-        ok(psPolynomial3DEvalVector(polyCheb,NULL,inputChebY,inputChebZ) == NULL, "psPolynomial3DEvalVector() produced NULL when called with NULL input vector");
-
-        // Attempt to invoke function with null input vector
-        ok(psPolynomial3DEvalVector(polyCheb,inputChebX,NULL,inputChebZ) == NULL, "psPolynomial3DEvalVector() produced NULL when called with NULL input vector");
-
-        // Attempt to invoke function with null input vector
-        ok(psPolynomial3DEvalVector(polyCheb,inputChebX,inputChebY,NULL) == NULL, "psPolynomial3DEvalVector() produced NULL when called with NULL input vector");
-
-        // Attempt to invoke function with a non F64 type input vector
-        inputChebX->type.type = PS_TYPE_U8;
-        ok(psPolynomial3DEvalVector(polyCheb,inputChebX,inputChebY,inputChebZ) == NULL, "psPolynomial3DEvalVector() produced NULL when called with non F64 input vector");
+        // Attempt to invoke function with NULL polynomial
+        {
+            psMemId id = psMemGetId();
+            ok(psPolynomial3DEvalVector(NULL,inputChebX,inputChebY,inputChebZ) == NULL, "psPolynomial3DEvalVector() produced NULL when called with NULL polynomial");
+            ok(!psMemCheckLeaks (id, NULL, NULL, false), "no memory leaks");
+        }
+
+
+        // Attempt to invoke function with NULL input vector
+        {
+            psMemId id = psMemGetId();
+            ok(psPolynomial3DEvalVector(polyCheb,NULL,inputChebY,inputChebZ) == NULL, "psPolynomial3DEvalVector() produced NULL when called with NULL input vector");
+            ok(!psMemCheckLeaks (id, NULL, NULL, false), "no memory leaks");
+        }
+
+
+        // Attempt to invoke function with NULL input vector
+        {
+            psMemId id = psMemGetId();
+            ok(psPolynomial3DEvalVector(polyCheb,inputChebX,NULL,inputChebZ) == NULL, "psPolynomial3DEvalVector() produced NULL when called with NULL input vector");
+            ok(!psMemCheckLeaks (id, NULL, NULL, false), "no memory leaks");
+        }
+
+
+        // Attempt to invoke function with NULL input vector
+        {
+            psMemId id = psMemGetId();
+            ok(psPolynomial3DEvalVector(polyCheb,inputChebX,inputChebY,NULL) == NULL, "psPolynomial3DEvalVector() produced NULL when called with NULL input vector");
+            ok(!psMemCheckLeaks (id, NULL, NULL, false), "no memory leaks");
+        }
+
+
+        // Attempt to invoke function with a non F64 type input vector
+        {
+            psMemId id = psMemGetId();
+            inputChebX->type.type = PS_TYPE_U8;
+            ok(psPolynomial3DEvalVector(polyCheb,inputChebX,inputChebY,inputChebZ) == NULL, "psPolynomial3DEvalVector() produced NULL when called with non F64 input vector");
+            ok(!psMemCheckLeaks (id, NULL, NULL, false), "no memory leaks");
+        }
         inputChebX->type.type = PS_TYPE_F64;
 
-        // Attempt to invoke function with a non F64 type input vector
-        inputChebY->type.type = PS_TYPE_U8;
-        ok(psPolynomial3DEvalVector(polyCheb,inputChebX,inputChebY,inputChebZ) == NULL, "psPolynomial3DEvalVector() produced NULL when called with non F64 input vector");
+
+        // Attempt to invoke function with a non F64 type input vector
+        {
+            psMemId id = psMemGetId();
+            inputChebY->type.type = PS_TYPE_U8;
+            ok(psPolynomial3DEvalVector(polyCheb,inputChebX,inputChebY,inputChebZ) == NULL, "psPolynomial3DEvalVector() produced NULL when called with non F64 input vector");
+            ok(!psMemCheckLeaks (id, NULL, NULL, false), "no memory leaks");
+        }
         inputChebY->type.type = PS_TYPE_F64;
 
-        // Attempt to invoke function with a non F64 type input vector
-        inputChebZ->type.type = PS_TYPE_U8;
-        ok(psPolynomial3DEvalVector(polyCheb,inputChebX,inputChebY,inputChebZ) == NULL, "psPolynomial3DEvalVector() produced NULL when called with non F64 input vector");
+
+        // Attempt to invoke function with a non F64 type input vector
+        {
+            psMemId id = psMemGetId();
+            inputChebZ->type.type = PS_TYPE_U8;
+            ok(psPolynomial3DEvalVector(polyCheb,inputChebX,inputChebY,inputChebZ) == NULL, "psPolynomial3DEvalVector() produced NULL when called with non F64 input vector");
+            ok(!psMemCheckLeaks (id, NULL, NULL, false), "no memory leaks");
+        }
         psFree(outputCheb);
         skip_end();
