Index: /trunk/psLib/test/dataManip/tst_psMinimize05.c
===================================================================
--- /trunk/psLib/test/dataManip/tst_psMinimize05.c	(revision 1799)
+++ /trunk/psLib/test/dataManip/tst_psMinimize05.c	(revision 1800)
@@ -6,8 +6,9 @@
 #include "psTest.h"
 #include <math.h>
-#define N 2
+#define N 5
 #define MIN_VALUE 20.0
 #define NUM_PARAMS 10
 float expectedParm[NUM_PARAMS];
+int testStatus = true;
 
 /*****************************************************************************
@@ -16,4 +17,7 @@
 adds MIN_VALUE to it.  The minimum for this function will be MIN_VALUE, and
 will occur when each parameter equals the associated value in expectedParm[].
+ 
+This procedure ignores the coordinates, other than to ensure that they were
+passed correctly from psMinimizePowell().
  *****************************************************************************/
 float myFunc(psVector *myParams,
@@ -21,5 +25,25 @@
 {
     float sum = 0.0;
+    float coordData = 0.0;
+    float expData = 0.0;
     int i;
+
+    for (i=0;i<N;i++) {
+        coordData = ((psVector *) (myCoords->data[i]))->data.F32[0];
+        expData = (float) (i+10);
+        if (fabs(coordData - expData) > FLT_EPSILON) {
+            printf("ERROR(1): coordinate data was incorrectly passed to myFunc()\n");
+            printf("ERROR(1): was (%f) should be (%f)\n", coordData, expData);
+            testStatus = false;
+        }
+        coordData = ((psVector *) (myCoords->data[i]))->data.F32[1];
+        expData = (float) (i+3);
+        if (fabs(coordData - expData) > FLT_EPSILON) {
+            printf("ERROR(2): coordinate data was incorrectly passed to myFunc()\n");
+            printf("ERROR(2): was (%f) should be (%f)\n", coordData, expData);
+            testStatus = false;
+        }
+    }
+
 
     sum = 0.0;
@@ -36,5 +60,4 @@
 {
     int currentId = psMemGetId();
-    int testStatus = true;
     int memLeaks = 0;
     int i = 0;
@@ -54,6 +77,6 @@
     for (i=0;i<N;i++) {
         myCoords->data[i] = (psPTR *) psVectorAlloc(2, PS_TYPE_F32);
-        ((psVector *) (myCoords->data[i]))->data.F32[0] = (float) i;
-        ((psVector *) (myCoords->data[i]))->data.F32[1] = (float) i;
+        ((psVector *) (myCoords->data[i]))->data.F32[0] = (float) (i+10);
+        ((psVector *) (myCoords->data[i]))->data.F32[1] = (float) (i+3);
     }
     for (i=0;i<NUM_PARAMS;i++) {
