Index: /trunk/psLib/test/types/Makefile.am
===================================================================
--- /trunk/psLib/test/types/Makefile.am	(revision 12475)
+++ /trunk/psLib/test/types/Makefile.am	(revision 12476)
@@ -10,4 +10,6 @@
 	$(PSLIB_LIBS)
 AM_CFLAGS = -DXML_CONFIG_FILE="\"$(top_srcdir)/etc/pslib/psTime.xml\""
+
+TESTS_ENVIRONMENT="TEST_PWD=foo/$(srcdir)"
 
 TEST_PROGS = \
Index: /trunk/psLib/test/types/tap_psMetadataConfig_input.c
===================================================================
--- /trunk/psLib/test/types/tap_psMetadataConfig_input.c	(revision 12475)
+++ /trunk/psLib/test/types/tap_psMetadataConfig_input.c	(revision 12476)
@@ -20,7 +20,18 @@
 #include "pstap.h"
 
-int main(void)
+int main(int argc, char* argv[])
 {
     plan_tests(30 + 1);
+
+    // chdir to the dir the test files are in
+//    char *path = getenv("TEST_PWD");
+    printf("path=%s\n", argv[0]);
+#if 0
+    if (path) {
+        if (!chdir(path)) {
+            done();
+        }
+    }
+#endif
 
     psLogSetFormat("HLNM");
Index: /trunk/psLib/test/types/tap_psMetadata_copying.c
===================================================================
--- /trunk/psLib/test/types/tap_psMetadata_copying.c	(revision 12475)
+++ /trunk/psLib/test/types/tap_psMetadata_copying.c	(revision 12476)
@@ -24,7 +24,5 @@
 {
     psLogSetFormat("HLNM");
-    plan_tests(36);
-
-    note("psMetadataCopy and psMetadataItemCopy tests");
+    plan_tests(39);
 
     testMetadataCopy();
@@ -37,5 +35,4 @@
 void testMetadataCopy(void)
 {
-    note("  >>>Test 1:  psMetadataCopy");
     psMetadata *in = NULL;
     psMetadata *out = NULL;
@@ -166,6 +163,4 @@
 void testMetadataItemCopy(void)
 {
-    note("  >>>Test 2:  psMetadataItemCopy");
-
     //Return NULL for NULL input psMetadataItem
     {
@@ -179,5 +174,5 @@
     psMetadataItem *itemS16 =  psMetadataItemAlloc("itemS16", PS_DATA_S16, "", 2);
     psMetadataItem *itemS32 =  psMetadataItemAlloc("itemS32", PS_DATA_S32, "", 3);
-    psMetadataItem *itemS64 =  psMetadataItemAlloc("itemS64", PS_DATA_S64, "", 4);
+    psMetadataItem *itemS64 =  psMetadataItemAlloc("itemS64", PS_DATA_S64, "", (psS64)4);
     psMetadataItem *itemU8  =  psMetadataItemAlloc("itemU8", PS_DATA_U8, "", 1);
     psMetadataItem *itemU16 =  psMetadataItemAlloc("itemU16", PS_DATA_U16, "", 2);
@@ -220,12 +215,17 @@
         psFree(copy);
     }
-    //S64 case
-    {
-        copy = psMetadataItemCopy(itemS64);
-        ok( (copy->type == PS_DATA_S64 && (strncmp(copy->name, "itemS64", 10) == 0) &&
-             copy->data.S64 == 4 && strncmp(copy->comment, "", 2) == 0),
-            "psMetadataItemCopy:  return valid copy of S64 item.");
-        psFree(copy);
-    }
+
+    // S64 case
+    {
+        psMetadataItem *copy = psMetadataItemCopy(itemS64);
+
+        ok(copy->type == PS_DATA_S64, "item type");
+        ok_str(copy->name, "itemS64", "item name");
+        is_long(copy->data.S64, 4, "item data");
+        ok_str(copy->comment, "", "item comment");
+
+        psFree(copy);
+    }
+
     //U8 case
     {
@@ -427,5 +427,4 @@
 void testMetadataItemTransfer(void)
 {
-    note("  >>>Test 3:  psMetadataItemSupplement");
     psMetadata *out = psMetadataAlloc();
     psMetadata *in = psMetadataAlloc();
