Index: /trunk/psLib/src/astronomy/Makefile.am
===================================================================
--- /trunk/psLib/src/astronomy/Makefile.am	(revision 3689)
+++ /trunk/psLib/src/astronomy/Makefile.am	(revision 3690)
@@ -14,9 +14,6 @@
 libpslibastronomy_la_SOURCES = \
 	psTime.c \
-	psMetadata.c \
-	psMetadataIO.c \
 	psCoord.c \
 	psAstrometry.c \
-	psDB.c \
         aoppa.f aopqk.f oapqk.f airmas.f eqeqx.f geoc.f refco.f aoppat.f \
         dranrm.f dcs2c.f refz.f refro.f dcc2s.f gmst.f atms.f atmt.f nutc.f drange.f
@@ -32,10 +29,7 @@
 pslibinclude_HEADERS = \
 	psTime.h \
-	psMetadata.h \
-	psMetadataIO.h \
 	psCoord.h \
 	psAstrometry.h \
 	psPhotometry.h \
-	psDB.h \
 	slalib.h
 
Index: /trunk/psLib/src/collections/Makefile.am
===================================================================
--- /trunk/psLib/src/collections/Makefile.am	(revision 3689)
+++ /trunk/psLib/src/collections/Makefile.am	(revision 3690)
@@ -1,4 +1,5 @@
 #Makefile for collections functions of psLib
 #
+
 INCLUDES = \
 	-I$(top_srcdir)/src/astronomy \
@@ -18,5 +19,7 @@
 	psCompare.c \
 	psArray.c \
-	psHash.c
+	psHash.c \
+	psMetadata.c \
+	psMetadataIO.c
 
 BUILT_SOURCES = psCollectionsErrors.h
@@ -34,4 +37,6 @@
 	psCompare.h \
 	psArray.h \
-	psHash.h
+	psHash.h \
+	psMetadata.h \
+	psMetadataIO.h
 
Index: /trunk/psLib/src/dataIO/Makefile.am
===================================================================
--- /trunk/psLib/src/dataIO/Makefile.am	(revision 3689)
+++ /trunk/psLib/src/dataIO/Makefile.am	(revision 3690)
@@ -13,5 +13,7 @@
 libpslibdataIO_la_SOURCES = \
 	psLookupTable.c \
-	psFits.c
+	psFits.c \
+	psDB.c
+
 
 BUILT_SOURCES = psFileUtilsErrors.h
@@ -24,4 +26,5 @@
 pslibinclude_HEADERS = \
 	psLookupTable.h \
-	psFits.h
+	psFits.h \
+	psDB.h
 
Index: /trunk/psLib/src/fileUtils/Makefile.am
===================================================================
--- /trunk/psLib/src/fileUtils/Makefile.am	(revision 3689)
+++ /trunk/psLib/src/fileUtils/Makefile.am	(revision 3690)
@@ -13,5 +13,7 @@
 libpslibdataIO_la_SOURCES = \
 	psLookupTable.c \
-	psFits.c
+	psFits.c \
+	psDB.c
+
 
 BUILT_SOURCES = psFileUtilsErrors.h
@@ -24,4 +26,5 @@
 pslibinclude_HEADERS = \
 	psLookupTable.h \
-	psFits.h
+	psFits.h \
+	psDB.h
 
Index: /trunk/psLib/test/FullUnitTest
===================================================================
--- /trunk/psLib/test/FullUnitTest	(revision 3689)
+++ /trunk/psLib/test/FullUnitTest	(revision 3690)
@@ -19,10 +19,14 @@
 #  RETURN : integer number of tests which failed
 #
-#  $Revision: 1.21 $  $Name: not supported by cvs2svn $
-#  $Date: 2005-03-31 23:37:09 $
+#  $Revision: 1.22 $  $Name: not supported by cvs2svn $
+#  $Date: 2005-04-09 00:04:57 $
 #
 #  Copyright 2004 Maui High Performance Computing Center, University of Hawaii
 #
 ##############################################################################
+
+use FindBin qw($Bin);
+
+$runTest = "$Bin/runTest";
 
 # Provide functions for determining the pathname of current working directory
@@ -311,36 +315,15 @@
             $totalTestDrivers++;
 
-            # Perform subdirectory checks only the first time a test
-            # file is found with the list of enteries
-            if ( $initialTest == 0 ) {
-                $initialTest++;
-
-                # Check for a temp subdirectory already exists and if not
-                # then create one
-                &checkForTempDirectory();
-
-                # Check for the presence of verified directory
-                if ( &checkForVerifiedDirectory() ) {
-
-    # Display message to user that verified directories do not
-    # exist eventhough TST files have been found
-    #                    print("Unable to execute test drivers in $base_dir\n");
-                    print("No verified subdirectory present.\n") if ($verbose);
-
-               # Increment test fail count
-               #                   $testDriverFailCount++;
-               # Save the file failed
-               #                    push(@testsFailed, $pwd . "/" . $files[$j]);
-               #                    return;
-                }
-            }
-
             # Display message to user of which test driver is being executed
             print("--- Executing test driver $files[$j]\n") if ( !$silent );
 
             # Execute the test driver
-            system(
-"./$files[$j] 1> temp/$files[$j].stdout 2> temp/$files[$j].stderr"
-            );
+            if ($silent) {
+                system("$runTest --quiet ./$files[$j]");
+            } elsif ($verbose) {
+                system("$runTest --printpassfail ./$files[$j]");
+            } else {
+                system("$runTest ./$files[$j]");
+            }
             $retVal = $?;
 
@@ -357,6 +340,5 @@
 
             # Check result of test driver
-            if (   ( ( $retVal != 0 ) && ( $files[$j] =~ /^TST/i ) )
-                || ( ( $retVal == 0 ) && ( $files[$j] =~ /^ATST/i ) ) )
+            if ( $retVal != 0 )
             {
 
@@ -372,59 +354,4 @@
                 push( @testsFailed, $pwd . "/" . $files[$j] );
             }
-            else {
-
-               # Create filter versions of STDOUT and STDERR to replace variable
-               # items such as date, time and host
-                &filterStdFiles( $files[$j] );
-
-                # Perform difference on STDOUT file collected
-                # with verified files
-                $exitValue = &compareStream("verified/$files[$j].stdout");
-                if ( $exitValue & 2 ) {
-
-                    # STDOUT verified doesn't exist. Search STDOUT capture
-                    # for strings indicating error or failure
-                    $exitValue |= &errorStrSearch("$files[$j].stdout");
-                }
-                if ( ( $exitValue & 8 ) || ( $exitValue & 64 ) ) {
-
-                    # Increment the total number of test failed
-                    $testDriverFailCount++;
-
-                    # Push test on failed list
-                    print(
-"Test failed ($failPoints out of $totalPoints testpoints failed)\n"
-                      )
-                      if ( !$silent );
-                    push( @testsFailed, $pwd . "/" . $files[$j] );
-                }
-                else {
-
-                    # Perform difference on STDERR file collection with verified
-                    $exitValue = &compareStream("verified/$files[$j].stderr");
-                    if ( $exitValue & 4 ) {
-
-                        # STDERR verified doesn't exist. Search STDERR capture
-                        # for strings indicating error or failure
-                        $exitValue |= &errorStrSearch("$files[$j].stderr");
-                    }
-                    if ( ( $exitValue & 16 ) || ( $exitValue & 128 ) ) {
-
-                        # Increment the total number of tests failed
-                        $testDriverFailCount++;
-
-                        # Push test on failed list
-                        print(
-"Test failed ($failPoints out of $totalPoints testpoints failed)\n"
-                          )
-                          if ( !$silent );
-                        push( @testsFailed, $pwd . "/" . $files[$j] );
-                    }
-                    else {
-                        print("Test successful ($totalPoints testpoints)\n")
-                          if ( !$silent );
-                    }
-                }
-            }
         }
         $j++;
@@ -432,272 +359,2 @@
 }
 
-################################################################################
-#
-#  SUBROUTINE: errorStrSearch
-#
-#      Description:  This subroutine will search the file specified in its
-#                    parameter for error strings and if they do exists
-#                    the appropriate value will be returned.
-#
-#      Parameter(s): fileName - input file to search for strings
-#
-#      Return:   0  -  No error strings found
-#               64  -  Error strings found in STDOUT
-#              128  -  Error strings found in STDERR
-#
-###############################################################################
-
-sub errorStrSearch {
-    local ($fileName)  = @_;
-    local ($returnVal) = 0;
-
-    # Open the captured file
-    open( CAPT_FILE, "<temp/$fileName" );
-
-    # Scan through all the lines of the file searching for error strings
-    while (<CAPT_FILE>) {
-        if (   m/FAIL/i
-            || m/FAULT/i
-            || m/ERROR/i
-            || m/Not Found/i
-            || m/SIGNAL/i
-            || m/NO SUCH FILE/i
-            || m/\|E\|/i
-            || m/\|A\|/i )
-        {
-            print;
-            if ( $fileName =~ m/out/ ) {
-                print(
-                    "        Failed - File $fileName contains error strings.\n"
-                );
-                $returnVal = 64;
-            }
-            elsif ( $fileName =~ m/err/ ) {
-                print(
-                    "        Failed - File $fileName contains error strings.\n"
-                );
-                $returnVal = 128;
-            }
-            last;
-        }
-    }
-
-    # Close the capture file
-    close(CAPT_FILE);
-
-    # Return the return value
-    return ($returnVal);
-}
-
-################################################################################
-#
-#  SUBROUTINE: compareStream
-#
-#      Description:  This subroutine will compare the captured stream file with
-#                    a file in the verified directory if one exists.
-#
-#      Parameter(s): streamFile - input file to compare
-#
-#      Return:   0  -  Compare successful
-#                2  -  STDOUT verified file doesn't exist
-#                4  -  STDERR verified file doesn't exist
-#                8  -  STDOUT verified file doesn't compare
-#               16  -  STDERR verified file doesn't compare
-#
-###############################################################################
-
-sub compareStream {
-    local ($streamFile) = @_;
-    local ($returnVal)  = 0;
-    local ($tempFile)   = "";
-
-    # Check for existence of verified STD stream files
-    if ( !( -e $streamFile ) ) {
-
-        # Display message to user that verified STDOUT file doesn't exist
-        print("        File $streamFile doesn't exist.\n") if ($verbose);
-
-        # Set exit value bit 1 to indicate proper failure
-        if ( $streamFile =~ /out$/ ) {
-            $returnVal |= 2;
-        }
-        elsif ( $streamFile =~ /err$/ ) {
-            $returnVal |= 4;
-        }
-    }
-    else {
-
-        # Verified STD stream file exists
-
-        # Create name of the temp file to compare
-        $tempFile = $streamFile;
-        $tempFile =~ s/verified/temp/;
-        $tempFile = $tempFile . ".mod";
-
-        # Perform difference on the STD stream files
-        $diffstdout = `diff $streamFile $tempFile`;
-
-        # Check the return value of the difference
-        if ( $? != 0 ) {
-
-            # Difference of STD stream files failed
-
-            # Check for STDOUT in file name to convey appropirate return value
-            if ( $streamFile =~ /out$/ ) {
-
-                # Display message of the failure of difference to user
-                print("        Failed - STDOUT difference\n$diffstdout\n");
-
-                # Exit value to indicate STDOUT did not compare
-                $returnVal |= 8;
-            }
-            elsif ( $streamFile =~ /err$/ ) {
-
-                # Display message of the failure of difference to user
-                print("        Failed - STDERR difference\n$diffstdout\n");
-
-                # Exit value to indicate STDERR did not compare
-                $returnVal |= 16;
-            }
-        }
-    }
-
-    # Return the result of the compare
-    return ($returnVal);
-}
-
-################################################################################
-#
-#  SUBROUTINE: checkForTempDirectory
-#
-#      Description:  This subroutine will check for the existence of a temp
-#                    directory to store STDOUT, STDERR files during test.  If
-#                    the subdirectory doesn't exist, it will be created.
-#
-#      Parameter(s):  None
-#
-#      Return: None
-#
-################################################################################
-
-sub checkForTempDirectory {
-
-    # Check if a temp directory already exists in the current work directory
-    if ( !( -e "temp" ) ) {
-
-        # Create temp directory to store STDOUT, STDERR files during test
-        `mkdir temp`;
-
-        # Display message of new directory created
-        print("Creating temp directory\n") if ($verbose);
-    }
-}
-
-################################################################################
-#
-#  SUBROUTINE: checkForVerifiedDirectory
-#
-#      Description:  This subroutine will check for the existence of a verified
-#                    directory which stores verified STDOUT, STDERR files for
-#                    comparison during the test.
-#
-#      Parameter(s):  None
-#
-#      Return: 0 - subdirectory present
-#              1 - subdirectory not present
-#
-################################################################################
-
-sub checkForVerifiedDirectory {
-    $returnValue = 0;
-
-    # Check if verified subdirectory exists in the current working directory
-    if ( !( -e "verified" ) ) {
-
-        # Set return value to 1
-        $returnValue = 1;
-    }
-    return ($returnValue);
-}
-
-################################################################################
-#
-#  SUBROUTINE: filterStdFiles
-#
-#      Description:  This subroutine will filter variable items in the STDOUT
-#                    and STDERR files captured.  Date, time and host names
-#                    are variable items in the log messages captured.
-#
-#      Parameter(s):  test file name
-#
-#      Return: None
-#
-################################################################################
-
-sub filterStdFiles {
-
-    local ($fileName) = @_;
-
-    # Open the STDOUT file for reading
-    open( OUTFILE, "< temp/$fileName.stdout" );
-
-    # Open mod file to place filtered STDOUT
-    open( MODFILE, "> temp/$fileName.stdout.mod" );
-
-    # Replace the variable data, time and host information with constants
-    $hostname = `hostname`;
-    chop $hostname;
-    while (<OUTFILE>) {
-        s/\s+\d+:\d+:\d+\w/<TIME>/g;
-        s/\d+:\d+:\d+/<DATE>/g;
-        s/$hostname\s*/<HOST>/g;
-        s/: Line \d+/: Line <LINENO>/g;
-        s/\(.*\:\d+\)/\(FILE\:LINENO\)/g;
-        s/\s+[\_\-\/\.\w]+\:\d+/ FILE\:LINENO/g;
-        s/allocate \d+ bytes at/allocate <N> bytes at/g;
-        s/v\d+.\d+.\d+/vX.X.X/g;
-
-        # Filter lines with *** malloc.  This is an artifact of Mac testing of
-        # memory functions
-        if ( !m/\*\*\*\smalloc/ ) {
-            print MODFILE ($_);
-        }
-    }
-
-    # Close mod file
-    close(MODFILE);
-
-    # Close STDERR file
-    close(OUTFILE);
-
-    # Open the STDERR file for reading
-    open( OUTFILE, "< temp/$fileName.stderr" );
-
-    # Open mod file to place filtered STDERR
-    open( MODFILE, "> temp/$fileName.stderr.mod" );
-
-    # Replace the variable date, time and host information with constants
-    while (<OUTFILE>) {
-        s/\s+\d+:\d+:\d+\w/<TIME>/g;
-        s/\d+:\d+:\d+/<DATE>/g;
-        s/$hostname\s*/<HOST>/g;
-        s/: Line \d+/: Line <LINENO>/g;
-        s/\(.*\:\d+\)/\(FILE\:LINENO\)/g;
-        s/\s+[\_\-\/\.\w]+\:\d+/ FILE\:LINENO/g;
-        s/allocate \d+ bytes at/allocate <N> bytes at/g;
-        s/v\d+.\d+.\d+/vX.X.X/g;
-
-        # Filter lines with *** malloc.  This is an artifact of Mac testing of
-        # memory functions
-        if ( !m/\*\*\*\smalloc/ ) {
-            print MODFILE ($_);
-        }
-    }
-
-    # Close mod file
-    close(MODFILE);
-
-    # Close STDERR file
-    close(OUTFILE);
-}
-
Index: /trunk/psLib/test/astronomy/.cvsignore
===================================================================
--- /trunk/psLib/test/astronomy/.cvsignore	(revision 3689)
+++ /trunk/psLib/test/astronomy/.cvsignore	(revision 3690)
@@ -7,16 +7,7 @@
 tst_psTime_01
 tst_psTime_02
-tst_psMetadata05_OUT
-tst_psMetadata_01
-tst_psMetadata_02
-tst_psMetadata_03
-tst_psMetadata_04
-tst_psMetadata_05
-tst_psMetadata_06
 tst_psAstrometry
 tst_psAstrometry01
 tst_psCoord
-tst_psMetadataIO
-tst_psMetadata_07
 tst_psTime_03
 tst_psTime_04
@@ -26,9 +17,5 @@
 .deps
 .libs
-header_1.fits
-header_2.fits
-test.config
 test.ser7.dat
 tst_psCoord01
-tst_psDB
 
Index: /trunk/psLib/test/astronomy/Makefile.am
===================================================================
--- /trunk/psLib/test/astronomy/Makefile.am	(revision 3689)
+++ /trunk/psLib/test/astronomy/Makefile.am	(revision 3690)
@@ -12,5 +12,4 @@
 
 AM_LDFLAGS = -L$(top_builddir)/src -lpslib $(PSLIB_LIBS)
-AM_CFLAGS = -DXML_CONFIG_FILE="\"$(top_srcdir)/etc/pslib/psTime.xml\""
 
 TESTS = tst_psTime_01 \
@@ -18,15 +17,6 @@
          tst_psTime_03 \
          tst_psTime_04 \
-         tst_psMetadataIO  \
-         tst_psMetadata_01 \
-         tst_psMetadata_02 \
-         tst_psMetadata_03 \
-         tst_psMetadata_04 \
-         tst_psMetadata_05 \
-         tst_psMetadata_06 \
-         tst_psMetadata_07 \
          tst_psCoord \
          tst_psCoord01 \
-         @TST_PSDB@ \
          tst_psAstrometry \
          tst_psAstrometry01
@@ -34,17 +24,12 @@
 check_PROGRAMS = $(TESTS)
 
-check_DATA = test.config \
-        psTime.config \
+check_DATA = psTime.config \
         test.psTime.config1 \
         test.psTime.config2 \
         test.psTime.config3 \
         test.psTime.config4 \
-        header_1.fits \
-        header_2.fits \
         test.ser7.dat
 
 TESTS_ENVIRONMENT = export PS_CONFIG_FILE="psTime.config" && perl $(top_srcdir)/test/runTest --verified=$(srcdir)/verified
-
-EXTRA_PROGRAMS = tst_psDB
 
 tests: $(check_DATA) $(TESTS)
@@ -54,13 +39,4 @@
 tst_psTime_03_SOURCES = tst_psTime_03.c
 tst_psTime_04_SOURCES = tst_psTime_04.c
-tst_psDB_SOURCES = tst_psDB.c
-tst_psMetadataIO_SOURCES = tst_psMetadataIO.c
-tst_psMetadata_01_SOURCES = tst_psMetadata_01.c
-tst_psMetadata_02_SOURCES = tst_psMetadata_02.c
-tst_psMetadata_03_SOURCES = tst_psMetadata_03.c
-tst_psMetadata_04_SOURCES = tst_psMetadata_04.c
-tst_psMetadata_05_SOURCES = tst_psMetadata_05.c
-tst_psMetadata_06_SOURCES = tst_psMetadata_06.c
-tst_psMetadata_07_SOURCES = tst_psMetadata_07.c
 tst_psAstrometry_SOURCES = tst_psAstrometry.c
 tst_psCoord_SOURCES = tst_psCoord.c
@@ -72,7 +48,4 @@
 	data/test.psTime.config3.template \
 	data/test.psTime.config4.template \
-	data/header_1.fits \
-	data/header_2.fits \
-	data/test.config \
 	data/test.ser7.dat \
 	verified 
@@ -95,13 +68,4 @@
 	cp $? $@
 
-test.config: data/test.config
-	cp $? $@
-
-header_1.fits: data/header_1.fits
-	cp $? $@
-
-header_2.fits: data/header_2.fits
-	cp $? $@
-
 test.ser7.dat: data/test.ser7.dat
 	cp $? $@
Index: unk/psLib/test/astronomy/data/header_1.fits
===================================================================
--- /trunk/psLib/test/astronomy/data/header_1.fits	(revision 3689)
+++ 	(revision )
@@ -1,1 +1,0 @@
-SIMPLE  =                    T / file does conform to FITS standard             BITPIX  =                    8 / number of bits per data pixel                  NAXIS   =                    0 / number of data axes                            HISTORY File modified by user 'harman' with fv  on 2004-08-04T11:11:18          END                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                             
Index: unk/psLib/test/astronomy/data/header_2.fits
===================================================================
--- /trunk/psLib/test/astronomy/data/header_2.fits	(revision 3689)
+++ 	(revision )
@@ -1,1 +1,0 @@
-SIMPLE  =                    T / file does conform to FITS standard             BITPIX  =                  -64 / number of bits per data pixel                  NAXIS   =                    1 / number of data axes                            NAXIS1  =                   64 / length of data axis 1                          EXTEND  =                    T / FITS dataset may contain extensions            COMMENT   FITS (Flexible Image Transport System) format is defined in 'AstronomyCOMMENT   and Astrophysics', volume 376, page 359; bibcode: 2001A&A...376..359H END                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                             XTENSION= 'IMAGE   '           / IMAGE extension                                BITPIX  =                  -64 / number of bits per data pixel                  NAXIS   =                    1 / number of data axes                            NAXIS1  =                   64 / length of data axis 1                          PCOUNT  =                    0 / required keyword; must = 0                     GCOUNT  =                    1 / required keyword; must = 1                     BITPIX  =                  -64 / number of bits per data pixel                  EXTNAME = 'MY_DATA_1'                                                           HISTORY File modified by user 'harman' with fv  on 2004-08-04T13:14:45          HISTORY File modified by user 'harman' with fv  on 2004-08-04T13:15:29          HISTORY File modified by user 'harman' with fv  on 2004-08-04T13:21:18          HISTORY File modified by user 'harman' with fv  on 2004-08-04T13:21:46          END                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                             XTENSION= 'IMAGE   '           / IMAGE extension                                BITPIX  =                  -64 / number of bits per data pixel                  NAXIS   =                    1 / number of data axes                            NAXIS1  =                   64 / length of data axis 1                          PCOUNT  =                    0 / required keyword; must = 0                     GCOUNT  =                    1 / required keyword; must = 1                     EXTNAME = 'MY_DATA_2'                                                           HISTORY File modified by user 'harman' with fv  on 2004-08-04T13:22:12          HISTORY File modified by user 'harman' with fv  on 2004-08-04T13:22:52          END                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                             
Index: unk/psLib/test/astronomy/data/test.config
===================================================================
--- /trunk/psLib/test/astronomy/data/test.config	(revision 3689)
+++ 	(revision )
@@ -1,128 +1,0 @@
-##########################################################################################################
-#  test.config
-#
-#  This is a sample metadata configuration file used to test the metadata configuration file parser. 
-#  It tests both positive and negative cases as described in the comments below.
-#
-#  author  Ross Harman, MHPCC
-#
-#  version $Revision: 1.2 $  $Name: not supported by cvs2svn $
-#  date  $Date: 2005-03-07 20:58:50 $
-#
-#  Copyright 2004 Maui High Performance Computing Center, University of Hawaii
-##########################################################################################################
-#
-#
-#
-########## Test 1 ##########
-# Lines beginning with # are comments. The line below, as well as those above are comments. They should be ignored by the parser.
-# I am a comment.
-#
-#
-#
-########## Test 2 ##########
-# The line below is a comment that begins with some whitespace. It should be ignored by the parser.
-      #        		Another comment
-#
-#
-#
-########## Test 3 ##########
-# The line below is completely blank except for a carriage return. It should be ignored by the parser.
-
-#
-#
-#
-########## Test 4 ##########
-# The line below consists of spaces and tabs (whitespace). It should be ignored by the parser.
-     	   			                    
-#
-#
-#
-########## Test 5 ##########
-# The line below consists of a variable name, type, value, and trailing comment. It should be read by the parser
-pi          F64         3.1415926535897932384626433832795029        # Definition of pi
-#
-#
-#
-########## Test 6 ##########
-# The line below consists of a variable name, type, and value, but without a trailing comment. It should be read by the parser.
-altitude          S32         10000   
-#
-#
-#
-########## Test 7 ##########
-# The lines below contain variations in name, type, value, trailing comment, and whitespace. They should all be read by the parser.
-   time F32 1234.5678 
- myBool     BOOL            F           # F, f, 0, T, t, 1 are also acceptable
-title1  STR   Hello world #This is a comment for the string value
-    title2  STRING   Good bye world   #    STRING or STR may be used as the string type 
-#
-#
-#
-########## Test 8 ##########
-# The line below creates a vector. It should be read by the parser.
-@primes     S32     2, 3, 5, 7, 11, 13, 17   # These are prime numbers
-#
-#
-#
-########## Test 9 ##########
-# The line below creates a vector with commas mixed with spaces in the values. It should be read by the parser.
-@negatives  S32     -1,  -2 -3    -4, -5, -6,      -7
-#
-#
-#
-########## Test 10  ##########
-# The lines below should create a folder node with children that are strings. They should be read by the parser.
-comment *STR This
-comment *STR     is
-comment *STR         an
-comment *STR             ugly
-comment *STR                 comment
-comment *STR                         but
-comment *STR                             still
-comment *STR                                 valid
-#
-#
-#
-########## Test 11  ##########
-# The line below contains an incorrect value. It should produce an error.
-xPosition    F64          9876.54qqq32
-#
-#
-#
-########## Test 12  ##########
-# The line below contains no value. It should produce an error.
-yPosition    F64          
-#
-#
-#
-########## Test 13  ##########
-# The line below contains no type. It should produce an error.
-zPosition       99.999          
-#
-#
-#
-########## Test 14  ##########
-# The line below contains two * characters. It should produce an error.
-aPosition   **          
-#
-#
-#
-########## Test 15 ##########
-# The line below contains two @ characters. It should produce an error.
-@@bPosition     F64     22.33             
-#
-#
-#
-########## Test 16 ##########
-# The line below contains a ~ character used for special processing. It should produce an error.
-range     F64     140.0 ~             
-#
-#
-#
-########## Test 17 ##########
-# The variable name below is repeated. It should produce an error if the overwrite function argument is set to false.
-# If overwrite is true, then the last name and value will be stored and there will be no error.
-speed     F32     55.55
-speed     F32     66.66
-             
Index: /trunk/psLib/test/astronomy/tst_psAstrometry01.c
===================================================================
--- /trunk/psLib/test/astronomy/tst_psAstrometry01.c	(revision 3689)
+++ /trunk/psLib/test/astronomy/tst_psAstrometry01.c	(revision 3690)
@@ -5,6 +5,6 @@
 *  @author GLG, MHPCC
 *
-*  @version $Revision: 1.18 $ $Name: not supported by cvs2svn $
-*  @date $Date: 2005-04-07 20:27:41 $
+*  @version $Revision: 1.19 $ $Name: not supported by cvs2svn $
+*  @date $Date: 2005-04-09 00:04:57 $
 *
 * XXX: Must test
@@ -106,5 +106,5 @@
 {\
     NAME = (psPlaneTransform *) psAlloc(sizeof(psPlaneTransform)); \
-    p_psMemSetDeallocator(NAME, (psFreeFcn) psPlaneTransformFree); \
+    psMemSetDeallocator(NAME, (psFreeFcn) psPlaneTransformFree); \
     NAME->x = psDPolynomial2DAlloc(2, 2, PS_POLYNOMIAL_ORD); \
     NAME->y = psDPolynomial2DAlloc(2, 2, PS_POLYNOMIAL_ORD); \
@@ -116,5 +116,5 @@
 {\
     NAME = (psPlaneDistort *) psAlloc(sizeof(psPlaneDistort)); \
-    p_psMemSetDeallocator(NAME, (psFreeFcn) psPlaneDistortFree); \
+    psMemSetDeallocator(NAME, (psFreeFcn) psPlaneDistortFree); \
     NAME->x = psDPolynomial4DAlloc(2, 2, 2, 2, PS_POLYNOMIAL_ORD); \
     NAME->y = psDPolynomial4DAlloc(2, 2, 2, 2, PS_POLYNOMIAL_ORD); \
Index: unk/psLib/test/astronomy/verified/tst_psDB.stderr
===================================================================
--- /trunk/psLib/test/astronomy/verified/tst_psDB.stderr	(revision 3689)
+++ 	(revision )
@@ -1,305 +1,0 @@
-/***************************** TESTPOINT ******************************************\
-*             TestFile: tst_psDB.c                                                 *
-*            TestPoint: psDB{dbInit}                                               *
-*             TestType: Positive                                                   *
-\**********************************************************************************/
-
-<DATE><TIME>|<HOST>|I|TPDBInit
-    psDBInit/psDBCleanup shall initialize/cleanup database connection.
-<DATE><TIME>|<HOST>|I|_init_psDB
-    initialize database connection...
-
----> TESTPOINT PASSED (psDB{dbInit} | tst_psDB.c)
-
-/***************************** TESTPOINT ******************************************\
-*             TestFile: tst_psDB.c                                                 *
-*            TestPoint: psDB{dbChange}                                             *
-*             TestType: Positive                                                   *
-\**********************************************************************************/
-
-<DATE><TIME>|<HOST>|I|_init_psDB
-    initialize database connection...
-<DATE><TIME>|<HOST>|I|TPDBChange
-    psDBChange shall change to a new test database.
-
----> TESTPOINT PASSED (psDB{dbChange} | tst_psDB.c)
-
-/***************************** TESTPOINT ******************************************\
-*             TestFile: tst_psDB.c                                                 *
-*            TestPoint: psDB{dbCreateTable}                                        *
-*             TestType: Positive                                                   *
-\**********************************************************************************/
-
-<DATE><TIME>|<HOST>|I|_init_psDB
-    initialize database connection...
-<DATE><TIME>|<HOST>|I|TPDBCreateTable
-    psDBCreateTable shall create a new table in the new test database.
-
----> TESTPOINT PASSED (psDB{dbCreateTable} | tst_psDB.c)
-
-/***************************** TESTPOINT ******************************************\
-*             TestFile: tst_psDB.c                                                 *
-*            TestPoint: psDB{dbDropTable}                                          *
-*             TestType: Positive                                                   *
-\**********************************************************************************/
-
-<DATE><TIME>|<HOST>|I|_init_psDB
-    initialize database connection...
-<DATE><TIME>|<HOST>|I|TPDBDropTable
-    psDBDropTable shall create/drop a new table in the new test database.
-<DATE><TIME>|<HOST>|I|TPDBDropTable
-    psDBDropTable: insert should fail here...
-<DATE><TIME>|<HOST>|E|psDBInsertRows (FILE:LINENO)
-    Failed to prepare query.  Error: Table 'test.table2' doesn't exist
-<DATE><TIME>|<HOST>|E|psDBInsertOneRow (FILE:LINENO)
-    Insert failed.
-
----> TESTPOINT PASSED (psDB{dbDropTable} | tst_psDB.c)
-
-/***************************** TESTPOINT ******************************************\
-*             TestFile: tst_psDB.c                                                 *
-*            TestPoint: psDB{dbSelectColumn}                                       *
-*             TestType: Positive                                                   *
-\**********************************************************************************/
-
-<DATE><TIME>|<HOST>|I|_init_psDB
-    initialize database connection...
-<DATE><TIME>|<HOST>|I|TPDBSelectColumn
-    psDBSelectColumn shall select data from a test table.
-<DATE><TIME>|<HOST>|I|TPDBSelectColumn
-    psDBSelectColumn: [hello world!]
-<DATE><TIME>|<HOST>|I|TPDBSelectColumn
-    psDBSelectColumn: [hello world!]
-<DATE><TIME>|<HOST>|I|TPDBSelectColumn
-    psDBSelectColumn: [hello world!]
-<DATE><TIME>|<HOST>|I|TPDBSelectColumn
-    found expected string output.
-
----> TESTPOINT PASSED (psDB{dbSelectColumn} | tst_psDB.c)
-
-/***************************** TESTPOINT ******************************************\
-*             TestFile: tst_psDB.c                                                 *
-*            TestPoint: psDB{dbSelectColumnNum}                                    *
-*             TestType: Positive                                                   *
-\**********************************************************************************/
-
-<DATE><TIME>|<HOST>|I|_init_psDB
-    initialize database connection...
-<DATE><TIME>|<HOST>|I|TPDBSelectColumnNum
-    psDBSelectColumnNum shall select data from a test table.
-<DATE><TIME>|<HOST>|I|TPDBSelectColumnNum
-    str=[1974]
-<DATE><TIME>|<HOST>|I|TPDBSelectColumnNum
-    str=[1974]
-<DATE><TIME>|<HOST>|I|TPDBSelectColumnNum
-    str=[1974]
-<DATE><TIME>|<HOST>|I|TPDBSelectColumnNum
-    found expected S32 output.
-
----> TESTPOINT PASSED (psDB{dbSelectColumnNum} | tst_psDB.c)
-
-/***************************** TESTPOINT ******************************************\
-*             TestFile: tst_psDB.c                                                 *
-*            TestPoint: psDB{dbSelectRows}                                         *
-*             TestType: Positive                                                   *
-\**********************************************************************************/
-
-<DATE><TIME>|<HOST>|I|_init_psDB
-    initialize database connection...
-<DATE><TIME>|<HOST>|I|TPDBSelectRows
-    psDBSelectRows shall select data from a test table.
-<DATE><TIME>|<HOST>|I|_print_row
-    [key_string]=[hello world!]
-<DATE><TIME>|<HOST>|I|_print_row
-    [key_s32]=[1974]
-<DATE><TIME>|<HOST>|I|_print_row
-    [key_f32]=[3.14159]
-<DATE><TIME>|<HOST>|I|_print_row
-    [key_f64]=[2.71828]
-<DATE><TIME>|<HOST>|I|_print_row
-    [key_string]=[hello world!]
-<DATE><TIME>|<HOST>|I|_print_row
-    [key_s32]=[1974]
-<DATE><TIME>|<HOST>|I|_print_row
-    [key_f32]=[3.14159]
-<DATE><TIME>|<HOST>|I|_print_row
-    [key_f64]=[2.71828]
-<DATE><TIME>|<HOST>|I|_print_row
-    [key_string]=[hello world!]
-<DATE><TIME>|<HOST>|I|_print_row
-    [key_s32]=[1974]
-<DATE><TIME>|<HOST>|I|_print_row
-    [key_f32]=[3.14159]
-<DATE><TIME>|<HOST>|I|_print_row
-    [key_f64]=[2.71828]
-<DATE><TIME>|<HOST>|I|TPDBSelectRows
-    found expected output.
-
----> TESTPOINT PASSED (psDB{dbSelectRows} | tst_psDB.c)
-
-/***************************** TESTPOINT ******************************************\
-*             TestFile: tst_psDB.c                                                 *
-*            TestPoint: psDB{dbInsertOneRow}                                       *
-*             TestType: Positive                                                   *
-\**********************************************************************************/
-
-<DATE><TIME>|<HOST>|I|_init_psDB
-    initialize database connection...
-<DATE><TIME>|<HOST>|I|TPDBInsertOneRow
-    psDBInsertOneRow shall insert a row into a test table.
-
----> TESTPOINT PASSED (psDB{dbInsertOneRow} | tst_psDB.c)
-
-/***************************** TESTPOINT ******************************************\
-*             TestFile: tst_psDB.c                                                 *
-*            TestPoint: psDB{dbInsertRows}                                         *
-*             TestType: Positive                                                   *
-\**********************************************************************************/
-
-<DATE><TIME>|<HOST>|I|_init_psDB
-    initialize database connection...
-<DATE><TIME>|<HOST>|I|TPDBInsertRows
-    psDBInsertRows shall insert rows into a test table.
-<DATE><TIME>|<HOST>|I|_print_row
-    [key_string]=[hello world!]
-<DATE><TIME>|<HOST>|I|_print_row
-    [key_s32]=[1974]
-<DATE><TIME>|<HOST>|I|_print_row
-    [key_f32]=[3.14159]
-<DATE><TIME>|<HOST>|I|_print_row
-    [key_f64]=[2.71828]
-<DATE><TIME>|<HOST>|I|_print_row
-    [key_string]=[hello world!]
-<DATE><TIME>|<HOST>|I|_print_row
-    [key_s32]=[1974]
-<DATE><TIME>|<HOST>|I|_print_row
-    [key_f32]=[3.14159]
-<DATE><TIME>|<HOST>|I|_print_row
-    [key_f64]=[2.71828]
-<DATE><TIME>|<HOST>|I|_print_row
-    [key_string]=[hello world!]
-<DATE><TIME>|<HOST>|I|_print_row
-    [key_s32]=[1974]
-<DATE><TIME>|<HOST>|I|_print_row
-    [key_f32]=[3.14159]
-<DATE><TIME>|<HOST>|I|_print_row
-    [key_f64]=[2.71828]
-<DATE><TIME>|<HOST>|I|TPDBInsertRows
-    found expected output.
-
----> TESTPOINT PASSED (psDB{dbInsertRows} | tst_psDB.c)
-
-/***************************** TESTPOINT ******************************************\
-*             TestFile: tst_psDB.c                                                 *
-*            TestPoint: psDB{dbDumpRows}                                           *
-*             TestType: Positive                                                   *
-\**********************************************************************************/
-
-<DATE><TIME>|<HOST>|I|_init_psDB
-    initialize database connection...
-<DATE><TIME>|<HOST>|I|TPDBDumpRows
-    psDBDumpRows shall dump all rows from a test table.
-<DATE><TIME>|<HOST>|I|_print_row
-    [key_string]=[hello world!]
-<DATE><TIME>|<HOST>|I|_print_row
-    [key_s32]=[1974]
-<DATE><TIME>|<HOST>|I|_print_row
-    [key_f32]=[3.14159]
-<DATE><TIME>|<HOST>|I|_print_row
-    [key_f64]=[2.71828]
-<DATE><TIME>|<HOST>|I|_print_row
-    [key_string]=[hello world!]
-<DATE><TIME>|<HOST>|I|_print_row
-    [key_s32]=[1974]
-<DATE><TIME>|<HOST>|I|_print_row
-    [key_f32]=[3.14159]
-<DATE><TIME>|<HOST>|I|_print_row
-    [key_f64]=[2.71828]
-<DATE><TIME>|<HOST>|I|_print_row
-    [key_string]=[hello world!]
-<DATE><TIME>|<HOST>|I|_print_row
-    [key_s32]=[1974]
-<DATE><TIME>|<HOST>|I|_print_row
-    [key_f32]=[3.14159]
-<DATE><TIME>|<HOST>|I|_print_row
-    [key_f64]=[2.71828]
-<DATE><TIME>|<HOST>|I|TPDBDumpRows
-    found expected output.
-
----> TESTPOINT PASSED (psDB{dbDumpRows} | tst_psDB.c)
-
-/***************************** TESTPOINT ******************************************\
-*             TestFile: tst_psDB.c                                                 *
-*            TestPoint: psDB{dbDumpCols}                                           *
-*             TestType: Positive                                                   *
-\**********************************************************************************/
-
-<DATE><TIME>|<HOST>|I|_init_psDB
-    initialize database connection...
-<DATE><TIME>|<HOST>|I|TPDBDumpCols
-    psDBDumpCols shall dump all cols from a test table.
-<DATE><TIME>|<HOST>|I|_print_row
-    [key_string]=[]
-<DATE><TIME>|<HOST>|I|_print_row
-    [key_s32]=[0]
-<DATE><TIME>|<HOST>|I|_print_row
-    [key_f32]=[0]
-<DATE><TIME>|<HOST>|I|_print_row
-    [key_f64]=[0]
-
----> TESTPOINT PASSED (psDB{dbDumpCols} | tst_psDB.c)
-
-/***************************** TESTPOINT ******************************************\
-*             TestFile: tst_psDB.c                                                 *
-*            TestPoint: psDB{dbUpdateRows}                                         *
-*             TestType: Positive                                                   *
-\**********************************************************************************/
-
-<DATE><TIME>|<HOST>|I|_init_psDB
-    initialize database connection...
-<DATE><TIME>|<HOST>|I|TPDBUpdateRows
-    psDBUpdateRows shall update rows in a test table.
-<DATE><TIME>|<HOST>|I|_print_row
-    [key_string]=[foobar]
-<DATE><TIME>|<HOST>|I|_print_row
-    [key_s32]=[-18]
-<DATE><TIME>|<HOST>|I|_print_row
-    [key_f32]=[3.33]
-<DATE><TIME>|<HOST>|I|_print_row
-    [key_f64]=[1.23457]
-<DATE><TIME>|<HOST>|I|_print_row
-    [key_string]=[foobar]
-<DATE><TIME>|<HOST>|I|_print_row
-    [key_s32]=[-18]
-<DATE><TIME>|<HOST>|I|_print_row
-    [key_f32]=[3.33]
-<DATE><TIME>|<HOST>|I|_print_row
-    [key_f64]=[1.23457]
-<DATE><TIME>|<HOST>|I|_print_row
-    [key_string]=[foobar]
-<DATE><TIME>|<HOST>|I|_print_row
-    [key_s32]=[-18]
-<DATE><TIME>|<HOST>|I|_print_row
-    [key_f32]=[3.33]
-<DATE><TIME>|<HOST>|I|_print_row
-    [key_f64]=[1.23457]
-<DATE><TIME>|<HOST>|I|TPDBUpdateRows
-    found expected output.
-
----> TESTPOINT PASSED (psDB{dbUpdateRows} | tst_psDB.c)
-
-/***************************** TESTPOINT ******************************************\
-*             TestFile: tst_psDB.c                                                 *
-*            TestPoint: psDB{dbDeleteRows}                                         *
-*             TestType: Positive                                                   *
-\**********************************************************************************/
-
-<DATE><TIME>|<HOST>|I|_init_psDB
-    initialize database connection...
-<DATE><TIME>|<HOST>|I|TPDBDeleteRows
-    psDBDeleteRows shall delete rows from a test table.
-<DATE><TIME>|<HOST>|I|TPDBDeleteRows
-    found expected empty table.
-
----> TESTPOINT PASSED (psDB{dbDeleteRows} | tst_psDB.c)
-
Index: unk/psLib/test/astronomy/verified/tst_psMetadataIO.stderr
===================================================================
--- /trunk/psLib/test/astronomy/verified/tst_psMetadataIO.stderr	(revision 3689)
+++ 	(revision )
@@ -1,46 +1,0 @@
-<DATE><TIME>|<HOST>|E|psMetadataParseConfig (FILE:LINENO)
-    Failed to parse the value '9876.54qqq32' of metadata item xPosition, type F64, on line 89 of test.config.
-<DATE><TIME>|<HOST>|E|psMetadataParseConfig (FILE:LINENO)
-    Failed to read a metadata value on line 95 of test.config.
-<DATE><TIME>|<HOST>|E|psMetadataParseConfig (FILE:LINENO)
-    Metadata type '99.999', found on line 101 of test.config, is not invalid.
-<DATE><TIME>|<HOST>|E|psMetadataParseConfig (FILE:LINENO)
-    More than one '*' character not allowed.  Found on line 107 of test.config.
-<DATE><TIME>|<HOST>|E|psMetadataParseConfig (FILE:LINENO)
-    More than one '@' character not allowed.  Found on line 113 of test.config.
-<DATE><TIME>|<HOST>|E|psMetadataParseConfig (FILE:LINENO)
-    More than one '~' character not allowed.  Found on line 119 of test.config.
-<DATE><TIME>|<HOST>|E|psMetadataParseConfig (FILE:LINENO)
-    Failed to parse the value '9876.54qqq32' of metadata item xPosition, type F64, on line 89 of test.config.
-<DATE><TIME>|<HOST>|E|psMetadataParseConfig (FILE:LINENO)
-    Failed to read a metadata value on line 95 of test.config.
-<DATE><TIME>|<HOST>|E|psMetadataParseConfig (FILE:LINENO)
-    Metadata type '99.999', found on line 101 of test.config, is not invalid.
-<DATE><TIME>|<HOST>|E|psMetadataParseConfig (FILE:LINENO)
-    More than one '*' character not allowed.  Found on line 107 of test.config.
-<DATE><TIME>|<HOST>|E|psMetadataParseConfig (FILE:LINENO)
-    More than one '@' character not allowed.  Found on line 113 of test.config.
-<DATE><TIME>|<HOST>|E|psMetadataParseConfig (FILE:LINENO)
-    More than one '~' character not allowed.  Found on line 119 of test.config.
-<DATE><TIME>|<HOST>|E|psMetadataAddItem (FILE:LINENO)
-    Duplicate metadata item name is not allowed.  Use a psMetadataFlags option to allow such action.
-<DATE><TIME>|<HOST>|E|psMetadataAddV (FILE:LINENO)
-    Failed to add metadata item to metadata collection list.
-<DATE><TIME>|<HOST>|E|psMetadataParseConfig (FILE:LINENO)
-    Duplicate Metadata item, speed, found on line 127 of test.config.  Overwrite not allowed.
-<DATE><TIME>|<HOST>|E|psMetadataParseConfig (FILE:LINENO)
-    Failed to parse the value '9876.54qqq32' of metadata item xPosition, type F64, on line 89 of test.config.
-<DATE><TIME>|<HOST>|E|psMetadataParseConfig (FILE:LINENO)
-    Failed to read a metadata value on line 95 of test.config.
-<DATE><TIME>|<HOST>|E|psMetadataParseConfig (FILE:LINENO)
-    Metadata type '99.999', found on line 101 of test.config, is not invalid.
-<DATE><TIME>|<HOST>|E|psMetadataParseConfig (FILE:LINENO)
-    More than one '*' character not allowed.  Found on line 107 of test.config.
-<DATE><TIME>|<HOST>|E|psMetadataParseConfig (FILE:LINENO)
-    More than one '@' character not allowed.  Found on line 113 of test.config.
-<DATE><TIME>|<HOST>|E|psMetadataParseConfig (FILE:LINENO)
-    More than one '~' character not allowed.  Found on line 119 of test.config.
-<DATE><TIME>|<HOST>|E|psMetadataParseConfig (FILE:LINENO)
-    Unallowable operation: fileName is NULL.
-<DATE><TIME>|<HOST>|E|psMetadataParseConfig (FILE:LINENO)
-    Failed to open file 'abcedfg'. Check if it exists and it has the proper permissions.
Index: unk/psLib/test/astronomy/verified/tst_psMetadataIO.stdout
===================================================================
--- /trunk/psLib/test/astronomy/verified/tst_psMetadataIO.stdout	(revision 3689)
+++ 	(revision )
@@ -1,173 +1,0 @@
-/***************************** TESTPOINT ******************************************\
-*             TestFile: tst_psMetadataIO.c                                         *
-*            TestPoint: psMetadata{Test A - Read config file with overwrite set true} *
-*             TestType: Positive                                                   *
-\**********************************************************************************/
-
-Failed lines: 6 Expected: 6
-Contents of metadata list:
- Key Name:       pi  Key mdType: 0x00000408 Key Value:           3.142  Key Comment: Definition of pi
- Key Name: altitude  Key mdType: 0x00000104 Key Value:           10000  Key Comment: 
- Key Name:     time  Key mdType: 0x00000404 Key Value:        1234.568  Key Comment: 
- Key Name:   myBool  Key mdType: 0x00001301 Key Value:               0  Key Comment: F, f, 0, T, t, 1 are also acceptable
- Key Name:   title1  Key mdType: 0x00010001 Key Value:     Hello world  Key Comment: This is a comment for the string value
- Key Name:   title2  Key mdType: 0x00010001 Key Value:  Good bye world  Key Comment: STRING or STR may be used as the string type
- Key Name:   primes  Key mdType: 0x00010002 Key Value:   [2,3,5,7,...]  Key Comment: These are prime numbers
- Key Name: negatives  Key mdType: 0x00010002 Key Value:  [-1,-2,-3,...]  Key Comment: 
- Key Name:  comment  Key mdType: 0x00010001 Key Value:            This  Key Comment: 
- Key Name:  comment  Key mdType: 0x00010001 Key Value:              is  Key Comment: 
- Key Name:  comment  Key mdType: 0x00010001 Key Value:              an  Key Comment: 
- Key Name:  comment  Key mdType: 0x00010001 Key Value:            ugly  Key Comment: 
- Key Name:  comment  Key mdType: 0x00010001 Key Value:         comment  Key Comment: 
- Key Name:  comment  Key mdType: 0x00010001 Key Value:             but  Key Comment: 
- Key Name:  comment  Key mdType: 0x00010001 Key Value:           still  Key Comment: 
- Key Name:  comment  Key mdType: 0x00010001 Key Value:           valid  Key Comment: 
- Key Name:    speed  Key mdType: 0x00000404 Key Value:          66.660  Key Comment: 
-
-Contents of metadata table:
- Key Name:  comment  Key mdType: 0x0001000a Key Value:                  Key Comment: 
-    Key Name:  comment  Key mdType: 0x00010001 Key Value:            This  Key Comment: 
-    Key Name:  comment  Key mdType: 0x00010001 Key Value:              is  Key Comment: 
-    Key Name:  comment  Key mdType: 0x00010001 Key Value:              an  Key Comment: 
-    Key Name:  comment  Key mdType: 0x00010001 Key Value:            ugly  Key Comment: 
-    Key Name:  comment  Key mdType: 0x00010001 Key Value:         comment  Key Comment: 
-    Key Name:  comment  Key mdType: 0x00010001 Key Value:             but  Key Comment: 
-    Key Name:  comment  Key mdType: 0x00010001 Key Value:           still  Key Comment: 
-    Key Name:  comment  Key mdType: 0x00010001 Key Value:           valid  Key Comment: 
- Key Name:   title2  Key mdType: 0x00010001 Key Value:  Good bye world  Key Comment: STRING or STR may be used as the string type
- Key Name:     time  Key mdType: 0x00000404 Key Value:        1234.568  Key Comment: 
- Key Name: negatives  Key mdType: 0x00010002 Key Value:  [-1,-2,-3,...]  Key Comment: 
- Key Name:       pi  Key mdType: 0x00000408 Key Value:           3.142  Key Comment: Definition of pi
- Key Name:   myBool  Key mdType: 0x00001301 Key Value:               0  Key Comment: F, f, 0, T, t, 1 are also acceptable
- Key Name:   primes  Key mdType: 0x00010002 Key Value:   [2,3,5,7,...]  Key Comment: These are prime numbers
- Key Name: altitude  Key mdType: 0x00000104 Key Value:           10000  Key Comment: 
- Key Name:    speed  Key mdType: 0x00000404 Key Value:          66.660  Key Comment: 
- Key Name:   title1  Key mdType: 0x00010001 Key Value:     Hello world  Key Comment: This is a comment for the string value
-
----> TESTPOINT PASSED (psMetadata{Test A - Read config file with overwrite set true} | tst_psMetadataIO.c)
-
-/***************************** TESTPOINT ******************************************\
-*             TestFile: tst_psMetadataIO.c                                         *
-*            TestPoint: psMetadata{Test B - Read config file with overwrite set false} *
-*             TestType: Positive                                                   *
-\**********************************************************************************/
-
-Failed lines: 7 Expected: 7 Contents of metadata list:
- Key Name:       pi  Key mdType: 0x00000408 Key Value:           3.142  Key Comment: Definition of pi
- Key Name: altitude  Key mdType: 0x00000104 Key Value:           10000  Key Comment: 
- Key Name:     time  Key mdType: 0x00000404 Key Value:        1234.568  Key Comment: 
- Key Name:   myBool  Key mdType: 0x00001301 Key Value:               0  Key Comment: F, f, 0, T, t, 1 are also acceptable
- Key Name:   title1  Key mdType: 0x00010001 Key Value:     Hello world  Key Comment: This is a comment for the string value
- Key Name:   title2  Key mdType: 0x00010001 Key Value:  Good bye world  Key Comment: STRING or STR may be used as the string type
- Key Name:   primes  Key mdType: 0x00010002 Key Value:   [2,3,5,7,...]  Key Comment: These are prime numbers
- Key Name: negatives  Key mdType: 0x00010002 Key Value:  [-1,-2,-3,...]  Key Comment: 
- Key Name:  comment  Key mdType: 0x00010001 Key Value:            This  Key Comment: 
- Key Name:  comment  Key mdType: 0x00010001 Key Value:              is  Key Comment: 
- Key Name:  comment  Key mdType: 0x00010001 Key Value:              an  Key Comment: 
- Key Name:  comment  Key mdType: 0x00010001 Key Value:            ugly  Key Comment: 
- Key Name:  comment  Key mdType: 0x00010001 Key Value:         comment  Key Comment: 
- Key Name:  comment  Key mdType: 0x00010001 Key Value:             but  Key Comment: 
- Key Name:  comment  Key mdType: 0x00010001 Key Value:           still  Key Comment: 
- Key Name:  comment  Key mdType: 0x00010001 Key Value:           valid  Key Comment: 
- Key Name:    speed  Key mdType: 0x00000404 Key Value:          55.550  Key Comment: 
-
-Contents of metadata table:
- Key Name:  comment  Key mdType: 0x0001000a Key Value:                  Key Comment: 
-    Key Name:  comment  Key mdType: 0x00010001 Key Value:            This  Key Comment: 
-    Key Name:  comment  Key mdType: 0x00010001 Key Value:              is  Key Comment: 
-    Key Name:  comment  Key mdType: 0x00010001 Key Value:              an  Key Comment: 
-    Key Name:  comment  Key mdType: 0x00010001 Key Value:            ugly  Key Comment: 
-    Key Name:  comment  Key mdType: 0x00010001 Key Value:         comment  Key Comment: 
-    Key Name:  comment  Key mdType: 0x00010001 Key Value:             but  Key Comment: 
-    Key Name:  comment  Key mdType: 0x00010001 Key Value:           still  Key Comment: 
-    Key Name:  comment  Key mdType: 0x00010001 Key Value:           valid  Key Comment: 
- Key Name:   title2  Key mdType: 0x00010001 Key Value:  Good bye world  Key Comment: STRING or STR may be used as the string type
- Key Name:     time  Key mdType: 0x00000404 Key Value:        1234.568  Key Comment: 
- Key Name: negatives  Key mdType: 0x00010002 Key Value:  [-1,-2,-3,...]  Key Comment: 
- Key Name:       pi  Key mdType: 0x00000408 Key Value:           3.142  Key Comment: Definition of pi
- Key Name:   myBool  Key mdType: 0x00001301 Key Value:               0  Key Comment: F, f, 0, T, t, 1 are also acceptable
- Key Name:   primes  Key mdType: 0x00010002 Key Value:   [2,3,5,7,...]  Key Comment: These are prime numbers
- Key Name: altitude  Key mdType: 0x00000104 Key Value:           10000  Key Comment: 
- Key Name:    speed  Key mdType: 0x00000404 Key Value:          55.550  Key Comment: 
- Key Name:   title1  Key mdType: 0x00010001 Key Value:     Hello world  Key Comment: This is a comment for the string value
-
----> TESTPOINT PASSED (psMetadata{Test B - Read config file with overwrite set false} | tst_psMetadataIO.c)
-
-/***************************** TESTPOINT ******************************************\
-*             TestFile: tst_psMetadataIO.c                                         *
-*            TestPoint: psMetadata{Test C - Read config file without auto-allocation of metadata} *
-*             TestType: Positive                                                   *
-\**********************************************************************************/
-
-Failed lines: 6 Expected: 6 Contents of metadata list:
- Key Name:       pi  Key mdType: 0x00000408 Key Value:           3.142  Key Comment: Definition of pi
- Key Name: altitude  Key mdType: 0x00000104 Key Value:           10000  Key Comment: 
- Key Name:     time  Key mdType: 0x00000404 Key Value:        1234.568  Key Comment: 
- Key Name:   myBool  Key mdType: 0x00001301 Key Value:               0  Key Comment: F, f, 0, T, t, 1 are also acceptable
- Key Name:   title1  Key mdType: 0x00010001 Key Value:     Hello world  Key Comment: This is a comment for the string value
- Key Name:   title2  Key mdType: 0x00010001 Key Value:  Good bye world  Key Comment: STRING or STR may be used as the string type
- Key Name:   primes  Key mdType: 0x00010002 Key Value:   [2,3,5,7,...]  Key Comment: These are prime numbers
- Key Name: negatives  Key mdType: 0x00010002 Key Value:  [-1,-2,-3,...]  Key Comment: 
- Key Name:  comment  Key mdType: 0x00010001 Key Value:            This  Key Comment: 
- Key Name:  comment  Key mdType: 0x00010001 Key Value:              is  Key Comment: 
- Key Name:  comment  Key mdType: 0x00010001 Key Value:              an  Key Comment: 
- Key Name:  comment  Key mdType: 0x00010001 Key Value:            ugly  Key Comment: 
- Key Name:  comment  Key mdType: 0x00010001 Key Value:         comment  Key Comment: 
- Key Name:  comment  Key mdType: 0x00010001 Key Value:             but  Key Comment: 
- Key Name:  comment  Key mdType: 0x00010001 Key Value:           still  Key Comment: 
- Key Name:  comment  Key mdType: 0x00010001 Key Value:           valid  Key Comment: 
- Key Name:    speed  Key mdType: 0x00000404 Key Value:          66.660  Key Comment: 
-
-Contents of metadata table:
- Key Name:  comment  Key mdType: 0x0001000a Key Value:                  Key Comment: 
-    Key Name:  comment  Key mdType: 0x00010001 Key Value:            This  Key Comment: 
-    Key Name:  comment  Key mdType: 0x00010001 Key Value:              is  Key Comment: 
-    Key Name:  comment  Key mdType: 0x00010001 Key Value:              an  Key Comment: 
-    Key Name:  comment  Key mdType: 0x00010001 Key Value:            ugly  Key Comment: 
-    Key Name:  comment  Key mdType: 0x00010001 Key Value:         comment  Key Comment: 
-    Key Name:  comment  Key mdType: 0x00010001 Key Value:             but  Key Comment: 
-    Key Name:  comment  Key mdType: 0x00010001 Key Value:           still  Key Comment: 
-    Key Name:  comment  Key mdType: 0x00010001 Key Value:           valid  Key Comment: 
- Key Name:   title2  Key mdType: 0x00010001 Key Value:  Good bye world  Key Comment: STRING or STR may be used as the string type
- Key Name:     time  Key mdType: 0x00000404 Key Value:        1234.568  Key Comment: 
- Key Name: negatives  Key mdType: 0x00010002 Key Value:  [-1,-2,-3,...]  Key Comment: 
- Key Name:       pi  Key mdType: 0x00000408 Key Value:           3.142  Key Comment: Definition of pi
- Key Name:   myBool  Key mdType: 0x00001301 Key Value:               0  Key Comment: F, f, 0, T, t, 1 are also acceptable
- Key Name:   primes  Key mdType: 0x00010002 Key Value:   [2,3,5,7,...]  Key Comment: These are prime numbers
- Key Name: altitude  Key mdType: 0x00000104 Key Value:           10000  Key Comment: 
- Key Name:    speed  Key mdType: 0x00000404 Key Value:          66.660  Key Comment: 
- Key Name:   title1  Key mdType: 0x00010001 Key Value:     Hello world  Key Comment: This is a comment for the string value
-
----> TESTPOINT PASSED (psMetadata{Test C - Read config file without auto-allocation of metadata} | tst_psMetadataIO.c)
-
-/***************************** TESTPOINT ******************************************\
-*             TestFile: tst_psMetadataIO.c                                         *
-*            TestPoint: psMetadataIO{Test D - Attempt to use null fileName argument} *
-*             TestType: Negative                                                   *
-*    ExpectedErrorText: Null failedLines not allowed                               *
-*  ExpectedStatusValue: 0                                                          *
-\**********************************************************************************/
-
-
----> TESTPOINT PASSED (psMetadata{Test D - Attempt to use null fileName argument} | tst_psMetadataIO.c)
-
-/***************************** TESTPOINT ******************************************\
-*             TestFile: tst_psMetadataIO.c                                         *
-*            TestPoint: psMetadataIO{Test E - Attempt to open nonexistant file}    *
-*             TestType: Negative                                                   *
-*    ExpectedErrorText: Error opening file                                         *
-*  ExpectedStatusValue: 0                                                          *
-\**********************************************************************************/
-
-
----> TESTPOINT PASSED (psMetadata{Test E - Attempt to open nonexistant file} | tst_psMetadataIO.c)
-
-/***************************** TESTPOINT ******************************************\
-*             TestFile: tst_psMetadataIO.c                                         *
-*            TestPoint: psMetadata{Test F - Free psMetadata}                       *
-*             TestType: Positive                                                   *
-\**********************************************************************************/
-
-
----> TESTPOINT PASSED (psMetadata{Test F - Free psMetadata} | tst_psMetadataIO.c)
-
Index: unk/psLib/test/astronomy/verified/tst_psMetadata_01.stderr
===================================================================
--- /trunk/psLib/test/astronomy/verified/tst_psMetadata_01.stderr	(revision 3689)
+++ 	(revision )
@@ -1,14 +1,0 @@
-<DATE><TIME>|<HOST>|E|psMetadataReadHeader (FILE:LINENO)
-    Unallowable operation: fileName is NULL.
-<DATE><TIME>|<HOST>|E|psMetadataReadHeader (FILE:LINENO)
-    FITS error while opening file: missing.dat could not open the named file
-<DATE><TIME>|<HOST>|E|psMetadataReadHeader (FILE:LINENO)
-    Couldn't close FITS file. FITS error: NULL input pointer
-<DATE><TIME>|<HOST>|E|psMetadataReadHeader (FILE:LINENO)
-    Specified extension number, 0, is invalid.  Value must be positive if no extension name is given.
-<DATE><TIME>|<HOST>|E|psMetadataReadHeader (FILE:LINENO)
-    FITS error while locating header 22: tried to move past end of file
-<DATE><TIME>|<HOST>|E|psMetadataReadHeader (FILE:LINENO)
-    FITS error while locating header AARGH: illegal HDU number
-<DATE><TIME>|<HOST>|E|psMetadataReadHeader (FILE:LINENO)
-    Specified extension number, 0, is invalid.  Value must be positive if no extension name is given.
Index: unk/psLib/test/astronomy/verified/tst_psMetadata_01.stdout
===================================================================
--- /trunk/psLib/test/astronomy/verified/tst_psMetadata_01.stdout	(revision 3689)
+++ 	(revision )
@@ -1,194 +1,0 @@
-/***************************** TESTPOINT ******************************************\
-*             TestFile: tst_psMetadata_01.c                                        *
-*            TestPoint: psMetadata{Test A - Read 1st hdr from simple FITS file}    *
-*             TestType: Positive                                                   *
-\**********************************************************************************/
-
-Contents of metadata list:
- Key Name:   SIMPLE  Key mdType: 0x00001301  Key Value:               1  Key Comment: file does conform to FITS standard
- Key Name:   BITPIX  Key mdType: 0x00000104  Key Value:               8  Key Comment: number of bits per data pixel
- Key Name:    NAXIS  Key mdType: 0x00000104  Key Value:               0  Key Comment: number of data axes
- Key Name:  HISTORY  Key mdType: 0x00010001  Key Value:                  Key Comment: File modified by user 'harman' with fv  on 2004-08-04T<DATE>
-
-Contents of metadata table:
- Key Name:    NAXIS  Key mdType: 0x00000104  Key Value:               0  Key Comment: number of data axes
- Key Name:   SIMPLE  Key mdType: 0x00001301  Key Value:               1  Key Comment: file does conform to FITS standard
- Key Name:   BITPIX  Key mdType: 0x00000104  Key Value:               8  Key Comment: number of bits per data pixel
- Key Name:  HISTORY  Key mdType: 0x00010001  Key Value:                  Key Comment: File modified by user 'harman' with fv  on 2004-08-04T<DATE>
-
----> TESTPOINT PASSED (psMetadata{Test A - Read 1st hdr from simple FITS file} | tst_psMetadata_01.c)
-
-ID=34
-/***************************** TESTPOINT ******************************************\
-*             TestFile: tst_psMetadata_01.c                                        *
-*            TestPoint: psMetadata{Test B - Read 2nd hdr from complex FITS file}   *
-*             TestType: Positive                                                   *
-\**********************************************************************************/
-
-Contents of metadata list:
- Key Name: XTENSION  Key mdType: 0x00010001  Key Value:      'IMAGE   '  Key Comment: IMAGE extension
- Key Name:   BITPIX  Key mdType: 0x00000104  Key Value:             -64  Key Comment: number of bits per data pixel
- Key Name:    NAXIS  Key mdType: 0x00000104  Key Value:               1  Key Comment: number of data axes
- Key Name:   NAXIS1  Key mdType: 0x00000104  Key Value:              64  Key Comment: length of data axis 1
- Key Name:   PCOUNT  Key mdType: 0x00000104  Key Value:               0  Key Comment: required keyword; must = 0
- Key Name:   GCOUNT  Key mdType: 0x00000104  Key Value:               1  Key Comment: required keyword; must = 1
- Key Name:   BITPIX  Key mdType: 0x00000104  Key Value:             -64  Key Comment: number of bits per data pixel
- Key Name:  EXTNAME  Key mdType: 0x00010001  Key Value:     'MY_DATA_1'  Key Comment: 
- Key Name:  HISTORY  Key mdType: 0x00010001  Key Value:                  Key Comment: File modified by user 'harman' with fv  on 2004-08-04T<DATE>
- Key Name:  HISTORY  Key mdType: 0x00010001  Key Value:                  Key Comment: File modified by user 'harman' with fv  on 2004-08-04T<DATE>
- Key Name:  HISTORY  Key mdType: 0x00010001  Key Value:                  Key Comment: File modified by user 'harman' with fv  on 2004-08-04T<DATE>
- Key Name:  HISTORY  Key mdType: 0x00010001  Key Value:                  Key Comment: File modified by user 'harman' with fv  on 2004-08-04T<DATE>
-
-Contents of metadata table:
- Key Name:    NAXIS  Key mdType: 0x00000104  Key Value:               1  Key Comment: number of data axes
- Key Name:   NAXIS1  Key mdType: 0x00000104  Key Value:              64  Key Comment: length of data axis 1
- Key Name:   PCOUNT  Key mdType: 0x00000104  Key Value:               0  Key Comment: required keyword; must = 0
- Key Name: XTENSION  Key mdType: 0x00010001  Key Value:      'IMAGE   '  Key Comment: IMAGE extension
- Key Name:   BITPIX  Key mdType: 0x0001000a  Key Value:                  Key Comment: 
-    Key Name:   BITPIX  Key mdType: 0x00000104  Key Value:             -64  Key Comment: number of bits per data pixel
-    Key Name:   BITPIX  Key mdType: 0x00000104  Key Value:             -64  Key Comment: number of bits per data pixel
- Key Name:   GCOUNT  Key mdType: 0x00000104  Key Value:               1  Key Comment: required keyword; must = 1
- Key Name:  HISTORY  Key mdType: 0x0001000a  Key Value:                  Key Comment: 
-    Key Name:  HISTORY  Key mdType: 0x00010001  Key Value:                  Key Comment: File modified by user 'harman' with fv  on 2004-08-04T<DATE>
-    Key Name:  HISTORY  Key mdType: 0x00010001  Key Value:                  Key Comment: File modified by user 'harman' with fv  on 2004-08-04T<DATE>
-    Key Name:  HISTORY  Key mdType: 0x00010001  Key Value:                  Key Comment: File modified by user 'harman' with fv  on 2004-08-04T<DATE>
-    Key Name:  HISTORY  Key mdType: 0x00010001  Key Value:                  Key Comment: File modified by user 'harman' with fv  on 2004-08-04T<DATE>
- Key Name:  EXTNAME  Key mdType: 0x00010001  Key Value:     'MY_DATA_1'  Key Comment: 
-
----> TESTPOINT PASSED (psMetadata{Test B - Read 2nd hdr from complex FITS file} | tst_psMetadata_01.c)
-
-ID=138
-/***************************** TESTPOINT ******************************************\
-*             TestFile: tst_psMetadata_01.c                                        *
-*            TestPoint: psMetadata{Test C - Read named hdr from complex FITS file} *
-*             TestType: Positive                                                   *
-\**********************************************************************************/
-
-Contents of metadata list:
- Key Name: XTENSION  Key mdType: 0x00010001  Key Value:      'IMAGE   '  Key Comment: IMAGE extension
- Key Name:   BITPIX  Key mdType: 0x00000104  Key Value:             -64  Key Comment: number of bits per data pixel
- Key Name:    NAXIS  Key mdType: 0x00000104  Key Value:               1  Key Comment: number of data axes
- Key Name:   NAXIS1  Key mdType: 0x00000104  Key Value:              64  Key Comment: length of data axis 1
- Key Name:   PCOUNT  Key mdType: 0x00000104  Key Value:               0  Key Comment: required keyword; must = 0
- Key Name:   GCOUNT  Key mdType: 0x00000104  Key Value:               1  Key Comment: required keyword; must = 1
- Key Name:  EXTNAME  Key mdType: 0x00010001  Key Value:     'MY_DATA_2'  Key Comment: 
- Key Name:  HISTORY  Key mdType: 0x00010001  Key Value:                  Key Comment: File modified by user 'harman' with fv  on 2004-08-04T<DATE>
- Key Name:  HISTORY  Key mdType: 0x00010001  Key Value:                  Key Comment: File modified by user 'harman' with fv  on 2004-08-04T<DATE>
-
-Contents of metadata table:
- Key Name:    NAXIS  Key mdType: 0x00000104  Key Value:               1  Key Comment: number of data axes
- Key Name:   NAXIS1  Key mdType: 0x00000104  Key Value:              64  Key Comment: length of data axis 1
- Key Name:   PCOUNT  Key mdType: 0x00000104  Key Value:               0  Key Comment: required keyword; must = 0
- Key Name: XTENSION  Key mdType: 0x00010001  Key Value:      'IMAGE   '  Key Comment: IMAGE extension
- Key Name:   GCOUNT  Key mdType: 0x00000104  Key Value:               1  Key Comment: required keyword; must = 1
- Key Name:   BITPIX  Key mdType: 0x00000104  Key Value:             -64  Key Comment: number of bits per data pixel
- Key Name:  HISTORY  Key mdType: 0x0001000a  Key Value:                  Key Comment: 
-    Key Name:  HISTORY  Key mdType: 0x00010001  Key Value:                  Key Comment: File modified by user 'harman' with fv  on 2004-08-04T<DATE>
-    Key Name:  HISTORY  Key mdType: 0x00010001  Key Value:                  Key Comment: File modified by user 'harman' with fv  on 2004-08-04T<DATE>
- Key Name:  EXTNAME  Key mdType: 0x00010001  Key Value:     'MY_DATA_2'  Key Comment: 
-
----> TESTPOINT PASSED (psMetadata{Test C - Read named hdr from complex FITS file} | tst_psMetadata_01.c)
-
-/***************************** TESTPOINT ******************************************\
-*             TestFile: tst_psMetadata_01.c                                        *
-*            TestPoint: psMetadata{Test D - Remove items with same name from all metadata} *
-*             TestType: Positive                                                   *
-\**********************************************************************************/
-
-Removed HISTORY from all metadata from prior test. Resulting metadata:
-
-Contents of metadata list:
- Key Name: XTENSION  Key mdType: 0x00010001  Key Value:      'IMAGE   '  Key Comment: IMAGE extension
- Key Name:   BITPIX  Key mdType: 0x00000104  Key Value:             -64  Key Comment: number of bits per data pixel
- Key Name:    NAXIS  Key mdType: 0x00000104  Key Value:               1  Key Comment: number of data axes
- Key Name:   NAXIS1  Key mdType: 0x00000104  Key Value:              64  Key Comment: length of data axis 1
- Key Name:   PCOUNT  Key mdType: 0x00000104  Key Value:               0  Key Comment: required keyword; must = 0
- Key Name:   GCOUNT  Key mdType: 0x00000104  Key Value:               1  Key Comment: required keyword; must = 1
- Key Name:  EXTNAME  Key mdType: 0x00010001  Key Value:     'MY_DATA_2'  Key Comment: 
-
-Contents of metadata table:
- Key Name:    NAXIS  Key mdType: 0x00000104  Key Value:               1  Key Comment: number of data axes
- Key Name:   NAXIS1  Key mdType: 0x00000104  Key Value:              64  Key Comment: length of data axis 1
- Key Name:   PCOUNT  Key mdType: 0x00000104  Key Value:               0  Key Comment: required keyword; must = 0
- Key Name: XTENSION  Key mdType: 0x00010001  Key Value:      'IMAGE   '  Key Comment: IMAGE extension
- Key Name:   GCOUNT  Key mdType: 0x00000104  Key Value:               1  Key Comment: required keyword; must = 1
- Key Name:   BITPIX  Key mdType: 0x00000104  Key Value:             -64  Key Comment: number of bits per data pixel
- Key Name:  EXTNAME  Key mdType: 0x00010001  Key Value:     'MY_DATA_2'  Key Comment: 
-
----> TESTPOINT PASSED (psMetadata{Test D - Remove items with same name from all metadata} | tst_psMetadata_01.c)
-
-/***************************** TESTPOINT ******************************************\
-*             TestFile: tst_psMetadata_01.c                                        *
-*            TestPoint: psMetadata{Test E - Attempt to use null filename}          *
-*             TestType: Negative                                                   *
-*    ExpectedErrorText: Null fileName not allowed                                  *
-*  ExpectedStatusValue: 0                                                          *
-\**********************************************************************************/
-
-
----> TESTPOINT PASSED (psMetadata{Test E - Attempt to use null filename} | tst_psMetadata_01.c)
-
-/***************************** TESTPOINT ******************************************\
-*             TestFile: tst_psMetadata_01.c                                        *
-*            TestPoint: psMetadata{Test F - Attempt to open nonexistant file}      *
-*             TestType: Negative                                                   *
-*    ExpectedErrorText: FITS error while opening file: missing.dat...Couldn't close FITS file... *
-*  ExpectedStatusValue: 0                                                          *
-\**********************************************************************************/
-
-
----> TESTPOINT PASSED (psMetadata{Test F - Attempt to open nonexistant file} | tst_psMetadata_01.c)
-
-/***************************** TESTPOINT ******************************************\
-*             TestFile: tst_psMetadata_01.c                                        *
-*            TestPoint: psMetadata{Test G - Attempt to use two null inputs}        *
-*             TestType: Negative                                                   *
-*    ExpectedErrorText: Null extName and extNum = 0 not allowed                    *
-*  ExpectedStatusValue: 0                                                          *
-\**********************************************************************************/
-
-
----> TESTPOINT PASSED (psMetadata{Test G - Attempt to use two null inputs} | tst_psMetadata_01.c)
-
-/***************************** TESTPOINT ******************************************\
-*             TestFile: tst_psMetadata_01.c                                        *
-*            TestPoint: psMetadata{Test H - Attempt to use bad extNum}             *
-*             TestType: Negative                                                   *
-*    ExpectedErrorText: FITS error while locating header 22: tried to move past end of file *
-*  ExpectedStatusValue: 0                                                          *
-\**********************************************************************************/
-
-
----> TESTPOINT PASSED (psMetadata{Test H - Attempt to use bad extNum} | tst_psMetadata_01.c)
-
-/***************************** TESTPOINT ******************************************\
-*             TestFile: tst_psMetadata_01.c                                        *
-*            TestPoint: psMetadata{Test I - Attempt to use bad extName}            *
-*             TestType: Negative                                                   *
-*    ExpectedErrorText: FITS error while locating header AARGH: illegal HDU number *
-*  ExpectedStatusValue: 0                                                          *
-\**********************************************************************************/
-
-
----> TESTPOINT PASSED (psMetadata{Test I - Attempt to use bad extName} | tst_psMetadata_01.c)
-
-/***************************** TESTPOINT ******************************************\
-*             TestFile: tst_psMetadata_01.c                                        *
-*            TestPoint: psMetadata{Test J - Read named hdr w/ invalid extnum}      *
-*             TestType: Negative                                                   *
-*    ExpectedErrorText: If extName specified, extNum should be -1.                 *
-*  ExpectedStatusValue: 0                                                          *
-\**********************************************************************************/
-
-
----> TESTPOINT PASSED (psMetadata{Test J - Read named hdr w/ invalid extnum} | tst_psMetadata_01.c)
-
-/***************************** TESTPOINT ******************************************\
-*             TestFile: tst_psMetadata_01.c                                        *
-*            TestPoint: psMetadata{Test K - Free psMetadata}                       *
-*             TestType: Positive                                                   *
-\**********************************************************************************/
-
-
----> TESTPOINT PASSED (psMetadata{Test K - Free psMetadata} | tst_psMetadata_01.c)
-
Index: unk/psLib/test/astronomy/verified/tst_psMetadata_02.stderr
===================================================================
--- /trunk/psLib/test/astronomy/verified/tst_psMetadata_02.stderr	(revision 3689)
+++ 	(revision )
@@ -1,10 +1,0 @@
-<DATE><TIME>|<HOST>|I|main
-    Following should produce error for null name.
-<DATE><TIME>|<HOST>|E|psMetadataItemAllocV (FILE:LINENO)
-    Unallowable operation: name is NULL.
-<DATE><TIME>|<HOST>|E|psMetadataItemAllocV (FILE:LINENO)
-    Specified psMetadataType, -1, is not supported.
-<DATE><TIME>|<HOST>|E|psMetadataAddItem (FILE:LINENO)
-    Unallowable operation: md is NULL.
-<DATE><TIME>|<HOST>|E|psMetadataAddItem (FILE:LINENO)
-    Unallowable operation: metadataItem is NULL.
Index: unk/psLib/test/astronomy/verified/tst_psMetadata_02.stdout
===================================================================
--- /trunk/psLib/test/astronomy/verified/tst_psMetadata_02.stdout	(revision 3689)
+++ 	(revision )
@@ -1,76 +1,0 @@
-/***************************** TESTPOINT ******************************************\
-*             TestFile: tst_psMetadata_02.c                                        *
-*            TestPoint: psMetadata{Test A - Allocate metadata items}               *
-*             TestType: Positive                                                   *
-\**********************************************************************************/
-
-Key Name:  myItem1  Key mdType: 0x00001301  Key Value:               1  Key Comment: I am a boolean
-Key Name:  myItem2  Key mdType: 0x00000104  Key Value:             111  Key Comment: I am a signed integer
-Key Name:  myItem3  Key mdType: 0x00000404  Key Value:         222.222  Key Comment: I am a single precision floating point
-Key Name:  myItem4  Key mdType: 0x00000408  Key Value:         333.333  Key Comment: I am a double precision floating point
-Key Name:  myItem5  Key mdType: 0x00010001  Key Value:     HELLO WORLD  Key Comment: I am a string
-
----> TESTPOINT PASSED (psMetadata{Test A - Allocate metadata items} | tst_psMetadata_02.c)
-
-/***************************** TESTPOINT ******************************************\
-*             TestFile: tst_psMetadata_02.c                                        *
-*            TestPoint: psMetadata{Test B - Attempt to create metadata item with null name} *
-*             TestType: Negative                                                   *
-*    ExpectedErrorText: Null value for name not allowed                            *
-*  ExpectedStatusValue: 0                                                          *
-\**********************************************************************************/
-
-
----> TESTPOINT PASSED (psMetadata{Test B - Attempt to create metadata item with null name} | tst_psMetadata_02.c)
-
-/***************************** TESTPOINT ******************************************\
-*             TestFile: tst_psMetadata_02.c                                        *
-*            TestPoint: psMetadata{Test C - Attempt to create metadata item with invalid type} *
-*             TestType: Negative                                                   *
-*    ExpectedErrorText: Invalid psMetadataType: 6                                  *
-*  ExpectedStatusValue: 0                                                          *
-\**********************************************************************************/
-
-
----> TESTPOINT PASSED (psMetadata{Test C - Attempt to create metadata item with invalid type} | tst_psMetadata_02.c)
-
-/***************************** TESTPOINT ******************************************\
-*             TestFile: tst_psMetadata_02.c                                        *
-*            TestPoint: psMetadata{Test D - Allocate metadata}                     *
-*             TestType: Positive                                                   *
-\**********************************************************************************/
-
-
----> TESTPOINT PASSED (psMetadata{Test D - Allocate metadata} | tst_psMetadata_02.c)
-
-/***************************** TESTPOINT ******************************************\
-*             TestFile: tst_psMetadata_02.c                                        *
-*            TestPoint: psMetadata{Test E - Attempt to add metadata item to null metadata} *
-*             TestType: Negative                                                   *
-*    ExpectedErrorText: Null metadata collection not allowed                       *
-*  ExpectedStatusValue: 0                                                          *
-\**********************************************************************************/
-
-
----> TESTPOINT PASSED (psMetadata{Test E - Attempt to add metadata item to null metadata} | tst_psMetadata_02.c)
-
-/***************************** TESTPOINT ******************************************\
-*             TestFile: tst_psMetadata_02.c                                        *
-*            TestPoint: psMetadata{Test F - Attempt to add null metadata item to metadata} *
-*             TestType: Negative                                                   *
-*    ExpectedErrorText: Null metadata item not allowed                             *
-*  ExpectedStatusValue: 0                                                          *
-\**********************************************************************************/
-
-
----> TESTPOINT PASSED (psMetadata{Test F - Attempt to add null metadata item to metadata} | tst_psMetadata_02.c)
-
-/***************************** TESTPOINT ******************************************\
-*             TestFile: tst_psMetadata_02.c                                        *
-*            TestPoint: psMetadata{Test G - Free psMetadata}                       *
-*             TestType: Positive                                                   *
-\**********************************************************************************/
-
-
----> TESTPOINT PASSED (psMetadata{Test G - Free psMetadata} | tst_psMetadata_02.c)
-
Index: unk/psLib/test/astronomy/verified/tst_psMetadata_03.stderr
===================================================================
--- /trunk/psLib/test/astronomy/verified/tst_psMetadata_03.stderr	(revision 3689)
+++ 	(revision )
@@ -1,20 +1,0 @@
-<DATE><TIME>|<HOST>|E|psMetadataRemove (FILE:LINENO)
-    Unallowable operation: md is NULL.
-<DATE><TIME>|<HOST>|E|psMetadataRemove (FILE:LINENO)
-    Failed to remove metadata item, AARGH, from metadata table.
-<DATE><TIME>|<HOST>|E|psMetadataRemove (FILE:LINENO)
-    Could not find metadata item at index 22.
-<DATE><TIME>|<HOST>|E|psMetadataAddItem (FILE:LINENO)
-    Unallowable operation: md->table is NULL.
-<DATE><TIME>|<HOST>|E|psMetadataRemove (FILE:LINENO)
-    Unallowable operation: md->table is NULL.
-<DATE><TIME>|<HOST>|E|psMetadataAddItem (FILE:LINENO)
-    Unallowable operation: md->list is NULL.
-<DATE><TIME>|<HOST>|E|psMetadataRemove (FILE:LINENO)
-    Unallowable operation: md->list is NULL.
-<DATE><TIME>|<HOST>|E|psMetadataAddItem (FILE:LINENO)
-    Unallowable operation: metadataItem->name is NULL.
-<DATE><TIME>|<HOST>|E|psMetadataAddItem (FILE:LINENO)
-    Unallowable operation: md->table is NULL.
-<DATE><TIME>|<HOST>|E|psMetadataAddV (FILE:LINENO)
-    Failed to add metadata item to metadata collection list.
Index: unk/psLib/test/astronomy/verified/tst_psMetadata_03.stdout
===================================================================
--- /trunk/psLib/test/astronomy/verified/tst_psMetadata_03.stdout	(revision 3689)
+++ 	(revision )
@@ -1,117 +1,0 @@
-/***************************** TESTPOINT ******************************************\
-*             TestFile: tst_psMetadata_03.c                                        *
-*            TestPoint: psMetadata{Test A - Allocate metadata items}               *
-*             TestType: Positive                                                   *
-\**********************************************************************************/
-
-Key Name:  myItem1  Key mdType: 0x00001301  Key Value:               1  Key Comment: I am a boolean
-Key Name:  myItem2  Key mdType: 0x00000104  Key Value:              55  Key Comment: I am a integer
-Key Name:  myItem3  Key mdType: 0x00001301  Key Value:               0  Key Comment: I am a boolean
-Key Name:  myItem4  Key mdType: 0x00000104  Key Value:              66  Key Comment: I am a integer
-
----> TESTPOINT PASSED (psMetadata{Test A - Allocate metadata items} | tst_psMetadata_03.c)
-
-/***************************** TESTPOINT ******************************************\
-*             TestFile: tst_psMetadata_03.c                                        *
-*            TestPoint: psMetadata{Test B - Remove items from metadata by name}    *
-*             TestType: Positive                                                   *
-\**********************************************************************************/
-
-
----> TESTPOINT PASSED (psMetadata{Test B - Remove items from metadata by name} | tst_psMetadata_03.c)
-
-/***************************** TESTPOINT ******************************************\
-*             TestFile: tst_psMetadata_03.c                                        *
-*            TestPoint: psMetadata{Test C - Remove items from metadata by index}   *
-*             TestType: Positive                                                   *
-\**********************************************************************************/
-
-
----> TESTPOINT PASSED (psMetadata{Test C - Remove items from metadata by index} | tst_psMetadata_03.c)
-
-/***************************** TESTPOINT ******************************************\
-*             TestFile: tst_psMetadata_03.c                                        *
-*            TestPoint: psMetadata{Test D - Attempt to use null metadata}          *
-*             TestType: Negative                                                   *
-*    ExpectedErrorText: Null metadata collection not allowed                       *
-*  ExpectedStatusValue: 0                                                          *
-\**********************************************************************************/
-
-
----> TESTPOINT PASSED (psMetadata{Test D - Attempt to use null metadata} | tst_psMetadata_03.c)
-
-/***************************** TESTPOINT ******************************************\
-*             TestFile: tst_psMetadata_03.c                                        *
-*            TestPoint: psMetadata{Test E - Attempt to remove non-existant metadata item by name} *
-*             TestType: Negative                                                   *
-*    ExpectedErrorText: Couldn't find metadata item. Name: AARGH                   *
-*  ExpectedStatusValue: 0                                                          *
-\**********************************************************************************/
-
-
----> TESTPOINT PASSED (psMetadata{Test E - Attempt to remove non-existant metadata item by name} | tst_psMetadata_03.c)
-
-/***************************** TESTPOINT ******************************************\
-*             TestFile: tst_psMetadata_03.c                                        *
-*            TestPoint: psMetadata{Test E - Attempt to remove non-existant metadata item by index} *
-*             TestType: Negative                                                   *
-*    ExpectedErrorText: Couldn't find metadata item in list. Index: 22             *
-*  ExpectedStatusValue: 0                                                          *
-\**********************************************************************************/
-
-
----> TESTPOINT PASSED (psMetadata{Test E - Attempt to remove non-existant metadata item by index} | tst_psMetadata_03.c)
-
-/***************************** TESTPOINT ******************************************\
-*             TestFile: tst_psMetadata_03.c                                        *
-*            TestPoint: psMetadata{Test G - Attempt to add item to metadata w/o hash table} *
-*             TestType: Negative                                                   *
-*    ExpectedErrorText: Couldn't add item to invalid metadata structure.           *
-*  ExpectedStatusValue: 0                                                          *
-\**********************************************************************************/
-
-
----> TESTPOINT PASSED (psMetadata{Test G - Attempt to add item to invalid metadata w/o hash table} | tst_psMetadata_03.c)
-
-/***************************** TESTPOINT ******************************************\
-*             TestFile: tst_psMetadata_03.c                                        *
-*            TestPoint: psMetadata{Test H - Attempt to add item to metadata w/o link list} *
-*             TestType: Negative                                                   *
-*    ExpectedErrorText: Couldn't add item to invalid metadata structure.           *
-*  ExpectedStatusValue: 0                                                          *
-\**********************************************************************************/
-
-
----> TESTPOINT PASSED (psMetadata{Test H - Attempt to add item to invalid metadata w/o link list} | tst_psMetadata_03.c)
-
-/***************************** TESTPOINT ******************************************\
-*             TestFile: tst_psMetadata_03.c                                        *
-*            TestPoint: psMetadata{Test I - Attempt to add item with null name}    *
-*             TestType: Negative                                                   *
-*    ExpectedErrorText: Couldn't add item with null name.                          *
-*  ExpectedStatusValue: 0                                                          *
-\**********************************************************************************/
-
-
----> TESTPOINT PASSED (psMetadata{Test I - Attempt to add item with null name} | tst_psMetadata_03.c)
-
-/***************************** TESTPOINT ******************************************\
-*             TestFile: tst_psMetadata_03.c                                        *
-*            TestPoint: psMetadata{Test J - Attempt to add item to metadata w/o hash table} *
-*             TestType: Negative                                                   *
-*    ExpectedErrorText: Couldn't add item to invalid metadata structure.           *
-*  ExpectedStatusValue: 0                                                          *
-\**********************************************************************************/
-
-
----> TESTPOINT PASSED (psMetadata{Test J - Attempt to add item to invalid metadata w/o hash table} | tst_psMetadata_03.c)
-
-/***************************** TESTPOINT ******************************************\
-*             TestFile: tst_psMetadata_03.c                                        *
-*            TestPoint: psMetadata{Test K - Free psMetadata}                       *
-*             TestType: Positive                                                   *
-\**********************************************************************************/
-
-
----> TESTPOINT PASSED (psMetadata{Test K - Free psMetadata} | tst_psMetadata_03.c)
-
Index: unk/psLib/test/astronomy/verified/tst_psMetadata_04.stderr
===================================================================
--- /trunk/psLib/test/astronomy/verified/tst_psMetadata_04.stderr	(revision 3689)
+++ 	(revision )
@@ -1,16 +1,0 @@
-<DATE><TIME>|<HOST>|E|psMetadataLookup (FILE:LINENO)
-    Unallowable operation: md is NULL.
-<DATE><TIME>|<HOST>|E|psMetadataLookup (FILE:LINENO)
-    Unallowable operation: key is NULL.
-<DATE><TIME>|<HOST>|E|psMetadataGet (FILE:LINENO)
-    Unallowable operation: md is NULL.
-<DATE><TIME>|<HOST>|E|psListIteratorSet (FILE:LINENO)
-    Specified location, 22, is invalid.
-<DATE><TIME>|<HOST>|E|psListGet (FILE:LINENO)
-    Specified location, 22, is invalid.
-<DATE><TIME>|<HOST>|E|psMetadataGet (FILE:LINENO)
-    Could not find metadata item at index 22.
-<DATE><TIME>|<HOST>|E|psMetadataLookup (FILE:LINENO)
-    Unallowable operation: md->table is NULL.
-<DATE><TIME>|<HOST>|E|psMetadataGet (FILE:LINENO)
-    Unallowable operation: md->list is NULL.
Index: unk/psLib/test/astronomy/verified/tst_psMetadata_04.stdout
===================================================================
--- /trunk/psLib/test/astronomy/verified/tst_psMetadata_04.stdout	(revision 3689)
+++ 	(revision )
@@ -1,174 +1,0 @@
-/***************************** TESTPOINT ******************************************\
-*             TestFile: tst_psMetadata_04.c                                        *
-*            TestPoint: psMetadata{Test A - Allocate metadata items}               *
-*             TestType: Positive                                                   *
-\**********************************************************************************/
-
-Key Name:  myItem1  Key mdType: 0x00001301  Key Value:               1  Key Comment: I am a boolean
-Key Name:  myItem2  Key mdType: 0x00000104  Key Value:              55  Key Comment: I am a integer
-Key Name:  myItem3  Key mdType: 0x00001301  Key Value:               0  Key Comment: I am a boolean
-Key Name:  myItem4  Key mdType: 0x00000104  Key Value:              66  Key Comment: I am a integer
-Key Name:  myItem5  Key mdType: 0x00000408  Key Value:           3.140  Key Comment: I am a double
-
----> TESTPOINT PASSED (psMetadata{Test A - Allocate metadata items} | tst_psMetadata_04.c)
-
-/***************************** TESTPOINT ******************************************\
-*             TestFile: tst_psMetadata_04.c                                        *
-*            TestPoint: psMetadata{Test B - Lookup metadata item by name}          *
-*             TestType: Positive                                                   *
-\**********************************************************************************/
-
-Found item named myItem2
-
----> TESTPOINT PASSED (psMetadata{Test B - Lookup metadata item by name} | tst_psMetadata_04.c)
-
-/***************************** TESTPOINT ******************************************\
-*             TestFile: tst_psMetadata_04.c                                        *
-*            TestPoint: psMetadata{Test C - Attempt to use null metadata}          *
-*             TestType: Negative                                                   *
-*    ExpectedErrorText: Null metadata collection not allowed                       *
-*  ExpectedStatusValue: 0                                                          *
-\**********************************************************************************/
-
-
----> TESTPOINT PASSED (psMetadata{Test C - Attempt to use null metadata} | tst_psMetadata_04.c)
-
-/***************************** TESTPOINT ******************************************\
-*             TestFile: tst_psMetadata_04.c                                        *
-*            TestPoint: psMetadata{Test D - Attempt to use null key}               *
-*             TestType: Negative                                                   *
-*    ExpectedErrorText: Null key name not allowed                                  *
-*  ExpectedStatusValue: 0                                                          *
-\**********************************************************************************/
-
-
----> TESTPOINT PASSED (psMetadata{Test D - Attempt to use null key} | tst_psMetadata_04.c)
-
-/***************************** TESTPOINT ******************************************\
-*             TestFile: tst_psMetadata_04.c                                        *
-*            TestPoint: psMetadata{Test E - Attempt to lookup non-existant metadata item} *
-*             TestType: Negative                                                   *
-*    ExpectedErrorText: Couldn't find metadata item. Name: AARGH                   *
-*  ExpectedStatusValue: 0                                                          *
-\**********************************************************************************/
-
-
----> TESTPOINT PASSED (psMetadata{Test E - Attempt to lookup non-existant metadata item} | tst_psMetadata_04.c)
-
-/***************************** TESTPOINT ******************************************\
-*             TestFile: tst_psMetadata_04.c                                        *
-*            TestPoint: psMetadata{Test F - Lookup metadata item by index}         *
-*             TestType: Positive                                                   *
-\**********************************************************************************/
-
-Found item named myItem6
-
----> TESTPOINT PASSED (psMetadata{Test F - Lookup metadata item by index} | tst_psMetadata_04.c)
-
-/***************************** TESTPOINT ******************************************\
-*             TestFile: tst_psMetadata_04.c                                        *
-*            TestPoint: psMetadata{Test G - Lookup metadata item and return psS32 value} *
-*             TestType: Positive                                                   *
-\**********************************************************************************/
-
-
----> TESTPOINT PASSED (psMetadata{Test G - Lookup metadata item and return psS32 value} | tst_psMetadata_04.c)
-
-/***************************** TESTPOINT ******************************************\
-*             TestFile: tst_psMetadata_04.c                                        *
-*            TestPoint: psMetadata{Test H - Lookup metadata item and return psF64 value} *
-*             TestType: Positive                                                   *
-\**********************************************************************************/
-
-
----> TESTPOINT PASSED (psMetadata{Test H - Lookup metadata item and return psF64 value} | tst_psMetadata_04.c)
-
-/***************************** TESTPOINT ******************************************\
-*             TestFile: tst_psMetadata_04.c                                        *
-*            TestPoint: psMetadata{Test I - Lookup metadata item and return psVector pointer} *
-*             TestType: Positive                                                   *
-\**********************************************************************************/
-
-
----> TESTPOINT PASSED (psMetadata{Test I - Lookup metadata item and return psVector pointer} | tst_psMetadata_04.c)
-
-/***************************** TESTPOINT ******************************************\
-*             TestFile: tst_psMetadata_04.c                                        *
-*            TestPoint: psMetadata{Test J - Attempt to use null metadata}          *
-*             TestType: Negative                                                   *
-*    ExpectedErrorText: Null metadata collection not allowed                       *
-*  ExpectedStatusValue: 0                                                          *
-\**********************************************************************************/
-
-
----> TESTPOINT PASSED (psMetadata{Test J - Attempt to use null metadata} | tst_psMetadata_04.c)
-
-/***************************** TESTPOINT ******************************************\
-*             TestFile: tst_psMetadata_04.c                                        *
-*            TestPoint: psMetadata{Test K - Attempt to get non-existant metadata item} *
-*             TestType: Negative                                                   *
-*    ExpectedErrorText: Couldn't find metadata item with given index. Index: 22    *
-*  ExpectedStatusValue: 0                                                          *
-\**********************************************************************************/
-
-
----> TESTPOINT PASSED (psMetadata{Test K - Attempt to get non-existant metadata item} | tst_psMetadata_04.c)
-
-/***************************** TESTPOINT ******************************************\
-*             TestFile: tst_psMetadata_04.c                                        *
-*            TestPoint: psMetadata{Test L - Attemp to look up with an invalid metadata} *
-*             TestType: Negative                                                   *
-*    ExpectedErrorText: Lookup item with invalid metadata object.                  *
-*  ExpectedStatusValue: 0                                                          *
-\**********************************************************************************/
-
-
----> TESTPOINT PASSED (psMetadata{Test L - Attempt to lookup an invalid metadata object.} | tst_psMetadata_04.c)
-
-/***************************** TESTPOINT ******************************************\
-*             TestFile: tst_psMetadata_04.c                                        *
-*            TestPoint: psMetadata{Test M - Attempt to get item with an invalid metadata} *
-*             TestType: Negative                                                   *
-*    ExpectedErrorText: Get item with invalid metadata object.                     *
-*  ExpectedStatusValue: 0                                                          *
-\**********************************************************************************/
-
-
----> TESTPOINT PASSED (psMetadata{Test M - Attempt to get item with  invalid metadata object} | tst_psMetadata_04.c)
-
-/***************************** TESTPOINT ******************************************\
-*             TestFile: tst_psMetadata_04.c                                        *
-*            TestPoint: psMetadata{Test N - Attempt get psS32 value of non-existant metadata item} *
-*             TestType: Positive                                                   *
-\**********************************************************************************/
-
-
----> TESTPOINT PASSED (psMetadata{Test N - Attempt get psS32 value of non-existant metadata item} | tst_psMetadata_04.c)
-
-/***************************** TESTPOINT ******************************************\
-*             TestFile: tst_psMetadata_04.c                                        *
-*            TestPoint: psMetadata{Test O - Attempt get psF64 value of non-existant metadata item} *
-*             TestType: Positive                                                   *
-\**********************************************************************************/
-
-
----> TESTPOINT PASSED (psMetadata{Test O - Attempt get psF64 value of non-existant metadata item} | tst_psMetadata_04.c)
-
-/***************************** TESTPOINT ******************************************\
-*             TestFile: tst_psMetadata_04.c                                        *
-*            TestPoint: psMetadata{Test P - Attempt get psVector value of non-existant metadata item} *
-*             TestType: Positive                                                   *
-\**********************************************************************************/
-
-
----> TESTPOINT PASSED (psMetadata{Test P - Attempt get psVector value of non-existant metadata item} | tst_psMetadata_04.c)
-
-/***************************** TESTPOINT ******************************************\
-*             TestFile: tst_psMetadata_04.c                                        *
-*            TestPoint: psMetadata{Test Q - Free psMetadata}                       *
-*             TestType: Positive                                                   *
-\**********************************************************************************/
-
-
----> TESTPOINT PASSED (psMetadata{Test Q - Free psMetadata} | tst_psMetadata_04.c)
-
Index: unk/psLib/test/astronomy/verified/tst_psMetadata_05.stderr
===================================================================
--- /trunk/psLib/test/astronomy/verified/tst_psMetadata_05.stderr	(revision 3689)
+++ 	(revision )
@@ -1,6 +1,0 @@
-<DATE><TIME>|<HOST>|E|psMetadataItemPrint (FILE:LINENO)
-    Unallowable operation: fd is NULL.
-<DATE><TIME>|<HOST>|E|psMetadataItemPrint (FILE:LINENO)
-    Unallowable operation: format is NULL.
-<DATE><TIME>|<HOST>|E|psMetadataItemPrint (FILE:LINENO)
-    Unallowable operation: metadataItem is NULL.
Index: unk/psLib/test/astronomy/verified/tst_psMetadata_05.stdout
===================================================================
--- /trunk/psLib/test/astronomy/verified/tst_psMetadata_05.stdout	(revision 3689)
+++ 	(revision )
@@ -1,64 +1,0 @@
-/***************************** TESTPOINT ******************************************\
-*             TestFile: tst_psMetadata_05.c                                        *
-*            TestPoint: psMetadata{Test A - Allocate metadata items}               *
-*             TestType: Positive                                                   *
-\**********************************************************************************/
-
-Key Name:  myItem1  Key mdType: 0x00001301  Key Value:               1  Key Comment: I am a boolean
-Key Name:  myItem2  Key mdType: 0x00000104  Key Value:              55  Key Comment: I am a integer
-Key Name:  myItem3  Key mdType: 0x00001301  Key Value:               0  Key Comment: I am a boolean
-Key Name:  myItem4  Key mdType: 0x00000104  Key Value:              66  Key Comment: I am a integer
-
----> TESTPOINT PASSED (psMetadata{Test A - Allocate metadata items} | tst_psMetadata_05.c)
-
-/***************************** TESTPOINT ******************************************\
-*             TestFile: tst_psMetadata_05.c                                        *
-*            TestPoint: psMetadata{Test F - Write metadata item to file}           *
-*             TestType: Positive                                                   *
-\**********************************************************************************/
-
-
----> TESTPOINT PASSED (psMetadata{Test F - Write metadata item to file} | tst_psMetadata_05.c)
-
-/***************************** TESTPOINT ******************************************\
-*             TestFile: tst_psMetadata_05.c                                        *
-*            TestPoint: psMetadata{Test J - Attempt to use null file with itemPrint} *
-*             TestType: Negative                                                   *
-*    ExpectedErrorText: Null file descriptor not allowed                           *
-*  ExpectedStatusValue: 0                                                          *
-\**********************************************************************************/
-
-
----> TESTPOINT PASSED (psMetadata{Test J - Attempt to use null file with itemPrint} | tst_psMetadata_05.c)
-
-/***************************** TESTPOINT ******************************************\
-*             TestFile: tst_psMetadata_05.c                                        *
-*            TestPoint: psMetadata{Test K - Attempt to use null format with itemPrint} *
-*             TestType: Negative                                                   *
-*    ExpectedErrorText: Null format not allowed                                    *
-*  ExpectedStatusValue: 0                                                          *
-\**********************************************************************************/
-
-
----> TESTPOINT PASSED (psMetadata{Test K - Attempt to use null format with itemPrint} | tst_psMetadata_05.c)
-
-/***************************** TESTPOINT ******************************************\
-*             TestFile: tst_psMetadata_05.c                                        *
-*            TestPoint: psMetadata{Test L - Attempt to use null item with itemPrint} *
-*             TestType: Negative                                                   *
-*    ExpectedErrorText: Null metadata not allowed                                  *
-*  ExpectedStatusValue: 0                                                          *
-\**********************************************************************************/
-
-
----> TESTPOINT PASSED (psMetadata{Test L - Attempt to use null item with itemPrint} | tst_psMetadata_05.c)
-
-/***************************** TESTPOINT ******************************************\
-*             TestFile: tst_psMetadata_05.c                                        *
-*            TestPoint: psMetadata{Test M - Free psMetadata}                       *
-*             TestType: Positive                                                   *
-\**********************************************************************************/
-
-
----> TESTPOINT PASSED (psMetadata{Test M - Free psMetadata} | tst_psMetadata_05.c)
-
Index: unk/psLib/test/astronomy/verified/tst_psMetadata_06.stdout
===================================================================
--- /trunk/psLib/test/astronomy/verified/tst_psMetadata_06.stdout	(revision 3689)
+++ 	(revision )
@@ -1,50 +1,0 @@
-/***************************** TESTPOINT ******************************************\
-*             TestFile: tst_psMetadata_06.c                                        *
-*            TestPoint: psMetadata{Test A - Allocate metadata and items}           *
-*             TestType: Positive                                                   *
-\**********************************************************************************/
-
-Key Name:  myItem1  Key mdType: 0x00001301  Key Value:               1  Key Comment: I am a boolean
-Key Name:  myItem1  Key mdType: 0x00000104  Key Value:             111  Key Comment: I am a signed integer
-Key Name:  myItem1  Key mdType: 0x00000104  Key Value:             222  Key Comment: I am a signed integer
-Key Name:  myItem2  Key mdType: 0x00000104  Key Value:             333  Key Comment: I am a signed integer
-Key Name:  myItem2  Key mdType: 0x00010000  Key Value:          psList  Key Comment: I am a list
-
----> TESTPOINT PASSED (psMetadata{Test A - Allocate metadata and items} | tst_psMetadata_06.c)
-
-/***************************** TESTPOINT ******************************************\
-*             TestFile: tst_psMetadata_06.c                                        *
-*            TestPoint: psMetadata{Test B - replace an item in the metadata}       *
-*             TestType: Positive                                                   *
-\**********************************************************************************/
-
-
----> TESTPOINT PASSED (psMetadata{Test B - replace an item in the metadata} | tst_psMetadata_06.c)
-
-/***************************** TESTPOINT ******************************************\
-*             TestFile: tst_psMetadata_06.c                                        *
-*            TestPoint: psMetadata{Test C - add duplicate-key metadata item}       *
-*             TestType: Positive                                                   *
-\**********************************************************************************/
-
-
----> TESTPOINT PASSED (psMetadata{Test C - add duplicate-key metadata item} | tst_psMetadata_06.c)
-
-/***************************** TESTPOINT ******************************************\
-*             TestFile: tst_psMetadata_06.c                                        *
-*            TestPoint: psMetadata{Test D - Add folder node on top of existing leaf node} *
-*             TestType: Positive                                                   *
-\**********************************************************************************/
-
-
----> TESTPOINT PASSED (psMetadata{Test D - Add folder node on top of existing leaf node} | tst_psMetadata_06.c)
-
-/***************************** TESTPOINT ******************************************\
-*             TestFile: tst_psMetadata_06.c                                        *
-*            TestPoint: psMetadata{Test E - Free psMetadata}                       *
-*             TestType: Positive                                                   *
-\**********************************************************************************/
-
-
----> TESTPOINT PASSED (psMetadata{Test E - Free psMetadata} | tst_psMetadata_06.c)
-
Index: unk/psLib/test/astronomy/verified/tst_psMetadata_07.stdout
===================================================================
--- /trunk/psLib/test/astronomy/verified/tst_psMetadata_07.stdout	(revision 3689)
+++ 	(revision )
@@ -1,18 +1,0 @@
-/***************************** TESTPOINT ******************************************\
-*             TestFile: tst_psMetadata_07.c                                        *
-*            TestPoint: psMetadata{Test A - Read an XML config file}               *
-*             TestType: Positive                                                   *
-\**********************************************************************************/
-
-
----> TESTPOINT PASSED (psMetadata{Test A - Read an XML config file} | tst_psMetadata_07.c)
-
-/***************************** TESTPOINT ******************************************\
-*             TestFile: tst_psMetadata_07.c                                        *
-*            TestPoint: psMetadata{Test B - Free data}                             *
-*             TestType: Positive                                                   *
-\**********************************************************************************/
-
-
----> TESTPOINT PASSED (psMetadata{Test B - Free data} | tst_psMetadata_07.c)
-
Index: /trunk/psLib/test/collections/.cvsignore
===================================================================
--- /trunk/psLib/test/collections/.cvsignore	(revision 3689)
+++ /trunk/psLib/test/collections/.cvsignore	(revision 3690)
@@ -37,2 +37,14 @@
 tst_psArray01
 tst_psScalar
+tst_psMetadata05_OUT
+tst_psMetadata_01
+tst_psMetadata_02
+tst_psMetadata_03
+tst_psMetadata_04
+tst_psMetadata_05
+tst_psMetadata_06
+tst_psMetadata_07
+tst_psMetadataIO
+header_1.fits
+header_2.fits
+test.config
Index: /trunk/psLib/test/collections/Makefile.am
===================================================================
--- /trunk/psLib/test/collections/Makefile.am	(revision 3689)
+++ /trunk/psLib/test/collections/Makefile.am	(revision 3690)
@@ -1,5 +1,8 @@
 #Makefile for collections functions of psLib
 #
-EXTRA_DIST = verified
+EXTRA_DIST = verified \
+	data/header_1.fits \
+	data/header_2.fits \
+	data/test.config
 
 INCLUDES = \
@@ -14,4 +17,5 @@
 
 AM_LDFLAGS = -L$(top_builddir)/src -lpslib $(PSLIB_LIBS)
+AM_CFLAGS = -DXML_CONFIG_FILE="\"$(top_srcdir)/etc/pslib/psTime.xml\""
 
 TESTS = \
@@ -30,9 +34,20 @@
          tst_psHash04          \
          tst_psHash05          \
-         tst_psScalar
+         tst_psScalar \
+         tst_psMetadataIO  \
+         tst_psMetadata_01 \
+         tst_psMetadata_02 \
+         tst_psMetadata_03 \
+         tst_psMetadata_04 \
+         tst_psMetadata_05 \
+         tst_psMetadata_06 \
+         tst_psMetadata_07
 
 check_PROGRAMS =$(TESTS)
 
-check_DATA =
+check_DATA = test.config \
+	header_1.fits \
+	header_2.fits
+
 
 TESTS_ENVIRONMENT = perl $(top_srcdir)/test/runTest -verified=$(srcdir)/verified 
@@ -57,4 +72,21 @@
 tst_psHash05_SOURCES = tst_psHash05.c
 tst_psScalar_SOURCES = tst_psScalar.c
+tst_psMetadataIO_SOURCES = tst_psMetadataIO.c
+tst_psMetadata_01_SOURCES = tst_psMetadata_01.c
+tst_psMetadata_02_SOURCES = tst_psMetadata_02.c
+tst_psMetadata_03_SOURCES = tst_psMetadata_03.c
+tst_psMetadata_04_SOURCES = tst_psMetadata_04.c
+tst_psMetadata_05_SOURCES = tst_psMetadata_05.c
+tst_psMetadata_06_SOURCES = tst_psMetadata_06.c
+tst_psMetadata_07_SOURCES = tst_psMetadata_07.c
+
+test.config: data/test.config
+	cp $? $@
+
+header_1.fits: data/header_1.fits
+	cp $? $@
+
+header_2.fits: data/header_2.fits
+	cp $? $@
 
 test: check
Index: /trunk/psLib/test/collections/data/header_1.fits
===================================================================
--- /trunk/psLib/test/collections/data/header_1.fits	(revision 3690)
+++ /trunk/psLib/test/collections/data/header_1.fits	(revision 3690)
@@ -0,0 +1,1 @@
+SIMPLE  =                    T / file does conform to FITS standard             BITPIX  =                    8 / number of bits per data pixel                  NAXIS   =                    0 / number of data axes                            HISTORY File modified by user 'harman' with fv  on 2004-08-04T11:11:18          END                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                             
Index: /trunk/psLib/test/collections/data/header_2.fits
===================================================================
--- /trunk/psLib/test/collections/data/header_2.fits	(revision 3690)
+++ /trunk/psLib/test/collections/data/header_2.fits	(revision 3690)
@@ -0,0 +1,1 @@
+SIMPLE  =                    T / file does conform to FITS standard             BITPIX  =                  -64 / number of bits per data pixel                  NAXIS   =                    1 / number of data axes                            NAXIS1  =                   64 / length of data axis 1                          EXTEND  =                    T / FITS dataset may contain extensions            COMMENT   FITS (Flexible Image Transport System) format is defined in 'AstronomyCOMMENT   and Astrophysics', volume 376, page 359; bibcode: 2001A&A...376..359H END                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                             XTENSION= 'IMAGE   '           / IMAGE extension                                BITPIX  =                  -64 / number of bits per data pixel                  NAXIS   =                    1 / number of data axes                            NAXIS1  =                   64 / length of data axis 1                          PCOUNT  =                    0 / required keyword; must = 0                     GCOUNT  =                    1 / required keyword; must = 1                     BITPIX  =                  -64 / number of bits per data pixel                  EXTNAME = 'MY_DATA_1'                                                           HISTORY File modified by user 'harman' with fv  on 2004-08-04T13:14:45          HISTORY File modified by user 'harman' with fv  on 2004-08-04T13:15:29          HISTORY File modified by user 'harman' with fv  on 2004-08-04T13:21:18          HISTORY File modified by user 'harman' with fv  on 2004-08-04T13:21:46          END                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                             XTENSION= 'IMAGE   '           / IMAGE extension                                BITPIX  =                  -64 / number of bits per data pixel                  NAXIS   =                    1 / number of data axes                            NAXIS1  =                   64 / length of data axis 1                          PCOUNT  =                    0 / required keyword; must = 0                     GCOUNT  =                    1 / required keyword; must = 1                     EXTNAME = 'MY_DATA_2'                                                           HISTORY File modified by user 'harman' with fv  on 2004-08-04T13:22:12          HISTORY File modified by user 'harman' with fv  on 2004-08-04T13:22:52          END                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                             
Index: /trunk/psLib/test/collections/data/test.config
===================================================================
--- /trunk/psLib/test/collections/data/test.config	(revision 3690)
+++ /trunk/psLib/test/collections/data/test.config	(revision 3690)
@@ -0,0 +1,128 @@
+##########################################################################################################
+#  test.config
+#
+#  This is a sample metadata configuration file used to test the metadata configuration file parser. 
+#  It tests both positive and negative cases as described in the comments below.
+#
+#  author  Ross Harman, MHPCC
+#
+#  version $Revision: 1.1 $  $Name: not supported by cvs2svn $
+#  date  $Date: 2005-04-09 00:04:58 $
+#
+#  Copyright 2004 Maui High Performance Computing Center, University of Hawaii
+##########################################################################################################
+#
+#
+#
+########## Test 1 ##########
+# Lines beginning with # are comments. The line below, as well as those above are comments. They should be ignored by the parser.
+# I am a comment.
+#
+#
+#
+########## Test 2 ##########
+# The line below is a comment that begins with some whitespace. It should be ignored by the parser.
+      #        		Another comment
+#
+#
+#
+########## Test 3 ##########
+# The line below is completely blank except for a carriage return. It should be ignored by the parser.
+
+#
+#
+#
+########## Test 4 ##########
+# The line below consists of spaces and tabs (whitespace). It should be ignored by the parser.
+     	   			                    
+#
+#
+#
+########## Test 5 ##########
+# The line below consists of a variable name, type, value, and trailing comment. It should be read by the parser
+pi          F64         3.1415926535897932384626433832795029        # Definition of pi
+#
+#
+#
+########## Test 6 ##########
+# The line below consists of a variable name, type, and value, but without a trailing comment. It should be read by the parser.
+altitude          S32         10000   
+#
+#
+#
+########## Test 7 ##########
+# The lines below contain variations in name, type, value, trailing comment, and whitespace. They should all be read by the parser.
+   time F32 1234.5678 
+ myBool     BOOL            F           # F, f, 0, T, t, 1 are also acceptable
+title1  STR   Hello world #This is a comment for the string value
+    title2  STRING   Good bye world   #    STRING or STR may be used as the string type 
+#
+#
+#
+########## Test 8 ##########
+# The line below creates a vector. It should be read by the parser.
+@primes     S32     2, 3, 5, 7, 11, 13, 17   # These are prime numbers
+#
+#
+#
+########## Test 9 ##########
+# The line below creates a vector with commas mixed with spaces in the values. It should be read by the parser.
+@negatives  S32     -1,  -2 -3    -4, -5, -6,      -7
+#
+#
+#
+########## Test 10  ##########
+# The lines below should create a folder node with children that are strings. They should be read by the parser.
+comment *STR This
+comment *STR     is
+comment *STR         an
+comment *STR             ugly
+comment *STR                 comment
+comment *STR                         but
+comment *STR                             still
+comment *STR                                 valid
+#
+#
+#
+########## Test 11  ##########
+# The line below contains an incorrect value. It should produce an error.
+xPosition    F64          9876.54qqq32
+#
+#
+#
+########## Test 12  ##########
+# The line below contains no value. It should produce an error.
+yPosition    F64          
+#
+#
+#
+########## Test 13  ##########
+# The line below contains no type. It should produce an error.
+zPosition       99.999          
+#
+#
+#
+########## Test 14  ##########
+# The line below contains two * characters. It should produce an error.
+aPosition   **          
+#
+#
+#
+########## Test 15 ##########
+# The line below contains two @ characters. It should produce an error.
+@@bPosition     F64     22.33             
+#
+#
+#
+########## Test 16 ##########
+# The line below contains a ~ character used for special processing. It should produce an error.
+range     F64     140.0 ~             
+#
+#
+#
+########## Test 17 ##########
+# The variable name below is repeated. It should produce an error if the overwrite function argument is set to false.
+# If overwrite is true, then the last name and value will be stored and there will be no error.
+speed     F32     55.55
+speed     F32     66.66
+             
Index: /trunk/psLib/test/collections/tst_psHash01.c
===================================================================
--- /trunk/psLib/test/collections/tst_psHash01.c	(revision 3689)
+++ /trunk/psLib/test/collections/tst_psHash01.c	(revision 3690)
@@ -21,5 +21,5 @@
 {
     ID *id = psAlloc(sizeof(ID));
-    p_psMemSetDeallocator(id,(psFreeFcn)IdFree);
+    psMemSetDeallocator(id,(psFreeFcn)IdFree);
     id->name = psStringCopy(name);
 
Index: /trunk/psLib/test/collections/tst_psHash02.c
===================================================================
--- /trunk/psLib/test/collections/tst_psHash02.c	(revision 3689)
+++ /trunk/psLib/test/collections/tst_psHash02.c	(revision 3690)
@@ -24,5 +24,5 @@
 {
     ID *id = psAlloc(sizeof(ID));
-    p_psMemSetDeallocator(id,(psFreeFcn)IdFree);
+    psMemSetDeallocator(id,(psFreeFcn)IdFree);
     id->name = psStringCopy(name);
 
Index: /trunk/psLib/test/collections/tst_psHash03.c
===================================================================
--- /trunk/psLib/test/collections/tst_psHash03.c	(revision 3689)
+++ /trunk/psLib/test/collections/tst_psHash03.c	(revision 3690)
@@ -26,5 +26,5 @@
 
     id = psAlloc(sizeof(ID));
-    p_psMemSetDeallocator(id,(psFreeFcn)IdFree);
+    psMemSetDeallocator(id,(psFreeFcn)IdFree);
 
     id->name = psStringCopy(name);
Index: /trunk/psLib/test/collections/tst_psHash04.c
===================================================================
--- /trunk/psLib/test/collections/tst_psHash04.c	(revision 3689)
+++ /trunk/psLib/test/collections/tst_psHash04.c	(revision 3690)
@@ -19,5 +19,5 @@
 {
     ID *id = psAlloc(sizeof(ID));
-    p_psMemSetDeallocator(id,(psFreeFcn)IdFree);
+    psMemSetDeallocator(id,(psFreeFcn)IdFree);
 
     id->name = psStringCopy(name);
Index: /trunk/psLib/test/collections/verified/tst_psMetadataIO.stderr
===================================================================
--- /trunk/psLib/test/collections/verified/tst_psMetadataIO.stderr	(revision 3690)
+++ /trunk/psLib/test/collections/verified/tst_psMetadataIO.stderr	(revision 3690)
@@ -0,0 +1,46 @@
+<DATE><TIME>|<HOST>|E|psMetadataParseConfig (FILE:LINENO)
+    Failed to parse the value '9876.54qqq32' of metadata item xPosition, type F64, on line 89 of test.config.
+<DATE><TIME>|<HOST>|E|psMetadataParseConfig (FILE:LINENO)
+    Failed to read a metadata value on line 95 of test.config.
+<DATE><TIME>|<HOST>|E|psMetadataParseConfig (FILE:LINENO)
+    Metadata type '99.999', found on line 101 of test.config, is not invalid.
+<DATE><TIME>|<HOST>|E|psMetadataParseConfig (FILE:LINENO)
+    More than one '*' character not allowed.  Found on line 107 of test.config.
+<DATE><TIME>|<HOST>|E|psMetadataParseConfig (FILE:LINENO)
+    More than one '@' character not allowed.  Found on line 113 of test.config.
+<DATE><TIME>|<HOST>|E|psMetadataParseConfig (FILE:LINENO)
+    More than one '~' character not allowed.  Found on line 119 of test.config.
+<DATE><TIME>|<HOST>|E|psMetadataParseConfig (FILE:LINENO)
+    Failed to parse the value '9876.54qqq32' of metadata item xPosition, type F64, on line 89 of test.config.
+<DATE><TIME>|<HOST>|E|psMetadataParseConfig (FILE:LINENO)
+    Failed to read a metadata value on line 95 of test.config.
+<DATE><TIME>|<HOST>|E|psMetadataParseConfig (FILE:LINENO)
+    Metadata type '99.999', found on line 101 of test.config, is not invalid.
+<DATE><TIME>|<HOST>|E|psMetadataParseConfig (FILE:LINENO)
+    More than one '*' character not allowed.  Found on line 107 of test.config.
+<DATE><TIME>|<HOST>|E|psMetadataParseConfig (FILE:LINENO)
+    More than one '@' character not allowed.  Found on line 113 of test.config.
+<DATE><TIME>|<HOST>|E|psMetadataParseConfig (FILE:LINENO)
+    More than one '~' character not allowed.  Found on line 119 of test.config.
+<DATE><TIME>|<HOST>|E|psMetadataAddItem (FILE:LINENO)
+    Duplicate metadata item name is not allowed.  Use a psMetadataFlags option to allow such action.
+<DATE><TIME>|<HOST>|E|psMetadataAddV (FILE:LINENO)
+    Failed to add metadata item to metadata collection list.
+<DATE><TIME>|<HOST>|E|psMetadataParseConfig (FILE:LINENO)
+    Duplicate Metadata item, speed, found on line 127 of test.config.  Overwrite not allowed.
+<DATE><TIME>|<HOST>|E|psMetadataParseConfig (FILE:LINENO)
+    Failed to parse the value '9876.54qqq32' of metadata item xPosition, type F64, on line 89 of test.config.
+<DATE><TIME>|<HOST>|E|psMetadataParseConfig (FILE:LINENO)
+    Failed to read a metadata value on line 95 of test.config.
+<DATE><TIME>|<HOST>|E|psMetadataParseConfig (FILE:LINENO)
+    Metadata type '99.999', found on line 101 of test.config, is not invalid.
+<DATE><TIME>|<HOST>|E|psMetadataParseConfig (FILE:LINENO)
+    More than one '*' character not allowed.  Found on line 107 of test.config.
+<DATE><TIME>|<HOST>|E|psMetadataParseConfig (FILE:LINENO)
+    More than one '@' character not allowed.  Found on line 113 of test.config.
+<DATE><TIME>|<HOST>|E|psMetadataParseConfig (FILE:LINENO)
+    More than one '~' character not allowed.  Found on line 119 of test.config.
+<DATE><TIME>|<HOST>|E|psMetadataParseConfig (FILE:LINENO)
+    Unallowable operation: fileName is NULL.
+<DATE><TIME>|<HOST>|E|psMetadataParseConfig (FILE:LINENO)
+    Failed to open file 'abcedfg'. Check if it exists and it has the proper permissions.
Index: /trunk/psLib/test/collections/verified/tst_psMetadataIO.stdout
===================================================================
--- /trunk/psLib/test/collections/verified/tst_psMetadataIO.stdout	(revision 3690)
+++ /trunk/psLib/test/collections/verified/tst_psMetadataIO.stdout	(revision 3690)
@@ -0,0 +1,173 @@
+/***************************** TESTPOINT ******************************************\
+*             TestFile: tst_psMetadataIO.c                                         *
+*            TestPoint: psMetadata{Test A - Read config file with overwrite set true} *
+*             TestType: Positive                                                   *
+\**********************************************************************************/
+
+Failed lines: 6 Expected: 6
+Contents of metadata list:
+ Key Name:       pi  Key mdType: 0x00000408 Key Value:           3.142  Key Comment: Definition of pi
+ Key Name: altitude  Key mdType: 0x00000104 Key Value:           10000  Key Comment: 
+ Key Name:     time  Key mdType: 0x00000404 Key Value:        1234.568  Key Comment: 
+ Key Name:   myBool  Key mdType: 0x00001301 Key Value:               0  Key Comment: F, f, 0, T, t, 1 are also acceptable
+ Key Name:   title1  Key mdType: 0x00010001 Key Value:     Hello world  Key Comment: This is a comment for the string value
+ Key Name:   title2  Key mdType: 0x00010001 Key Value:  Good bye world  Key Comment: STRING or STR may be used as the string type
+ Key Name:   primes  Key mdType: 0x00010002 Key Value:   [2,3,5,7,...]  Key Comment: These are prime numbers
+ Key Name: negatives  Key mdType: 0x00010002 Key Value:  [-1,-2,-3,...]  Key Comment: 
+ Key Name:  comment  Key mdType: 0x00010001 Key Value:            This  Key Comment: 
+ Key Name:  comment  Key mdType: 0x00010001 Key Value:              is  Key Comment: 
+ Key Name:  comment  Key mdType: 0x00010001 Key Value:              an  Key Comment: 
+ Key Name:  comment  Key mdType: 0x00010001 Key Value:            ugly  Key Comment: 
+ Key Name:  comment  Key mdType: 0x00010001 Key Value:         comment  Key Comment: 
+ Key Name:  comment  Key mdType: 0x00010001 Key Value:             but  Key Comment: 
+ Key Name:  comment  Key mdType: 0x00010001 Key Value:           still  Key Comment: 
+ Key Name:  comment  Key mdType: 0x00010001 Key Value:           valid  Key Comment: 
+ Key Name:    speed  Key mdType: 0x00000404 Key Value:          66.660  Key Comment: 
+
+Contents of metadata table:
+ Key Name:  comment  Key mdType: 0x0001000a Key Value:                  Key Comment: 
+    Key Name:  comment  Key mdType: 0x00010001 Key Value:            This  Key Comment: 
+    Key Name:  comment  Key mdType: 0x00010001 Key Value:              is  Key Comment: 
+    Key Name:  comment  Key mdType: 0x00010001 Key Value:              an  Key Comment: 
+    Key Name:  comment  Key mdType: 0x00010001 Key Value:            ugly  Key Comment: 
+    Key Name:  comment  Key mdType: 0x00010001 Key Value:         comment  Key Comment: 
+    Key Name:  comment  Key mdType: 0x00010001 Key Value:             but  Key Comment: 
+    Key Name:  comment  Key mdType: 0x00010001 Key Value:           still  Key Comment: 
+    Key Name:  comment  Key mdType: 0x00010001 Key Value:           valid  Key Comment: 
+ Key Name:   title2  Key mdType: 0x00010001 Key Value:  Good bye world  Key Comment: STRING or STR may be used as the string type
+ Key Name:     time  Key mdType: 0x00000404 Key Value:        1234.568  Key Comment: 
+ Key Name: negatives  Key mdType: 0x00010002 Key Value:  [-1,-2,-3,...]  Key Comment: 
+ Key Name:       pi  Key mdType: 0x00000408 Key Value:           3.142  Key Comment: Definition of pi
+ Key Name:   myBool  Key mdType: 0x00001301 Key Value:               0  Key Comment: F, f, 0, T, t, 1 are also acceptable
+ Key Name:   primes  Key mdType: 0x00010002 Key Value:   [2,3,5,7,...]  Key Comment: These are prime numbers
+ Key Name: altitude  Key mdType: 0x00000104 Key Value:           10000  Key Comment: 
+ Key Name:    speed  Key mdType: 0x00000404 Key Value:          66.660  Key Comment: 
+ Key Name:   title1  Key mdType: 0x00010001 Key Value:     Hello world  Key Comment: This is a comment for the string value
+
+---> TESTPOINT PASSED (psMetadata{Test A - Read config file with overwrite set true} | tst_psMetadataIO.c)
+
+/***************************** TESTPOINT ******************************************\
+*             TestFile: tst_psMetadataIO.c                                         *
+*            TestPoint: psMetadata{Test B - Read config file with overwrite set false} *
+*             TestType: Positive                                                   *
+\**********************************************************************************/
+
+Failed lines: 7 Expected: 7 Contents of metadata list:
+ Key Name:       pi  Key mdType: 0x00000408 Key Value:           3.142  Key Comment: Definition of pi
+ Key Name: altitude  Key mdType: 0x00000104 Key Value:           10000  Key Comment: 
+ Key Name:     time  Key mdType: 0x00000404 Key Value:        1234.568  Key Comment: 
+ Key Name:   myBool  Key mdType: 0x00001301 Key Value:               0  Key Comment: F, f, 0, T, t, 1 are also acceptable
+ Key Name:   title1  Key mdType: 0x00010001 Key Value:     Hello world  Key Comment: This is a comment for the string value
+ Key Name:   title2  Key mdType: 0x00010001 Key Value:  Good bye world  Key Comment: STRING or STR may be used as the string type
+ Key Name:   primes  Key mdType: 0x00010002 Key Value:   [2,3,5,7,...]  Key Comment: These are prime numbers
+ Key Name: negatives  Key mdType: 0x00010002 Key Value:  [-1,-2,-3,...]  Key Comment: 
+ Key Name:  comment  Key mdType: 0x00010001 Key Value:            This  Key Comment: 
+ Key Name:  comment  Key mdType: 0x00010001 Key Value:              is  Key Comment: 
+ Key Name:  comment  Key mdType: 0x00010001 Key Value:              an  Key Comment: 
+ Key Name:  comment  Key mdType: 0x00010001 Key Value:            ugly  Key Comment: 
+ Key Name:  comment  Key mdType: 0x00010001 Key Value:         comment  Key Comment: 
+ Key Name:  comment  Key mdType: 0x00010001 Key Value:             but  Key Comment: 
+ Key Name:  comment  Key mdType: 0x00010001 Key Value:           still  Key Comment: 
+ Key Name:  comment  Key mdType: 0x00010001 Key Value:           valid  Key Comment: 
+ Key Name:    speed  Key mdType: 0x00000404 Key Value:          55.550  Key Comment: 
+
+Contents of metadata table:
+ Key Name:  comment  Key mdType: 0x0001000a Key Value:                  Key Comment: 
+    Key Name:  comment  Key mdType: 0x00010001 Key Value:            This  Key Comment: 
+    Key Name:  comment  Key mdType: 0x00010001 Key Value:              is  Key Comment: 
+    Key Name:  comment  Key mdType: 0x00010001 Key Value:              an  Key Comment: 
+    Key Name:  comment  Key mdType: 0x00010001 Key Value:            ugly  Key Comment: 
+    Key Name:  comment  Key mdType: 0x00010001 Key Value:         comment  Key Comment: 
+    Key Name:  comment  Key mdType: 0x00010001 Key Value:             but  Key Comment: 
+    Key Name:  comment  Key mdType: 0x00010001 Key Value:           still  Key Comment: 
+    Key Name:  comment  Key mdType: 0x00010001 Key Value:           valid  Key Comment: 
+ Key Name:   title2  Key mdType: 0x00010001 Key Value:  Good bye world  Key Comment: STRING or STR may be used as the string type
+ Key Name:     time  Key mdType: 0x00000404 Key Value:        1234.568  Key Comment: 
+ Key Name: negatives  Key mdType: 0x00010002 Key Value:  [-1,-2,-3,...]  Key Comment: 
+ Key Name:       pi  Key mdType: 0x00000408 Key Value:           3.142  Key Comment: Definition of pi
+ Key Name:   myBool  Key mdType: 0x00001301 Key Value:               0  Key Comment: F, f, 0, T, t, 1 are also acceptable
+ Key Name:   primes  Key mdType: 0x00010002 Key Value:   [2,3,5,7,...]  Key Comment: These are prime numbers
+ Key Name: altitude  Key mdType: 0x00000104 Key Value:           10000  Key Comment: 
+ Key Name:    speed  Key mdType: 0x00000404 Key Value:          55.550  Key Comment: 
+ Key Name:   title1  Key mdType: 0x00010001 Key Value:     Hello world  Key Comment: This is a comment for the string value
+
+---> TESTPOINT PASSED (psMetadata{Test B - Read config file with overwrite set false} | tst_psMetadataIO.c)
+
+/***************************** TESTPOINT ******************************************\
+*             TestFile: tst_psMetadataIO.c                                         *
+*            TestPoint: psMetadata{Test C - Read config file without auto-allocation of metadata} *
+*             TestType: Positive                                                   *
+\**********************************************************************************/
+
+Failed lines: 6 Expected: 6 Contents of metadata list:
+ Key Name:       pi  Key mdType: 0x00000408 Key Value:           3.142  Key Comment: Definition of pi
+ Key Name: altitude  Key mdType: 0x00000104 Key Value:           10000  Key Comment: 
+ Key Name:     time  Key mdType: 0x00000404 Key Value:        1234.568  Key Comment: 
+ Key Name:   myBool  Key mdType: 0x00001301 Key Value:               0  Key Comment: F, f, 0, T, t, 1 are also acceptable
+ Key Name:   title1  Key mdType: 0x00010001 Key Value:     Hello world  Key Comment: This is a comment for the string value
+ Key Name:   title2  Key mdType: 0x00010001 Key Value:  Good bye world  Key Comment: STRING or STR may be used as the string type
+ Key Name:   primes  Key mdType: 0x00010002 Key Value:   [2,3,5,7,...]  Key Comment: These are prime numbers
+ Key Name: negatives  Key mdType: 0x00010002 Key Value:  [-1,-2,-3,...]  Key Comment: 
+ Key Name:  comment  Key mdType: 0x00010001 Key Value:            This  Key Comment: 
+ Key Name:  comment  Key mdType: 0x00010001 Key Value:              is  Key Comment: 
+ Key Name:  comment  Key mdType: 0x00010001 Key Value:              an  Key Comment: 
+ Key Name:  comment  Key mdType: 0x00010001 Key Value:            ugly  Key Comment: 
+ Key Name:  comment  Key mdType: 0x00010001 Key Value:         comment  Key Comment: 
+ Key Name:  comment  Key mdType: 0x00010001 Key Value:             but  Key Comment: 
+ Key Name:  comment  Key mdType: 0x00010001 Key Value:           still  Key Comment: 
+ Key Name:  comment  Key mdType: 0x00010001 Key Value:           valid  Key Comment: 
+ Key Name:    speed  Key mdType: 0x00000404 Key Value:          66.660  Key Comment: 
+
+Contents of metadata table:
+ Key Name:  comment  Key mdType: 0x0001000a Key Value:                  Key Comment: 
+    Key Name:  comment  Key mdType: 0x00010001 Key Value:            This  Key Comment: 
+    Key Name:  comment  Key mdType: 0x00010001 Key Value:              is  Key Comment: 
+    Key Name:  comment  Key mdType: 0x00010001 Key Value:              an  Key Comment: 
+    Key Name:  comment  Key mdType: 0x00010001 Key Value:            ugly  Key Comment: 
+    Key Name:  comment  Key mdType: 0x00010001 Key Value:         comment  Key Comment: 
+    Key Name:  comment  Key mdType: 0x00010001 Key Value:             but  Key Comment: 
+    Key Name:  comment  Key mdType: 0x00010001 Key Value:           still  Key Comment: 
+    Key Name:  comment  Key mdType: 0x00010001 Key Value:           valid  Key Comment: 
+ Key Name:   title2  Key mdType: 0x00010001 Key Value:  Good bye world  Key Comment: STRING or STR may be used as the string type
+ Key Name:     time  Key mdType: 0x00000404 Key Value:        1234.568  Key Comment: 
+ Key Name: negatives  Key mdType: 0x00010002 Key Value:  [-1,-2,-3,...]  Key Comment: 
+ Key Name:       pi  Key mdType: 0x00000408 Key Value:           3.142  Key Comment: Definition of pi
+ Key Name:   myBool  Key mdType: 0x00001301 Key Value:               0  Key Comment: F, f, 0, T, t, 1 are also acceptable
+ Key Name:   primes  Key mdType: 0x00010002 Key Value:   [2,3,5,7,...]  Key Comment: These are prime numbers
+ Key Name: altitude  Key mdType: 0x00000104 Key Value:           10000  Key Comment: 
+ Key Name:    speed  Key mdType: 0x00000404 Key Value:          66.660  Key Comment: 
+ Key Name:   title1  Key mdType: 0x00010001 Key Value:     Hello world  Key Comment: This is a comment for the string value
+
+---> TESTPOINT PASSED (psMetadata{Test C - Read config file without auto-allocation of metadata} | tst_psMetadataIO.c)
+
+/***************************** TESTPOINT ******************************************\
+*             TestFile: tst_psMetadataIO.c                                         *
+*            TestPoint: psMetadataIO{Test D - Attempt to use null fileName argument} *
+*             TestType: Negative                                                   *
+*    ExpectedErrorText: Null failedLines not allowed                               *
+*  ExpectedStatusValue: 0                                                          *
+\**********************************************************************************/
+
+
+---> TESTPOINT PASSED (psMetadata{Test D - Attempt to use null fileName argument} | tst_psMetadataIO.c)
+
+/***************************** TESTPOINT ******************************************\
+*             TestFile: tst_psMetadataIO.c                                         *
+*            TestPoint: psMetadataIO{Test E - Attempt to open nonexistant file}    *
+*             TestType: Negative                                                   *
+*    ExpectedErrorText: Error opening file                                         *
+*  ExpectedStatusValue: 0                                                          *
+\**********************************************************************************/
+
+
+---> TESTPOINT PASSED (psMetadata{Test E - Attempt to open nonexistant file} | tst_psMetadataIO.c)
+
+/***************************** TESTPOINT ******************************************\
+*             TestFile: tst_psMetadataIO.c                                         *
+*            TestPoint: psMetadata{Test F - Free psMetadata}                       *
+*             TestType: Positive                                                   *
+\**********************************************************************************/
+
+
+---> TESTPOINT PASSED (psMetadata{Test F - Free psMetadata} | tst_psMetadataIO.c)
+
Index: /trunk/psLib/test/collections/verified/tst_psMetadata_01.stderr
===================================================================
--- /trunk/psLib/test/collections/verified/tst_psMetadata_01.stderr	(revision 3690)
+++ /trunk/psLib/test/collections/verified/tst_psMetadata_01.stderr	(revision 3690)
@@ -0,0 +1,14 @@
+<DATE><TIME>|<HOST>|E|psMetadataReadHeader (FILE:LINENO)
+    Unallowable operation: fileName is NULL.
+<DATE><TIME>|<HOST>|E|psMetadataReadHeader (FILE:LINENO)
+    FITS error while opening file: missing.dat could not open the named file
+<DATE><TIME>|<HOST>|E|psMetadataReadHeader (FILE:LINENO)
+    Couldn't close FITS file. FITS error: NULL input pointer
+<DATE><TIME>|<HOST>|E|psMetadataReadHeader (FILE:LINENO)
+    Specified extension number, 0, is invalid.  Value must be positive if no extension name is given.
+<DATE><TIME>|<HOST>|E|psMetadataReadHeader (FILE:LINENO)
+    FITS error while locating header 22: tried to move past end of file
+<DATE><TIME>|<HOST>|E|psMetadataReadHeader (FILE:LINENO)
+    FITS error while locating header AARGH: illegal HDU number
+<DATE><TIME>|<HOST>|E|psMetadataReadHeader (FILE:LINENO)
+    Specified extension number, 0, is invalid.  Value must be positive if no extension name is given.
Index: /trunk/psLib/test/collections/verified/tst_psMetadata_01.stdout
===================================================================
--- /trunk/psLib/test/collections/verified/tst_psMetadata_01.stdout	(revision 3690)
+++ /trunk/psLib/test/collections/verified/tst_psMetadata_01.stdout	(revision 3690)
@@ -0,0 +1,194 @@
+/***************************** TESTPOINT ******************************************\
+*             TestFile: tst_psMetadata_01.c                                        *
+*            TestPoint: psMetadata{Test A - Read 1st hdr from simple FITS file}    *
+*             TestType: Positive                                                   *
+\**********************************************************************************/
+
+Contents of metadata list:
+ Key Name:   SIMPLE  Key mdType: 0x00001301  Key Value:               1  Key Comment: file does conform to FITS standard
+ Key Name:   BITPIX  Key mdType: 0x00000104  Key Value:               8  Key Comment: number of bits per data pixel
+ Key Name:    NAXIS  Key mdType: 0x00000104  Key Value:               0  Key Comment: number of data axes
+ Key Name:  HISTORY  Key mdType: 0x00010001  Key Value:                  Key Comment: File modified by user 'harman' with fv  on 2004-08-04T<DATE>
+
+Contents of metadata table:
+ Key Name:    NAXIS  Key mdType: 0x00000104  Key Value:               0  Key Comment: number of data axes
+ Key Name:   SIMPLE  Key mdType: 0x00001301  Key Value:               1  Key Comment: file does conform to FITS standard
+ Key Name:   BITPIX  Key mdType: 0x00000104  Key Value:               8  Key Comment: number of bits per data pixel
+ Key Name:  HISTORY  Key mdType: 0x00010001  Key Value:                  Key Comment: File modified by user 'harman' with fv  on 2004-08-04T<DATE>
+
+---> TESTPOINT PASSED (psMetadata{Test A - Read 1st hdr from simple FITS file} | tst_psMetadata_01.c)
+
+ID=34
+/***************************** TESTPOINT ******************************************\
+*             TestFile: tst_psMetadata_01.c                                        *
+*            TestPoint: psMetadata{Test B - Read 2nd hdr from complex FITS file}   *
+*             TestType: Positive                                                   *
+\**********************************************************************************/
+
+Contents of metadata list:
+ Key Name: XTENSION  Key mdType: 0x00010001  Key Value:      'IMAGE   '  Key Comment: IMAGE extension
+ Key Name:   BITPIX  Key mdType: 0x00000104  Key Value:             -64  Key Comment: number of bits per data pixel
+ Key Name:    NAXIS  Key mdType: 0x00000104  Key Value:               1  Key Comment: number of data axes
+ Key Name:   NAXIS1  Key mdType: 0x00000104  Key Value:              64  Key Comment: length of data axis 1
+ Key Name:   PCOUNT  Key mdType: 0x00000104  Key Value:               0  Key Comment: required keyword; must = 0
+ Key Name:   GCOUNT  Key mdType: 0x00000104  Key Value:               1  Key Comment: required keyword; must = 1
+ Key Name:   BITPIX  Key mdType: 0x00000104  Key Value:             -64  Key Comment: number of bits per data pixel
+ Key Name:  EXTNAME  Key mdType: 0x00010001  Key Value:     'MY_DATA_1'  Key Comment: 
+ Key Name:  HISTORY  Key mdType: 0x00010001  Key Value:                  Key Comment: File modified by user 'harman' with fv  on 2004-08-04T<DATE>
+ Key Name:  HISTORY  Key mdType: 0x00010001  Key Value:                  Key Comment: File modified by user 'harman' with fv  on 2004-08-04T<DATE>
+ Key Name:  HISTORY  Key mdType: 0x00010001  Key Value:                  Key Comment: File modified by user 'harman' with fv  on 2004-08-04T<DATE>
+ Key Name:  HISTORY  Key mdType: 0x00010001  Key Value:                  Key Comment: File modified by user 'harman' with fv  on 2004-08-04T<DATE>
+
+Contents of metadata table:
+ Key Name:    NAXIS  Key mdType: 0x00000104  Key Value:               1  Key Comment: number of data axes
+ Key Name:   NAXIS1  Key mdType: 0x00000104  Key Value:              64  Key Comment: length of data axis 1
+ Key Name:   PCOUNT  Key mdType: 0x00000104  Key Value:               0  Key Comment: required keyword; must = 0
+ Key Name: XTENSION  Key mdType: 0x00010001  Key Value:      'IMAGE   '  Key Comment: IMAGE extension
+ Key Name:   BITPIX  Key mdType: 0x0001000a  Key Value:                  Key Comment: 
+    Key Name:   BITPIX  Key mdType: 0x00000104  Key Value:             -64  Key Comment: number of bits per data pixel
+    Key Name:   BITPIX  Key mdType: 0x00000104  Key Value:             -64  Key Comment: number of bits per data pixel
+ Key Name:   GCOUNT  Key mdType: 0x00000104  Key Value:               1  Key Comment: required keyword; must = 1
+ Key Name:  HISTORY  Key mdType: 0x0001000a  Key Value:                  Key Comment: 
+    Key Name:  HISTORY  Key mdType: 0x00010001  Key Value:                  Key Comment: File modified by user 'harman' with fv  on 2004-08-04T<DATE>
+    Key Name:  HISTORY  Key mdType: 0x00010001  Key Value:                  Key Comment: File modified by user 'harman' with fv  on 2004-08-04T<DATE>
+    Key Name:  HISTORY  Key mdType: 0x00010001  Key Value:                  Key Comment: File modified by user 'harman' with fv  on 2004-08-04T<DATE>
+    Key Name:  HISTORY  Key mdType: 0x00010001  Key Value:                  Key Comment: File modified by user 'harman' with fv  on 2004-08-04T<DATE>
+ Key Name:  EXTNAME  Key mdType: 0x00010001  Key Value:     'MY_DATA_1'  Key Comment: 
+
+---> TESTPOINT PASSED (psMetadata{Test B - Read 2nd hdr from complex FITS file} | tst_psMetadata_01.c)
+
+ID=138
+/***************************** TESTPOINT ******************************************\
+*             TestFile: tst_psMetadata_01.c                                        *
+*            TestPoint: psMetadata{Test C - Read named hdr from complex FITS file} *
+*             TestType: Positive                                                   *
+\**********************************************************************************/
+
+Contents of metadata list:
+ Key Name: XTENSION  Key mdType: 0x00010001  Key Value:      'IMAGE   '  Key Comment: IMAGE extension
+ Key Name:   BITPIX  Key mdType: 0x00000104  Key Value:             -64  Key Comment: number of bits per data pixel
+ Key Name:    NAXIS  Key mdType: 0x00000104  Key Value:               1  Key Comment: number of data axes
+ Key Name:   NAXIS1  Key mdType: 0x00000104  Key Value:              64  Key Comment: length of data axis 1
+ Key Name:   PCOUNT  Key mdType: 0x00000104  Key Value:               0  Key Comment: required keyword; must = 0
+ Key Name:   GCOUNT  Key mdType: 0x00000104  Key Value:               1  Key Comment: required keyword; must = 1
+ Key Name:  EXTNAME  Key mdType: 0x00010001  Key Value:     'MY_DATA_2'  Key Comment: 
+ Key Name:  HISTORY  Key mdType: 0x00010001  Key Value:                  Key Comment: File modified by user 'harman' with fv  on 2004-08-04T<DATE>
+ Key Name:  HISTORY  Key mdType: 0x00010001  Key Value:                  Key Comment: File modified by user 'harman' with fv  on 2004-08-04T<DATE>
+
+Contents of metadata table:
+ Key Name:    NAXIS  Key mdType: 0x00000104  Key Value:               1  Key Comment: number of data axes
+ Key Name:   NAXIS1  Key mdType: 0x00000104  Key Value:              64  Key Comment: length of data axis 1
+ Key Name:   PCOUNT  Key mdType: 0x00000104  Key Value:               0  Key Comment: required keyword; must = 0
+ Key Name: XTENSION  Key mdType: 0x00010001  Key Value:      'IMAGE   '  Key Comment: IMAGE extension
+ Key Name:   GCOUNT  Key mdType: 0x00000104  Key Value:               1  Key Comment: required keyword; must = 1
+ Key Name:   BITPIX  Key mdType: 0x00000104  Key Value:             -64  Key Comment: number of bits per data pixel
+ Key Name:  HISTORY  Key mdType: 0x0001000a  Key Value:                  Key Comment: 
+    Key Name:  HISTORY  Key mdType: 0x00010001  Key Value:                  Key Comment: File modified by user 'harman' with fv  on 2004-08-04T<DATE>
+    Key Name:  HISTORY  Key mdType: 0x00010001  Key Value:                  Key Comment: File modified by user 'harman' with fv  on 2004-08-04T<DATE>
+ Key Name:  EXTNAME  Key mdType: 0x00010001  Key Value:     'MY_DATA_2'  Key Comment: 
+
+---> TESTPOINT PASSED (psMetadata{Test C - Read named hdr from complex FITS file} | tst_psMetadata_01.c)
+
+/***************************** TESTPOINT ******************************************\
+*             TestFile: tst_psMetadata_01.c                                        *
+*            TestPoint: psMetadata{Test D - Remove items with same name from all metadata} *
+*             TestType: Positive                                                   *
+\**********************************************************************************/
+
+Removed HISTORY from all metadata from prior test. Resulting metadata:
+
+Contents of metadata list:
+ Key Name: XTENSION  Key mdType: 0x00010001  Key Value:      'IMAGE   '  Key Comment: IMAGE extension
+ Key Name:   BITPIX  Key mdType: 0x00000104  Key Value:             -64  Key Comment: number of bits per data pixel
+ Key Name:    NAXIS  Key mdType: 0x00000104  Key Value:               1  Key Comment: number of data axes
+ Key Name:   NAXIS1  Key mdType: 0x00000104  Key Value:              64  Key Comment: length of data axis 1
+ Key Name:   PCOUNT  Key mdType: 0x00000104  Key Value:               0  Key Comment: required keyword; must = 0
+ Key Name:   GCOUNT  Key mdType: 0x00000104  Key Value:               1  Key Comment: required keyword; must = 1
+ Key Name:  EXTNAME  Key mdType: 0x00010001  Key Value:     'MY_DATA_2'  Key Comment: 
+
+Contents of metadata table:
+ Key Name:    NAXIS  Key mdType: 0x00000104  Key Value:               1  Key Comment: number of data axes
+ Key Name:   NAXIS1  Key mdType: 0x00000104  Key Value:              64  Key Comment: length of data axis 1
+ Key Name:   PCOUNT  Key mdType: 0x00000104  Key Value:               0  Key Comment: required keyword; must = 0
+ Key Name: XTENSION  Key mdType: 0x00010001  Key Value:      'IMAGE   '  Key Comment: IMAGE extension
+ Key Name:   GCOUNT  Key mdType: 0x00000104  Key Value:               1  Key Comment: required keyword; must = 1
+ Key Name:   BITPIX  Key mdType: 0x00000104  Key Value:             -64  Key Comment: number of bits per data pixel
+ Key Name:  EXTNAME  Key mdType: 0x00010001  Key Value:     'MY_DATA_2'  Key Comment: 
+
+---> TESTPOINT PASSED (psMetadata{Test D - Remove items with same name from all metadata} | tst_psMetadata_01.c)
+
+/***************************** TESTPOINT ******************************************\
+*             TestFile: tst_psMetadata_01.c                                        *
+*            TestPoint: psMetadata{Test E - Attempt to use null filename}          *
+*             TestType: Negative                                                   *
+*    ExpectedErrorText: Null fileName not allowed                                  *
+*  ExpectedStatusValue: 0                                                          *
+\**********************************************************************************/
+
+
+---> TESTPOINT PASSED (psMetadata{Test E - Attempt to use null filename} | tst_psMetadata_01.c)
+
+/***************************** TESTPOINT ******************************************\
+*             TestFile: tst_psMetadata_01.c                                        *
+*            TestPoint: psMetadata{Test F - Attempt to open nonexistant file}      *
+*             TestType: Negative                                                   *
+*    ExpectedErrorText: FITS error while opening file: missing.dat...Couldn't close FITS file... *
+*  ExpectedStatusValue: 0                                                          *
+\**********************************************************************************/
+
+
+---> TESTPOINT PASSED (psMetadata{Test F - Attempt to open nonexistant file} | tst_psMetadata_01.c)
+
+/***************************** TESTPOINT ******************************************\
+*             TestFile: tst_psMetadata_01.c                                        *
+*            TestPoint: psMetadata{Test G - Attempt to use two null inputs}        *
+*             TestType: Negative                                                   *
+*    ExpectedErrorText: Null extName and extNum = 0 not allowed                    *
+*  ExpectedStatusValue: 0                                                          *
+\**********************************************************************************/
+
+
+---> TESTPOINT PASSED (psMetadata{Test G - Attempt to use two null inputs} | tst_psMetadata_01.c)
+
+/***************************** TESTPOINT ******************************************\
+*             TestFile: tst_psMetadata_01.c                                        *
+*            TestPoint: psMetadata{Test H - Attempt to use bad extNum}             *
+*             TestType: Negative                                                   *
+*    ExpectedErrorText: FITS error while locating header 22: tried to move past end of file *
+*  ExpectedStatusValue: 0                                                          *
+\**********************************************************************************/
+
+
+---> TESTPOINT PASSED (psMetadata{Test H - Attempt to use bad extNum} | tst_psMetadata_01.c)
+
+/***************************** TESTPOINT ******************************************\
+*             TestFile: tst_psMetadata_01.c                                        *
+*            TestPoint: psMetadata{Test I - Attempt to use bad extName}            *
+*             TestType: Negative                                                   *
+*    ExpectedErrorText: FITS error while locating header AARGH: illegal HDU number *
+*  ExpectedStatusValue: 0                                                          *
+\**********************************************************************************/
+
+
+---> TESTPOINT PASSED (psMetadata{Test I - Attempt to use bad extName} | tst_psMetadata_01.c)
+
+/***************************** TESTPOINT ******************************************\
+*             TestFile: tst_psMetadata_01.c                                        *
+*            TestPoint: psMetadata{Test J - Read named hdr w/ invalid extnum}      *
+*             TestType: Negative                                                   *
+*    ExpectedErrorText: If extName specified, extNum should be -1.                 *
+*  ExpectedStatusValue: 0                                                          *
+\**********************************************************************************/
+
+
+---> TESTPOINT PASSED (psMetadata{Test J - Read named hdr w/ invalid extnum} | tst_psMetadata_01.c)
+
+/***************************** TESTPOINT ******************************************\
+*             TestFile: tst_psMetadata_01.c                                        *
+*            TestPoint: psMetadata{Test K - Free psMetadata}                       *
+*             TestType: Positive                                                   *
+\**********************************************************************************/
+
+
+---> TESTPOINT PASSED (psMetadata{Test K - Free psMetadata} | tst_psMetadata_01.c)
+
Index: /trunk/psLib/test/collections/verified/tst_psMetadata_02.stderr
===================================================================
--- /trunk/psLib/test/collections/verified/tst_psMetadata_02.stderr	(revision 3690)
+++ /trunk/psLib/test/collections/verified/tst_psMetadata_02.stderr	(revision 3690)
@@ -0,0 +1,10 @@
+<DATE><TIME>|<HOST>|I|main
+    Following should produce error for null name.
+<DATE><TIME>|<HOST>|E|psMetadataItemAllocV (FILE:LINENO)
+    Unallowable operation: name is NULL.
+<DATE><TIME>|<HOST>|E|psMetadataItemAllocV (FILE:LINENO)
+    Specified psMetadataType, -1, is not supported.
+<DATE><TIME>|<HOST>|E|psMetadataAddItem (FILE:LINENO)
+    Unallowable operation: md is NULL.
+<DATE><TIME>|<HOST>|E|psMetadataAddItem (FILE:LINENO)
+    Unallowable operation: metadataItem is NULL.
Index: /trunk/psLib/test/collections/verified/tst_psMetadata_02.stdout
===================================================================
--- /trunk/psLib/test/collections/verified/tst_psMetadata_02.stdout	(revision 3690)
+++ /trunk/psLib/test/collections/verified/tst_psMetadata_02.stdout	(revision 3690)
@@ -0,0 +1,76 @@
+/***************************** TESTPOINT ******************************************\
+*             TestFile: tst_psMetadata_02.c                                        *
+*            TestPoint: psMetadata{Test A - Allocate metadata items}               *
+*             TestType: Positive                                                   *
+\**********************************************************************************/
+
+Key Name:  myItem1  Key mdType: 0x00001301  Key Value:               1  Key Comment: I am a boolean
+Key Name:  myItem2  Key mdType: 0x00000104  Key Value:             111  Key Comment: I am a signed integer
+Key Name:  myItem3  Key mdType: 0x00000404  Key Value:         222.222  Key Comment: I am a single precision floating point
+Key Name:  myItem4  Key mdType: 0x00000408  Key Value:         333.333  Key Comment: I am a double precision floating point
+Key Name:  myItem5  Key mdType: 0x00010001  Key Value:     HELLO WORLD  Key Comment: I am a string
+
+---> TESTPOINT PASSED (psMetadata{Test A - Allocate metadata items} | tst_psMetadata_02.c)
+
+/***************************** TESTPOINT ******************************************\
+*             TestFile: tst_psMetadata_02.c                                        *
+*            TestPoint: psMetadata{Test B - Attempt to create metadata item with null name} *
+*             TestType: Negative                                                   *
+*    ExpectedErrorText: Null value for name not allowed                            *
+*  ExpectedStatusValue: 0                                                          *
+\**********************************************************************************/
+
+
+---> TESTPOINT PASSED (psMetadata{Test B - Attempt to create metadata item with null name} | tst_psMetadata_02.c)
+
+/***************************** TESTPOINT ******************************************\
+*             TestFile: tst_psMetadata_02.c                                        *
+*            TestPoint: psMetadata{Test C - Attempt to create metadata item with invalid type} *
+*             TestType: Negative                                                   *
+*    ExpectedErrorText: Invalid psMetadataType: 6                                  *
+*  ExpectedStatusValue: 0                                                          *
+\**********************************************************************************/
+
+
+---> TESTPOINT PASSED (psMetadata{Test C - Attempt to create metadata item with invalid type} | tst_psMetadata_02.c)
+
+/***************************** TESTPOINT ******************************************\
+*             TestFile: tst_psMetadata_02.c                                        *
+*            TestPoint: psMetadata{Test D - Allocate metadata}                     *
+*             TestType: Positive                                                   *
+\**********************************************************************************/
+
+
+---> TESTPOINT PASSED (psMetadata{Test D - Allocate metadata} | tst_psMetadata_02.c)
+
+/***************************** TESTPOINT ******************************************\
+*             TestFile: tst_psMetadata_02.c                                        *
+*            TestPoint: psMetadata{Test E - Attempt to add metadata item to null metadata} *
+*             TestType: Negative                                                   *
+*    ExpectedErrorText: Null metadata collection not allowed                       *
+*  ExpectedStatusValue: 0                                                          *
+\**********************************************************************************/
+
+
+---> TESTPOINT PASSED (psMetadata{Test E - Attempt to add metadata item to null metadata} | tst_psMetadata_02.c)
+
+/***************************** TESTPOINT ******************************************\
+*             TestFile: tst_psMetadata_02.c                                        *
+*            TestPoint: psMetadata{Test F - Attempt to add null metadata item to metadata} *
+*             TestType: Negative                                                   *
+*    ExpectedErrorText: Null metadata item not allowed                             *
+*  ExpectedStatusValue: 0                                                          *
+\**********************************************************************************/
+
+
+---> TESTPOINT PASSED (psMetadata{Test F - Attempt to add null metadata item to metadata} | tst_psMetadata_02.c)
+
+/***************************** TESTPOINT ******************************************\
+*             TestFile: tst_psMetadata_02.c                                        *
+*            TestPoint: psMetadata{Test G - Free psMetadata}                       *
+*             TestType: Positive                                                   *
+\**********************************************************************************/
+
+
+---> TESTPOINT PASSED (psMetadata{Test G - Free psMetadata} | tst_psMetadata_02.c)
+
Index: /trunk/psLib/test/collections/verified/tst_psMetadata_03.stderr
===================================================================
--- /trunk/psLib/test/collections/verified/tst_psMetadata_03.stderr	(revision 3690)
+++ /trunk/psLib/test/collections/verified/tst_psMetadata_03.stderr	(revision 3690)
@@ -0,0 +1,20 @@
+<DATE><TIME>|<HOST>|E|psMetadataRemove (FILE:LINENO)
+    Unallowable operation: md is NULL.
+<DATE><TIME>|<HOST>|E|psMetadataRemove (FILE:LINENO)
+    Failed to remove metadata item, AARGH, from metadata table.
+<DATE><TIME>|<HOST>|E|psMetadataRemove (FILE:LINENO)
+    Could not find metadata item at index 22.
+<DATE><TIME>|<HOST>|E|psMetadataAddItem (FILE:LINENO)
+    Unallowable operation: md->table is NULL.
+<DATE><TIME>|<HOST>|E|psMetadataRemove (FILE:LINENO)
+    Unallowable operation: md->table is NULL.
+<DATE><TIME>|<HOST>|E|psMetadataAddItem (FILE:LINENO)
+    Unallowable operation: md->list is NULL.
+<DATE><TIME>|<HOST>|E|psMetadataRemove (FILE:LINENO)
+    Unallowable operation: md->list is NULL.
+<DATE><TIME>|<HOST>|E|psMetadataAddItem (FILE:LINENO)
+    Unallowable operation: metadataItem->name is NULL.
+<DATE><TIME>|<HOST>|E|psMetadataAddItem (FILE:LINENO)
+    Unallowable operation: md->table is NULL.
+<DATE><TIME>|<HOST>|E|psMetadataAddV (FILE:LINENO)
+    Failed to add metadata item to metadata collection list.
Index: /trunk/psLib/test/collections/verified/tst_psMetadata_03.stdout
===================================================================
--- /trunk/psLib/test/collections/verified/tst_psMetadata_03.stdout	(revision 3690)
+++ /trunk/psLib/test/collections/verified/tst_psMetadata_03.stdout	(revision 3690)
@@ -0,0 +1,117 @@
+/***************************** TESTPOINT ******************************************\
+*             TestFile: tst_psMetadata_03.c                                        *
+*            TestPoint: psMetadata{Test A - Allocate metadata items}               *
+*             TestType: Positive                                                   *
+\**********************************************************************************/
+
+Key Name:  myItem1  Key mdType: 0x00001301  Key Value:               1  Key Comment: I am a boolean
+Key Name:  myItem2  Key mdType: 0x00000104  Key Value:              55  Key Comment: I am a integer
+Key Name:  myItem3  Key mdType: 0x00001301  Key Value:               0  Key Comment: I am a boolean
+Key Name:  myItem4  Key mdType: 0x00000104  Key Value:              66  Key Comment: I am a integer
+
+---> TESTPOINT PASSED (psMetadata{Test A - Allocate metadata items} | tst_psMetadata_03.c)
+
+/***************************** TESTPOINT ******************************************\
+*             TestFile: tst_psMetadata_03.c                                        *
+*            TestPoint: psMetadata{Test B - Remove items from metadata by name}    *
+*             TestType: Positive                                                   *
+\**********************************************************************************/
+
+
+---> TESTPOINT PASSED (psMetadata{Test B - Remove items from metadata by name} | tst_psMetadata_03.c)
+
+/***************************** TESTPOINT ******************************************\
+*             TestFile: tst_psMetadata_03.c                                        *
+*            TestPoint: psMetadata{Test C - Remove items from metadata by index}   *
+*             TestType: Positive                                                   *
+\**********************************************************************************/
+
+
+---> TESTPOINT PASSED (psMetadata{Test C - Remove items from metadata by index} | tst_psMetadata_03.c)
+
+/***************************** TESTPOINT ******************************************\
+*             TestFile: tst_psMetadata_03.c                                        *
+*            TestPoint: psMetadata{Test D - Attempt to use null metadata}          *
+*             TestType: Negative                                                   *
+*    ExpectedErrorText: Null metadata collection not allowed                       *
+*  ExpectedStatusValue: 0                                                          *
+\**********************************************************************************/
+
+
+---> TESTPOINT PASSED (psMetadata{Test D - Attempt to use null metadata} | tst_psMetadata_03.c)
+
+/***************************** TESTPOINT ******************************************\
+*             TestFile: tst_psMetadata_03.c                                        *
+*            TestPoint: psMetadata{Test E - Attempt to remove non-existant metadata item by name} *
+*             TestType: Negative                                                   *
+*    ExpectedErrorText: Couldn't find metadata item. Name: AARGH                   *
+*  ExpectedStatusValue: 0                                                          *
+\**********************************************************************************/
+
+
+---> TESTPOINT PASSED (psMetadata{Test E - Attempt to remove non-existant metadata item by name} | tst_psMetadata_03.c)
+
+/***************************** TESTPOINT ******************************************\
+*             TestFile: tst_psMetadata_03.c                                        *
+*            TestPoint: psMetadata{Test E - Attempt to remove non-existant metadata item by index} *
+*             TestType: Negative                                                   *
+*    ExpectedErrorText: Couldn't find metadata item in list. Index: 22             *
+*  ExpectedStatusValue: 0                                                          *
+\**********************************************************************************/
+
+
+---> TESTPOINT PASSED (psMetadata{Test E - Attempt to remove non-existant metadata item by index} | tst_psMetadata_03.c)
+
+/***************************** TESTPOINT ******************************************\
+*             TestFile: tst_psMetadata_03.c                                        *
+*            TestPoint: psMetadata{Test G - Attempt to add item to metadata w/o hash table} *
+*             TestType: Negative                                                   *
+*    ExpectedErrorText: Couldn't add item to invalid metadata structure.           *
+*  ExpectedStatusValue: 0                                                          *
+\**********************************************************************************/
+
+
+---> TESTPOINT PASSED (psMetadata{Test G - Attempt to add item to invalid metadata w/o hash table} | tst_psMetadata_03.c)
+
+/***************************** TESTPOINT ******************************************\
+*             TestFile: tst_psMetadata_03.c                                        *
+*            TestPoint: psMetadata{Test H - Attempt to add item to metadata w/o link list} *
+*             TestType: Negative                                                   *
+*    ExpectedErrorText: Couldn't add item to invalid metadata structure.           *
+*  ExpectedStatusValue: 0                                                          *
+\**********************************************************************************/
+
+
+---> TESTPOINT PASSED (psMetadata{Test H - Attempt to add item to invalid metadata w/o link list} | tst_psMetadata_03.c)
+
+/***************************** TESTPOINT ******************************************\
+*             TestFile: tst_psMetadata_03.c                                        *
+*            TestPoint: psMetadata{Test I - Attempt to add item with null name}    *
+*             TestType: Negative                                                   *
+*    ExpectedErrorText: Couldn't add item with null name.                          *
+*  ExpectedStatusValue: 0                                                          *
+\**********************************************************************************/
+
+
+---> TESTPOINT PASSED (psMetadata{Test I - Attempt to add item with null name} | tst_psMetadata_03.c)
+
+/***************************** TESTPOINT ******************************************\
+*             TestFile: tst_psMetadata_03.c                                        *
+*            TestPoint: psMetadata{Test J - Attempt to add item to metadata w/o hash table} *
+*             TestType: Negative                                                   *
+*    ExpectedErrorText: Couldn't add item to invalid metadata structure.           *
+*  ExpectedStatusValue: 0                                                          *
+\**********************************************************************************/
+
+
+---> TESTPOINT PASSED (psMetadata{Test J - Attempt to add item to invalid metadata w/o hash table} | tst_psMetadata_03.c)
+
+/***************************** TESTPOINT ******************************************\
+*             TestFile: tst_psMetadata_03.c                                        *
+*            TestPoint: psMetadata{Test K - Free psMetadata}                       *
+*             TestType: Positive                                                   *
+\**********************************************************************************/
+
+
+---> TESTPOINT PASSED (psMetadata{Test K - Free psMetadata} | tst_psMetadata_03.c)
+
Index: /trunk/psLib/test/collections/verified/tst_psMetadata_04.stderr
===================================================================
--- /trunk/psLib/test/collections/verified/tst_psMetadata_04.stderr	(revision 3690)
+++ /trunk/psLib/test/collections/verified/tst_psMetadata_04.stderr	(revision 3690)
@@ -0,0 +1,16 @@
+<DATE><TIME>|<HOST>|E|psMetadataLookup (FILE:LINENO)
+    Unallowable operation: md is NULL.
+<DATE><TIME>|<HOST>|E|psMetadataLookup (FILE:LINENO)
+    Unallowable operation: key is NULL.
+<DATE><TIME>|<HOST>|E|psMetadataGet (FILE:LINENO)
+    Unallowable operation: md is NULL.
+<DATE><TIME>|<HOST>|E|psListIteratorSet (FILE:LINENO)
+    Specified location, 22, is invalid.
+<DATE><TIME>|<HOST>|E|psListGet (FILE:LINENO)
+    Specified location, 22, is invalid.
+<DATE><TIME>|<HOST>|E|psMetadataGet (FILE:LINENO)
+    Could not find metadata item at index 22.
+<DATE><TIME>|<HOST>|E|psMetadataLookup (FILE:LINENO)
+    Unallowable operation: md->table is NULL.
+<DATE><TIME>|<HOST>|E|psMetadataGet (FILE:LINENO)
+    Unallowable operation: md->list is NULL.
Index: /trunk/psLib/test/collections/verified/tst_psMetadata_04.stdout
===================================================================
--- /trunk/psLib/test/collections/verified/tst_psMetadata_04.stdout	(revision 3690)
+++ /trunk/psLib/test/collections/verified/tst_psMetadata_04.stdout	(revision 3690)
@@ -0,0 +1,174 @@
+/***************************** TESTPOINT ******************************************\
+*             TestFile: tst_psMetadata_04.c                                        *
+*            TestPoint: psMetadata{Test A - Allocate metadata items}               *
+*             TestType: Positive                                                   *
+\**********************************************************************************/
+
+Key Name:  myItem1  Key mdType: 0x00001301  Key Value:               1  Key Comment: I am a boolean
+Key Name:  myItem2  Key mdType: 0x00000104  Key Value:              55  Key Comment: I am a integer
+Key Name:  myItem3  Key mdType: 0x00001301  Key Value:               0  Key Comment: I am a boolean
+Key Name:  myItem4  Key mdType: 0x00000104  Key Value:              66  Key Comment: I am a integer
+Key Name:  myItem5  Key mdType: 0x00000408  Key Value:           3.140  Key Comment: I am a double
+
+---> TESTPOINT PASSED (psMetadata{Test A - Allocate metadata items} | tst_psMetadata_04.c)
+
+/***************************** TESTPOINT ******************************************\
+*             TestFile: tst_psMetadata_04.c                                        *
+*            TestPoint: psMetadata{Test B - Lookup metadata item by name}          *
+*             TestType: Positive                                                   *
+\**********************************************************************************/
+
+Found item named myItem2
+
+---> TESTPOINT PASSED (psMetadata{Test B - Lookup metadata item by name} | tst_psMetadata_04.c)
+
+/***************************** TESTPOINT ******************************************\
+*             TestFile: tst_psMetadata_04.c                                        *
+*            TestPoint: psMetadata{Test C - Attempt to use null metadata}          *
+*             TestType: Negative                                                   *
+*    ExpectedErrorText: Null metadata collection not allowed                       *
+*  ExpectedStatusValue: 0                                                          *
+\**********************************************************************************/
+
+
+---> TESTPOINT PASSED (psMetadata{Test C - Attempt to use null metadata} | tst_psMetadata_04.c)
+
+/***************************** TESTPOINT ******************************************\
+*             TestFile: tst_psMetadata_04.c                                        *
+*            TestPoint: psMetadata{Test D - Attempt to use null key}               *
+*             TestType: Negative                                                   *
+*    ExpectedErrorText: Null key name not allowed                                  *
+*  ExpectedStatusValue: 0                                                          *
+\**********************************************************************************/
+
+
+---> TESTPOINT PASSED (psMetadata{Test D - Attempt to use null key} | tst_psMetadata_04.c)
+
+/***************************** TESTPOINT ******************************************\
+*             TestFile: tst_psMetadata_04.c                                        *
+*            TestPoint: psMetadata{Test E - Attempt to lookup non-existant metadata item} *
+*             TestType: Negative                                                   *
+*    ExpectedErrorText: Couldn't find metadata item. Name: AARGH                   *
+*  ExpectedStatusValue: 0                                                          *
+\**********************************************************************************/
+
+
+---> TESTPOINT PASSED (psMetadata{Test E - Attempt to lookup non-existant metadata item} | tst_psMetadata_04.c)
+
+/***************************** TESTPOINT ******************************************\
+*             TestFile: tst_psMetadata_04.c                                        *
+*            TestPoint: psMetadata{Test F - Lookup metadata item by index}         *
+*             TestType: Positive                                                   *
+\**********************************************************************************/
+
+Found item named myItem6
+
+---> TESTPOINT PASSED (psMetadata{Test F - Lookup metadata item by index} | tst_psMetadata_04.c)
+
+/***************************** TESTPOINT ******************************************\
+*             TestFile: tst_psMetadata_04.c                                        *
+*            TestPoint: psMetadata{Test G - Lookup metadata item and return psS32 value} *
+*             TestType: Positive                                                   *
+\**********************************************************************************/
+
+
+---> TESTPOINT PASSED (psMetadata{Test G - Lookup metadata item and return psS32 value} | tst_psMetadata_04.c)
+
+/***************************** TESTPOINT ******************************************\
+*             TestFile: tst_psMetadata_04.c                                        *
+*            TestPoint: psMetadata{Test H - Lookup metadata item and return psF64 value} *
+*             TestType: Positive                                                   *
+\**********************************************************************************/
+
+
+---> TESTPOINT PASSED (psMetadata{Test H - Lookup metadata item and return psF64 value} | tst_psMetadata_04.c)
+
+/***************************** TESTPOINT ******************************************\
+*             TestFile: tst_psMetadata_04.c                                        *
+*            TestPoint: psMetadata{Test I - Lookup metadata item and return psVector pointer} *
+*             TestType: Positive                                                   *
+\**********************************************************************************/
+
+
+---> TESTPOINT PASSED (psMetadata{Test I - Lookup metadata item and return psVector pointer} | tst_psMetadata_04.c)
+
+/***************************** TESTPOINT ******************************************\
+*             TestFile: tst_psMetadata_04.c                                        *
+*            TestPoint: psMetadata{Test J - Attempt to use null metadata}          *
+*             TestType: Negative                                                   *
+*    ExpectedErrorText: Null metadata collection not allowed                       *
+*  ExpectedStatusValue: 0                                                          *
+\**********************************************************************************/
+
+
+---> TESTPOINT PASSED (psMetadata{Test J - Attempt to use null metadata} | tst_psMetadata_04.c)
+
+/***************************** TESTPOINT ******************************************\
+*             TestFile: tst_psMetadata_04.c                                        *
+*            TestPoint: psMetadata{Test K - Attempt to get non-existant metadata item} *
+*             TestType: Negative                                                   *
+*    ExpectedErrorText: Couldn't find metadata item with given index. Index: 22    *
+*  ExpectedStatusValue: 0                                                          *
+\**********************************************************************************/
+
+
+---> TESTPOINT PASSED (psMetadata{Test K - Attempt to get non-existant metadata item} | tst_psMetadata_04.c)
+
+/***************************** TESTPOINT ******************************************\
+*             TestFile: tst_psMetadata_04.c                                        *
+*            TestPoint: psMetadata{Test L - Attemp to look up with an invalid metadata} *
+*             TestType: Negative                                                   *
+*    ExpectedErrorText: Lookup item with invalid metadata object.                  *
+*  ExpectedStatusValue: 0                                                          *
+\**********************************************************************************/
+
+
+---> TESTPOINT PASSED (psMetadata{Test L - Attempt to lookup an invalid metadata object.} | tst_psMetadata_04.c)
+
+/***************************** TESTPOINT ******************************************\
+*             TestFile: tst_psMetadata_04.c                                        *
+*            TestPoint: psMetadata{Test M - Attempt to get item with an invalid metadata} *
+*             TestType: Negative                                                   *
+*    ExpectedErrorText: Get item with invalid metadata object.                     *
+*  ExpectedStatusValue: 0                                                          *
+\**********************************************************************************/
+
+
+---> TESTPOINT PASSED (psMetadata{Test M - Attempt to get item with  invalid metadata object} | tst_psMetadata_04.c)
+
+/***************************** TESTPOINT ******************************************\
+*             TestFile: tst_psMetadata_04.c                                        *
+*            TestPoint: psMetadata{Test N - Attempt get psS32 value of non-existant metadata item} *
+*             TestType: Positive                                                   *
+\**********************************************************************************/
+
+
+---> TESTPOINT PASSED (psMetadata{Test N - Attempt get psS32 value of non-existant metadata item} | tst_psMetadata_04.c)
+
+/***************************** TESTPOINT ******************************************\
+*             TestFile: tst_psMetadata_04.c                                        *
+*            TestPoint: psMetadata{Test O - Attempt get psF64 value of non-existant metadata item} *
+*             TestType: Positive                                                   *
+\**********************************************************************************/
+
+
+---> TESTPOINT PASSED (psMetadata{Test O - Attempt get psF64 value of non-existant metadata item} | tst_psMetadata_04.c)
+
+/***************************** TESTPOINT ******************************************\
+*             TestFile: tst_psMetadata_04.c                                        *
+*            TestPoint: psMetadata{Test P - Attempt get psVector value of non-existant metadata item} *
+*             TestType: Positive                                                   *
+\**********************************************************************************/
+
+
+---> TESTPOINT PASSED (psMetadata{Test P - Attempt get psVector value of non-existant metadata item} | tst_psMetadata_04.c)
+
+/***************************** TESTPOINT ******************************************\
+*             TestFile: tst_psMetadata_04.c                                        *
+*            TestPoint: psMetadata{Test Q - Free psMetadata}                       *
+*             TestType: Positive                                                   *
+\**********************************************************************************/
+
+
+---> TESTPOINT PASSED (psMetadata{Test Q - Free psMetadata} | tst_psMetadata_04.c)
+
Index: /trunk/psLib/test/collections/verified/tst_psMetadata_05.stderr
===================================================================
--- /trunk/psLib/test/collections/verified/tst_psMetadata_05.stderr	(revision 3690)
+++ /trunk/psLib/test/collections/verified/tst_psMetadata_05.stderr	(revision 3690)
@@ -0,0 +1,6 @@
+<DATE><TIME>|<HOST>|E|psMetadataItemPrint (FILE:LINENO)
+    Unallowable operation: fd is NULL.
+<DATE><TIME>|<HOST>|E|psMetadataItemPrint (FILE:LINENO)
+    Unallowable operation: format is NULL.
+<DATE><TIME>|<HOST>|E|psMetadataItemPrint (FILE:LINENO)
+    Unallowable operation: metadataItem is NULL.
Index: /trunk/psLib/test/collections/verified/tst_psMetadata_05.stdout
===================================================================
--- /trunk/psLib/test/collections/verified/tst_psMetadata_05.stdout	(revision 3690)
+++ /trunk/psLib/test/collections/verified/tst_psMetadata_05.stdout	(revision 3690)
@@ -0,0 +1,64 @@
+/***************************** TESTPOINT ******************************************\
+*             TestFile: tst_psMetadata_05.c                                        *
+*            TestPoint: psMetadata{Test A - Allocate metadata items}               *
+*             TestType: Positive                                                   *
+\**********************************************************************************/
+
+Key Name:  myItem1  Key mdType: 0x00001301  Key Value:               1  Key Comment: I am a boolean
+Key Name:  myItem2  Key mdType: 0x00000104  Key Value:              55  Key Comment: I am a integer
+Key Name:  myItem3  Key mdType: 0x00001301  Key Value:               0  Key Comment: I am a boolean
+Key Name:  myItem4  Key mdType: 0x00000104  Key Value:              66  Key Comment: I am a integer
+
+---> TESTPOINT PASSED (psMetadata{Test A - Allocate metadata items} | tst_psMetadata_05.c)
+
+/***************************** TESTPOINT ******************************************\
+*             TestFile: tst_psMetadata_05.c                                        *
+*            TestPoint: psMetadata{Test F - Write metadata item to file}           *
+*             TestType: Positive                                                   *
+\**********************************************************************************/
+
+
+---> TESTPOINT PASSED (psMetadata{Test F - Write metadata item to file} | tst_psMetadata_05.c)
+
+/***************************** TESTPOINT ******************************************\
+*             TestFile: tst_psMetadata_05.c                                        *
+*            TestPoint: psMetadata{Test J - Attempt to use null file with itemPrint} *
+*             TestType: Negative                                                   *
+*    ExpectedErrorText: Null file descriptor not allowed                           *
+*  ExpectedStatusValue: 0                                                          *
+\**********************************************************************************/
+
+
+---> TESTPOINT PASSED (psMetadata{Test J - Attempt to use null file with itemPrint} | tst_psMetadata_05.c)
+
+/***************************** TESTPOINT ******************************************\
+*             TestFile: tst_psMetadata_05.c                                        *
+*            TestPoint: psMetadata{Test K - Attempt to use null format with itemPrint} *
+*             TestType: Negative                                                   *
+*    ExpectedErrorText: Null format not allowed                                    *
+*  ExpectedStatusValue: 0                                                          *
+\**********************************************************************************/
+
+
+---> TESTPOINT PASSED (psMetadata{Test K - Attempt to use null format with itemPrint} | tst_psMetadata_05.c)
+
+/***************************** TESTPOINT ******************************************\
+*             TestFile: tst_psMetadata_05.c                                        *
+*            TestPoint: psMetadata{Test L - Attempt to use null item with itemPrint} *
+*             TestType: Negative                                                   *
+*    ExpectedErrorText: Null metadata not allowed                                  *
+*  ExpectedStatusValue: 0                                                          *
+\**********************************************************************************/
+
+
+---> TESTPOINT PASSED (psMetadata{Test L - Attempt to use null item with itemPrint} | tst_psMetadata_05.c)
+
+/***************************** TESTPOINT ******************************************\
+*             TestFile: tst_psMetadata_05.c                                        *
+*            TestPoint: psMetadata{Test M - Free psMetadata}                       *
+*             TestType: Positive                                                   *
+\**********************************************************************************/
+
+
+---> TESTPOINT PASSED (psMetadata{Test M - Free psMetadata} | tst_psMetadata_05.c)
+
Index: /trunk/psLib/test/collections/verified/tst_psMetadata_06.stdout
===================================================================
--- /trunk/psLib/test/collections/verified/tst_psMetadata_06.stdout	(revision 3690)
+++ /trunk/psLib/test/collections/verified/tst_psMetadata_06.stdout	(revision 3690)
@@ -0,0 +1,50 @@
+/***************************** TESTPOINT ******************************************\
+*             TestFile: tst_psMetadata_06.c                                        *
+*            TestPoint: psMetadata{Test A - Allocate metadata and items}           *
+*             TestType: Positive                                                   *
+\**********************************************************************************/
+
+Key Name:  myItem1  Key mdType: 0x00001301  Key Value:               1  Key Comment: I am a boolean
+Key Name:  myItem1  Key mdType: 0x00000104  Key Value:             111  Key Comment: I am a signed integer
+Key Name:  myItem1  Key mdType: 0x00000104  Key Value:             222  Key Comment: I am a signed integer
+Key Name:  myItem2  Key mdType: 0x00000104  Key Value:             333  Key Comment: I am a signed integer
+Key Name:  myItem2  Key mdType: 0x00010000  Key Value:          psList  Key Comment: I am a list
+
+---> TESTPOINT PASSED (psMetadata{Test A - Allocate metadata and items} | tst_psMetadata_06.c)
+
+/***************************** TESTPOINT ******************************************\
+*             TestFile: tst_psMetadata_06.c                                        *
+*            TestPoint: psMetadata{Test B - replace an item in the metadata}       *
+*             TestType: Positive                                                   *
+\**********************************************************************************/
+
+
+---> TESTPOINT PASSED (psMetadata{Test B - replace an item in the metadata} | tst_psMetadata_06.c)
+
+/***************************** TESTPOINT ******************************************\
+*             TestFile: tst_psMetadata_06.c                                        *
+*            TestPoint: psMetadata{Test C - add duplicate-key metadata item}       *
+*             TestType: Positive                                                   *
+\**********************************************************************************/
+
+
+---> TESTPOINT PASSED (psMetadata{Test C - add duplicate-key metadata item} | tst_psMetadata_06.c)
+
+/***************************** TESTPOINT ******************************************\
+*             TestFile: tst_psMetadata_06.c                                        *
+*            TestPoint: psMetadata{Test D - Add folder node on top of existing leaf node} *
+*             TestType: Positive                                                   *
+\**********************************************************************************/
+
+
+---> TESTPOINT PASSED (psMetadata{Test D - Add folder node on top of existing leaf node} | tst_psMetadata_06.c)
+
+/***************************** TESTPOINT ******************************************\
+*             TestFile: tst_psMetadata_06.c                                        *
+*            TestPoint: psMetadata{Test E - Free psMetadata}                       *
+*             TestType: Positive                                                   *
+\**********************************************************************************/
+
+
+---> TESTPOINT PASSED (psMetadata{Test E - Free psMetadata} | tst_psMetadata_06.c)
+
Index: /trunk/psLib/test/collections/verified/tst_psMetadata_07.stdout
===================================================================
--- /trunk/psLib/test/collections/verified/tst_psMetadata_07.stdout	(revision 3690)
+++ /trunk/psLib/test/collections/verified/tst_psMetadata_07.stdout	(revision 3690)
@@ -0,0 +1,18 @@
+/***************************** TESTPOINT ******************************************\
+*             TestFile: tst_psMetadata_07.c                                        *
+*            TestPoint: psMetadata{Test A - Read an XML config file}               *
+*             TestType: Positive                                                   *
+\**********************************************************************************/
+
+
+---> TESTPOINT PASSED (psMetadata{Test A - Read an XML config file} | tst_psMetadata_07.c)
+
+/***************************** TESTPOINT ******************************************\
+*             TestFile: tst_psMetadata_07.c                                        *
+*            TestPoint: psMetadata{Test B - Free data}                             *
+*             TestType: Positive                                                   *
+\**********************************************************************************/
+
+
+---> TESTPOINT PASSED (psMetadata{Test B - Free data} | tst_psMetadata_07.c)
+
Index: /trunk/psLib/test/dataIO/.cvsignore
===================================================================
--- /trunk/psLib/test/dataIO/.cvsignore	(revision 3689)
+++ /trunk/psLib/test/dataIO/.cvsignore	(revision 3690)
@@ -6,4 +6,5 @@
 temp
 tst_psLookupTable_01
+tst_psDB
 tst_psFits
 multi.fits
Index: /trunk/psLib/test/dataIO/Makefile.am
===================================================================
--- /trunk/psLib/test/dataIO/Makefile.am	(revision 3689)
+++ /trunk/psLib/test/dataIO/Makefile.am	(revision 3690)
@@ -2,4 +2,6 @@
 #
 EXTRA_DIST = verified
+
+EXTRA_PROGRAMS = tst_psDB
 
 INCLUDES = \
@@ -18,5 +20,6 @@
 TESTS = \
 	tst_psLookupTable_01 \
-	tst_psFits
+	tst_psFits \
+	@TST_PSDB@
 
 check_PROGRAMS = $(TESTS)
@@ -32,4 +35,5 @@
 tst_psLookupTable_01_SOURCES =  tst_psLookupTable_01.c
 tst_psFits_SOURCES =  tst_psFits.c
+tst_psDB_SOURCES = tst_psDB.c
 
 %.dat: verified/%.dat
Index: /trunk/psLib/test/dataIO/verified/tst_psDB.stderr
===================================================================
--- /trunk/psLib/test/dataIO/verified/tst_psDB.stderr	(revision 3690)
+++ /trunk/psLib/test/dataIO/verified/tst_psDB.stderr	(revision 3690)
@@ -0,0 +1,305 @@
+/***************************** TESTPOINT ******************************************\
+*             TestFile: tst_psDB.c                                                 *
+*            TestPoint: psDB{dbInit}                                               *
+*             TestType: Positive                                                   *
+\**********************************************************************************/
+
+<DATE><TIME>|<HOST>|I|TPDBInit
+    psDBInit/psDBCleanup shall initialize/cleanup database connection.
+<DATE><TIME>|<HOST>|I|_init_psDB
+    initialize database connection...
+
+---> TESTPOINT PASSED (psDB{dbInit} | tst_psDB.c)
+
+/***************************** TESTPOINT ******************************************\
+*             TestFile: tst_psDB.c                                                 *
+*            TestPoint: psDB{dbChange}                                             *
+*             TestType: Positive                                                   *
+\**********************************************************************************/
+
+<DATE><TIME>|<HOST>|I|_init_psDB
+    initialize database connection...
+<DATE><TIME>|<HOST>|I|TPDBChange
+    psDBChange shall change to a new test database.
+
+---> TESTPOINT PASSED (psDB{dbChange} | tst_psDB.c)
+
+/***************************** TESTPOINT ******************************************\
+*             TestFile: tst_psDB.c                                                 *
+*            TestPoint: psDB{dbCreateTable}                                        *
+*             TestType: Positive                                                   *
+\**********************************************************************************/
+
+<DATE><TIME>|<HOST>|I|_init_psDB
+    initialize database connection...
+<DATE><TIME>|<HOST>|I|TPDBCreateTable
+    psDBCreateTable shall create a new table in the new test database.
+
+---> TESTPOINT PASSED (psDB{dbCreateTable} | tst_psDB.c)
+
+/***************************** TESTPOINT ******************************************\
+*             TestFile: tst_psDB.c                                                 *
+*            TestPoint: psDB{dbDropTable}                                          *
+*             TestType: Positive                                                   *
+\**********************************************************************************/
+
+<DATE><TIME>|<HOST>|I|_init_psDB
+    initialize database connection...
+<DATE><TIME>|<HOST>|I|TPDBDropTable
+    psDBDropTable shall create/drop a new table in the new test database.
+<DATE><TIME>|<HOST>|I|TPDBDropTable
+    psDBDropTable: insert should fail here...
+<DATE><TIME>|<HOST>|E|psDBInsertRows (FILE:LINENO)
+    Failed to prepare query.  Error: Table 'test.table2' doesn't exist
+<DATE><TIME>|<HOST>|E|psDBInsertOneRow (FILE:LINENO)
+    Insert failed.
+
+---> TESTPOINT PASSED (psDB{dbDropTable} | tst_psDB.c)
+
+/***************************** TESTPOINT ******************************************\
+*             TestFile: tst_psDB.c                                                 *
+*            TestPoint: psDB{dbSelectColumn}                                       *
+*             TestType: Positive                                                   *
+\**********************************************************************************/
+
+<DATE><TIME>|<HOST>|I|_init_psDB
+    initialize database connection...
+<DATE><TIME>|<HOST>|I|TPDBSelectColumn
+    psDBSelectColumn shall select data from a test table.
+<DATE><TIME>|<HOST>|I|TPDBSelectColumn
+    psDBSelectColumn: [hello world!]
+<DATE><TIME>|<HOST>|I|TPDBSelectColumn
+    psDBSelectColumn: [hello world!]
+<DATE><TIME>|<HOST>|I|TPDBSelectColumn
+    psDBSelectColumn: [hello world!]
+<DATE><TIME>|<HOST>|I|TPDBSelectColumn
+    found expected string output.
+
+---> TESTPOINT PASSED (psDB{dbSelectColumn} | tst_psDB.c)
+
+/***************************** TESTPOINT ******************************************\
+*             TestFile: tst_psDB.c                                                 *
+*            TestPoint: psDB{dbSelectColumnNum}                                    *
+*             TestType: Positive                                                   *
+\**********************************************************************************/
+
+<DATE><TIME>|<HOST>|I|_init_psDB
+    initialize database connection...
+<DATE><TIME>|<HOST>|I|TPDBSelectColumnNum
+    psDBSelectColumnNum shall select data from a test table.
+<DATE><TIME>|<HOST>|I|TPDBSelectColumnNum
+    str=[1974]
+<DATE><TIME>|<HOST>|I|TPDBSelectColumnNum
+    str=[1974]
+<DATE><TIME>|<HOST>|I|TPDBSelectColumnNum
+    str=[1974]
+<DATE><TIME>|<HOST>|I|TPDBSelectColumnNum
+    found expected S32 output.
+
+---> TESTPOINT PASSED (psDB{dbSelectColumnNum} | tst_psDB.c)
+
+/***************************** TESTPOINT ******************************************\
+*             TestFile: tst_psDB.c                                                 *
+*            TestPoint: psDB{dbSelectRows}                                         *
+*             TestType: Positive                                                   *
+\**********************************************************************************/
+
+<DATE><TIME>|<HOST>|I|_init_psDB
+    initialize database connection...
+<DATE><TIME>|<HOST>|I|TPDBSelectRows
+    psDBSelectRows shall select data from a test table.
+<DATE><TIME>|<HOST>|I|_print_row
+    [key_string]=[hello world!]
+<DATE><TIME>|<HOST>|I|_print_row
+    [key_s32]=[1974]
+<DATE><TIME>|<HOST>|I|_print_row
+    [key_f32]=[3.14159]
+<DATE><TIME>|<HOST>|I|_print_row
+    [key_f64]=[2.71828]
+<DATE><TIME>|<HOST>|I|_print_row
+    [key_string]=[hello world!]
+<DATE><TIME>|<HOST>|I|_print_row
+    [key_s32]=[1974]
+<DATE><TIME>|<HOST>|I|_print_row
+    [key_f32]=[3.14159]
+<DATE><TIME>|<HOST>|I|_print_row
+    [key_f64]=[2.71828]
+<DATE><TIME>|<HOST>|I|_print_row
+    [key_string]=[hello world!]
+<DATE><TIME>|<HOST>|I|_print_row
+    [key_s32]=[1974]
+<DATE><TIME>|<HOST>|I|_print_row
+    [key_f32]=[3.14159]
+<DATE><TIME>|<HOST>|I|_print_row
+    [key_f64]=[2.71828]
+<DATE><TIME>|<HOST>|I|TPDBSelectRows
+    found expected output.
+
+---> TESTPOINT PASSED (psDB{dbSelectRows} | tst_psDB.c)
+
+/***************************** TESTPOINT ******************************************\
+*             TestFile: tst_psDB.c                                                 *
+*            TestPoint: psDB{dbInsertOneRow}                                       *
+*             TestType: Positive                                                   *
+\**********************************************************************************/
+
+<DATE><TIME>|<HOST>|I|_init_psDB
+    initialize database connection...
+<DATE><TIME>|<HOST>|I|TPDBInsertOneRow
+    psDBInsertOneRow shall insert a row into a test table.
+
+---> TESTPOINT PASSED (psDB{dbInsertOneRow} | tst_psDB.c)
+
+/***************************** TESTPOINT ******************************************\
+*             TestFile: tst_psDB.c                                                 *
+*            TestPoint: psDB{dbInsertRows}                                         *
+*             TestType: Positive                                                   *
+\**********************************************************************************/
+
+<DATE><TIME>|<HOST>|I|_init_psDB
+    initialize database connection...
+<DATE><TIME>|<HOST>|I|TPDBInsertRows
+    psDBInsertRows shall insert rows into a test table.
+<DATE><TIME>|<HOST>|I|_print_row
+    [key_string]=[hello world!]
+<DATE><TIME>|<HOST>|I|_print_row
+    [key_s32]=[1974]
+<DATE><TIME>|<HOST>|I|_print_row
+    [key_f32]=[3.14159]
+<DATE><TIME>|<HOST>|I|_print_row
+    [key_f64]=[2.71828]
+<DATE><TIME>|<HOST>|I|_print_row
+    [key_string]=[hello world!]
+<DATE><TIME>|<HOST>|I|_print_row
+    [key_s32]=[1974]
+<DATE><TIME>|<HOST>|I|_print_row
+    [key_f32]=[3.14159]
+<DATE><TIME>|<HOST>|I|_print_row
+    [key_f64]=[2.71828]
+<DATE><TIME>|<HOST>|I|_print_row
+    [key_string]=[hello world!]
+<DATE><TIME>|<HOST>|I|_print_row
+    [key_s32]=[1974]
+<DATE><TIME>|<HOST>|I|_print_row
+    [key_f32]=[3.14159]
+<DATE><TIME>|<HOST>|I|_print_row
+    [key_f64]=[2.71828]
+<DATE><TIME>|<HOST>|I|TPDBInsertRows
+    found expected output.
+
+---> TESTPOINT PASSED (psDB{dbInsertRows} | tst_psDB.c)
+
+/***************************** TESTPOINT ******************************************\
+*             TestFile: tst_psDB.c                                                 *
+*            TestPoint: psDB{dbDumpRows}                                           *
+*             TestType: Positive                                                   *
+\**********************************************************************************/
+
+<DATE><TIME>|<HOST>|I|_init_psDB
+    initialize database connection...
+<DATE><TIME>|<HOST>|I|TPDBDumpRows
+    psDBDumpRows shall dump all rows from a test table.
+<DATE><TIME>|<HOST>|I|_print_row
+    [key_string]=[hello world!]
+<DATE><TIME>|<HOST>|I|_print_row
+    [key_s32]=[1974]
+<DATE><TIME>|<HOST>|I|_print_row
+    [key_f32]=[3.14159]
+<DATE><TIME>|<HOST>|I|_print_row
+    [key_f64]=[2.71828]
+<DATE><TIME>|<HOST>|I|_print_row
+    [key_string]=[hello world!]
+<DATE><TIME>|<HOST>|I|_print_row
+    [key_s32]=[1974]
+<DATE><TIME>|<HOST>|I|_print_row
+    [key_f32]=[3.14159]
+<DATE><TIME>|<HOST>|I|_print_row
+    [key_f64]=[2.71828]
+<DATE><TIME>|<HOST>|I|_print_row
+    [key_string]=[hello world!]
+<DATE><TIME>|<HOST>|I|_print_row
+    [key_s32]=[1974]
+<DATE><TIME>|<HOST>|I|_print_row
+    [key_f32]=[3.14159]
+<DATE><TIME>|<HOST>|I|_print_row
+    [key_f64]=[2.71828]
+<DATE><TIME>|<HOST>|I|TPDBDumpRows
+    found expected output.
+
+---> TESTPOINT PASSED (psDB{dbDumpRows} | tst_psDB.c)
+
+/***************************** TESTPOINT ******************************************\
+*             TestFile: tst_psDB.c                                                 *
+*            TestPoint: psDB{dbDumpCols}                                           *
+*             TestType: Positive                                                   *
+\**********************************************************************************/
+
+<DATE><TIME>|<HOST>|I|_init_psDB
+    initialize database connection...
+<DATE><TIME>|<HOST>|I|TPDBDumpCols
+    psDBDumpCols shall dump all cols from a test table.
+<DATE><TIME>|<HOST>|I|_print_row
+    [key_string]=[]
+<DATE><TIME>|<HOST>|I|_print_row
+    [key_s32]=[0]
+<DATE><TIME>|<HOST>|I|_print_row
+    [key_f32]=[0]
+<DATE><TIME>|<HOST>|I|_print_row
+    [key_f64]=[0]
+
+---> TESTPOINT PASSED (psDB{dbDumpCols} | tst_psDB.c)
+
+/***************************** TESTPOINT ******************************************\
+*             TestFile: tst_psDB.c                                                 *
+*            TestPoint: psDB{dbUpdateRows}                                         *
+*             TestType: Positive                                                   *
+\**********************************************************************************/
+
+<DATE><TIME>|<HOST>|I|_init_psDB
+    initialize database connection...
+<DATE><TIME>|<HOST>|I|TPDBUpdateRows
+    psDBUpdateRows shall update rows in a test table.
+<DATE><TIME>|<HOST>|I|_print_row
+    [key_string]=[foobar]
+<DATE><TIME>|<HOST>|I|_print_row
+    [key_s32]=[-18]
+<DATE><TIME>|<HOST>|I|_print_row
+    [key_f32]=[3.33]
+<DATE><TIME>|<HOST>|I|_print_row
+    [key_f64]=[1.23457]
+<DATE><TIME>|<HOST>|I|_print_row
+    [key_string]=[foobar]
+<DATE><TIME>|<HOST>|I|_print_row
+    [key_s32]=[-18]
+<DATE><TIME>|<HOST>|I|_print_row
+    [key_f32]=[3.33]
+<DATE><TIME>|<HOST>|I|_print_row
+    [key_f64]=[1.23457]
+<DATE><TIME>|<HOST>|I|_print_row
+    [key_string]=[foobar]
+<DATE><TIME>|<HOST>|I|_print_row
+    [key_s32]=[-18]
+<DATE><TIME>|<HOST>|I|_print_row
+    [key_f32]=[3.33]
+<DATE><TIME>|<HOST>|I|_print_row
+    [key_f64]=[1.23457]
+<DATE><TIME>|<HOST>|I|TPDBUpdateRows
+    found expected output.
+
+---> TESTPOINT PASSED (psDB{dbUpdateRows} | tst_psDB.c)
+
+/***************************** TESTPOINT ******************************************\
+*             TestFile: tst_psDB.c                                                 *
+*            TestPoint: psDB{dbDeleteRows}                                         *
+*             TestType: Positive                                                   *
+\**********************************************************************************/
+
+<DATE><TIME>|<HOST>|I|_init_psDB
+    initialize database connection...
+<DATE><TIME>|<HOST>|I|TPDBDeleteRows
+    psDBDeleteRows shall delete rows from a test table.
+<DATE><TIME>|<HOST>|I|TPDBDeleteRows
+    found expected empty table.
+
+---> TESTPOINT PASSED (psDB{dbDeleteRows} | tst_psDB.c)
+
Index: /trunk/psLib/test/fileUtils/.cvsignore
===================================================================
--- /trunk/psLib/test/fileUtils/.cvsignore	(revision 3689)
+++ /trunk/psLib/test/fileUtils/.cvsignore	(revision 3690)
@@ -6,4 +6,5 @@
 temp
 tst_psLookupTable_01
+tst_psDB
 tst_psFits
 multi.fits
Index: /trunk/psLib/test/fileUtils/Makefile.am
===================================================================
--- /trunk/psLib/test/fileUtils/Makefile.am	(revision 3689)
+++ /trunk/psLib/test/fileUtils/Makefile.am	(revision 3690)
@@ -2,4 +2,6 @@
 #
 EXTRA_DIST = verified
+
+EXTRA_PROGRAMS = tst_psDB
 
 INCLUDES = \
@@ -18,5 +20,6 @@
 TESTS = \
 	tst_psLookupTable_01 \
-	tst_psFits
+	tst_psFits \
+	@TST_PSDB@
 
 check_PROGRAMS = $(TESTS)
@@ -32,4 +35,5 @@
 tst_psLookupTable_01_SOURCES =  tst_psLookupTable_01.c
 tst_psFits_SOURCES =  tst_psFits.c
+tst_psDB_SOURCES = tst_psDB.c
 
 %.dat: verified/%.dat
Index: /trunk/psLib/test/fileUtils/verified/tst_psDB.stderr
===================================================================
--- /trunk/psLib/test/fileUtils/verified/tst_psDB.stderr	(revision 3690)
+++ /trunk/psLib/test/fileUtils/verified/tst_psDB.stderr	(revision 3690)
@@ -0,0 +1,305 @@
+/***************************** TESTPOINT ******************************************\
+*             TestFile: tst_psDB.c                                                 *
+*            TestPoint: psDB{dbInit}                                               *
+*             TestType: Positive                                                   *
+\**********************************************************************************/
+
+<DATE><TIME>|<HOST>|I|TPDBInit
+    psDBInit/psDBCleanup shall initialize/cleanup database connection.
+<DATE><TIME>|<HOST>|I|_init_psDB
+    initialize database connection...
+
+---> TESTPOINT PASSED (psDB{dbInit} | tst_psDB.c)
+
+/***************************** TESTPOINT ******************************************\
+*             TestFile: tst_psDB.c                                                 *
+*            TestPoint: psDB{dbChange}                                             *
+*             TestType: Positive                                                   *
+\**********************************************************************************/
+
+<DATE><TIME>|<HOST>|I|_init_psDB
+    initialize database connection...
+<DATE><TIME>|<HOST>|I|TPDBChange
+    psDBChange shall change to a new test database.
+
+---> TESTPOINT PASSED (psDB{dbChange} | tst_psDB.c)
+
+/***************************** TESTPOINT ******************************************\
+*             TestFile: tst_psDB.c                                                 *
+*            TestPoint: psDB{dbCreateTable}                                        *
+*             TestType: Positive                                                   *
+\**********************************************************************************/
+
+<DATE><TIME>|<HOST>|I|_init_psDB
+    initialize database connection...
+<DATE><TIME>|<HOST>|I|TPDBCreateTable
+    psDBCreateTable shall create a new table in the new test database.
+
+---> TESTPOINT PASSED (psDB{dbCreateTable} | tst_psDB.c)
+
+/***************************** TESTPOINT ******************************************\
+*             TestFile: tst_psDB.c                                                 *
+*            TestPoint: psDB{dbDropTable}                                          *
+*             TestType: Positive                                                   *
+\**********************************************************************************/
+
+<DATE><TIME>|<HOST>|I|_init_psDB
+    initialize database connection...
+<DATE><TIME>|<HOST>|I|TPDBDropTable
+    psDBDropTable shall create/drop a new table in the new test database.
+<DATE><TIME>|<HOST>|I|TPDBDropTable
+    psDBDropTable: insert should fail here...
+<DATE><TIME>|<HOST>|E|psDBInsertRows (FILE:LINENO)
+    Failed to prepare query.  Error: Table 'test.table2' doesn't exist
+<DATE><TIME>|<HOST>|E|psDBInsertOneRow (FILE:LINENO)
+    Insert failed.
+
+---> TESTPOINT PASSED (psDB{dbDropTable} | tst_psDB.c)
+
+/***************************** TESTPOINT ******************************************\
+*             TestFile: tst_psDB.c                                                 *
+*            TestPoint: psDB{dbSelectColumn}                                       *
+*             TestType: Positive                                                   *
+\**********************************************************************************/
+
+<DATE><TIME>|<HOST>|I|_init_psDB
+    initialize database connection...
+<DATE><TIME>|<HOST>|I|TPDBSelectColumn
+    psDBSelectColumn shall select data from a test table.
+<DATE><TIME>|<HOST>|I|TPDBSelectColumn
+    psDBSelectColumn: [hello world!]
+<DATE><TIME>|<HOST>|I|TPDBSelectColumn
+    psDBSelectColumn: [hello world!]
+<DATE><TIME>|<HOST>|I|TPDBSelectColumn
+    psDBSelectColumn: [hello world!]
+<DATE><TIME>|<HOST>|I|TPDBSelectColumn
+    found expected string output.
+
+---> TESTPOINT PASSED (psDB{dbSelectColumn} | tst_psDB.c)
+
+/***************************** TESTPOINT ******************************************\
+*             TestFile: tst_psDB.c                                                 *
+*            TestPoint: psDB{dbSelectColumnNum}                                    *
+*             TestType: Positive                                                   *
+\**********************************************************************************/
+
+<DATE><TIME>|<HOST>|I|_init_psDB
+    initialize database connection...
+<DATE><TIME>|<HOST>|I|TPDBSelectColumnNum
+    psDBSelectColumnNum shall select data from a test table.
+<DATE><TIME>|<HOST>|I|TPDBSelectColumnNum
+    str=[1974]
+<DATE><TIME>|<HOST>|I|TPDBSelectColumnNum
+    str=[1974]
+<DATE><TIME>|<HOST>|I|TPDBSelectColumnNum
+    str=[1974]
+<DATE><TIME>|<HOST>|I|TPDBSelectColumnNum
+    found expected S32 output.
+
+---> TESTPOINT PASSED (psDB{dbSelectColumnNum} | tst_psDB.c)
+
+/***************************** TESTPOINT ******************************************\
+*             TestFile: tst_psDB.c                                                 *
+*            TestPoint: psDB{dbSelectRows}                                         *
+*             TestType: Positive                                                   *
+\**********************************************************************************/
+
+<DATE><TIME>|<HOST>|I|_init_psDB
+    initialize database connection...
+<DATE><TIME>|<HOST>|I|TPDBSelectRows
+    psDBSelectRows shall select data from a test table.
+<DATE><TIME>|<HOST>|I|_print_row
+    [key_string]=[hello world!]
+<DATE><TIME>|<HOST>|I|_print_row
+    [key_s32]=[1974]
+<DATE><TIME>|<HOST>|I|_print_row
+    [key_f32]=[3.14159]
+<DATE><TIME>|<HOST>|I|_print_row
+    [key_f64]=[2.71828]
+<DATE><TIME>|<HOST>|I|_print_row
+    [key_string]=[hello world!]
+<DATE><TIME>|<HOST>|I|_print_row
+    [key_s32]=[1974]
+<DATE><TIME>|<HOST>|I|_print_row
+    [key_f32]=[3.14159]
+<DATE><TIME>|<HOST>|I|_print_row
+    [key_f64]=[2.71828]
+<DATE><TIME>|<HOST>|I|_print_row
+    [key_string]=[hello world!]
+<DATE><TIME>|<HOST>|I|_print_row
+    [key_s32]=[1974]
+<DATE><TIME>|<HOST>|I|_print_row
+    [key_f32]=[3.14159]
+<DATE><TIME>|<HOST>|I|_print_row
+    [key_f64]=[2.71828]
+<DATE><TIME>|<HOST>|I|TPDBSelectRows
+    found expected output.
+
+---> TESTPOINT PASSED (psDB{dbSelectRows} | tst_psDB.c)
+
+/***************************** TESTPOINT ******************************************\
+*             TestFile: tst_psDB.c                                                 *
+*            TestPoint: psDB{dbInsertOneRow}                                       *
+*             TestType: Positive                                                   *
+\**********************************************************************************/
+
+<DATE><TIME>|<HOST>|I|_init_psDB
+    initialize database connection...
+<DATE><TIME>|<HOST>|I|TPDBInsertOneRow
+    psDBInsertOneRow shall insert a row into a test table.
+
+---> TESTPOINT PASSED (psDB{dbInsertOneRow} | tst_psDB.c)
+
+/***************************** TESTPOINT ******************************************\
+*             TestFile: tst_psDB.c                                                 *
+*            TestPoint: psDB{dbInsertRows}                                         *
+*             TestType: Positive                                                   *
+\**********************************************************************************/
+
+<DATE><TIME>|<HOST>|I|_init_psDB
+    initialize database connection...
+<DATE><TIME>|<HOST>|I|TPDBInsertRows
+    psDBInsertRows shall insert rows into a test table.
+<DATE><TIME>|<HOST>|I|_print_row
+    [key_string]=[hello world!]
+<DATE><TIME>|<HOST>|I|_print_row
+    [key_s32]=[1974]
+<DATE><TIME>|<HOST>|I|_print_row
+    [key_f32]=[3.14159]
+<DATE><TIME>|<HOST>|I|_print_row
+    [key_f64]=[2.71828]
+<DATE><TIME>|<HOST>|I|_print_row
+    [key_string]=[hello world!]
+<DATE><TIME>|<HOST>|I|_print_row
+    [key_s32]=[1974]
+<DATE><TIME>|<HOST>|I|_print_row
+    [key_f32]=[3.14159]
+<DATE><TIME>|<HOST>|I|_print_row
+    [key_f64]=[2.71828]
+<DATE><TIME>|<HOST>|I|_print_row
+    [key_string]=[hello world!]
+<DATE><TIME>|<HOST>|I|_print_row
+    [key_s32]=[1974]
+<DATE><TIME>|<HOST>|I|_print_row
+    [key_f32]=[3.14159]
+<DATE><TIME>|<HOST>|I|_print_row
+    [key_f64]=[2.71828]
+<DATE><TIME>|<HOST>|I|TPDBInsertRows
+    found expected output.
+
+---> TESTPOINT PASSED (psDB{dbInsertRows} | tst_psDB.c)
+
+/***************************** TESTPOINT ******************************************\
+*             TestFile: tst_psDB.c                                                 *
+*            TestPoint: psDB{dbDumpRows}                                           *
+*             TestType: Positive                                                   *
+\**********************************************************************************/
+
+<DATE><TIME>|<HOST>|I|_init_psDB
+    initialize database connection...
+<DATE><TIME>|<HOST>|I|TPDBDumpRows
+    psDBDumpRows shall dump all rows from a test table.
+<DATE><TIME>|<HOST>|I|_print_row
+    [key_string]=[hello world!]
+<DATE><TIME>|<HOST>|I|_print_row
+    [key_s32]=[1974]
+<DATE><TIME>|<HOST>|I|_print_row
+    [key_f32]=[3.14159]
+<DATE><TIME>|<HOST>|I|_print_row
+    [key_f64]=[2.71828]
+<DATE><TIME>|<HOST>|I|_print_row
+    [key_string]=[hello world!]
+<DATE><TIME>|<HOST>|I|_print_row
+    [key_s32]=[1974]
+<DATE><TIME>|<HOST>|I|_print_row
+    [key_f32]=[3.14159]
+<DATE><TIME>|<HOST>|I|_print_row
+    [key_f64]=[2.71828]
+<DATE><TIME>|<HOST>|I|_print_row
+    [key_string]=[hello world!]
+<DATE><TIME>|<HOST>|I|_print_row
+    [key_s32]=[1974]
+<DATE><TIME>|<HOST>|I|_print_row
+    [key_f32]=[3.14159]
+<DATE><TIME>|<HOST>|I|_print_row
+    [key_f64]=[2.71828]
+<DATE><TIME>|<HOST>|I|TPDBDumpRows
+    found expected output.
+
+---> TESTPOINT PASSED (psDB{dbDumpRows} | tst_psDB.c)
+
+/***************************** TESTPOINT ******************************************\
+*             TestFile: tst_psDB.c                                                 *
+*            TestPoint: psDB{dbDumpCols}                                           *
+*             TestType: Positive                                                   *
+\**********************************************************************************/
+
+<DATE><TIME>|<HOST>|I|_init_psDB
+    initialize database connection...
+<DATE><TIME>|<HOST>|I|TPDBDumpCols
+    psDBDumpCols shall dump all cols from a test table.
+<DATE><TIME>|<HOST>|I|_print_row
+    [key_string]=[]
+<DATE><TIME>|<HOST>|I|_print_row
+    [key_s32]=[0]
+<DATE><TIME>|<HOST>|I|_print_row
+    [key_f32]=[0]
+<DATE><TIME>|<HOST>|I|_print_row
+    [key_f64]=[0]
+
+---> TESTPOINT PASSED (psDB{dbDumpCols} | tst_psDB.c)
+
+/***************************** TESTPOINT ******************************************\
+*             TestFile: tst_psDB.c                                                 *
+*            TestPoint: psDB{dbUpdateRows}                                         *
+*             TestType: Positive                                                   *
+\**********************************************************************************/
+
+<DATE><TIME>|<HOST>|I|_init_psDB
+    initialize database connection...
+<DATE><TIME>|<HOST>|I|TPDBUpdateRows
+    psDBUpdateRows shall update rows in a test table.
+<DATE><TIME>|<HOST>|I|_print_row
+    [key_string]=[foobar]
+<DATE><TIME>|<HOST>|I|_print_row
+    [key_s32]=[-18]
+<DATE><TIME>|<HOST>|I|_print_row
+    [key_f32]=[3.33]
+<DATE><TIME>|<HOST>|I|_print_row
+    [key_f64]=[1.23457]
+<DATE><TIME>|<HOST>|I|_print_row
+    [key_string]=[foobar]
+<DATE><TIME>|<HOST>|I|_print_row
+    [key_s32]=[-18]
+<DATE><TIME>|<HOST>|I|_print_row
+    [key_f32]=[3.33]
+<DATE><TIME>|<HOST>|I|_print_row
+    [key_f64]=[1.23457]
+<DATE><TIME>|<HOST>|I|_print_row
+    [key_string]=[foobar]
+<DATE><TIME>|<HOST>|I|_print_row
+    [key_s32]=[-18]
+<DATE><TIME>|<HOST>|I|_print_row
+    [key_f32]=[3.33]
+<DATE><TIME>|<HOST>|I|_print_row
+    [key_f64]=[1.23457]
+<DATE><TIME>|<HOST>|I|TPDBUpdateRows
+    found expected output.
+
+---> TESTPOINT PASSED (psDB{dbUpdateRows} | tst_psDB.c)
+
+/***************************** TESTPOINT ******************************************\
+*             TestFile: tst_psDB.c                                                 *
+*            TestPoint: psDB{dbDeleteRows}                                         *
+*             TestType: Positive                                                   *
+\**********************************************************************************/
+
+<DATE><TIME>|<HOST>|I|_init_psDB
+    initialize database connection...
+<DATE><TIME>|<HOST>|I|TPDBDeleteRows
+    psDBDeleteRows shall delete rows from a test table.
+<DATE><TIME>|<HOST>|I|TPDBDeleteRows
+    found expected empty table.
+
+---> TESTPOINT PASSED (psDB{dbDeleteRows} | tst_psDB.c)
+
Index: /trunk/psLib/test/runTest
===================================================================
--- /trunk/psLib/test/runTest	(revision 3689)
+++ /trunk/psLib/test/runTest	(revision 3690)
@@ -26,5 +26,5 @@
 #
 #  $Revison:  $  $Name: not supported by cvs2svn $
-#  $Date: 2005-04-07 20:27:41 $
+#  $Date: 2005-04-09 00:04:57 $
 #
 #  Copyright 2004 Maui High Performance Computering Center, University of Hawaii
@@ -43,10 +43,12 @@
     "resetStdout!" => \$resetStdout,
     "verified=s"   => \$verifiedDir,
-    "help!"        => \$help
+    "help!"        => \$help,
+    "quiet!"       => \$quiet,
+    "printpassfail!"     => \$verbose
 );
 
 if ($help || $#ARGV < 0) {
-    print
-"Usage: runTest [--reset] [--resetStderr] [--resetStdout] testfile(s)\n\n";
+    print "Usage: runTest  [--help] [--verified=DIR] [--quiet] [--printpassfail] \\\n",
+          "                [--reset] [--resetStderr] [--resetStdout] testfile(s)\n\n";
     exit(0);
 }
@@ -75,10 +77,6 @@
     # Check if a temp directory already exists in the current work directory
     if ( !( -e "temp" ) ) {
-
         # Create temp directory to store STDOUT, STDERR files during test run
         `mkdir temp`;
-
-        # Display message of new directory created
-        print("Creating temp directory\n");
     }
 
@@ -87,5 +85,5 @@
 
         # Display message that verified subdirectory doesn't exist
-        print("        Verified directory doesn't exist.\n");
+        print STDERR "        Verified directory doesn't exist.\n";
 
         # Exit script since the test cannot be run with verified files
@@ -95,7 +93,4 @@
     # Check if the test driver file exists and is executable
     if ( ( -e $testFile ) && ( -x $testFile ) ) {
-
-        # Display message the test driver is being executed
-        print("--- Executing test driver: $testFile\n");
 
         # Invoke the test driver
@@ -112,8 +107,8 @@
             # Display failure message with return value to user
             if ( $? != 0 && ( $testFile !~ /^A/i ) ) {
-                print("Failed - Test Driver returned $?, expected 0.\n");
+                print STDERR "Failed - Test Driver returned $?, expected 0.\n";
             }
             elsif ( $? == 0 && ( $testFile =~ /^A/i ) ) {
-                print("Failed - Test Driver returned $?, expected abort.\n");
+                print STDERR "Failed - Test Driver returned $?, expected abort.\n";
             }
             $exitValue |= 64;
@@ -148,5 +143,8 @@
             }
             if (m/^---> TESTPOINT\s(\S+)/) {
-                print "\t$testfile- $1\n";
+                print "\t$testfile- $1\n" if ($verbose || $1 eq "FAILED");
+                if ($1 eq "FAILED") {
+                    print $testoutput;
+                }
             }
 
@@ -184,9 +182,17 @@
             s/v\d+.\d+.\d+/vX.X.X/g;
 
+            if (m/\*\*\*\*\*\* TESTPOINT \*\*\*\*\*\*/) {
+                $testoutput = $_;
+            }
+            $testoutput += $_;
+
             if (m/ TestPoint:\s*([^\*]+)/) {
                 $testfile = $1;
             }
             if (m/^---> TESTPOINT\s(\S+)/) {
-                print "\t$testfile- $1\n";
+                print "\t$testfile- $1\n" if ($verbose || $1 eq "FAILED");
+                if ($1 eq "FAILED") {
+                    print $testoutput;
+                }
             }
 
@@ -208,5 +214,5 @@
 
         # Compare STDOUT capture with verified file
-        $exitValue |= &compareStream("$verifiedDir/$testFile.stdout");
+        $exitValue = &compareStream("$verifiedDir/$testFile.stdout");
 
         # Check exit value to determine if verified file doesn't exist
@@ -233,7 +239,5 @@
         # Since test driver doesn't exist or is not executable then display
         # message to user.
-        print(
-"        Need to specify an executable test file within directory.\n"
-        );
+        print STDERR "\tNeed to specify an executable test file.\n";
 
         # Exit value set to indicate test driver doesn't exist or not executable
@@ -246,8 +250,8 @@
 # of a failed test
 if ( ( $exitValue >> 3 ) != 0 ) {
-    print("Test failed - return status = $exitValue\n\n");
+    print STDERR "Test failed - return status = $exitValue\n\n";
 }
 else {
-    print("Test successful\n\n");
+    exit(0);
 }
 exit($exitValue);
@@ -287,14 +291,9 @@
             || m/\|A\|/i )
         {
+            print STDERR "\tFailed - File $fileName contains error strings.\n";
             if ( $fileName =~ m/out/ ) {
-                print(
-                    "        Failed - File $fileName contains error strings.\n"
-                );
                 $returnVal = 64;
             }
             elsif ( $fileName =~ m/err/ ) {
-                print(
-                    "        Failed - File $fileName contains error strings.\n"
-                );
                 $returnVal = 128;
             }
@@ -320,4 +319,6 @@
 #
 #      Return:   0  -  Compare successful
+#                2  -  STDOUT verified file doesn't exist
+#                4  -  STDERR verified file doesn't exist
 #                8  -  STDOUT verified file doesn't compare
 #               16  -  STDERR verified file doesn't compare
@@ -331,5 +332,15 @@
 
     # Check for existence of verified STD stream files
-    if ( -e $streamFile ) {
+    if ( !( -e $streamFile ) ) {
+
+        # Set exit value bit 1 to indicate proper failure
+        if ( $streamFile =~ /out$/ ) {
+            $returnVal |= 2;
+        }
+        elsif ( $streamFile =~ /err$/ ) {
+            $returnVal |= 4;
+        }
+    }
+    else {
 
         # Verified STD stream file exists
@@ -352,5 +363,5 @@
 
                 # Display message of the failure of difference to user
-                print("        Failed - STDOUT difference\n$diffstdout\n");
+                print STDERR "\tFailed - STDOUT differences\n";
 
                 # Exit value to indicate STDOUT did not compare
@@ -360,5 +371,5 @@
 
                 # Display message of the failure of difference to user
-                print("        Failed - STDERR difference\n$diffstdout\n");
+                print STDERR "\tFailed - STDERR differences\n";
 
                 # Exit value to indicate STDERR did not compare
