Index: /trunk/psLib/test/types/Makefile.am
===================================================================
--- /trunk/psLib/test/types/Makefile.am	(revision 12441)
+++ /trunk/psLib/test/types/Makefile.am	(revision 12442)
@@ -32,4 +32,5 @@
 	tap_psMetadataConfigWrite \
 	tap_psMetadataConfigPrint \
+	tap_psMetadataConfigParse \
 	tap_psMetadataConfigFormat \
 	tap_psMetadataConfig_input \
Index: /trunk/psLib/test/types/tap_psMetadataConfigParse.c
===================================================================
--- /trunk/psLib/test/types/tap_psMetadataConfigParse.c	(revision 12442)
+++ /trunk/psLib/test/types/tap_psMetadataConfigParse.c	(revision 12442)
@@ -0,0 +1,155 @@
+/**
+ * tap_psMetdataConfigParse.c
+ *
+ * Description:  Tests for psMetadataConfigParse
+ *
+ * Author: dRob <David.Robbins@mhpcc.hpc.mil>, (C) 2006
+ * Author: Joshua Hoblitt, University of Hawaii, 2006
+ *
+ * Copyright: See COPYING file that comes with this distribution
+ *
+ */
+
+#include <pslib.h>
+#include <string.h>
+#include <fcntl.h>
+#include <unistd.h>
+
+#include "tap.h"
+#include "pstap.h"
+
+int main(void)
+{
+    plan_tests(23 + 1);
+
+    psLogSetFormat("HLNM");
+//    psTraceSetLevel("err", 10);
+
+
+    // Return NULL for NULL string input
+    {
+        psMemId id = psMemGetId();
+        unsigned int nfail = 0;
+        psMetadata *md = psMetadataConfigParse(NULL, &nfail, NULL, false);
+
+        ok(md == NULL, "return NULL for NULL string input.");
+
+        ok(!psMemCheckLeaks (id, NULL, NULL, false), "no memory leaks");
+    }
+
+    // Return empty metadata for incorrect string input
+    {
+        psMemId id = psMemGetId();
+        char *str = "-10.05    2        4";
+        psMetadata *md = psMetadataConfigParse(NULL, NULL, str, false);
+
+        ok(md == NULL, "return NULL for 1 invalid line");
+
+        ok(!psMemCheckLeaks (id, NULL, NULL, false), "no memory leaks");
+    }
+
+    // Return correct metadata for correct string input - S32
+    {
+        psMemId id = psMemGetId();
+        char *str = "new S32       666";
+        psMetadata *md = psMetadataConfigParse(NULL, NULL, str, false);
+        psMetadataItem *item = psMetadataGet(md, PS_LIST_HEAD);
+
+        ok(md != NULL, "return correct metadata for 1 valid line");
+        skip_start(item == NULL, 2,
+                     "Skipping 1 tests because metadata container is empty!");
+        ok( item->type == PS_TYPE_S32 && item->data.S32 == 666,
+            "psMetadataConfigParse: return correct metadataItem data (S32)");
+        ok_str( item->name, "new",
+                "psMetadataConfigParse: return correct metadataItem name (S32)");
+        skip_end();
+        psFree(md);
+        ok(!psMemCheckLeaks (id, NULL, NULL, false), "no memory leaks");
+    }
+
+    // Return correct metadata for correct string input - F64
+    {
+        psMemId id = psMemGetId();
+        char str3[70];
+        strcpy(str3, "item4            F64       6.28");
+        psMetadata *md = psMetadataConfigParse(NULL, NULL, str3, false);
+        psMetadataItem *item = psMetadataGet(md, PS_LIST_HEAD);
+        ok( md != NULL && item != NULL,
+            "psMetadataConfigParse: return correct metadata for valid "
+            "string input. (F64)");
+        skip_start(  item == NULL, 2,
+                     "Skipping 1 tests because metadata container is empty!");
+        ok( item->type == PS_DATA_F64,
+            "psMetadataConfigParse: return correct metadataItem data (F64) "
+            "from mdputted metadata.");
+        ok_float(6.28, item->data.F64,
+                 "psMetadataConfigParse: return correct metadataItem data (F64) "
+                 "value.");
+        ok_str( item->name, "item4",
+                "psMetadataConfigParse: return correct metadataItem name (F64)");
+        skip_end();
+        psFree(md);
+        ok(!psMemCheckLeaks (id, NULL, NULL, false), "no memory leaks");
+    }
+
+    // Return correct metadata for string with duplicate entry - S8
+    {
+        psMemId id = psMemGetId();
+        char str4[70];
+        strcpy(str4, "item8            S8        3\nitem8            S8        5");
+        unsigned int nfail = 0;
+        psMetadata *md = psMetadataConfigParse(NULL, &nfail, str4, false);
+        psMetadataItem *item = psMetadataGet(md, PS_LIST_HEAD);
+        ok( md != NULL && item != NULL && md->list->n == 1  && nfail == 1,
+            "psMetadataConfigParse: return correct metadata for string "
+            "with duplicate entry. (S8)");
+        skip_start(  item == NULL, 2,
+                     "Skipping 1 tests because metadata container is empty!");
+        ok( item->type == PS_TYPE_S8 && item->data.S8 == 3,
+            "psMetadataConfigParse: return correct metadataItem data (S8)");
+        ok_str( item->name, "item8",
+                "psMetadataConfigParse: return correct metadataItem name (S8)");
+        skip_end();
+        psFree(md);
+        ok(!psMemCheckLeaks (id, NULL, NULL, false), "no memory leaks");
+    }
+
+    //Return correct metadata for correct string input - Vector
+    {
+        psMemId id = psMemGetId();
+        char str7[70];
+        strcpy(str7, "@vector6 U8 1 2 3 4 5   # I am a vector");
+        psMetadata *md = psMetadataConfigParse(NULL, NULL, str7, true);
+        psMetadataItem *item = psMetadataGet(md, PS_LIST_HEAD);
+        ok(md != NULL && item != NULL,
+            "psMetadataConfigParse: return correct metadata for valid "
+            "string input. (Vector)");
+        skip_start(item == NULL, 2,
+                     "Skipping 1 tests because metadata container is empty!");
+        ok(item->type == PS_DATA_VECTOR
+            && ((psVector*)(item->data.V))->data.U8[0] == 1,
+            "psMetadataConfigParse: return correct metadataItem data (Vector) ");
+        ok_str(item->name, "vector6",
+                "psMetadataConfigParse: return correct metadataItem name (Vector)");
+        skip_end();
+        psFree(md);
+        ok(!psMemCheckLeaks (id, NULL, NULL, false), "no memory leaks");
+    }
+
+    //Return empty metadata for incorrect string input
+    {
+        psMemId id = psMemGetId();
+        char str9[70];
+        strcpy(str9, "END\n");
+        psMetadata *md = psMetadataConfigParse(NULL, NULL, str9, false);
+        psMetadataItem *item = psMetadataGet(md, PS_LIST_HEAD);
+        ok(md != NULL && item == NULL,
+            "psMetadataConfigParse: return empty metadata for invalid "
+            "string input.");
+        psFree(md);
+        ok(!psMemCheckLeaks (id, NULL, NULL, false), "no memory leaks");
+    }
+
+    done();
+}
+
Index: /trunk/psLib/test/types/tap_psMetadataConfig_input.c
===================================================================
--- /trunk/psLib/test/types/tap_psMetadataConfig_input.c	(revision 12441)
+++ /trunk/psLib/test/types/tap_psMetadataConfig_input.c	(revision 12442)
@@ -21,5 +21,5 @@
 int main(void)
 {
-    plan_tests(42);
+    plan_tests(24 + 1);
 
     psLogSetFormat("HLNM");
@@ -30,7 +30,7 @@
     {
         unsigned int nfail = 0;
-        psMetadata *out = psMetadataConfigRead(NULL, &nfail, NULL, false);
+        psMetadata *md = psMetadataConfigRead(NULL, &nfail, NULL, false);
 
-        ok(out == NULL, "return NULL for NULL filename input.");
+        ok(md == NULL, "return NULL for NULL filename input.");
     }
 
@@ -38,7 +38,7 @@
     {
         unsigned int nfail = 0;
-        psMetadata *out = psMetadataConfigRead(NULL, &nfail, ".", false);
+        psMetadata *md = psMetadataConfigRead(NULL, &nfail, ".", false);
 
-        ok(out == NULL, "return NULL for invalid filename input.");
+        ok(md == NULL, "return NULL for invalid filename input.");
     }
 
@@ -46,6 +46,6 @@
     {
         unsigned int nfail = 0;
-        psMetadata *out = psMetadataConfigRead(NULL, &nfail, "table4.dat", false);
-        ok(out == NULL, "return NULL for missing file input.");
+        psMetadata *md = psMetadataConfigRead(NULL, &nfail, "table4.dat", false);
+        ok(md == NULL, "return NULL for missing file input.");
     }
 
@@ -54,9 +54,9 @@
     {
         unsigned int nfail = 0;
-        psMetadata *out = psMetadataConfigRead(NULL, &nfail, "table3.dat", false);
-        ok(out == NULL, "return NULL for all bad syntax");
+        psMetadata *md = psMetadataConfigRead(NULL, &nfail, "table3.dat", false);
+        ok(md == NULL, "return NULL for all bad syntax");
         is_int(nfail, 0, "correct nfail");
 
-        psFree(out);
+        psFree(md);
     }
 
@@ -64,30 +64,30 @@
     {
         unsigned int nfail = 0;
-        psMetadata *out = psMetadataConfigRead(NULL, &nfail, "metaconf.in", false);
+        psMetadata *md = psMetadataConfigRead(NULL, &nfail, "metaconf.in", false);
 
-        ok(out != NULL, "return metadata for valid input");
+        ok(md != NULL, "return metadata for valid input");
         is_int(nfail, 27, "return correct nFail count");
 
-        skip_start(out == NULL, 8,
+        skip_start(md == NULL, 8,
                      "Skipping 1 tests because metadata container is empty!");
 
         // look at the first item
-        psMetadataItem *tempItem = psMetadataGet(out, PS_LIST_HEAD);
-        // XXX shouldn't assume tempItem isn't NULL
-        ok_str(tempItem->name, "item1", "metadataItem name");
-        ok(tempItem->type == PS_DATA_BOOL, "metadataItem type");
-        is_bool(tempItem->data.B, true, "metdataItem value");
-        ok_str(tempItem->comment, "I am a boolean", "metadataItem comment.");
+        psMetadataItem *item = psMetadataGet(md, PS_LIST_HEAD);
+        // XXX shouldn't assume item isn't NULL
+        ok_str(item->name, "item1", "metadataItem name");
+        ok(item->type == PS_DATA_BOOL, "metadataItem type");
+        is_bool(item->data.B, true, "metdataItem value");
+        ok_str(item->comment, "I am a boolean", "metadataItem comment.");
 
         // look at the last item
-        tempItem = psMetadataGet(out, PS_LIST_TAIL);
-        // XXX shouldn't assume tempItem isn't NULL
-        ok_str(tempItem->name, "M2", "metadataItem name");
-        ok(tempItem->type == PS_DATA_S32, "metdataItem type");
-        is_int(tempItem->data.S32, 666, "metdataItem value");
-        ok_str(tempItem->comment, "this line is \"GOOD\" but parsed in the top level", "metadataItem comment.");
+        item = psMetadataGet(md, PS_LIST_TAIL);
+        // XXX shouldn't assume item isn't NULL
+        ok_str(item->name, "M2", "metadataItem name");
+        ok(item->type == PS_DATA_S32, "metdataItem type");
+        is_int(item->data.S32, 666, "metdataItem value");
+        ok_str(item->comment, "this line is \"GOOD\" but parsed in the top level", "metadataItem comment.");
 
         skip_end();
-        psFree(out);
+        psFree(md);
     }
 
@@ -95,167 +95,35 @@
     {
         unsigned int nfail = 0;
-        psMetadata *out = psMetadataConfigRead(NULL, &nfail, "metaconf.in", true);
-//        psMetadataConfigPrint(stdout, out);
+        psMetadata *md = psMetadataConfigRead(NULL, &nfail, "metaconf.in", true);
 
-        ok(out != NULL, "return metadata for valid input");
+        ok(md != NULL, "return metadata for valid input");
         is_int(nfail, 23, "return correct nFail count");
 
-        skip_start(out == NULL, 7,
+        skip_start(md == NULL, 7,
                      "Skipping 1 tests because metadata container is empty!");
 
         // look at the first item
-        psMetadataItem *tempItem = psMetadataGet(out, PS_LIST_HEAD);
-        // XXX shouldn't assume tempItem isn't NULL
+        psMetadataItem *item = psMetadataGet(md, PS_LIST_HEAD);
+        // XXX shouldn't assume item isn't NULL
         // note that item1 gets added to the "tail" of the metdata was it's
         // replaced
-        ok_str(tempItem->name, "item2", "metadataItem name");
-        ok(tempItem->type == PS_DATA_S32, "metdataItem type");
-        is_bool(tempItem->data.S32, 55, "metadataItem value");
-        ok_str(tempItem->comment, "I am int", "metadataItem value");
+        ok_str(item->name, "item2", "metadataItem name");
+        ok(item->type == PS_DATA_S32, "metdataItem type");
+        is_bool(item->data.S32, 55, "metadataItem value");
+        ok_str(item->comment, "I am int", "metadataItem value");
 
         // look at the last item
-        tempItem = psMetadataGet(out, PS_LIST_TAIL);
-        // XXX shouldn't assume tempItem isn't NULL
+        item = psMetadataGet(md, PS_LIST_TAIL);
+        // XXX shouldn't assume item isn't NULL
         // meta1 is from "the bad section"
-        ok_str(tempItem->name, "meta1", "metadataItem name");
-        ok(tempItem->type == PS_DATA_METADATA, "metadataItem type");
+        ok_str(item->name, "meta1", "metadataItem name");
+        ok(item->type == PS_DATA_METADATA, "metadataItem type");
 
-        ok_str(tempItem->comment, "", "metadataItem comment");
+        ok_str(item->comment, "", "metadataItem comment");
 
         skip_end();
-        psFree(out);
+        psFree(md);
     }
 
-    // Check for Memory leaks
-    checkMem();
-
-    // Return NULL for NULL string input
-    {
-        psMemId id = psMemGetId();
-        unsigned int nfail = 0;
-        psMetadata *out = psMetadataConfigParse(NULL, &nfail, NULL, false);
-
-        ok(out == NULL, "psMetadataConfigParse: return NULL for NULL string input.");
-
-        ok(!psMemCheckLeaks (id, NULL, NULL, false), "no memory leaks");
-    }
-
-    // Return empty metadata for incorrect string input
-    {
-        psMemId id = psMemGetId();
-        char str1[70];
-        strcpy(str1, "-10.05    2        4");
-        psMetadata *out = psMetadataConfigParse(NULL, NULL, str1, false);
-        psMetadataItem *tempItem = psMetadataGet(out, PS_LIST_HEAD);
-        ok( out != NULL && tempItem == NULL,
-            "psMetadataConfigParse: return empty metadata for invalid "
-            "string input.");
-        psFree(out);
-        ok(!psMemCheckLeaks (id, NULL, NULL, false), "no memory leaks");
-    }
-
-    // Return correct metadata for correct string input - S32
-    {
-        psMemId id = psMemGetId();
-        char str2[70];
-        strcpy(str2, "new S32       666");
-        psMetadata *out = psMetadataConfigParse(NULL, NULL, str2, false);
-        psMetadataItem *tempItem = psMetadataGet(out, PS_LIST_HEAD);
-        ok( out != NULL && tempItem != NULL,
-            "psMetadataConfigParse: return correct metadata for valid "
-            "string input. (S32)");
-        skip_start(  tempItem == NULL, 2,
-                     "Skipping 1 tests because metadata container is empty!");
-        ok( tempItem->type == PS_TYPE_S32 && tempItem->data.S32 == 666,
-            "psMetadataConfigParse: return correct metadataItem data (S32)");
-        ok_str( tempItem->name, "new",
-                "psMetadataConfigParse: return correct metadataItem name (S32)");
-        skip_end();
-        psFree(out);
-        ok(!psMemCheckLeaks (id, NULL, NULL, false), "no memory leaks");
-    }
-
-    // Return correct metadata for correct string input - F64
-    {
-        psMemId id = psMemGetId();
-        char str3[70];
-        strcpy(str3, "item4            F64       6.28");
-        psMetadata *out = psMetadataConfigParse(NULL, NULL, str3, false);
-        psMetadataItem *tempItem = psMetadataGet(out, PS_LIST_HEAD);
-        ok( out != NULL && tempItem != NULL,
-            "psMetadataConfigParse: return correct metadata for valid "
-            "string input. (F64)");
-        skip_start(  tempItem == NULL, 2,
-                     "Skipping 1 tests because metadata container is empty!");
-        ok( tempItem->type == PS_DATA_F64,
-            "psMetadataConfigParse: return correct metadataItem data (F64) "
-            "from outputted metadata.");
-        ok_float(6.28, tempItem->data.F64,
-                 "psMetadataConfigParse: return correct metadataItem data (F64) "
-                 "value.");
-        ok_str( tempItem->name, "item4",
-                "psMetadataConfigParse: return correct metadataItem name (F64)");
-        skip_end();
-        psFree(out);
-        ok(!psMemCheckLeaks (id, NULL, NULL, false), "no memory leaks");
-    }
-
-    // Return correct metadata for string with duplicate entry - S8
-    {
-        psMemId id = psMemGetId();
-        char str4[70];
-        strcpy(str4, "item8            S8        3\nitem8            S8        5");
-        unsigned int nfail = 0;
-        psMetadata *out = psMetadataConfigParse(NULL, &nfail, str4, false);
-        psMetadataItem *tempItem = psMetadataGet(out, PS_LIST_HEAD);
-        ok( out != NULL && tempItem != NULL && out->list->n == 1  && nfail == 1,
-            "psMetadataConfigParse: return correct metadata for string "
-            "with duplicate entry. (S8)");
-        skip_start(  tempItem == NULL, 2,
-                     "Skipping 1 tests because metadata container is empty!");
-        ok( tempItem->type == PS_TYPE_S8 && tempItem->data.S8 == 3,
-            "psMetadataConfigParse: return correct metadataItem data (S8)");
-        ok_str( tempItem->name, "item8",
-                "psMetadataConfigParse: return correct metadataItem name (S8)");
-        skip_end();
-        psFree(out);
-        ok(!psMemCheckLeaks (id, NULL, NULL, false), "no memory leaks");
-    }
-
-    //Return correct metadata for correct string input - Vector
-    {
-        psMemId id = psMemGetId();
-        char str7[70];
-        strcpy(str7, "@vector6 U8 1 2 3 4 5   # I am a vector");
-        psMetadata *out = psMetadataConfigParse(NULL, NULL, str7, true);
-        psMetadataItem *tempItem = psMetadataGet(out, PS_LIST_HEAD);
-        ok( out != NULL && tempItem != NULL,
-            "psMetadataConfigParse: return correct metadata for valid "
-            "string input. (Vector)");
-        skip_start(  tempItem == NULL, 2,
-                     "Skipping 1 tests because metadata container is empty!");
-        ok( tempItem->type == PS_DATA_VECTOR
-            && ((psVector*)(tempItem->data.V))->data.U8[0] == 1,
-            "psMetadataConfigParse: return correct metadataItem data (Vector) ");
-        ok_str( tempItem->name, "vector6",
-                "psMetadataConfigParse: return correct metadataItem name (Vector)");
-        skip_end();
-        psFree(out);
-        ok(!psMemCheckLeaks (id, NULL, NULL, false), "no memory leaks");
-    }
-
-    //Return empty metadata for incorrect string input
-    {
-        psMemId id = psMemGetId();
-        char str9[70];
-        strcpy(str9, "END\n");
-        psMetadata *out = psMetadataConfigParse(NULL, NULL, str9, false);
-        psMetadataItem *tempItem = psMetadataGet(out, PS_LIST_HEAD);
-        ok( out != NULL && tempItem == NULL,
-            "psMetadataConfigParse: return empty metadata for invalid "
-            "string input.");
-        psFree(out);
-        ok(!psMemCheckLeaks (id, NULL, NULL, false), "no memory leaks");
-    }
+    done();
 }
-
