Index: trunk/psLib/test/collections/data/header_1.fits
===================================================================
--- trunk/psLib/test/collections/data/header_1.fits	(revision 4493)
+++ 	(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: trunk/psLib/test/collections/data/header_2.fits
===================================================================
--- trunk/psLib/test/collections/data/header_2.fits	(revision 4493)
+++ 	(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: trunk/psLib/test/collections/data/test.config
===================================================================
--- trunk/psLib/test/collections/data/test.config	(revision 4493)
+++ 	(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.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/data/test1.config
===================================================================
--- trunk/psLib/test/collections/data/test1.config	(revision 4493)
+++ 	(revision )
@@ -1,57 +1,0 @@
-Double	F64     1.23456789      # This is a comment
-Float     F32 0.98765#This is a comment too
-String   STR This is the string that forms the value #comment
-
- # This is a comment line and is to be ignored
-boolean     BOOL    T # The value of 'boolean' is 'true'
-
-@primes U8  2,3 5 7,11,13 17 #   These are prime numbers
-
-comment MULTI # The rest of this line is ignored, but 'comment' is set to be non-unique
-comment STR This
-comment STR     is
-comment STR       a
-comment STR        non-unique
-comment STR                  key
-Float F64 1.23456 # This generates a warning, and, if 'overwrite' is 'false', is ignored
-
-boolean1  BOOL   F # The value of 'boolean' is 'false'
-
-@negprimes S8 -2, -3, -5, -7,-11,-13,-17,-19
-
-@vector1 U16  0, 1, 2, 4, 8
-@vector2 U32  0, 8, 16, 32, 64, 128
-@vector3 U64  0, 64, 256,
-
-@vector4 S16  -2 -1 0 1 2
-@vector5 S32  -4, -2, 0, 2, 4, 6
-@vector6 S64  -16, -4, 0, 4 16 36 64
-
-@vector7 F32  -1.03, 1.04, -1.05, 1.06
-@vector8 F64  -2.22, 2.21 -2.20, 2.19, -2.18
-
-TYPE	CELL	EXTNAME		BIASSEC		CHIP       #
-CELL.00	CELL	CCD00		BSEC-00		CHIP.00
-CELL.01	CELL	CCD01		BSEC-01		CHIP.00
-
-MYCELL  MULTI
-MYCELL    METADATA
-  EXTNAME   STR   CCD00
-  BIASSEC   STR   BSEC-00
-  CHIP      STR   CHIP.00
-  NCELL     S32   24
-END
-MYCELL S32 123 # A number
-
-cell  METADATA
-   foo   METADATA
-       bar     STR   BAZ
-       ping    STR   PONG
-   END
-
-   EXTNAME   STR CCD00
-   BIASSEC   STR BSEC-00
-   CHIP      STR CHIP.00
-   NCELL     S32 12
-END
-
Index: trunk/psLib/test/collections/data/test2.config
===================================================================
--- trunk/psLib/test/collections/data/test2.config	(revision 4493)
+++ 	(revision )
@@ -1,44 +1,0 @@
- # This should generate error message
-boolean     BOOL    X # The value of 'boolean' is 'true'
-
-value1    S32  # No value
-
-# Invalid vector entries
-@vector  U8
-@vector1 U8  x,y,z
-@vector2
-@vector3 F8 ,,,
-
-# Multiple MULTI definitions
-comment MULTI
-comment MULTI
-
-# Type CELL not defined
-MYCELL CELL CCD00 BSEC-00 CHIP.00
-
-# Invalid value entries
-value1   F64   aabb
-value2   S32   ccdd
-
-# Repeated vector character
-@@vector4 U8 1 2 3 4 #
-
-# Invalid TYPE line
-TYPE
-
-# Duplicate TYPE
-TYPE CELL EXTNAME BIASSEC CHIP
-TYPE CELL EXTNAME BIASSEC CHIP
-
-# END with no matching METADATA
-END
-
-# Duplicate item names within metadata type specifier
-TYPE NEWCELL VALUE1 VALUE1 #
-
-# Not enough values in specified type
-OURCELL  CELL CCD00
-
-# Type with no item
-TYPE NEWCELL1
-
Index: trunk/psLib/test/collections/data/test3.config
===================================================================
--- trunk/psLib/test/collections/data/test3.config	(revision 4493)
+++ 	(revision )
@@ -1,16 +1,0 @@
-Double	F64     1.23456789      # This is a comment
-Float     F32 0.98765#This is a comment too
-String   STR This is the string that forms the value #comment
-
- # This is a comment line and is to be ignored
-boolean     BOOL    T # The value of 'boolean' is 'true'
-
-@primes U8  2,3 5 7,11,13 17 #   These are prime numbers
-
-comment MULTI # The rest of this line is ignored, but 'comment' is set to be non-unique
-comment STR This
-comment STR     is
-comment STR       a
-comment STR        non-unique
-comment STR                  key
-Float F64 1.23456 # This generates a warning, and, if 'overwrite' is 'false', is ignored
Index: trunk/psLib/test/collections/data/test4.config
===================================================================
--- trunk/psLib/test/collections/data/test4.config	(revision 4493)
+++ 	(revision )
@@ -1,161 +1,0 @@
-#
-# This file contains examples from SDR-14 appendix A
-#
-CELL1 METADATA
-  EXTNAME  STR  CCD00
-  BIASSEC  STR  BSEC-00
-  CHIP     STR  CHIP.00
-  NCELL    S32  24
-END
-
-CELL2 METADATA
-   FOO METADATA
-       BAR   STR  BAZ
-       PING  STR  PONG
-   END
-
-   EXTNAME   STR  CCD00
-   BIASSEC   STR  BSEC-00
-   CHIP      STR  CHIP.00
-   NCELL     S32  24
-END
-
-FOO1 METADATA
-    FOO2 METADATA
-        FOO3 METADATA
-            FOO4 METADATA
-                FOO5 METADATA
-                    FOO6 METADATA
-                        BAR    STR   BAZ
-                        PING   STR   PONG
-                    END
-                    BAR   STR  BAZ
-                    PING  STR  PONG
-                END
-                BAR   STR  BAZ
-                PING  STR  PONG
-            END
-            BAR   STR   BAZ
-            PING  STR   PONG
-        END
-        BAR   STR  BAZ
-        PING  STR  PONG
-    END
-    BAR   STR  BAZ
-    PING  STR  PONG
-END
-
-FOO2 METADATA
-    BAR   STR  BAZ
-    PING  STR  PONG
-    FOO3 METADATA
-        BAR  STR  BAZ
-        PING STR  PONG
-        FOO4 METADATA
-            BAR  STR  BAZ
-            PING STR  PONG
-            FOO5 METADATA
-                BAR  STR BAZ
-                PING STR PONG
-                FOO6 METADATA
-                    BAR  STR  BAZ
-                    PING STR  PONG
-                    FOO7  METADATA
-                        BAR  STR BAZ
-                        PING STR PONG
-                    END
-                END
-            END
-        END
-    END
-END
-
-FOO3 METADATA
-    BAR  STR  BAZ
-    FOO4 METADATA
-        BAR  STR  BAZ
-        FOO5 METADATA
-            BAR  STR  BAZ
-            FOO6 METADATA
-                BAR   STR  BAZ
-                FOO7 METADATA
-                    BAR   STR   BAZ
-                    FOO8 METADATA
-                        BAR   STR  BAZ
-                        PING  STR  PONG
-                    END
-                    PING  STR  PONG
-                END
-                PING STR  PONG
-            END
-            PING STR  PONG
-        END
-        PING STR PONG
-    END
-    PING STR PONG
-END
-
-FOO4 METADATA
-    FOO5 METADATA
-        BAR  STR  BAZ
-        PING STR  PONG
-    END
-    FOO6 METADATA
-        BAR  STR  BAZ
-        PING STR  PONG
-    END
-END
-
-TYPE    CELL    EXTNAME   BIASSEC   CHIP
-CELL.00  CELL  CCD00  BSEC-00 CHIP.00
-CELL.01  CELL  CCD01  BSEC-01 CHIP.00
-FOO5 METADATA
-    TYPE CELL EXTNAME BIASSEC
-    CELL.00 CELL CCD00 BSEC-00
-    CELL.01 CELL CCD01 BSEC-01
-    FOO6 METADATA
-        TYPE CELL EXTNAME
-        CELL.00  CELL  CCD00
-        CELL.01  CELL  CCD01
-    END
-END
-
-foo MULTI
-foo S32   -1
-foo STR   bar baz
-foo BOOL  T
-
-foo1 MULTI        # foo
-foo1 S32  -1      # bar
-foo1 STR  bar baz # baz
-foo1 BOOL T       #
-
-foo2 MULTI
-foo2 S32 -1
-foo2 STR  bar baz
-foo2 BOOL  T
-bar1 METADATA
-    foo MULTI
-    foo S32  -1
-    foo STR  bar baz
-    foo BOOL T
-END
-
-foo3 MULTI
-foo3 METADATA
-    bar   BOOL T
-END
-foo3 METADATA
-    bar  BOOL T
-END
-
-foo4 MULTI
-TYPE bar a b c
-foo4 bar x y z
-foo4 bar x y z
-
-TYPE bar1 a b c
-foo5 MULTI
-foo5 bar1 x y z
-foo5 bar1 x y z
-
Index: trunk/psLib/test/collections/data/test5.config
===================================================================
--- trunk/psLib/test/collections/data/test5.config	(revision 4493)
+++ 	(revision )
@@ -1,32 +1,0 @@
-#
-# Examples from SDR-14 Appendix A which cause failures
-#
-TYPE  CELL1  EXTNAME  BIASSEC  CHIP
-FOO1 METADATA
-    CELL.00 CELL  CCD00  BSEC-00  CHIP.00
-END
-
-FOO2  METADATA
-    TYPE CELL2 EXTNAME BIASSEC CHIP
-END
-CELL.00 CELL2 CCD00 BSEC-00 CHIP.00
-
-FOO3 METADATA
-    TYPE CELL3 EXTNAME BIASSEC CHIP
-END
-BAR METADATA
-    CELL.00 CELL3 CCD00 BSEC-00 CHIP.00
-END
-
-TYPE CELL4 EXTNAME BIASSEC CHIP
-CELL.00 CELL4 CCD00 BSEC-00
-CELL.01 CELL4 CCD01 BSEC-01 CHIP.00
-
-TYPE CELL5 EXTNAME BIASSEC CHIP
-TYPE CELL5 EXTNAME BIASSEC CHIP
-CELL.02 CELL5 CCD00 BSEC-00 CHIP.00
-CELL.03 CELL5 CCD01 BSEC-01 CHIP.00
-
-CELL.04 CELL6 CCD00 BSEC-00 CHIP.00
-CELL.05 CELL6 CCD01 BSEC-01 CHIP.00
-
Index: trunk/psLib/test/collections/tst_psArray.c
===================================================================
--- trunk/psLib/test/collections/tst_psArray.c	(revision 4493)
+++ 	(revision )
@@ -1,441 +1,0 @@
-/** @file  tst_psArray.c
- *
- *  @brief Test driver for psArray integer functions
- *
- *  This test driver contains the following tests for psArray test point 1:
- *     A)  Create void pointer array
- *     B)  Add data to void pointer array
- *     C)  Reallocate void pointer array bigger
- *     D)  Reallocate void pointer array smaller
- *     E)  Reallocate with null pointer
- *     F)  Remove item from array
- *     G)  Remove invalid item from array
- *     H)  Remove item from null array
- *     I)  Remove null item from array
- *     J)  Free void pointer array
- *
- *  @author  Ross Harman, MHPCC
- *
- *  @version $Revision: 1.15 $  $Name: not supported by cvs2svn $
- *  @date  $Date: 2005-07-06 03:04:35 $
- *
- *  Copyright 2004-2005 Maui High Performance Computing Center, University of Hawaii
- *
- */
-
-#include <math.h>
-
-#include "pslib_strict.h"
-#include "psTest.h"
-
-typedef struct
-{
-    psS32 x;
-    float y;
-}
-testStruct;
-
-static int testStructCompare(const void **a, const void **b)
-{
-    testStruct* first = (testStruct*)*a;
-    testStruct* second = (testStruct*)*b;
-
-    if(first->x < second->x)
-        return -1;
-    else if (first->x > second->x)
-        return 1;
-    else
-        return 0;
-}
-
-static psS32 testArray( void );
-static psS32 testArray01( void );
-static psS32 testArrayAdd( void );
-
-testDescription tests[] = {
-                              {testArray, -1, "psArray", 0, false},
-                              {testArray01, -2, "psArray", 0, false},
-                              {testArrayAdd, 788, "psArrayAdd", 0, false},
-                              {NULL}
-                          };
-
-psS32 main( psS32 argc, char* argv[] )
-{
-    psLogSetLevel( PS_LOG_INFO );
-
-    return ( ! runTestSuite( stderr, "psArray", tests, argc, argv ) );
-}
-
-
-psS32 testArray(void)
-{
-    // Create array of pointers
-    testStruct *mySt[10];
-    psArray *psArr1 = NULL;
-
-    // Test A - Create void pointer array
-    printPositiveTestHeader(stderr,"psArray", "Create void pointer array");
-    psArray *psArr = psArrayAlloc(5);
-    if (psArr->nalloc != 5) {
-        psError(PS_ERR_UNKNOWN, true,"psArray didn't have proper number of elements.");
-        return 1;
-    }
-    printFooter(stderr, "psArray", "Create void pointer array", true);
-
-
-    // Test B - Add data to void pointer array
-    printPositiveTestHeader(stderr, "psArray", "Add data to void pointer array");
-    for(psS32 i = 0; i < 5; i++) {
-        testStruct *ts = psAlloc(sizeof(testStruct));
-        ts->x = 10*i;
-        ts->y = 10.1*i;
-        mySt[i] = ts;
-        psArr->data[i] = ts;
-        psMemIncrRefCounter(ts);
-    }
-
-    for(psS32 i = 0; i < 5; i++) {
-        testStruct *ts = (testStruct*)psArr->data[i];
-        fprintf(stderr,"ts[%d].x = %d ts[%d].y = %.2f\n", i, ts->x, i, ts->y);
-        if (fabsf(ts->x - 10*i) > 0.01f || fabsf(ts->y - 10.1*i) > 0.01f) {
-            psError(PS_ERR_UNKNOWN, true,"Couldn't properly get elements from array.");
-            return 2;
-        }
-    }
-    fprintf(stderr,"array size = %ld\n", psArr->nalloc);
-    if (psArr->nalloc != 5) {
-        psError(PS_ERR_UNKNOWN, true,"Array Size wrong");
-        return 3;
-    }
-    fprintf(stderr,"array population = %ld\n", psArr->n);
-    if (psArr->n != 5) {
-        psError(PS_ERR_UNKNOWN, true,"Array population wrong");
-        return 4;
-    }
-    printFooter(stderr, "psArray", "Add data to void pointer array", true);
-
-
-    // Test C - Reallocate void pointer array bigger
-    printPositiveTestHeader(stderr,"psArray", "Reallocate void pointer array bigger");
-    psArr = psArrayRealloc(psArr,10);
-    fprintf(stderr,"Adding more elements to void pointer array...\n");
-    for(psS32 i = 5; i < 10; i++) {
-        testStruct *ts = psAlloc(sizeof(testStruct));
-        ts->x = 10*i;
-        ts->y = 10.1*i;
-        mySt[i] = ts;
-        psArr->data[i] = ts;
-        psArr->n++;
-        psMemIncrRefCounter(ts);
-    }
-    for(psS32 i = 0; i < 10; i++) {
-        testStruct *ts = (testStruct*)psArr->data[i];
-        fprintf(stderr,"ts[%d].x = %d ts[%d].y = %.2f\n", i, ts->x, i, ts->y);
-        if (fabsf(ts->x - 10*i) > 0.01f || fabsf(ts->y - 10.1*i) > 0.01f) {
-            psError(PS_ERR_UNKNOWN, true,"Couldn't properly get elements from array.");
-            return 5;
-        }
-    }
-    fprintf(stderr,"array size = %ld\n", psArr->nalloc);
-    if (psArr->nalloc != 10) {
-        psError(PS_ERR_UNKNOWN, true,"Array Size wrong");
-        return 6;
-    }
-    fprintf(stderr,"array population = %ld\n", psArr->n);
-    if (psArr->n != 10) {
-        psError(PS_ERR_UNKNOWN, true,"Array Population wrong");
-        return 7;
-    }
-    printFooter(stderr, "psArray", "Reallocate void pointer array bigger", true);
-
-    // Test D - Reallocate void pointer array smaller
-    printPositiveTestHeader(stderr,"psArray","Reallocate void pointer array smaller");
-    psArr = psArrayRealloc(psArr,3);
-    for(psS32 i = 0; i < 3; i++) {
-        testStruct *ts = (testStruct*)psArr->data[i];
-        fprintf(stderr,"ts[%d].x = %d ts[%d].y = %.2f\n", i, ts->x, i, ts->y);
-        if (fabsf(ts->x - 10*i) > 0.01f || fabsf(ts->y - 10.1*i) > 0.01f) {
-            psError(PS_ERR_UNKNOWN, true,"Couldn't properly get elements from array.");
-            return 8;
-        }
-    }
-    fprintf(stderr,"array size = %ld\n", psArr->nalloc);
-    if (psArr->nalloc != 3) {
-        psError(PS_ERR_UNKNOWN, true,"Array Size wrong");
-        return 9;
-    }
-    fprintf(stderr,"array population = %ld\n", psArr->n);
-    if (psArr->n != 3) {
-        psError(PS_ERR_UNKNOWN, true,"Array Population wrong");
-        return 10;
-    }
-    printFooter(stderr, "psArray", "Reallocate integer void pointer smaller", true);
-
-    // Test E - Reallocate with a null
-    printNegativeTestHeader(stderr,"psArray","Reallocate with a null array",
-                            "Error message generator", 0 );
-    psLogMsg(__func__,PS_LOG_INFO,"Following should generate an error message.");
-    psArr1 = psArrayRealloc(NULL,5);
-    if ( psArr1 != NULL ) {
-        fprintf(stderr,"ERROR: Return is not NULL\n");
-    }
-    printFooter(stderr,"psArray","Reallocate with a null array",true);
-
-
-    // Test F - Remove item from array
-    printPositiveTestHeader(stderr, "psArray", "Remove valid item");
-    if( !psArrayRemove(psArr,mySt[0]) ) {
-        psError(PS_ERR_UNKNOWN,true,"Unable to remove valid item");
-        return 100;
-    }
-    fprintf(stderr,"Array size after removal = %ld\n",psArr->n);
-    if ( psArr->n != 2 ) {
-        psError(PS_ERR_UNKNOWN, true, "Items in array not decremented after removal");
-        return 101;
-    }
-    for(psS32 i = 0; i < psArr->n; i++) {
-        testStruct *ts = (testStruct*)psArr->data[i];
-        fprintf(stderr,"ts[%d].x = %d ts[%d].y = %.2f\n", i, ts->x, i, ts->y);
-        if(fabsf(ts->x - 10*(i+1)) > 0.01f || fabsf(ts->y - 10.1*(i+1)) > 0.01f) {
-            psError(PS_ERR_UNKNOWN, true, "Elements not as expected after remove.");
-            return 102;
-        }
-    }
-    psMemDecrRefCounter(mySt[0]);
-    printFooter(stderr,"psArray","Remove valid item", true);
-
-    // Test G - Remove invalid item from array
-    printPositiveTestHeader(stderr, "psArray", "Remove invalid item from array");
-    if( psArrayRemove(psArr,mySt[9]) ) {
-        psError(PS_ERR_UNKNOWN,true,"Removed invalid item from array");
-        return 103;
-    }
-    printFooter(stderr,"psArray","Remove invalid item from array",true);
-
-    // Test H - Remove item from null array
-    printPositiveTestHeader(stderr, "psArray", "Remove item from null array");
-    if ( psArrayRemove(NULL,mySt[1]) ) {
-        psError(PS_ERR_UNKNOWN,true,"Removed valid item from null array");
-        return 104;
-    }
-    printFooter(stderr,"psArray","Remove item from null array",true);
-
-    // Test I - Remove null item from array
-    printPositiveTestHeader(stderr, "psArray", "Remove null item from array");
-    if( psArrayRemove(psArr,NULL) ) {
-        psError(PS_ERR_UNKNOWN,true,"Remove null item from array",true);
-        return 105;
-    }
-    printFooter(stderr,"psArray","Remove null item from array",true);
-
-    // Test J - Free void pointer array
-    printPositiveTestHeader(stderr, "psArray", "Free void pointer array");
-    psFree(psArr);
-    for(psS32 i = 0; i < 10; i++) {
-        psFree(mySt[i]);
-    }
-
-    printFooter(stderr, "psArray" ,"Free void pointer array", true);
-
-    return 0;
-}
-
-psS32 testArray01(void)
-{
-    // Create array of pointers
-    testStruct *mySt[10];
-
-    // Test A - Create void pointer array
-    printPositiveTestHeader(stderr,"psArray", "Create void pointer array");
-    psArray *psArr = psArrayAlloc(10);
-    if (psArr->nalloc != 10) {
-        psError(PS_ERR_UNKNOWN, true,"psArray didn't have proper number of elements.");
-        return 1;
-    }
-    printFooter(stderr, "psArray", "Create void pointer array", true);
-
-    // Test B - Add data to void pointer array
-    printPositiveTestHeader(stderr, "psArray", "Add data to void pointer array");
-    for(psS32 i = 0; i < 10; i++) {
-        testStruct *ts = psAlloc(sizeof(testStruct));
-        ts->x = 10*(10-i);
-        ts->y = 10.1*(10-i);
-        mySt[i] = ts;
-        psArr->data[i] = ts;
-        psMemIncrRefCounter(ts);
-    }
-
-    for(psS32 i = 0; i < 10; i++) {
-        testStruct *ts = (testStruct*)psArr->data[i];
-        fprintf(stderr,"ts[%d].x = %d ts[%d].y = %.2f\n", i, ts->x, i, ts->y);
-        if (fabsf(ts->x - 10*(10-i)) > 0.01f || fabsf(ts->y - 10.1*(10-i)) > 0.01f) {
-            psError(PS_ERR_UNKNOWN, true,"Couldn't properly get elements from array.");
-            return 2;
-        }
-    }
-    fprintf(stderr,"array size = %ld\n", psArr->nalloc);
-    if (psArr->nalloc != 10) {
-        psError(PS_ERR_UNKNOWN, true,"Array Size wrong");
-        return 3;
-    }
-    fprintf(stderr,"array population = %ld\n", psArr->n);
-    if (psArr->n != 10) {
-        psError(PS_ERR_UNKNOWN, true,"Array population wrong");
-        return 4;
-    }
-    printFooter(stderr, "psArray", "Add data to void pointer array", true);
-
-    // Test C - Sort data in array
-    printPositiveTestHeader(stderr,"psArray","Sort data in array");
-    psArr = psArraySort(psArr,testStructCompare);
-    for(psS32 i = 0; i < 10; i++) {
-        testStruct *ts = (testStruct*)psArr->data[i];
-        fprintf(stderr,"ts[%d].x = %d ts[%d].y = %.2f\n", i, ts->x, i, ts->y);
-        if (fabsf(ts->x - 10*(i+1)) > 0.01f || fabsf(ts->y - 10.1*(i+1)) > 0.01f) {
-            psError(PS_ERR_UNKNOWN, true,"Couldn't properly get elements from array.");
-            return 5;
-        }
-    }
-    printFooter(stderr,"psArray","Sort data in array",true);
-
-    // Test D - Attempt to sort null array
-    printPositiveTestHeader(stderr,"psArray","Attempt to sort array");
-    psArray* tempArr = psArraySort(NULL,testStructCompare);
-    if(tempArr != NULL) {
-        psError(PS_ERR_UNKNOWN,true,"Array sort did not return null when sorting null array");
-        return 6;
-    }
-    printFooter(stderr,"psArray","Attempt to sort array",true);
-
-    // Test E - Free void pointer array
-    printPositiveTestHeader(stderr, "psArray", "Free void pointer array");
-    psFree(psArr);
-    for(psS32 i = 0; i < 10; i++) {
-        psFree(mySt[i]);
-    }
-    if( psMemCheckLeaks(0, NULL, stderr, false) != 0) {
-        psError(PS_ERR_UNKNOWN,true,"Memory leaks detected.");
-        return 110;
-    }
-    psS32 nBad = psMemCheckCorruption(0);
-    if(nBad) {
-        fprintf(stderr,"ERROR: Found %d bad memory blocks\n", nBad);
-        return 111;
-    }
-    printFooter(stderr, "psArray" ,"Free void pointer array", true);
-
-    return 0;
-}
-
-psS32 testArrayAdd( void )
-{
-    int subtest = 0;
-    float* data;
-    int nalloc = 5;
-    int n = 0;
-    int delta = 5;
-
-    // allocate the array.
-    psArray* arr = psArrayAlloc(nalloc);
-    arr->n = n;
-
-    // test arrayAdd until n == nalloc
-    while (n < nalloc) {
-        data = psAlloc(sizeof(float));
-        arr = psArrayAdd(arr, delta*2, data); // make delta unique versus next delta used.
-
-        subtest++;
-        if (psMemGetRefCounter(data) != 2) {
-            // in response of Bug #302
-            psError(PS_ERR_UNKNOWN, true,
-                    "psArrayAdd did not increment the data reference count.");
-            return subtest;
-        }
-
-        subtest++;
-        if (arr->nalloc != nalloc) {
-            psError(PS_ERR_UNKNOWN,true,
-                    "psArrayAdd expanded the psArray unnecessarily.  n=%d",
-                    n);
-            return subtest;
-        }
-
-        subtest++;
-        if (arr->n != ++n) {
-            psError(PS_ERR_UNKNOWN,true,
-                    "psArrayAdd did not increment the size of the psArray. n=%d",
-                    n);
-            return subtest;
-        }
-
-        subtest++;
-        if (arr->data[n-1] != data) {
-            psError(PS_ERR_UNKNOWN,true,
-                    "psArrayAdd didn't set the element to data. n=%d",
-                    n);
-            return subtest;
-        }
-
-        psFree(data);
-    }
-
-    // now try to add an element when the array is full.
-    data = psAlloc(sizeof(float));
-    arr = psArrayAdd(arr, delta, data);
-
-    // make sure the array was expanded
-    subtest++;
-    if (arr->nalloc != nalloc+delta) {
-        psError(PS_ERR_UNKNOWN,true,
-                "psArrayAdd did not expand the psArray when it was already full."
-                " old nalloc=%d, nalloc=%d, delta=%d",
-                nalloc, arr->nalloc, delta);
-        return subtest;
-    }
-    nalloc = arr->nalloc;
-
-    subtest++;
-    if (arr->n != ++n) {
-        psError(PS_ERR_UNKNOWN,true,
-                "psArrayAdd did not increment psArray.n by 1 after expanding it.");
-        return subtest;
-    }
-
-    subtest++;
-    if (arr->data[n-1] != data) {
-        psError(PS_ERR_UNKNOWN,true,
-                "psArrayAdd didn't set the second element to data.");
-        return subtest;
-    }
-
-    psFree(data);
-
-    // make the array full again (operation tested already)
-    while (arr->n < arr->nalloc) {
-        data = psAlloc(sizeof(float));
-        arr = psArrayAdd(arr, 0, data);
-        psFree(data);
-    }
-    nalloc = arr->nalloc;
-    n = arr->n;
-
-    // now add to full array with delta = 0; verify that the array is
-    // expanded by 10
-    data = psAlloc(sizeof(float));
-    arr = psArrayAdd(arr, 0, data);
-    psFree(data);
-
-    subtest++;
-    if (arr->nalloc != nalloc+10) {
-        psError(PS_ERR_UNKNOWN,true,
-                "psArrayAdd did not expand the psArray by 10 when delta < 1."
-                " old nalloc=%d, nalloc=%d",
-                nalloc, arr->nalloc);
-        return subtest;
-    }
-
-    psFree(arr);
-
-    return 0;  // the value that indicates success is part of the testDescription
-}
-
Index: trunk/psLib/test/collections/tst_psBitSet.c
===================================================================
--- trunk/psLib/test/collections/tst_psBitSet.c	(revision 4493)
+++ 	(revision )
@@ -1,683 +1,0 @@
-/** @file  tst_psBitSet_01.c
- *
- *  @brief Test driver for psBitSet functions
- *
- *  This test driver contains the following tests for psBitSet test point 1:
- *     A)  Create psBitSet
- *     B)  Set bits
- *     C)  Test bits
- *     D)  Attempt to test negative bit
- *     E)  Attempt to test bit to large
- *     F)  Attempt to test bit in null BitSet
- *     G)  Attempt to set negative bit
- *     H)  Attempt to set bit to large
- *     I)  Attempt to set bit in null BitSet
- *     J)  Free psBitSet
- *
- *  @author  Ross Harman, MHPCC
- *
- *  @version $Revision: 1.8 $  $Name: not supported by cvs2svn $
- *  @date  $Date: 2005-04-07 20:27:41 $
- *
- *  Copyright 2004-2005 Maui High Performance Computing Center, University of Hawaii
- *
- */
-
-#include "pslib_strict.h"
-#include "psTest.h"
-
-static psS32 testBitSet01a(void);
-static psS32 testBitSet01b(void);
-static psS32 testBitSet01c(void);
-static psS32 testBitSet02(void);
-static psS32 testBitSet03(void);
-static psS32 testBitSet04(void);
-static psS32 testBitSet05(void);
-static psS32 testBitSet06(void);
-
-testDescription tests[] = {
-                              {testBitSet01a, 1, "psBitSetAlloc", 0, false},
-                              {testBitSet01b, 2, "psBitSetSet/psBitSetClear", 0, false},
-                              {testBitSet01c, 3, "psBitSetTest", 0, false},
-                              {testBitSet06, 4, "psBitSetOp", 0, false},
-                              {testBitSet02, 5, "psBitSetOp AND Operator", 0, false},
-                              {testBitSet03, 6, "psBitSetOp OR Operator", 0, false},
-                              {testBitSet04, 7, "psBitSetOp XOR Operator", 0, false},
-                              {testBitSet05, 8, "psBitSetNot", 0, false},
-
-                              {NULL}
-                          };
-
-
-psS32 main( psS32 argc, char* argv[] )
-{
-    psLogSetLevel( PS_LOG_INFO );
-
-    return ( ! runTestSuite( stderr, "psBitSet", tests, argc, argv ) );
-}
-
-psS32 testBitSet01a(void)
-{
-    psErr* err;
-
-    // Test A - Create psBitSet
-    fprintf(stderr,"Creating psBitSet with 24 bits...\n");
-    psBitSet* bs = psBitSetAlloc(24);
-    if (bs == NULL) {
-        psError(PS_ERR_UNKNOWN,true,"Failed to create a psBitSet");
-        return 1;
-    }
-    if (bs->n != 3) {
-        psError(PS_ERR_UNKNOWN,true,"Number of bytes for psBitSet incorrect (%d vs 3)",
-                bs->n);
-        return 2;
-    }
-    if (bs->bits[0] != 0 || bs->bits[1] != 0 || bs->bits[2] != 0) {
-        psError(PS_ERR_UNKNOWN,true,"psBitSetAlloc didn't clean ou the bits by default (%x%x%x).",
-                bs->bits[2],bs->bits[1],bs->bits[0]);
-        return 3;
-    }
-    psFree(bs);
-
-    // Test A - Create psBitSet
-    fprintf(stderr,"Creating psBitSet with 25 bits...\n");
-    bs = psBitSetAlloc(25);
-    if (bs == NULL) {
-        psError(PS_ERR_UNKNOWN,true,"Failed to create a psBitSet with 25 bits");
-        return 4;
-    }
-    if (bs->n != 4) {
-        psError(PS_ERR_UNKNOWN,true,"Number of bytes for psBitSet incorrect (%d vs 4)",bs->n);
-        return 5;
-    }
-    psFree(bs);
-
-    psErrorClear();
-    psLogMsg(__func__,PS_LOG_INFO,"Following is an error.");
-    bs = psBitSetAlloc(-4);
-    if (bs != NULL) {
-        psError(PS_ERR_UNKNOWN,true,"psBitSetAlloc returned something in case of a negative size");
-        return 6;
-    }
-    err = psErrorLast();
-    if (err->code != PS_ERR_BAD_PARAMETER_VALUE) {
-        psErrorStackPrint(stderr,"Error Stack:");
-        psError(PS_ERR_UNKNOWN,true,"psBitSetAlloc didn't generate expected error with size = -4");
-        return 7;
-    }
-    psFree(err);
-
-    return 0;
-}
-
-psS32 testBitSet01b(void)
-{
-    char *binOut = NULL;
-    psBitSet *tempBs = NULL;
-    psErr* err = NULL;
-
-    psBitSet* bs = psBitSetAlloc(24);
-
-    if (psBitSetTest(bs,0) ||
-            psBitSetTest(bs,2) ||
-            psBitSetTest(bs,23) ) {
-
-        psAbort("testBitSet01b","psBitSetAlloc failed to clear all bits at allocation.");
-    }
-
-    // Test B - Set bits
-    tempBs = bs;
-    fprintf(stderr,"Setting first bit...\n");
-    bs = psBitSetSet(bs, 0);
-    fprintf(stderr,"Setting third bit...\n");
-    bs = psBitSetSet(bs, 2);
-    fprintf(stderr,"Setting last bit...\n");
-    bs = psBitSetSet(bs, 23);
-    if(bs != tempBs) {
-        psAbort("testBitSet01b",
-                "Return pointer not equal to output argument pointer.");
-    }
-    if(bs->bits[0] != 0x05) {
-        psAbort(__func__,
-                "Unexpected value for first byte (%d vs 5).",
-                bs->bits[0]);
-    }
-
-
-    binOut = psBitSetToString(bs);
-    fprintf(stderr,"%s\n\n", binOut);
-    psFree(binOut);
-
-    // Test C - Test bits
-    if (! psBitSetTest(bs,0) ||
-            ! psBitSetTest(bs,2) ||
-            ! psBitSetTest(bs,23) ) {
-
-        psAbort("testBitSet01b","Failed to set a bit.");
-    }
-
-    fprintf(stderr,"Clearing first bit...\n");
-    bs = psBitSetClear(bs, 0);
-    fprintf(stderr,"Clearing third bit...\n");
-    bs = psBitSetClear(bs, 2);
-    fprintf(stderr,"Clearing last bit...\n");
-    bs = psBitSetClear(bs, 23);
-
-    binOut = psBitSetToString(bs);
-    fprintf(stderr,"%s\n\n", binOut);
-    psFree(binOut);
-
-
-    if (psBitSetTest(bs,0) ||
-            psBitSetTest(bs,2) ||
-            psBitSetTest(bs,23) ) {
-
-        psAbort("testBitSet01b","Failed to clear a bit.");
-    }
-
-    psLogMsg(__func__,PS_LOG_INFO,"Following should be an error");
-    if(psBitSetClear(NULL,2) != NULL) {
-        psError(PS_ERR_UNKNOWN,true,"psBitSetClear did not return NULL with NULL bitset");
-        return 20;
-    }
-
-    psLogMsg(__func__,PS_LOG_INFO,"Following should be an error");
-    if(psBitSetClear(bs,-3) != bs) {
-        psError(PS_ERR_UNKNOWN,true,"psBitSetClear did not return original bitset");
-        return 21;
-    }
-
-    psLogMsg("testBitSet01b",PS_LOG_INFO,"Following should be an error");
-    psErrorClear();
-    psBitSetSet(bs, -4);
-
-    err = psErrorLast();
-    if (err->code != PS_ERR_BAD_PARAMETER_VALUE) {
-        psErrorStackPrint(stderr,"Error Stack:");
-        psAbort("testBitSet01c","psBitSetSet(bs, -4) didn't generate expected error.\n");
-    }
-    psFree(err);
-
-    psLogMsg("testBitSet01b",PS_LOG_INFO,"Following should be an error");
-    psErrorClear();
-    psBitSetSet(bs, 200);
-
-    err = psErrorLast();
-    if (err->code != PS_ERR_BAD_PARAMETER_VALUE) {
-        psErrorStackPrint(stderr,"Error Stack:");
-        psAbort("testBitSet01c","psBitSetSet(bs, 200) didn't generate expected error.\n");
-    }
-    psFree(err);
-
-    psLogMsg("testBitSet01b",PS_LOG_INFO,"Following should be an error");
-    psErrorClear();
-    psBitSetSet(NULL, 0);
-
-    err = psErrorLast();
-    if (err->code != PS_ERR_BAD_PARAMETER_NULL) {
-        psErrorStackPrint(stderr,"Error Stack:");
-        psAbort("testBitSet01c","psBitSetSet(NULL,0) didn't generate expected error.\n");
-    }
-    psFree(err);
-
-    psFree(bs);
-
-    return 0;
-}
-
-static psS32 testBitSet01c(void)
-{
-    psBitSet* bs = psBitSetAlloc(24);
-    psErr* err = NULL;
-
-    fprintf(stderr,"Setting first bit...\n");
-    bs = psBitSetSet(bs, 0);
-    fprintf(stderr,"Setting third bit...\n");
-    bs = psBitSetSet(bs, 2);
-    fprintf(stderr,"Setting last bit...\n");
-    bs = psBitSetSet(bs, 23);
-
-    if (! psBitSetTest(bs,0) ||
-            ! psBitSetTest(bs,2) ||
-            ! psBitSetTest(bs,23) ) {
-
-        psAbort("testBitSet01c","Set bits returned false.");
-    }
-
-    psLogMsg("testBitSet01c",PS_LOG_INFO,"Following should be an error");
-    psErrorClear();
-    if(psBitSetTest(bs, -4)) {
-        psAbort("testBitSet01c","psBitSetTest returned true with negative bit position.\n");
-    }
-
-    err = psErrorLast();
-    if (err->code != PS_ERR_BAD_PARAMETER_VALUE) {
-        psErrorStackPrint(stderr,"Error Stack:");
-        psAbort("testBitSet01c","psBitSetTest(bs, -4) didn't generate proper error.\n");
-    }
-    psFree(err);
-
-    psLogMsg("testBitSet01c",PS_LOG_INFO,"Following should be an error");
-    psErrorClear();
-    if(psBitSetTest(bs, 200)) {
-        psAbort("testBitSet01c","psBitSetTest returned true with too-large bit position.\n");
-    }
-
-    err = psErrorLast();
-    if (err->code != PS_ERR_BAD_PARAMETER_VALUE) {
-        psErrorStackPrint(stderr,"Error Stack:");
-        psAbort("testBitSet01c","psBitSetTest(bs, 200) didn't generate proper error.\n");
-    }
-    psFree(err);
-
-    psLogMsg("testBitSet01c",PS_LOG_INFO,"Following should be an error");
-    psErrorClear();
-    if (psBitSetTest(NULL, 0)) {
-        psAbort("testBitSet01c","psBitSetTest returned true with NULL psBitSet.\n");
-    }
-
-    err = psErrorLast();
-    if (err->code != PS_ERR_BAD_PARAMETER_NULL) {
-        psErrorStackPrint(stderr,"Error Stack:");
-        psAbort("testBitSet01c","psBitSetTest(NULL, 0) didn't generate proper error.\n");
-    }
-    psFree(err);
-
-    psFree(bs);
-
-    return 0;
-}
-
-psS32 testBitSet02()
-{
-    char *binOut1 = NULL;
-    char *binOut2 = NULL;
-    char *binOut3 = NULL;
-
-    psBitSet* bs1 = psBitSetAlloc(24);
-    psBitSet* bs2 = psBitSetAlloc(24);
-    psBitSet* and = psBitSetAlloc(24);
-    for(psS32 i=0; i<24; i++) {
-        if ((i & 2) == 0) {
-            bs1 = psBitSetSet(bs1, i);
-        }
-        if ((i & 1) == 0) {
-            bs2 = psBitSetSet(bs2, i);
-        }
-        if (((i & 1) == 0) && ((i & 2) == 0) ) {
-            and = psBitSetSet(and, i);
-        }
-    }
-    binOut1 = psBitSetToString(bs1);
-    binOut2 = psBitSetToString(bs2);
-    binOut3 = psBitSetToString(and);
-    fprintf(stderr,"psBitSetOp input is %s, %s.  Truth is %s.\n",
-            binOut1,binOut2,binOut3);
-    psFree(binOut1);
-    psFree(binOut2);
-    psFree(binOut3);
-
-    // Test B - Perform binary AND with psBitSets
-    psLogMsg(__func__,PS_LOG_INFO,"Perform binary AND with psBitSets");
-    psBitSet* outbs = psBitSetAlloc(24);
-    outbs = psBitSetOp(outbs, bs1, "AND", bs2);
-    if (outbs == NULL) {
-        psAbort(__func__,"psBitSetOp returned a NULL result for AND operation");
-    }
-
-    for(psS32 i=0; i<24; i++) {
-        psBool truth = psBitSetTest(and,i);
-        psBool res = psBitSetTest(outbs,i);
-        if ( res != truth) {
-            binOut1 = psBitSetToString(bs1);
-            binOut2 = psBitSetToString(bs2);
-            binOut3 = psBitSetToString(outbs);
-            psAbort(__func__,"psBitSetOp with AND operator failed.\nInput was %s, %s.  Output was %s",
-                    binOut1,binOut2,binOut3);
-        }
-    }
-    psFree(outbs);
-
-    // Test C - Perform binary AND and auto allocate output
-    psLogMsg(__func__,PS_LOG_INFO,"Perform binary AND and auto allocate output");
-    outbs = psBitSetOp(NULL, bs1, "AND", bs2);
-    if (outbs == NULL) {
-        psAbort(__func__,"psBitSetOp failed to create a new psBitSet for the result");
-    }
-    for(psS32 i=0; i<24; i++) {
-        psBool truth = psBitSetTest(and,i);
-        psBool res = psBitSetTest(outbs,i);
-        if ( res != truth) {
-            binOut1 = psBitSetToString(bs1);
-            binOut2 = psBitSetToString(bs2);
-            binOut3 = psBitSetToString(outbs);
-            psAbort(__func__,"psBitSetOp with AND operator failed.\nInput was %s, %s.  Output was %s",
-                    binOut1,binOut2,binOut3);
-        }
-    }
-    psFree(outbs);
-
-    psFree(bs1);
-    psFree(bs2);
-    psFree(and);
-
-    return 0;
-}
-
-static psS32 testBitSet03(void)
-{
-    char *binOut1 = NULL;
-    char *binOut2 = NULL;
-    char *binOut3 = NULL;
-
-    psBitSet* bs1 = psBitSetAlloc(24);
-    psBitSet* bs2 = psBitSetAlloc(24);
-    psBitSet* or = psBitSetAlloc(24);
-    for(psS32 i=0; i<24; i++) {
-        if ((i/2) % 2) {
-            bs1 = psBitSetSet(bs1, i);
-        }
-        if ((i) % 2) {
-            bs2 = psBitSetSet(bs2, i);
-        }
-        if ( ((i/2) % 2) || ((i) % 2) ) {
-            or = psBitSetSet(or, i);
-        }
-    }
-
-    binOut1 = psBitSetToString(bs1);
-    binOut2 = psBitSetToString(bs2);
-    binOut3 = psBitSetToString(or);
-    fprintf(stderr,"psBitSetOp input is %s, %s.  Truth is %s.\n",
-            binOut1,binOut2,binOut3);
-    psFree(binOut1);
-    psFree(binOut2);
-    psFree(binOut3);
-
-    // Test B - Perform binary AND with psBitSets
-    psLogMsg(__func__,PS_LOG_INFO,"Perform binary OR with psBitSets");
-    psBitSet* outbs = psBitSetAlloc(24);
-    outbs = psBitSetOp(outbs, bs1, "OR", bs2);
-    if (outbs == NULL) {
-        psAbort(__func__,"psBitSetOp returned a NULL result for OR operation");
-    }
-
-    for(psS32 i=0; i<24; i++) {
-        psBool truth = psBitSetTest(or,i);
-        psBool res = psBitSetTest(outbs,i);
-        if ( res != truth) {
-            binOut1 = psBitSetToString(bs1);
-            binOut2 = psBitSetToString(bs2);
-            binOut3 = psBitSetToString(outbs);
-            psAbort(__func__,"psBitSetOp with OR operator failed.\nInput was %s, %s.  Output was %s",
-                    binOut1,binOut2,binOut3);
-        }
-    }
-    psFree(outbs);
-
-    // Test C - Perform binary AND and auto allocate output
-    psLogMsg(__func__,PS_LOG_INFO,"Perform binary OR and auto allocate output");
-    outbs = psBitSetOp(NULL, bs1, "OR", bs2);
-    if (outbs == NULL) {
-        psAbort(__func__,"psBitSetOp failed to create a new psBitSet for the result");
-    }
-    for(psS32 i=0; i<24; i++) {
-        psBool truth = psBitSetTest(or,i);
-        psBool res = psBitSetTest(outbs,i);
-        if ( res != truth) {
-            binOut1 = psBitSetToString(bs1);
-            binOut2 = psBitSetToString(bs2);
-            binOut3 = psBitSetToString(outbs);
-            psAbort(__func__,"psBitSetOp with OR operator failed.\nInput was %s, %s.  Output was %s",
-                    binOut1,binOut2,binOut3);
-        }
-    }
-    psFree(outbs);
-    outbs = NULL;
-
-    psFree(bs1);
-    psFree(bs2);
-    psFree(or);
-
-    return 0;
-}
-
-static psS32 testBitSet04(void)
-{
-    char *binOut1 = NULL;
-    char *binOut2 = NULL;
-    char *binOut3 = NULL;
-
-    psBitSet* bs1 = psBitSetAlloc(24);
-    psBitSet* bs2 = psBitSetAlloc(24);
-    psBitSet* xor = psBitSetAlloc(24);
-    for(psS32 i=0; i<24; i++) {
-        if ((i/2) % 2) {
-            bs1 = psBitSetSet(bs1, i);
-        }
-        if ((i) % 2) {
-            bs2 = psBitSetSet(bs2, i);
-        }
-        if ( ((i/2) % 2) != ((i) % 2) ) {
-            xor = psBitSetSet(xor, i);
-        }
-    }
-
-    binOut1 = psBitSetToString(bs1);
-    binOut2 = psBitSetToString(bs2);
-    binOut3 = psBitSetToString(xor);
-    fprintf(stderr,"psBitSetOp input is %s, %s.  Truth is %s.\n",
-            binOut1,binOut2,binOut3);
-    psFree(binOut1);
-    psFree(binOut2);
-    psFree(binOut3);
-
-    // Test B - Perform binary AND with psBitSets
-    psLogMsg(__func__,PS_LOG_INFO,"Perform binary XOR with psBitSets");
-    psBitSet* outbs = psBitSetAlloc(24);
-    outbs = psBitSetOp(outbs, bs1, "XOR", bs2);
-    if (outbs == NULL) {
-        psAbort(__func__,"psBitSetOp returned a NULL result for XOR operation");
-    }
-
-    for(psS32 i=0; i<24; i++) {
-        psBool truth = psBitSetTest(xor,i);
-        psBool res = psBitSetTest(outbs,i);
-        if ( res != truth) {
-            binOut1 = psBitSetToString(bs1);
-            binOut2 = psBitSetToString(bs2);
-            binOut3 = psBitSetToString(outbs);
-            psAbort(__func__,"psBitSetOp with XOR operator failed.\nInput was %s, %s.  Output was %s",
-                    binOut1,binOut2,binOut3);
-        }
-    }
-    psFree(outbs);
-
-    // Test C - Perform binary AND and auto allocate output
-    psLogMsg(__func__,PS_LOG_INFO,"Perform binary XOR and auto allocate output");
-    outbs = psBitSetOp(NULL, bs1, "XOR", bs2);
-    if (outbs == NULL) {
-        psAbort(__func__,"psBitSetOp failed to create a new psBitSet for the result");
-    }
-    for(psS32 i=0; i<24; i++) {
-        psBool truth = psBitSetTest(xor,i);
-        psBool res = psBitSetTest(outbs,i);
-        if ( res != truth) {
-            binOut1 = psBitSetToString(bs1);
-            binOut2 = psBitSetToString(bs2);
-            binOut3 = psBitSetToString(outbs);
-            psAbort(__func__,"psBitSetOp with XOR operator failed.\nInput was %s, %s.  Output was %s",
-                    binOut1,binOut2,binOut3);
-        }
-    }
-    psFree(outbs);
-    outbs = NULL;
-
-    psFree(bs1);
-    psFree(bs2);
-    psFree(xor);
-
-    return 0;
-}
-
-static psS32 testBitSet05(void)
-{
-    char *binOut1 = NULL;
-    char *binOut2 = NULL;
-
-    psBitSet* bs1 = psBitSetAlloc(24);
-    psBitSet* not = psBitSetAlloc(24);
-    for(psS32 i=0; i<24; i++) {
-        if (i % 2) {
-            bs1 = psBitSetSet(bs1, i);
-        }
-        if (i % 2 == 0) {
-            not = psBitSetSet(not, i);
-        }
-    }
-
-    binOut1 = psBitSetToString(bs1);
-    binOut2 = psBitSetToString(not);
-    fprintf(stderr,"psBitSetOp input is %s.  Truth is %s.\n",
-            binOut1,binOut2);
-    psFree(binOut1);
-    psFree(binOut2);
-
-    // Test B - Perform binary AND with psBitSets
-    psLogMsg(__func__,PS_LOG_INFO,"Perform binary NOT with psBitSets");
-    psBitSet* outbs = psBitSetAlloc(24);
-    outbs = psBitSetNot(outbs, bs1);
-    if (outbs == NULL) {
-        psAbort(__func__,"psBitSetOp returned a NULL result for NOT operation");
-    }
-
-    for(psS32 i=0; i<24; i++) {
-        psBool truth = psBitSetTest(not,i);
-        psBool res = psBitSetTest(outbs,i);
-        if ( res != truth) {
-            binOut1 = psBitSetToString(bs1);
-            binOut2 = psBitSetToString(outbs);
-            psAbort(__func__,"psBitSetOp with NOT operator failed.\nInput was %s.  Output was %s",
-                    binOut1,binOut2);
-        }
-    }
-    psFree(outbs);
-
-    // Test C - Perform binary AND and auto allocate output
-    psLogMsg(__func__,PS_LOG_INFO,"Perform binary NOT and auto allocate output");
-    outbs = psBitSetNot(NULL, bs1);
-    if (outbs == NULL) {
-        psAbort(__func__,"psBitSetOp failed to create a new psBitSet for the result");
-    }
-    for(psS32 i=0; i<24; i++) {
-        psBool truth = psBitSetTest(not,i);
-        psBool res = psBitSetTest(outbs,i);
-        if ( res != truth) {
-            binOut1 = psBitSetToString(bs1);
-            binOut2 = psBitSetToString(outbs);
-            psAbort(__func__,"psBitSetOp with NOT operator failed.\nInput was %s.  Output was %s",
-                    binOut1,binOut2);
-        }
-    }
-    psFree(outbs);
-    outbs = NULL;
-
-    psLogMsg(__func__,PS_LOG_INFO,"Following should generate an error");
-    if(psBitSetNot(NULL,NULL) != NULL) {
-        psError(PS_ERR_UNKNOWN,true,"psBitSetNot did not return NULL with NULL input");
-        return 30;
-    }
-
-    psFree(bs1);
-    psFree(not);
-
-    return 0;
-}
-
-static psS32 testBitSet06(void)
-{
-    psErr* err;
-
-    psBitSet* bs1 = psBitSetAlloc(24);
-    psBitSet* bs2 = psBitSetAlloc(40);
-
-    psLogMsg(__func__,PS_LOG_INFO,"Following should be an error");
-    psBitSet* outbs = psBitSetOp(NULL, bs1, "XOR", bs2);
-    if (outbs != NULL) {
-        psAbort(__func__,"psBitSetOp did not return a NULL result when input sizes differ");
-    }
-
-    err = psErrorLast();
-    if (err->code != PS_ERR_BAD_PARAMETER_SIZE) {
-        psErrorStackPrint(stderr,"Error Stack:");
-        psAbort(__func__,"psBitSetOp didn't generate expected error with operands' sizes differed.");
-    }
-    psFree(err);
-    psFree(bs1);
-    psFree(bs2);
-
-    bs1 = psBitSetAlloc(24);
-    bs2 = psBitSetAlloc(24);
-
-    outbs = psBitSetAlloc(40);
-    psBitSet* outbs2 = psBitSetOp(outbs, bs1, "XOR", bs2);
-    if (outbs2 == NULL) {
-        psAbort(__func__,"psBitSetOp failed when input size and output size differed (a recoverable error).");
-    }
-    if (outbs2 != outbs) {
-        psAbort(__func__,"psBitSetOp didn't reuse the given output struct.");
-    }
-    if (outbs2->n != bs1->n) {
-        psAbort(__func__,"psBitSetOp did properly adjust the output psBitSet size.");
-    }
-
-    psErrorClear();
-    psLogMsg(__func__,PS_LOG_INFO,"Following is an error.");
-    outbs = psBitSetOp(outbs, bs1, "FOO", bs2);
-    if (outbs != NULL) {
-        psAbort(__func__,"psBitSetOp returned something in case of a bogus operation.");
-    }
-    err = psErrorLast();
-    if (err->code != PS_ERR_BAD_PARAMETER_VALUE) {
-        psErrorStackPrint(stderr,"Error Stack:");
-        psAbort(__func__,"psBitSetOp didn't generate expected error with bogus operator.");
-    }
-    psFree(err);
-
-
-    // try again, though give a valid output bitset -- should free the out upon error to avoid leak.
-    outbs = psBitSetAlloc(24);
-    psErrorClear();
-    psLogMsg(__func__,PS_LOG_INFO,"Following is an error.");
-    outbs = psBitSetOp(outbs, bs1, "FOO", bs2);
-
-    err = psErrorLast();
-    if (err->code != PS_ERR_BAD_PARAMETER_VALUE) {
-        psErrorStackPrint(stderr,"Error Stack:");
-        psAbort(__func__,"psBitSetOp didn't generate expected error with bogus operator.");
-    }
-    psFree(err);
-
-
-    psLogMsg(__func__,PS_LOG_INFO,"Following should generate an error");
-    if(psBitSetOp(outbs,NULL,"AND",bs2) != NULL) {
-        psError(PS_ERR_UNKNOWN,true,"psBitSetOp did not return NULL with NULL input 1 bit set");
-        return 40;
-    }
-    psLogMsg(__func__,PS_LOG_INFO,"Following should generate an error");
-    if(psBitSetOp(outbs,bs1,NULL,bs2) != NULL) {
-        psError(PS_ERR_UNKNOWN,true,"psBitSetOp did not return NULL with NULL operator");
-        return 41;
-    }
-    psLogMsg(__func__,PS_LOG_INFO,"Following should generate an error");
-    if(psBitSetOp(outbs,bs1,"AND",NULL) != NULL)  {
-        psError(PS_ERR_UNKNOWN,true,"psBitSetOp did not return NULL with NULL input 2 bit set");
-        return 42;
-    }
-
-    psFree(bs1);
-    psFree(bs2);
-    psFree(outbs);
-
-    return 0;
-}
Index: trunk/psLib/test/collections/tst_psHash00.c
===================================================================
--- trunk/psLib/test/collections/tst_psHash00.c	(revision 4493)
+++ 	(revision )
@@ -1,64 +1,0 @@
-/*****************************************************************************
-    This code will test whether a hash table can be allocated successfully,
-    then deallocated successfully.
- *****************************************************************************/
-#include <stdio.h>
-#include "pslib_strict.h"
-#include "psTest.h"
-#include "psHash.h"
-#define NUM_HASH_TABLE_BUCKETS 10
-psS32 main()
-{
-    psHash *myHashTable = NULL;
-    psS32 testStatus      = true;
-    psS32 i               = 0;
-    psS32 currentId = psMemGetId();
-    psS32 memLeaks        = 0;
-    printPositiveTestHeader(stdout,
-                            "psHash functions",
-                            "psHashAlloc()");
-
-    myHashTable = psHashAlloc(NUM_HASH_TABLE_BUCKETS);
-
-    if (myHashTable == NULL) {
-        fprintf(stderr, "%s: could not allocate a hash table.", __func__);
-        testStatus = false;
-    }
-
-    if (myHashTable->n != NUM_HASH_TABLE_BUCKETS) {
-        fprintf(stderr, "%s: myHashTable->nbucket not set properly.\n",
-                __func__);
-        testStatus = false;
-
-    }
-
-    if (myHashTable->buckets == NULL) {
-        fprintf(stderr, "%s: myHashTable->buckets is NULL.\n",
-                __func__);
-        testStatus = false;
-
-    }
-
-    for (i=0;i<NUM_HASH_TABLE_BUCKETS;i++) {
-        if (myHashTable->buckets[i] != NULL) {
-            fprintf(stderr, "%s: hash table bucket[%d] not equal to NULL.\n",
-                    __func__, i);
-            testStatus = false;
-        }
-    }
-
-    printFooter(stdout,
-                "psHash functions",
-                "psHashAlloc()",
-                testStatus);
-
-    psFree(myHashTable);
-
-    memLeaks = psMemCheckLeaks(currentId,NULL,stderr,false);
-    if (0 != memLeaks) {
-        psAbort(__func__,"Memory Leaks! (%d leaks)", memLeaks);
-    }
-    psMemCheckCorruption(1);
-
-    return (!testStatus);
-}
Index: trunk/psLib/test/collections/tst_psHash01.c
===================================================================
--- trunk/psLib/test/collections/tst_psHash01.c	(revision 4493)
+++ 	(revision )
@@ -1,155 +1,0 @@
-/*****************************************************************************
-    This code will test whether a hash table can be de-allocated successfully.
- *****************************************************************************/
-#include <stdio.h>
-#include <string.h>
-#include "pslib_strict.h"
-#include "psTest.h"
-#include "psHash.h"
-#define NUM_HASH_TABLE_BUCKETS 100
-psS32 imGlobal = 0;
-
-typedef struct
-{
-    char *name;
-}
-ID;
-
-static void IdFree(ID *id);
-
-static ID *IdAlloc(const char *name)
-{
-    ID *id = psAlloc(sizeof(ID));
-    psMemSetDeallocator(id,(psFreeFunc)IdFree);
-    id->name = psStringCopy(name);
-
-    return id;
-}
-
-static void IdFree(ID *id)
-{
-    imGlobal++;
-    psFree(id->name);
-}
-
-psS32 main()
-{
-    psHash *myHashTable = NULL;
-    psS32 testStatus      = true;
-    psS32 currentId = psMemGetId();
-    ID* id = NULL;
-    ID* replaceId = NULL;
-    psS32 memLeaks        = 0;
-    psBool  retVal = false;
-
-    // Allocate memory for Hash Table
-    printPositiveTestHeader(stdout,"psHash functions","psHashAlloc");
-    myHashTable = psHashAlloc(NUM_HASH_TABLE_BUCKETS);
-    if(myHashTable == NULL) {
-        psError(PS_ERR_UNKNOWN,true,"Unable to allocate psHash table");
-        return 10;
-    }
-    printFooter(stdout,"psHash functions","psHashAlloc",true);
-
-    // Add items to Hash table
-    id = IdAlloc("IDA");
-    printPositiveTestHeader(stdout,"psHash functions","psHashAdd");
-    retVal = psHashAdd(myHashTable, "ENTRY00", id);
-    psFree(id);
-    if( !retVal) {
-        psError(PS_ERR_UNKNOWN, true, "psHashAdd unable to add ENTRY00");
-        return 1;
-    }
-
-    id = IdAlloc("IDB");
-    retVal = psHashAdd(myHashTable, "ENTRY01", id);
-    psFree(id);
-    if (!retVal) {
-        psError(PS_ERR_UNKNOWN, true, "psHashAdd unable to add ENTRY01");
-        return 2;
-    }
-
-    id = IdAlloc("IDC");
-    retVal = psHashAdd(myHashTable, "ENTRY02", id);
-    psFree(id);
-    if(!retVal) {
-        psError(PS_ERR_UNKNOWN,true,"psHashAdd unable to add ENTRY02");
-        return 3;
-    }
-
-    id = IdAlloc("IDD");
-    retVal =psHashAdd(myHashTable, "ENTRY03", id);
-    psFree(id);
-    if(!retVal) {
-        psError(PS_ERR_UNKNOWN,true,"psHashAdd unable to add ENTRY03");
-        return 4;
-    }
-    printFooter(stdout,"psHash functions","psHashAdd",true);
-
-    // Replace item with same key
-    printPositiveTestHeader(stdout,"psHash replace item","psHashAdd");
-    id = IdAlloc("IDE");
-    retVal = psHashAdd(myHashTable,"ENTRY02",id);
-    if(!retVal) {
-        psError(PS_ERR_UNKNOWN,true,"psHashAdd unable to replace ENTRY02");
-        return 5;
-    }
-    replaceId = psHashLookup(myHashTable,"ENTRY02");
-    if(strcmp(replaceId->name,"IDE") != 0) {
-        psError(PS_ERR_UNKNOWN,true,"psHashAdd did not replace ENTRY02 with correct item");
-        return 6;
-    }
-    printFooter(stdout,"psHash replace item","psHashAdd",true);
-
-    // Add with NULL hash table specified
-    printNegativeTestHeader(stdout,"psHashAdd","NULL hash table","Hash table can not be NULL.",0);
-    psLogMsg(__func__,PS_LOG_INFO,"Following should generate an error message: psHashAdd with null table");
-    retVal = psHashAdd(NULL,"ENTRY04",id);
-    if(retVal) {
-        psError(PS_ERR_UNKNOWN,true,"psHashAdd added entry to NULL hash table.");
-        return 20;
-    }
-    printFooter(stdout,"psHashAdd","NULL hash table",true);
-
-    // Add with key to valid hash table NULL
-    printNegativeTestHeader(stdout,"psHashAdd","NULL key","Hash key can not be NULL.",0);
-    psLogMsg(__func__,PS_LOG_INFO,"Following should generate an error message: psHashAdd with null key");
-    retVal = psHashAdd(myHashTable,NULL,id);
-    if(retVal) {
-        psError(PS_ERR_UNKNOWN,true,"psHashAdd added entry to hash table with NULL key.");
-        return 21;
-    }
-    printFooter(stdout,"psHashAdd","NULL hash key",true);
-
-    // Add NULL hash data to valid table and key
-    printNegativeTestHeader(stdout,"psHashAdd","NULL hash data","Hash data can not be NULL.",0);
-    psLogMsg(__func__,PS_LOG_INFO,"Following should generate an error message: psHashAdd with null data");
-    retVal = psHashAdd(myHashTable,"ENTRY04",NULL);
-    if(retVal) {
-        psError(PS_ERR_UNKNOWN,true,"psHashAdd added entry to hash table with NULL data.");
-        return 22;
-    }
-    printFooter(stdout,"psHashAdd","NULL hash data",true);
-
-    // Free hash table
-    printPositiveTestHeader(stdout,"psHash functions","psHashFree");
-    psFree(id);
-
-    psFree(myHashTable);
-
-    if (imGlobal != 5) {
-        fprintf(stderr, "%s: only (%d/4) entries were freed",
-                __func__, imGlobal);
-        testStatus = false;
-    }
-
-    printFooter(stdout,"psHash functions","psHashFree()",testStatus);
-
-    memLeaks = psMemCheckLeaks(currentId,NULL,stderr,false);
-    if (memLeaks != 0) {
-        psAbort(__func__,"Memory Leaks! (%d leaks)", memLeaks);
-    }
-    psMemCheckCorruption(1);
-
-    return (!testStatus);
-}
Index: trunk/psLib/test/collections/tst_psHash02.c
===================================================================
--- trunk/psLib/test/collections/tst_psHash02.c	(revision 4493)
+++ 	(revision )
@@ -1,113 +1,0 @@
-/*****************************************************************************
-    This code will test whether hash tables entries can be inserted correctly,
-    and retrieved correctly.
- 
-    NOTE: Add code to test whether duplicates are handled correctly (use a
-    small hash table and lots of keys).
- *****************************************************************************/
-#include <stdio.h>
-#include <string.h>
-#include "pslib_strict.h"
-#include "psTest.h"
-#include "psHash.h"
-#define NUM_HASH_TABLE_BUCKETS 100
-psS32 imGlobal = 0;
-
-typedef struct
-{
-    char *name;
-}
-ID;
-static void IdFree(ID *id);
-
-static ID *IdAlloc(const char *name)
-{
-    ID *id = psAlloc(sizeof(ID));
-    psMemSetDeallocator(id,(psFreeFunc)IdFree);
-    id->name = psStringCopy(name);
-
-    return id;
-}
-
-static void IdFree(ID *id)
-{
-    imGlobal++;
-    psFree(id->name);
-}
-
-psS32 main()
-{
-    psHash *myHashTable = NULL;
-    psS32 testStatus      = true;
-    psS32 i               = 0;
-    ID *id = NULL;
-    char *myKeys[] = {"ENTRY00", "ENTRY01", "ENTRY02", "ENTRY03", NULL
-                     };
-    char *myData[] = {"IDA", "IDB", "IDC", "IDD", NULL
-                     };
-    psS32 currentId = psMemGetId();
-    psS32 memLeaks        = 0;
-
-    printPositiveTestHeader(stdout,"psHash functions","psHashLookup");
-
-    myHashTable = psHashAlloc(NUM_HASH_TABLE_BUCKETS);
-    i = 0;
-    while (myKeys[i] != NULL) {
-        id = IdAlloc(myData[i]);
-        psHashAdd(myHashTable, myKeys[i], id);
-        psFree(id);
-        i++;
-    }
-
-    i = 0;
-    while (myKeys[i] != NULL) {
-        id = psHashLookup(myHashTable, myKeys[i]);
-        if (0 != strcmp(myData[i], id->name)) {
-            fprintf(stderr, "%s: Hash table entry for key %s was %s (should be %s).\n",
-                    __func__, myKeys[i], id->name, myData[i]);
-            return 1;
-        }
-        i++;
-    }
-    printFooter(stdout,"psHash functions","psHashLookup",true);
-
-    // Use an invalid key in the hash table: verify no item is returned
-    printNegativeTestHeader(stdout,"psHashLookup","Invalid key","Key is not found in the table",0);
-    id = psHashLookup(myHashTable, "BogusKey");
-    if (id != NULL) {
-        fprintf(stderr, "%s: Hash table entry for key %s was not NULL.\n",
-                __func__, "BogusKey");
-        return 2;
-    }
-    printFooter(stdout,"psHashLookup","Invalid key",true);
-
-    // Lookup with null table
-    printNegativeTestHeader(stdout,"psHashLookup","NULL table","Can not lookup with NULL table",0);
-    psLogMsg(__func__,PS_LOG_INFO,"Following should generate an error message: psHashLookup with null table");
-    id = psHashLookup(NULL,"ENTRY01");
-    if (id != NULL) {
-        psError(PS_ERR_UNKNOWN,true,"psHashLookup retrieved an entry from NULL hash table.");
-        return 3;
-    }
-    printFooter(stdout,"psHashLookup","NULL table",true);
-
-    // Lookup with null key
-    printNegativeTestHeader(stdout,"psHashLookup","NULL key","Can not lookup with NULL key.",0);
-    psLogMsg(__func__,PS_LOG_INFO,"Following should generate an error message: psHashLookup with null key");
-    id = psHashLookup(myHashTable,NULL);
-    if (id != NULL) {
-        psError(PS_ERR_UNKNOWN,true,"psHashLookup retrieved an entry with NULL key.");
-        return 4;
-    }
-    printFooter(stdout,"psHashLookup","NULL key",true);
-
-    psFree(myHashTable);
-
-    memLeaks = psMemCheckLeaks(currentId,NULL,stderr,false);
-    if (0 != memLeaks) {
-        psAbort(__func__,"Memory Leaks! (%d leaks)", memLeaks);
-    }
-    psMemCheckCorruption(1);
-
-    return (!testStatus);
-}
Index: trunk/psLib/test/collections/tst_psHash03.c
===================================================================
--- trunk/psLib/test/collections/tst_psHash03.c	(revision 4493)
+++ 	(revision )
@@ -1,142 +1,0 @@
-/*****************************************************************************
-    This code will test whether hash tables entries can be removed correctly.
- 
-    NOTE: Add code to test whether duplicates are handled correctly.
- *****************************************************************************/
-#include <stdio.h>
-#include <string.h>
-#include "pslib_strict.h"
-#include "psTest.h"
-#include "psHash.h"
-#include "psMemory.h"
-#define NUM_HASH_TABLE_BUCKETS 100
-psS32 imGlobal = 0;
-psS32 currentId = 0;
-
-typedef struct
-{
-    char *name;
-}
-ID;
-static void IdFree(ID *id);
-
-static ID *IdAlloc(const char *name)
-{
-    ID *id = NULL;
-
-    id = psAlloc(sizeof(ID));
-    psMemSetDeallocator(id,(psFreeFunc)IdFree);
-
-    id->name = psStringCopy(name);
-
-    return id;
-}
-
-static void IdFree(ID *id)
-{
-    imGlobal++;
-    psFree(id->name);
-}
-
-psS32 main()
-{
-    psHash *myHashTable = NULL;
-    psS32 testStatus      = true;
-    psS32 i               = 0;
-    psS32 TotalKeys       = 0;
-    psBool retVal         = false;
-    ID *id = NULL;
-    ID *ids[4];
-    char *myKeys[] = {"ENTRY00", "ENTRY01", "ENTRY02", "ENTRY03", NULL
-                     };
-    char *myData[] = {"IDA", "IDB", "IDC", "IDD", NULL
-                     };
-    psS32 memLeaks        = 0;
-
-    currentId = psMemGetId();
-
-    printPositiveTestHeader(stdout,"psHash functions","psHashRemove");
-
-    // Add items to hash table
-    myHashTable = psHashAlloc(NUM_HASH_TABLE_BUCKETS);
-    i = 0;
-    while (myKeys[i] != NULL) {
-        ids[i] = IdAlloc(myData[i]);
-        psHashAdd(myHashTable, myKeys[i], ids[i]);
-        i++;
-    }
-    TotalKeys = i - 1;
-
-    // Verify items which were just add to hash table
-    i = TotalKeys;
-    while (i >= 0) {
-
-        id = psHashLookup(myHashTable, myKeys[i]);
-        if (0 != strcmp(myData[i], id->name)) {
-            fprintf(stderr, "%s: Hash table entry for key %s was %s (should be %s).\n",
-                    __func__, myKeys[i], id->name, myData[i]);
-            return 1;
-        }
-        i--;
-    }
-
-    // Remove each item from the table and verify item is no longer in the list
-    i = 0;
-    while (myKeys[i] != NULL) {
-        // The psHashRemove() procedure removes the entry from the hash
-        // table and deletes the data.
-        retVal = psHashRemove(myHashTable, myKeys[i]);
-        if (!retVal) {
-            fprintf(stderr,"%s: Hash table entry not removed.\n",__func__);
-            return 2;
-        }
-        id = psHashLookup(myHashTable, myKeys[i]);
-        if (id != NULL) {
-            fprintf(stderr, "%s: Hash table entry for key %s not removed.\n",
-                    __func__, "IDA");
-            return 3;
-        }
-        i++;
-    }
-    printFooter(stdout,"psHash functions","psHashRemove()",true);
-
-    // Use an invalid key in the hash table: verify false is returned
-    printNegativeTestHeader(stdout,"psHashRemove","Invalid key","Key is not found in table",0);
-    if (psHashRemove(myHashTable,"BogusKey") ) {
-        psError(PS_ERR_UNKNOWN,true,"psHashRemove removed an entry with a bogus key.");
-        return 4;
-    }
-    printFooter(stdout,"psHashRemove","Invalid key",true);
-
-    // Remove with null table
-    printNegativeTestHeader(stdout,"psHashRemove","NULL table","Can not remove with NULL table",0);
-    psLogMsg(__func__,PS_LOG_INFO,"Following should generate an error message: psHashRemove with null table");
-    retVal = psHashRemove(NULL,"ENTRY02");
-    if (retVal) {
-        psError(PS_ERR_UNKNOWN,true,"psHashRemove removed an entry from NULL hash table.");
-        return 5;
-    }
-    printFooter(stdout,"psHashRemove","NULL table",true);
-
-    // Remove with null key
-    printNegativeTestHeader(stdout,"psHashRemove","NULL key","Can not remove with NULL key",0);
-    psLogMsg(__func__,PS_LOG_INFO,"Following should generate an error message: psHashRemove with null key");
-    if (psHashRemove(myHashTable,NULL) ) {
-        psError(PS_ERR_UNKNOWN,true,"psHashRemove removed an entry from NULL key");
-        return 6;
-    }
-    printFooter(stdout,"psHashRemove","NULL key",true);
-
-    psFree(myHashTable);
-    for(i=0; i<(TotalKeys+1); i++) {
-        psFree(ids[i]);
-    }
-    memLeaks = psMemCheckLeaks(currentId,NULL,stdout,false);
-    if (memLeaks != 0) {
-        psAbort(__func__,"Memory Leaks! (%d leaks)", memLeaks);
-    }
-    psMemCheckCorruption(true);
-
-    return (!testStatus);
-}
-
Index: trunk/psLib/test/collections/tst_psHash04.c
===================================================================
--- trunk/psLib/test/collections/tst_psHash04.c	(revision 4493)
+++ 	(revision )
@@ -1,84 +1,0 @@
-/*****************************************************************************
-    This code will test whether the call psHashKeyList() function works.
- *****************************************************************************/
-#include <stdio.h>
-#include "pslib_strict.h"
-#include "psTest.h"
-#include "psHash.h"
-#define NUM_HASH_TABLE_BUCKETS 100
-psS32 imGlobal = 0;
-
-typedef struct
-{
-    char *name;
-}
-ID;
-static void IdFree(ID *id);
-
-static ID *IdAlloc(const char *name)
-{
-    ID *id = psAlloc(sizeof(ID));
-    psMemSetDeallocator(id,(psFreeFunc)IdFree);
-
-    id->name = psStringCopy(name);
-
-    return id;
-}
-
-static void IdFree(ID *id)
-{
-    imGlobal++;
-    psFree(id->name);
-}
-
-psS32 main()
-{
-    psHash *myHashTable = NULL;
-    psS32 testStatus      = true;
-    psS32 i               = 0;
-    char *myKeys[] = {"ENTRY00", "ENTRY01", "ENTRY02", "ENTRY03", NULL
-                     };
-    char *myData[] = {"IDA", "IDB", "IDC", "IDD", NULL
-                     };
-    psS32 currentId = psMemGetId();
-    psS32 memLeaks        = 0;
-    psList *myLinkList = NULL;
-    psListElem *tmp = NULL;
-    ID* id = NULL;
-
-    printPositiveTestHeader(stdout,"psHash functions","psHashKeyList()");
-    myHashTable = psHashAlloc(NUM_HASH_TABLE_BUCKETS);
-    i = 0;
-    while (myKeys[i] != NULL) {
-        id = IdAlloc(myData[i]);
-        psHashAdd(myHashTable, myKeys[i], id);
-        psFree(id);
-        i++;
-    }
-    myLinkList = psHashKeyList(myHashTable);
-    tmp = myLinkList->head;
-    while (tmp != NULL) {
-        printf("Linked List Entries: %s\n", (char *) tmp->data);
-        tmp = tmp->next;
-    }
-    printFooter(stdout,"psHash functions","psHashKeyList()",testStatus);
-    psFree(myLinkList);
-
-    printNegativeTestHeader(stdout,"psHashKeyList","NULL table","Can not lookup with NULL table",0);
-    myLinkList = psHashKeyList(NULL);
-    if(myLinkList != NULL) {
-        psError(PS_ERR_UNKNOWN,true,"psHashKeyList retrieved a key list from a NULL table.");
-        return 1;
-    }
-    printFooter(stdout,"psHashKeyList","NULL table",true);
-
-    psFree(myHashTable);
-
-    memLeaks = psMemCheckLeaks(currentId,NULL,stderr,false);
-    if (memLeaks != 0) {
-        psAbort(__func__,"Memory Leaks! (%d leaks)", memLeaks);
-    }
-    psMemCheckCorruption(1);
-
-    return(!testStatus);
-}
Index: trunk/psLib/test/collections/tst_psHash05.c
===================================================================
--- trunk/psLib/test/collections/tst_psHash05.c	(revision 4493)
+++ 	(revision )
@@ -1,172 +1,0 @@
-/** @file  tst_psHash05.c
-*
-*  @brief Contains the tests for psHash.[ch]
-*
-*
-*  @author Robert DeSonia, MHPCC
-*
-*  @version $Revision: 1.3 $ $Name: not supported by cvs2svn $
-*  @date $Date: 2005-04-07 20:27:41 $
-*
-*  Copyright 2004-2005 Maui High Performance Computing Center, University of Hawaii
-*/
-
-#include "psTest.h"
-#include "pslib_strict.h"
-
-static psS32 hashToArray( void );
-
-testDescription tests[] = {
-                              {hashToArray, 789, "psHashToArray", 0, false},
-                              {NULL}
-                          };
-
-static void printIntArray(char* name, psArray* arr)
-{
-    if (arr == NULL) {
-        printf("%s = NULL\n",name);
-        return;
-    }
-
-    printf("%s = {",name);
-    for (int i = 0; i < arr->n; i++) {
-        if (arr->data[i] == NULL) {
-            printf("NULL");
-        } else {
-            printf("%d",*(int*)arr->data[i]);
-        }
-        if (i != arr->n-1) {
-            printf(",");
-        }
-    }
-    printf("}");
-}
-
-psS32 main( psS32 argc, char* argv[] )
-{
-    psLogSetLevel( PS_LOG_INFO );
-
-    return ( ! runTestSuite( stderr, "psHash", tests, argc, argv ) );
-}
-
-psS32 hashToArray( void )
-{
-    int testNum = 0;
-    psArray* array;
-    #define BUCKETS 10
-
-    psHash* hash = psHashAlloc(BUCKETS);
-    char key[2] = "A";
-    bool found[BUCKETS];
-
-    for (int i = 0; i < BUCKETS; i++) {
-
-        array = psHashToArray(hash);
-
-        // return non-null?
-        testNum++;
-        if (array == NULL) {
-            psError(PS_ERR_UNKNOWN, false,
-                    "Failed to create an array from a psHash of %d elements.",
-                    i);
-            return testNum;
-        }
-
-        // the size correct
-        testNum++;
-        if (array->n != i) {
-            printIntArray("array",array);
-            psError(PS_ERR_UNKNOWN, false,
-                    "psHashToArray created a psArray of %d elements from a psHash of %d elements.",
-                    array->n, i);
-            return testNum;
-        }
-
-        // the values correct?
-
-        // zero out the found boolean vector
-        for (int j = 0; j < i; j++) {
-            found[j] = false;
-        }
-
-        // check if all the items in array are valid
-        for (int k = 0; k < array->n; k++) {
-            int* item = array->data[k];
-
-            testNum++;
-            if (item == NULL) {
-                printIntArray("array",array);
-                psError(PS_ERR_UNKNOWN, true,
-                        "The array position %d was NULL.",
-                        k);
-                return testNum;
-            }
-
-            testNum++;
-            if (*item < 0 || *item >= BUCKETS) {
-                printIntArray("array",array);
-                psError(PS_ERR_UNKNOWN, true,
-                        "The array position %d was invalid (%d).",
-                        k,*item);
-                return testNum;
-            }
-
-            testNum++;
-            if (found[*item]) {
-                printIntArray("array",array);
-                psError(PS_ERR_UNKNOWN, true,
-                        "The array position %d was a duplicate (%d).",
-                        k,*item);
-                return testNum;
-            }
-
-            testNum++;
-            if (psMemGetRefCounter(item) != 2) {
-                printIntArray("array",array);
-                psError(PS_ERR_UNKNOWN, true,
-                        "The array position %d was not properly reference counted (%d).",
-                        k,psMemGetRefCounter(item));
-                return testNum;
-            }
-
-            found[*item] = true;
-        }
-
-        // check that all the items in psHash was found
-        for (int j = 0; j < i; j++) {
-            testNum++;
-            if (! found[j]) {
-                printIntArray("array",array);
-                psError(PS_ERR_UNKNOWN, true,
-                        "Item %d not found in array.",
-                        j);
-                return testNum;
-            }
-        }
-
-        psFree(array);
-
-        // add one element
-        int* value = psAlloc(sizeof(int));
-        *value = i;
-        psHashAdd(hash, key, value);
-        *key += 1; // increment the key value
-
-        psFree(value);
-    }
-
-    psFree(hash);
-
-    psLogMsg(__func__,PS_LOG_INFO,"Following should be an error.");
-    array = psHashToArray(NULL);
-    testNum++;
-    if (array != NULL) {
-        printIntArray("array",array);
-        psError(PS_ERR_UNKNOWN, false,
-                "psHashToArray returned non-null psArray given a null psHash.");
-        return testNum;
-    }
-
-    return 0;
-}
-
Index: trunk/psLib/test/collections/tst_psList.c
===================================================================
--- trunk/psLib/test/collections/tst_psList.c	(revision 4493)
+++ 	(revision )
@@ -1,1272 +1,0 @@
-/** @file  tst_psList.c
- *
- *  @brief Contains the tests for psList.[ch]
- *
- *
- *  @author Robert DeSonia, MHPCC
- *
- *  @version $Revision: 1.31 $ $Name: not supported by cvs2svn $
- *  @date $Date: 2005-07-06 03:04:35 $
- *
- *  Copyright 2004-2005 Maui High Performance Computing Center, University of Hawaii
- */
-
-#include "psTest.h"
-#include "pslib_strict.h"
-
-void printListInt(psList* list);
-
-
-static psS32 testListAlloc(void);
-static psS32 testListAdd(void);
-static psS32 testListGet(void);
-static psS32 testListRemove(void);
-static psS32 testListConvert(void);
-static psS32 testListIterator(void);
-static psS32 testListFree(void);
-static psS32 testListSort(void);
-static psS32 testListAddAfter(void);
-static psS32 testListAddBefore(void);
-
-testDescription tests[] = {
-                              {testListAlloc,487,"psListAlloc",0,false},
-                              {testListAdd,488,"psListAdd",0,false},
-                              {testListGet,489,"psListGet",0,false},
-                              {testListRemove,490,"psListRemove",0,false},
-                              {testListConvert,491,"psListConvert",0,false},
-                              {testListIterator,494,"psListIterator",0,false},
-                              {testListFree,627,"psListFree",0,false},
-                              {testListSort,624,"psListSort",0,false},
-                              {testListAddAfter,811,"psListAddAfter",0,false},
-                              {testListAddBefore,811,"psListAddBefore",0,false},
-                              {NULL}
-                          };
-
-psS32 main(psS32 argc, char* argv[])
-{
-    psLogSetLevel(PS_LOG_INFO);
-
-    if (! runTestSuite(stderr,"psList",tests,argc,argv) ) {
-        psError(PS_ERR_UNKNOWN,true,"One or more tests failed");
-        return 1;
-    }
-    return 0;
-}
-
-psS32 testListAlloc(void)
-{
-    psList* list;
-    psS32 ref;
-    float* data;
-
-    psLogMsg(__func__,PS_LOG_INFO,"psListAlloc shall create a psList with either 0 or 1 element.");
-
-    data = psAlloc(sizeof(float));
-
-    // if psListAlloc is invoked with a NULL parameter, it shall return an
-    // empty psList struct with head=tail=NULL and n=0. Otherwise, it shall
-    // return a psList of one element (head=tail=data, n=1).
-    // Test requirement SDR-167
-    list = psListAlloc(NULL);
-    if (list == NULL) {
-        psError(PS_ERR_UNKNOWN, true,"psListAlloc failed to return a list.");
-        return 1;
-    }
-    if (list->head != NULL || list->tail != NULL) {
-        psError(PS_ERR_UNKNOWN, true,"head and/or tail was not NULL for empty list.");
-        return 2;
-    }
-    if (list->n != 0) {
-        psError(PS_ERR_UNKNOWN, true,"size of list wasn't zero for empty list.");
-        return 3;
-    }
-
-    psFree(list);
-
-    // Test requirement SDR-165
-    list = psListAlloc(data);
-    if (list == NULL) {
-        psError(PS_ERR_UNKNOWN, true,"psListAlloc failed to return a list.");
-        return 4;
-    }
-
-    if (list->head == NULL || list->tail == NULL) {
-        psError(PS_ERR_UNKNOWN, true,"head and/or tail was NULL for one-element new list.");
-        return 5;
-    }
-
-    if (list->head->data != data || list->tail->data != data) {
-        psError(PS_ERR_UNKNOWN, true,"head and/or tail didn't point to data's node for one-element new list.");
-        return 6;
-    }
-
-    if (list->n != 1) {
-        psError(PS_ERR_UNKNOWN, true,"size of list wasn't correctly set for new, one-element list.");
-        return 7;
-    }
-
-    ref = psMemGetRefCounter(data);
-    if (ref != 2) {
-        psError(PS_ERR_UNKNOWN, true,"psList didn't increment reference count of data (%d.",ref);
-        return 8;
-    }
-
-    psFree(list);
-
-    psFree(data);
-
-    return 0;
-}
-
-psS32 testListAddAfter(void)
-{
-    psList* list = NULL;
-    psS32*  data = NULL;
-    psS32*  data1 = NULL;
-    psS32*  data2 = NULL;
-    psListIterator *currentIterator = NULL;
-
-    data = psAlloc(sizeof(psS32));
-    *data = 1;
-    data1 = psAlloc(sizeof(psS32));
-    *data1 = 2;
-    data2 = psAlloc(sizeof(psS32));
-    *data2 = 3;
-
-    list = psListAlloc(data);
-    currentIterator = psListIteratorAlloc(list,PS_LIST_HEAD,true);
-
-    // Add data after HEAD and verify data
-    // Test requirement SDR-755
-    if(!psListAddAfter(currentIterator,data1)) {
-        psError(PS_ERR_UNKNOWN,true,"psListAddAfter failed to add item");
-        return 1;
-    }
-    if(*(psS32*)list->head->next->data != 2) {
-        psError(PS_ERR_UNKNOWN,true,"psListAddAfter did not add the item properly");
-        return 2;
-    }
-    // Test requirement SDR-175
-    if (psMemGetRefCounter(data1) != 2) {
-        psError(PS_ERR_UNKNOWN, true,"psListAddAfter didn't increment the data reference count.");
-        return 20;
-    }
-    psFree(currentIterator);
-
-    currentIterator = psListIteratorAlloc(list,PS_LIST_TAIL,true);
-
-    // Add data after TAIL and verify data
-    if(!psListAddAfter(currentIterator,data2)) {
-        psError(PS_ERR_UNKNOWN,true,"psListAddAfter failed to add item");
-        return 3;
-    }
-    if(*(psS32*)list->tail->data != 3) {
-        psError(PS_ERR_UNKNOWN,true,"psListAddAfter did not add the item properly");
-        return 4;
-    }
-    // Test requirement SDR-175
-    if (psMemGetRefCounter(data2) != 2) {
-        psError(PS_ERR_UNKNOWN, true,"psListAddAfter didn't increment the data reference count.");
-        return 40;
-    }
-
-    // Verify error message generated with data pointer is NULL
-    psLogMsg(__func__,PS_LOG_INFO,"NULL data pointer should generate error message");
-    if(psListAddAfter(currentIterator,NULL)) {
-        psError(PS_ERR_UNKNOWN,true,"psListAddAfter should have generated error.");
-        return 5;
-    }
-
-    // Verify error message generated with iterator NULL
-    psLogMsg(__func__,PS_LOG_INFO,"NULL iterator should generate error message");
-    if(psListAddAfter(NULL,data2)) {
-        psError(PS_ERR_UNKNOWN,true,"psListAddAfter should have generated error.");
-        return 6;
-    }
-
-    // Verify error message is generate with non-mutable iterator
-    psLogMsg(__func__,PS_LOG_INFO,"Non-mutable list should generate error message");
-    currentIterator->mutable = false;
-    if(psListAddAfter(currentIterator,data2)) {
-        psError(PS_ERR_UNKNOWN,true,"psListAddAfter should have generated error for non-mutable list add");
-        return 7;
-    }
-    currentIterator->mutable = true;
-
-    psFree(data);
-    psFree(data1);
-    psFree(data2);
-    psFree(list);
-
-    return 0;
-}
-
-psS32 testListAddBefore(void)
-{
-    psList* list = NULL;
-    psS32*  data1 = NULL;
-    psS32*  data2 = NULL;
-    psListIterator *currentIterator = NULL;
-
-    data1 = psAlloc(sizeof(psS32));
-    *data1 = 2;
-    data2 = psAlloc(sizeof(psS32));
-    *data2 = 3;
-
-    list = psListAlloc(NULL);
-    currentIterator = psListIteratorAlloc(list,PS_LIST_HEAD,true);
-
-    // Add data before HEAD and verify data
-    // Test requirement SDR-756
-    if(!psListAddBefore(currentIterator,data1)) {
-        psError(PS_ERR_UNKNOWN,true,"psListAddBefore failed to add item");
-        return 1;
-    }
-    if(*(psS32*)list->head->data != 2) {
-        psError(PS_ERR_UNKNOWN,true,"psListAddBefore did not add the item properly");
-        return 2;
-    }
-    // Test requirement SDR-175
-    if (psMemGetRefCounter(data1) != 2) {
-        psError(PS_ERR_UNKNOWN, true,"psListAddBefore didn't increment the data reference count.");
-        return 20;
-    }
-    psFree(currentIterator);
-
-    currentIterator = psListIteratorAlloc(list,PS_LIST_TAIL,true);
-
-    // Add data after TAIL and verify data
-    if(!psListAddBefore(currentIterator,data2)) {
-        psError(PS_ERR_UNKNOWN,true,"psListAddBefore failed to add item");
-        return 3;
-    }
-    if(*(psS32*)list->tail->prev->data != 3) {
-        psError(PS_ERR_UNKNOWN,true,"psListAddBefore did not add the item properly");
-        return 4;
-    }
-    // Test requirement SDR-175
-    if (psMemGetRefCounter(data2) != 2) {
-        psError(PS_ERR_UNKNOWN, true,"psListAddBefore didn't increment the data reference count.");
-        return 40;
-    }
-
-    // Verify error message generated with data pointer is NULL
-    psLogMsg(__func__,PS_LOG_INFO,"NULL data pointer should generate error message");
-    if(psListAddBefore(currentIterator,NULL)) {
-        psError(PS_ERR_UNKNOWN,true,"psListAddBefore should have generated error.");
-        return 5;
-    }
-
-    // Verify error message generated with iterator NULL
-    psLogMsg(__func__,PS_LOG_INFO,"NULL iterator should generate error message");
-    if(psListAddBefore(NULL,data2)) {
-        psError(PS_ERR_UNKNOWN,true,"psListAddBefore should have generated error.");
-        return 6;
-    }
-
-    // Verify error message is generate with non-mutable iterator
-    psLogMsg(__func__,PS_LOG_INFO,"Non-mutable list should generate error message");
-    currentIterator->mutable = false;
-    if(psListAddBefore(currentIterator,data2)) {
-        psError(PS_ERR_UNKNOWN,true,"psListAddBefore should have generated error for non-mutable list add");
-        return 7;
-    }
-    currentIterator->mutable = true;
-
-    psFree(data1);
-    psFree(data2);
-    psFree(list);
-
-    return 0;
-}
-
-psS32 testListAdd(void)
-{
-    psList* list = NULL;
-    psS32* data = NULL;
-
-    psLogMsg(__func__,PS_LOG_INFO,"psListAdd shall add an element to list");
-
-    /*
-        psListAdd(list,data,where) should be tested in the instance where:
-
-        1. list is NULL (error)
-        2. data is NULL (error, list should not grow)
-        3. where is PS_LIST_HEAD or PS_LIST_TAIL
-        4. where is not PS_LIST_* but <0
-        5. where is >0
-    */
-
-    data = psAlloc(sizeof(psS32));
-    *data = 1;
-
-    //  1. list is NULL (error)
-    psLogMsg(__func__,PS_LOG_INFO,"Following should generate an error for using NULL list.");
-    if (psListAdd(NULL,PS_LIST_HEAD,data)) {
-        psError(PS_ERR_UNKNOWN, true,"psListAdd was given a NULL list, but returned a true/success.");
-        return 1;
-    }
-
-    list = psListAlloc(data);
-    psFree(data);
-    if (list->n != 1) {
-        psError(PS_ERR_UNKNOWN, true,"psListAlloc didn't create a list properly.");
-        return 2;
-    }
-
-    //  2. data is NULL (error, list should not grow)
-    psLogMsg(__func__,PS_LOG_INFO,"Following should generate an error msg to add NULL data");
-    if (psListAdd(list, PS_LIST_HEAD,NULL)) {
-        psError(PS_ERR_UNKNOWN, true,"psListAdd successfully added a NULL data item?");
-        return 40;
-    }
-    if ( list->n != 1) {
-        psError(PS_ERR_UNKNOWN, true,"psListAdd with a NULL data element changed the list size or returned success.");
-        return 3;
-    }
-
-    //  3. where is PS_LIST_HEAD or PS_LIST_TAIL
-    data = psAlloc(sizeof(psS32));
-    *data = 2;
-    if ( ! psListAdd(list,PS_LIST_HEAD,data) ) {
-        psError(PS_ERR_UNKNOWN, true,"psListAdd failed to add a data item to head.");
-        return 21;
-    }
-    // Test requirement SDR-175
-    if (psMemGetRefCounter(data) != 2) {
-        psError(PS_ERR_UNKNOWN, true,"psListAdd didn't increment the data reference count.");
-        return 20;
-    }
-    psFree(data);
-
-    // verify that the size incremented
-    if (list->n != 2) {
-        psError(PS_ERR_UNKNOWN, true,"psListAdd didn't increment the size by one");
-        return 4;
-    }
-
-    // verify that the head is the inserted data item
-    if (*(psS32*)list->head->data != 2) {
-        psError(PS_ERR_UNKNOWN, true,"psListAdd with PS_LIST_HEAD didn't insert at the head.");
-        return 5;
-    }
-
-    data = psAlloc(sizeof(psS32));
-    *data = 3;
-    if ( ! psListAdd(list,PS_LIST_TAIL,data) ) {
-        psError(PS_ERR_UNKNOWN, true,"psListAdd failed to add a data item to tail.");
-        return 21;
-    }
-    // Test requirement SDR-175
-    if (psMemGetRefCounter(data) != 2) {
-        psError(PS_ERR_UNKNOWN, true,"psListAdd didn't increment the data reference count.");
-        return 22;
-    }
-    psFree(data);
-    // verify that the size incremented
-    if (list->n != 3) {
-        psError(PS_ERR_UNKNOWN, true,"psListAdd didn't increment the size by 1");
-        return 6;
-    }
-
-    // verify that the head is still the same
-    if (*(psS32*)list->head->data != 2) {
-        psError(PS_ERR_UNKNOWN, true,"psListAdd with PS_LIST_TAIL modified the head.");
-        return 7;
-    }
-
-    // verify that the tail is the data item inserted
-    if (*(psS32*)list->tail->data != 3) {
-        psError(PS_ERR_UNKNOWN, true,"psListAdd with PS_LIST_TAIL didn't insert at the tail.");
-        return 8;
-    }
-
-    // 4. where is not PS_LIST_* but <0
-
-    data = psAlloc(sizeof(psS32));
-    *data = 4;
-    psLogMsg(__func__,PS_LOG_INFO,"Following should error with invalid insert location");
-
-    if ( psListAdd(list,-10,data) ) {
-        psError(PS_ERR_UNKNOWN, true,"psListAdd successfully added data to a -10 position?");
-        return 30;
-    }
-    // Test requirement SDR-175
-    if (psMemGetRefCounter(data) != 1) {
-        psError(PS_ERR_UNKNOWN, true,"psListAdd incremented the data reference count.");
-        return 24;
-    }
-    psFree(data);
-    // verify that the size wasn't incremented
-    if (list->n != 3) {
-        printListInt(list);
-        psError(PS_ERR_UNKNOWN, true,"psListAdd didn't insert to head when where was invalid.");
-        return 9;
-    }
-
-    // 5. where is >0
-    data = psAlloc(sizeof(psS32));
-    *data = 5;
-
-    if ( ! psListAdd(list,1,data) ) {
-        psError(PS_ERR_UNKNOWN, true,"psListAdd failed to add data to 1 position.");
-        return 30;
-    }
-    // Test requirement SDR-175
-    if (psMemGetRefCounter(data) != 2) {
-        psError(PS_ERR_UNKNOWN, true,"psListAdd didn't increment the data reference count.");
-        return 25;
-    }
-    psFree(data);
-    // verify that the size incremented
-    if (list->n != 4 || *(psS32*)list->head->next->data != 5) {
-        printListInt(list);
-        psError(PS_ERR_UNKNOWN, true,"psListAdd didn't insert to position #1.");
-        return 10;
-    }
-
-    data = psAlloc(sizeof(psS32));
-    *data = 6;
-    if ( ! psListAdd(list,3,data) ) {
-        psError(PS_ERR_UNKNOWN, true,"psListAdd failed to add data to 4 position.");
-        return 31;
-    }
-    // Test requirment SDR-175
-    if (psMemGetRefCounter(data) != 2) {
-        psError(PS_ERR_UNKNOWN, true,"psListAdd didn't increment the data reference count.");
-        return 26;
-    }
-    psFree(data);
-    // verify that the size incremented
-    if (list->n != 5  || *(psS32 *)list->head->next->next->next->data != 6) {
-        printListInt(list);
-        psError(PS_ERR_UNKNOWN, true,"psListAdd didn't insert to position #4.");
-        return 50;
-    }
-
-    data = psAlloc(sizeof(psS32));
-    *data = 7;
-    // Test requirment SDR-169
-    if ( ! psListAdd(list,-2,data) ) {
-        psError(PS_ERR_UNKNOWN, true,"psListAdd failed to add data to 2 position.");
-        return 32;
-    }
-
-    // Test requirment SDR-175
-    if (psMemGetRefCounter(data) != 2) {
-        psError(PS_ERR_UNKNOWN, true,"psListAdd didn't increment the data reference count.");
-        return 28;
-    }
-    psFree(data);
-    // verify that the size incremented
-    if (list->n != 6  || *(psS32 *)list->tail->prev->prev->data != 7) {
-        printListInt(list);
-        psError(PS_ERR_UNKNOWN, true,"psListAdd didn't insert to position #2.");
-        return 11;
-    }
-
-    // Test requirement SDR-757
-    data = psAlloc(sizeof(psS32));
-    *data = 8;
-    psLogMsg(__func__,PS_LOG_INFO,"Following should be a warning.");
-
-    if ( ! psListAdd(list,9,data) ) {
-        psError(PS_ERR_UNKNOWN, true,"psListAdd failed to add data to a 9 position?");
-        return 30;
-    }
-    // Test requirment SDR-175
-    if (psMemGetRefCounter(data) != 2) {
-        psError(PS_ERR_UNKNOWN, true,"psListAdd didn't increment the data reference count.");
-        return 29;
-    }
-    if(list->n != 7 || *(psS32 *)list->tail->data != 8) {
-        printListInt(list);
-        psError(PS_ERR_UNKNOWN,true,"psListAdd didn't place added item at tail.");
-        return 12;
-    }
-
-    psFree(data);
-
-    psFree(list);
-
-    return 0;
-}
-
-void printListInt(psList* list)
-{
-    psS32* data = NULL;
-    psBool first = true;
-
-    psListIterator* iter = psListIteratorAlloc(list,PS_LIST_HEAD,true);
-
-    while ( (data=(psS32*)psListGetAndIncrement(iter)) != NULL ) {
-        if (!first) {
-            printf(", %d",*(psS32*)data);
-        } else {
-            printf("%d",*(psS32*)data);
-            first = false;
-        }
-    }
-
-    printf(".\n");
-}
-
-
-psS32 testListGet(void)
-{
-    psList* list = NULL;
-    psS32* data;
-
-    /*
-     psListGet(list,which) shall be tested with the following instances
-
-        1. list is NULL.
-        2. which>0 and which<list.n.
-        3. which>list.n.
-        4. which=PS_LIST_HEAD
-        5. which=PS_LIST_NEXT
-        6. which=PS_LIST_TAIL
-        7. which=PS_LIST_PREV
-        8. which<0 and not any PS_LIST_* values
-    */
-
-    //  1. list is NULL.
-    psLogMsg(__func__,PS_LOG_INFO,"Following should be an error");
-    if (psListGet(list,PS_LIST_HEAD) != NULL) {
-        psError(PS_ERR_UNKNOWN, true,"psListGet didn't return NULL given a NULL list.");
-        return 1;
-    };
-
-    // create a list
-    data = psAlloc(sizeof(psS32));
-    *data = 0;
-    list = psListAlloc(data);
-    psFree(data);
-
-    data = psAlloc(sizeof(psS32));
-    *data = 1;
-    psListAdd(list,PS_LIST_TAIL,data);
-    psFree(data);
-
-    data = psAlloc(sizeof(psS32));
-    *data = 2;
-    psListAdd(list,PS_LIST_TAIL,data);
-    psFree(data);
-
-    data = psAlloc(sizeof(psS32));
-    *data = 3;
-    psListAdd(list,PS_LIST_TAIL,data);
-    psFree(data);
-
-    //  2. which>0 and which<list.n.
-    data = (psS32*)psListGet(list,3);
-    if (data == NULL || *data != 3) {
-        psError(PS_ERR_UNKNOWN, true,"psListGet failed with which=3");
-        return 2;
-    }
-    data = (psS32*)psListGet(list,1);
-    if (data == NULL || *data != 1) {
-        psError(PS_ERR_UNKNOWN, true,"psListGet failed with which=1");
-        return 3;
-    }
-
-    //  3. which>=list.n.
-    data = (psS32*)psListGet(list,5);
-    if (data != NULL) {
-        psError(PS_ERR_UNKNOWN, true,"psListGet failed with which=5");
-        return 4;
-    }
-    data = (psS32*)psListGet(list,4);
-    if (data != NULL) {
-        psError(PS_ERR_UNKNOWN, true,"psListGet failed with which=4");
-        return 5;
-    }
-
-    //  4. which=PS_LIST_HEAD
-    data = (psS32*)psListGet(list,PS_LIST_HEAD);
-    if (data == NULL || *data != 0) {
-        psError(PS_ERR_UNKNOWN, true,"psListGet failed with which=PS_LIST_HEAD");
-        return 6;
-    }
-
-    //  6. which=PS_LIST_TAIL
-    data = (psS32*)psListGet(list,PS_LIST_TAIL);
-    if (data == NULL || *data != 3) {
-        psError(PS_ERR_UNKNOWN, true,"psListGet failed with which=PS_LIST_TAIL");
-        return 8;
-    }
-
-    data = (psS32*)psListGet(list,-2);
-    if (data == NULL || *data !=2) {
-        psError(PS_ERR_UNKNOWN,true,"psListGet failed with location=-2");
-        return 9;
-    }
-
-    psFree(list);
-
-    return 0;
-}
-
-psS32 testListRemove(void)
-{
-    psList* list = NULL;
-    psS32* data;
-    int items = 15;
-
-    /*
-        psListRemove(list,data,which) should be tested under the following conditions:
-
-        1. list is NULL
-        2. which is PS_LIST_HEAD (remove first element of list)
-        3. which is PS_LIST_TAIL (remove last element of list)
-        4. which is PS_LIST_NEXT (element right of cursor [which should be head,tail, and neither])
-        5. which is PS_LIST_PREV (element left of cursor [which should be head,tail, and neither])
-        6. which is PS_LIST_UNKNOWN and data=NULL (error)
-        7. which is PS_LIST_UNKNOWN and data=[head,tail,other list items]
-        8. which is PS_LIST_UNKNOWN and data!=NULL and data!=any element in list
-
-        In all conditions that are not an error, list.n shall be decremented and only the specified element
-        shall be removed. After each step, list.n should be checked to verify that it is the true
-        number of elements in list.
-    */
-
-    //  1. list is NULL.
-    psLogMsg(__func__,PS_LOG_INFO,"Following should be an error");
-    if (psListRemove(list,PS_LIST_HEAD)) {
-        psError(PS_ERR_UNKNOWN, true,"psListRemove didn't return false given a NULL list.");
-        return 1;
-    };
-
-    // create a list
-    list = psListAlloc(NULL);
-
-    for (psS32 lcv=0;lcv<items;lcv++) {
-        data = psAlloc(sizeof(psS32));
-        *data = lcv;
-        psListAdd(list,PS_LIST_TAIL,data);
-        psMemDecrRefCounter(data);
-    }
-
-
-    // 2. which is PS_LIST_HEAD (remove first element of list)
-    psS32* data1 = (psS32 *)psListGet(list,PS_LIST_HEAD);
-    psMemIncrRefCounter(data1);
-    // Test requirement SDR-172, SDR-173
-    if ( (! psListRemove(list,PS_LIST_HEAD)) ||
-            (psListGet(list,PS_LIST_HEAD) == data) ) {
-        printListInt(list);
-        psError(PS_ERR_UNKNOWN, true,"Failed to remove PS_LIST_HEAD");
-        return 1;
-    }
-
-    if (list->n != --items) {
-        printListInt(list);
-        psError(PS_ERR_UNKNOWN, true,"Didn't decrement size properly to %d.",items);
-        return 1;
-    }
-    // Test requirement SDR-176
-    if (psMemGetRefCounter(data1) != 1) {
-        psError(PS_ERR_UNKNOWN, true,"psListRemove didn't decrement the data reference count.");
-        return 20;
-    }
-    psMemDecrRefCounter(data1);
-
-    // 3. which is PS_LIST_TAIL (remove last element of list)
-    data = psListGet(list,PS_LIST_TAIL);
-    // Test requirement SDR-173
-    if ( (! psListRemove(list,PS_LIST_TAIL)) ||
-            (psListGet(list,PS_LIST_TAIL) == data) ) {
-        printListInt(list);
-        psError(PS_ERR_UNKNOWN, true,"Failed to remove PS_LIST_TAIL");
-        return 1;
-    }
-
-    if (list->n != --items) {
-        printListInt(list);
-        psError(PS_ERR_UNKNOWN, true,"Didn't decrement size properly to %d.",items);
-        return 1;
-    }
-
-    data = psListGet(list,-2);
-    // Test requirement SDR-173
-    if ( (! psListRemove(list,-2)) ||
-            (psListGet(list,-2) == data) ) {
-        printListInt(list);
-        psError(PS_ERR_UNKNOWN, true,"Failed to remove from location -2");
-        return 11;
-    }
-
-    if (list->n != --items) {
-        printListInt(list);
-        psError(PS_ERR_UNKNOWN, true,"Didn't decrement size properly to %d.",items);
-        return 1;
-    }
-
-    // 6. psListRemoveData where data=NULL (error)
-    psLogMsg(__func__,PS_LOG_INFO,"Next message should be an error");
-    if (psListRemoveData(list,NULL)) {
-        printListInt(list);
-        psError(PS_ERR_UNKNOWN, true,"removed something for PS_LIST_UNKNOWN with data=NULL");
-        return 1;
-    }
-
-    // 7. which is PS_LIST_UNKNOWN and data=[head,tail,other list items]
-    data = psListGet(list,PS_LIST_HEAD);
-    // Test requirement SDR-762
-    if ( (! psListRemoveData(list,data)) ||
-            (psListGet(list,PS_LIST_HEAD) == data) ) {
-        printListInt(list);
-        psError(PS_ERR_UNKNOWN, true,"Failed to remove PS_LIST_UNKNOWN @ PS_LIST_HEAD");
-        return 1;
-    }
-
-    if (list->n != --items) {
-        printListInt(list);
-        psError(PS_ERR_UNKNOWN, true,"Didn't decrement size properly to %d.",items);
-        return 1;
-    }
-
-    psS32* data2 = psListGet(list,PS_LIST_TAIL);
-    psMemIncrRefCounter(data2);
-    if ( (!psListRemoveData(list,data2)) ||
-            (psListGet(list,PS_LIST_TAIL) == data2) ) {
-        printListInt(list);
-        psError(PS_ERR_UNKNOWN, true,"Failed to remove PS_LIST_UNKNOWN @ PS_LIST_TAIL");
-        return 1;
-    }
-
-    if (list->n != --items) {
-        printListInt(list);
-        psError(PS_ERR_UNKNOWN, true,"Didn't decrement size properly to %d.",items);
-        return 1;
-    }
-    // Test requirement SDR-176
-    if (psMemGetRefCounter(data2) != 1) {
-        psError(PS_ERR_UNKNOWN, true,"psListRemoveData didn't decrement the data reference count.");
-        return 20;
-    }
-    psMemDecrRefCounter(data2);
-
-    data = psListGet(list,1);
-    if ( (! psListRemoveData(list,data))||
-            (psListGet(list,1) == data) ) {
-        printListInt(list);
-        psError(PS_ERR_UNKNOWN, true,"Failed to remove data @ which=1");
-        return 1;
-    }
-
-    if (list->n != --items) {
-        printListInt(list);
-        psError(PS_ERR_UNKNOWN, true,"Didn't decrement size properly to %d.",items);
-        return 1;
-    }
-
-    // 8. data!=NULL and data!=any element in list
-    psLogMsg(__func__,PS_LOG_INFO,"Next message should be an error");
-    // Test requirement SDR-764
-    if ( psListRemoveData(list,data) ) {
-        printListInt(list);
-        psError(PS_ERR_UNKNOWN, true,"removed something for PS_LIST_UNKNOWN with previously removed item");
-        return 1;
-    }
-
-    if (list->n != items) {
-        printListInt(list);
-        psError(PS_ERR_UNKNOWN, true,"size not %d, as expected.",items);
-        return 1;
-    }
-
-    // clear out the list
-    while (items > 1) {
-        psListRemove(list,PS_LIST_HEAD);
-        items--;
-    }
-
-    data = psListGet(list,PS_LIST_HEAD);
-    if ( (! psListRemove(list,PS_LIST_HEAD)) ||
-            (psListGet(list,PS_LIST_HEAD) == data) ) {
-        printListInt(list);
-        psError(PS_ERR_UNKNOWN, true,"Failed to remove last element");
-        return 1;
-    }
-
-    if (list->n != 0) {
-        printListInt(list);
-        psError(PS_ERR_UNKNOWN, true,"Didn't remove all the elements.");
-        return 1;
-    }
-
-    psLogMsg(__func__,PS_LOG_INFO,"NULL list in psListRemoveData should generate error message.");
-    if(psListRemoveData(NULL,data)) {
-        psError(PS_ERR_UNKNOWN,true,"psListRemoveData should have generated an error with NULL list");
-        return 2;
-    }
-
-    psFree(list);
-
-    return 0;
-
-}
-
-psS32 testListConvert(void)
-{
-
-    psList* list = NULL;
-    psArray* arr = NULL;
-    psS32* data;
-
-    /*
-        array=psListToArray(list) shall take each element of the list, increment
-        their reference, and insert them into the returned fresh psPtr array.
-        The list shall not be changed, except for the element reference increment.
-    */
-
-    // test dlist -> array
-
-    // create a list
-    list = psListAlloc(NULL);
-    for (psS32 lcv=0;lcv<15;lcv++) {
-        data = psAlloc(sizeof(psS32));
-        *data = lcv;
-        psListAdd(list,PS_LIST_TAIL,data);
-        psMemDecrRefCounter(data);
-    }
-
-    arr = psListToArray(list);
-
-    if (arr->n != 15 || list->n != 15) {
-        psError(PS_ERR_UNKNOWN, true,"The created array didn't have the proper size");
-        return 1;
-    }
-    for (psS32 i=0;i<arr->n;i++) {
-        if (i != *(psS32*)arr->data[i]) {
-            psError(PS_ERR_UNKNOWN, true,"Element %d of array is incorrect (%d).",
-                    i,*(psS32*)arr->data[i]);
-            return 1;
-        }
-        if (i != *(psS32*)psListGet(list,i)) {
-            psError(PS_ERR_UNKNOWN, true,"Element %d of list is incorrect (%d).",
-                    i,*(psS32*)arr->data[i]);
-            return 1;
-        }
-        if (psMemGetRefCounter(arr->data[i]) != 2) {
-            psError(PS_ERR_UNKNOWN, true,"Element %d had wrong reference count (%d).",
-                    i,psMemGetRefCounter(arr->data[i]));
-            return 1;
-        }
-    }
-
-    psFree(arr);
-    psFree(list);
-
-    // test array -> dlist
-
-    // create an array
-    arr = psArrayAlloc(15);
-    arr->n = arr->nalloc;
-    for (psS32 lcv=0;lcv<15;lcv++) {
-        data = psAlloc(sizeof(psS32));
-        *data = lcv;
-        arr->data[lcv] = data;
-    }
-
-    list = psArrayToList(arr);
-
-    if (arr->n != 15 || list->n != 15) {
-        psError(PS_ERR_UNKNOWN, true,"The created array didn't have the proper size");
-        return 1;
-    }
-    for (psS32 i=0;i<arr->n;i++) {
-        if (i != *(psS32*)arr->data[i]) {
-            psError(PS_ERR_UNKNOWN, true,"Element %d of array is incorrect (%d).",
-                    i,*(psS32*)arr->data[i]);
-            return 1;
-        }
-        if (i != *(psS32*)psListGet(list,i)) {
-            psError(PS_ERR_UNKNOWN, true,"Element %d of list is incorrect (%d).",
-                    i,*(psS32*)arr->data[i]);
-            return 1;
-        }
-        if (psMemGetRefCounter(arr->data[i]) != 2) {
-            psError(PS_ERR_UNKNOWN, true,"Element %d had wrong reference count (%d).",
-                    i,psMemGetRefCounter(arr->data[i]));
-            return 1;
-        }
-    }
-
-    psFree(arr);
-    psFree(list);
-
-    // now, make sure if input array/list is NULL, output is NULL
-
-    arr = psListToArray(NULL);
-    if (arr != NULL) {
-        psError(PS_ERR_UNKNOWN, true,"psListToArray didn't return NULL when given NULL");
-        return 1;
-    }
-
-    list = psArrayToList(NULL);
-    if (list != NULL) {
-        psError(PS_ERR_UNKNOWN, true,"psArrayToList didn't return NULL when given NULL");
-        return 1;
-    }
-
-    // now, see what happens with a zero-size array/list
-    arr = psArrayAlloc(1);
-    arr->n = 0;
-    list = psArrayToList(arr);
-    if (list == NULL) {
-        psError(PS_ERR_UNKNOWN, true,"psArrayToList didn't create an empty list from an "
-                "empty array.");
-        return 1;
-    }
-    psFree(arr);
-    psFree(list);
-
-    list = psListAlloc(NULL);
-    arr = psListToArray(list);
-    if (arr == NULL) {
-        psError(PS_ERR_UNKNOWN, true,"psArrayToList didn't create an empty array from an "
-                "empty list.");
-        return 1;
-    }
-    psFree(arr);
-    psFree(list);
-
-    return 0;
-}
-
-psS32 testListIterator(void)
-{
-    psList* list = NULL;
-    psS32* data;
-
-    psLogMsg(__func__,PS_LOG_INFO," psListSetIterator/psListGetNext/psListGetPrev"
-             " shall move the list cursor to the specified location");
-
-    /*
-            psDlistSetIterator(list,where) shall:
-
-            1. output error message and do nothing if list=NULL
-            2. set list.cursor to list.head if where=PS_LIST_HEAD
-            3. set list.cursor to list.tail if where=PS_LIST_TAIL
-            4. set list.cursor to list.cursor->next if where=PS_LIST_NEXT
-            5. set list.cursor to list.cursor->prev if where=PS_LIST_PREV
-            6. leave list.cursor untouched if where=PS_LIST_UNKNOWN or PS_LIST_CURRENT
-
-            psDlistGetNext(list) shall be functionally equivalent to
-            psDlistSetIterator(list,PS_LIST_NEXT) but returns list.cursor.
-
-            psDlistGetPrev(list) shall be functionally equivalent to
-            psDlistSetIterator(list,PS_LIST_PREV) but returns list.cursor.
-    */
-
-    // create a list
-    list = psListAlloc(NULL);
-    for (psS32 lcv=0;lcv<15;lcv++) {
-        data = psAlloc(sizeof(psS32));
-        *data = lcv;
-        psListAdd(list,PS_LIST_TAIL,data);
-        psFree(data);
-    }
-
-    psListIterator* iter = psListIteratorAlloc(list,PS_LIST_HEAD,true);
-    if (iter == NULL) {
-        psError(PS_ERR_UNKNOWN, true,"Failed to make an iterator.");
-        return 22;
-    }
-
-    // 1. output error message and do nothing if iterator=NULL
-    psListIteratorSet(NULL,PS_LIST_HEAD);
-    if (psListIteratorSet(NULL,PS_LIST_HEAD)) {
-        psError(PS_ERR_UNKNOWN, true,"Success while setting position of a NULL iterator?");
-        return 23;
-    }
-
-    // Attempt to get next with NULL iterator
-    if ( psListGetAndIncrement(NULL) != NULL ) {
-        psError(PS_ERR_UNKNOWN,true,"Did not return NULL when NULL iterator specified");
-        return 24;
-    }
-
-    // Attempt to get previous with NULL iterator
-    if( psListGetAndDecrement(NULL) != NULL) {
-        psError(PS_ERR_UNKNOWN,true,"Did not return NULL when NULL iterator specified");
-        return 25;
-    }
-
-    // 3. set list.cursor to list.tail if where=PS_LIST_TAIL
-
-    if (!psListIteratorSet(iter,PS_LIST_TAIL) ||
-            *(psS32*)iter->cursor->data != 14 ||
-            iter->index != 14) {
-        psError(PS_ERR_UNKNOWN, true,"Didn't successfully move cursor to tail.");
-        return 1;
-    }
-
-    // 2. set list.cursor to list.head if where=PS_LIST_HEAD
-    if (!psListIteratorSet(iter,PS_LIST_HEAD) ||
-            *(psS32*)iter->cursor->data != 0 ||
-            iter->index != 0) {
-        psError(PS_ERR_UNKNOWN, true,"Didn't successfully move cursor to head.");
-        return 2;
-    }
-
-    // test psListGetPrevious/Next
-    if (*(psS32*)psListGetAndIncrement(iter) != 0) {
-        psError(PS_ERR_UNKNOWN, true,"psListGetNext didn't move cursor to next.");
-        return 8;
-    }
-    if (*(psS32*)psListGetAndIncrement(iter) != 1) {
-        psError(PS_ERR_UNKNOWN, true,"psListGetNext didn't move cursor to next.");
-        return 9;
-    }
-    if (*(psS32*)psListGetAndIncrement(iter) != 2) {
-        psError(PS_ERR_UNKNOWN, true,"psListGetNext didn't move cursor to next.");
-        return 10;
-    }
-
-    if (*(psS32*)psListGetAndDecrement(iter) != 3) {
-        psError(PS_ERR_UNKNOWN, true,"psListGetPrevious didn't move cursor to previous.");
-        return 11;
-    }
-    if (*(psS32*)psListGetAndDecrement(iter) != 2) {
-        psError(PS_ERR_UNKNOWN, true,"psListGetPrevious didn't move cursor to previous.");
-        return 12;
-    }
-    if (*(psS32*)psListGetAndDecrement(iter) != 1) {
-        psError(PS_ERR_UNKNOWN, true,"psListGetPrevious didn't move cursor to previous..");
-        return 13;
-    }
-    if (*(psS32*)psListGetAndDecrement(iter) != 0) {
-        psError(PS_ERR_UNKNOWN, true,"psListGetPrevious didn't move cursor to previous..");
-        return 14;
-    }
-    if (psListGetAndDecrement(iter) != NULL) {
-        psError(PS_ERR_UNKNOWN, true,"psListGetPrevious moved cursor beyond head.");
-        return 15;
-    }
-    if (psListGetAndIncrement(iter) != NULL) {
-        psError(PS_ERR_UNKNOWN,true,"psListGetNext should return NULL when above head");
-        return 22;
-    }
-    if (*(psS32*)psListGetAndIncrement(iter) != 0 ) {
-        psError(PS_ERR_UNKNOWN,true,"psListGetNext didn't move cursor to next.");
-        return 23;
-    }
-
-    psListIteratorSet(iter,PS_LIST_TAIL); // works according to an above test
-    if (*(psS32*)psListGetAndIncrement(iter) != 14) {
-        psError(PS_ERR_UNKNOWN, true,"psListGetNext moved cursor beyond tail.");
-        return 16;
-    }
-    if ((psListGetAndIncrement(iter) != NULL) || (!iter->offEnd)) {
-        psError(PS_ERR_UNKNOWN, true,"psListGetNext moved cursor beyond tail.");
-        return 17;
-    }
-    if(psListGetAndDecrement(iter) != NULL) {
-        psError(PS_ERR_UNKNOWN,true,"psListGetPrevious did not return NULL when offEnd is true");
-        return 18;
-    }
-    if(iter->offEnd) {
-        psError(PS_ERR_UNKNOWN,true,"psListGetPrevious did not move back onto the list.");
-        return 19;
-    }
-    if(*(psS32*)psListGetAndDecrement(iter) != 14) {
-        psError(PS_ERR_UNKNOWN,true,"psListGetPrevious did not return correct value of tail.");
-        return 20;
-    }
-
-    psFree(list);
-
-    return 0;
-}
-
-psS32 testListFree(void)
-{
-    float* data[15];
-    psList* list;
-
-    /*
-    Call psDlistAlloc to create a doubly linked list.
-
-    Create several data items and add them to the list.
-
-    Verify the data item's reference counter are incremented after adding to the list.
-    (not really needed, as psListAdd is tested elsewhere)
-    */
-
-    list = psListAlloc(NULL);
-    for (psS32 lcv=0;lcv<15;lcv++) {
-        data[lcv] = psAlloc(sizeof(psS32));
-        *data[lcv] = lcv;
-        psListAdd(list,PS_LIST_TAIL,data[lcv]);
-        if (psMemGetRefCounter(data[lcv]) != 2) {
-            psError(PS_ERR_UNKNOWN, true,"Reference counter for data was not incremented");
-            return 1;
-        }
-    }
-
-    /*
-    Verify items are within the list.
-    (not needed, as psListAdd is tested elsewhere, but check anyway.)
-    */
-    if (list->n != 15) {
-        psError(PS_ERR_UNKNOWN, true,"List wasn't populated as expected?");
-        return 2;
-    }
-
-    /*
-    Call psDlistFree with NULL specified as the elemFree function.
-    */
-
-    psFree(list);
-
-    /*
-    Verify the list is deallocated but not the data items.
-    (accomplished by checking for memory leaks)
-
-    Verify the data item's reference counters are decremented by one compared to when added to the list.
-    (technically, this could be accomplished by checking memory leaks too, but I checked anyway)
-    */
-
-    for (psS32 i=0;i<15;i++) {
-        if (psMemGetRefCounter(data[i]) != 1) {
-            psError(PS_ERR_UNKNOWN, true,"pslistFree didn't decrement the data item's reference counter");
-            return 3;
-        }
-        psFree(data[i]);
-    }
-
-    return 0;
-}
-
-psS32 testListSort(void)
-{
-    psList* list;
-    psListIterator* iter;
-    float* fValue;
-    psU32* uValue;
-
-    list = psListAlloc(NULL);
-
-    for (psS32 lcv=0;lcv<15;lcv++) {
-        float* data = psAlloc(sizeof(psS32));
-        if (lcv < 7) {
-            *data = 13-lcv*2;
-        } else {
-            *data = lcv*2-12;
-        }
-        psListAdd(list,PS_LIST_TAIL,data);
-        psFree(data);
-
-    }
-
-    printf("original list = [");
-    iter = psListIteratorAlloc(list,PS_LIST_HEAD,true);
-    while( (fValue=psListGetAndIncrement(iter)) != NULL ) {
-        printf(" %.1f",*fValue);
-    }
-    printf(" ]\n");
-
-    list = psListSort(list,psCompareF32Ptr);
-
-    printf("sorted list = [");
-    psListIteratorSet(iter,PS_LIST_HEAD);
-    while( (fValue=psListGetAndIncrement(iter)) != NULL ) {
-        printf(" %.1f",*fValue);
-    }
-    printf(" ]\n");
-
-    psListIteratorSet(iter,PS_LIST_HEAD);
-    float* prevFValue = psListGetAndIncrement(iter);
-    while( (fValue=psListGetAndIncrement(iter)) != NULL ) {
-        if (*prevFValue > *fValue) {
-            psError(PS_ERR_UNKNOWN, true,"Hey, the list wasn't sorted!?");
-            return 1;
-        }
-    }
-
-    list = psListSort(list,psCompareDescendingF32Ptr);
-
-    printf("descending sort list = [");
-    psListIteratorSet(iter,PS_LIST_HEAD);
-    while( (fValue=psListGetAndIncrement(iter)) != NULL ) {
-        printf(" %.1f",*fValue);
-    }
-    printf(" ]\n");
-
-    psListIteratorSet(iter,PS_LIST_HEAD);
-    prevFValue = psListGetAndIncrement(iter);
-    while( (fValue=psListGetAndIncrement(iter)) != NULL ) {
-        if (*prevFValue < *fValue) {
-            psError(PS_ERR_UNKNOWN, true,"Hey, the list wasn't sorted!?");
-            return 2;
-        }
-    }
-
-    psFree(list);
-
-    /********** OK, now do the same thing with ints. *************/
-
-    list = psListAlloc(NULL);
-
-    for (psS32 lcv=0;lcv<15;lcv++) {
-        psU32* data = psAlloc(sizeof(psS32));
-        if (lcv < 7) {
-            *data = 13-lcv*2;
-        } else {
-            *data = lcv*2-12;
-        }
-        psListAdd(list,PS_LIST_TAIL,data);
-        psFree(data);
-
-    }
-
-    printf("original list = [");
-    iter = psListIteratorAlloc(list,PS_LIST_HEAD,true);
-    while( (uValue=psListGetAndIncrement(iter)) != NULL ) {
-        printf(" %d",*uValue);
-    }
-    printf(" ]\n");
-
-    list = psListSort(list,psCompareU32Ptr);
-
-    printf("sorted list = [");
-    psListIteratorSet(iter,PS_LIST_HEAD);
-    while( (uValue=psListGetAndIncrement(iter)) != NULL ) {
-        printf(" %d",*uValue);
-    }
-    printf(" ]\n");
-
-    psListIteratorSet(iter,PS_LIST_HEAD);
-    psU32* prevUValue = psListGetAndIncrement(iter);
-    while( (uValue=psListGetAndIncrement(iter)) != NULL ) {
-        if (*prevUValue > *uValue) {
-            psError(PS_ERR_UNKNOWN, true,"Hey, the list wasn't sorted!?");
-            return 3;
-        }
-    }
-
-    list = psListSort(list,psCompareDescendingU32Ptr);
-
-    printf("descending sort list = [");
-    psListIteratorSet(iter,PS_LIST_HEAD);
-    while( (uValue=psListGetAndIncrement(iter)) != NULL ) {
-        printf(" %d",*uValue);
-    }
-    printf(" ]\n");
-
-    psListIteratorSet(iter,PS_LIST_HEAD);
-    prevUValue = psListGetAndIncrement(iter);
-    while( (uValue=psListGetAndIncrement(iter)) != NULL ) {
-        if (*prevUValue < *uValue) {
-            psError(PS_ERR_UNKNOWN, true,"Hey, the list wasn't sorted!?");
-            return 4;
-        }
-    }
-
-    psFree(list);
-
-    return 0;
-}
Index: trunk/psLib/test/collections/tst_psMetadataIO.c
===================================================================
--- trunk/psLib/test/collections/tst_psMetadataIO.c	(revision 4493)
+++ 	(revision )
@@ -1,1021 +1,0 @@
-/** @file  tst_psMetadataIO.c
- *
- *  @brief Test driver for psMetadataIO functions
- *
- *  This test driver contains the following tests for psMetadata:
- *    Read config file with overwrite set true
- *    Read config file with overwrite set false
- *    Attempt to use null fileName argument
- *    Attempt to open nonexistant file
- *
- *  @author  Ross Harman, MHPCC
- *  @author  Robert DeSonia, MHPCC
- *  @author  Eric Van Alst, MHPCC
- *
- *  @version $Revision: 1.20 $  $Name: not supported by cvs2svn $
- *  @date  $Date: 2005-07-06 03:04:35 $
- *
- *  Copyright 2004-2005 Maui High Performance Computing Center, University of Hawaii
- *
- */
-
-#include <string.h>
-#include "pslib_strict.h"
-#include "psTest.h"
-
-static psS32 testMetadataParseConfig(void);
-static psS32 testMetadataParseConfig1(void);
-static psS32 testMetadataParseConfig2(void);
-static psS32 testMetadataParseConfig3(void);
-static psS32 testMetadataParseConfig4(void);
-
-testDescription tests[] = {
-                              {testMetadataParseConfig,000,"psMetadataConfigParse",0,false},
-                              {testMetadataParseConfig1,000,"psMetadataConfigParse",0,false},
-                              {testMetadataParseConfig2,000,"psMetadataConfigParse",0,false},
-                              {testMetadataParseConfig3,000,"psMetadataConfigParse",0,false},
-                              {testMetadataParseConfig4,000,"psMetadataConfigParse",0,false},
-                              {NULL}
-                          };
-
-static void writeMetadataItem(psMetadataItem* metadataIem, char* indentStr);
-static void writeMetadata(psMetadata* metadata, char* indentStr);
-static void writeMetadataList(psList *metadataItemList, char* indentStr);
-
-static psBool checkFailedLines(psS32 failedLines, psS32 expectedFailedLines, char* configFile);
-static psBool checkNumberOfItems(psMetadata* md, psS32 expectedItems, char* configFile);
-static psBool checkItemName(psMetadataItem* mdItem, char* expectedName, char* configFile);
-static psBool checkItemType(psMetadataItem* mdItem, psS32 expectedType, char* configFile);
-static psBool checkItemComment(psMetadataItem* mdItem, char* expectedComment, char* configFile);
-
-#define ERROR_TOL  0.0001
-
-const char testConfig5[] = "test5.config";
-const psS32 testConfig5Fails = 7;
-
-const char testConfig4[] = "test4.config";
-const psS32 testConfig4Fails = 0;
-
-const char testConfig3[] = "test3.config";
-const psS32 testConfig3Fails = 1;
-
-const char testConfig2[] = "test2.config";
-const psS32 testConfig2Fails = 17;
-
-// SDR-14 test config file #1
-const char  testConfig1[] = "test1.config";
-const psS32 testConfig1FailsOverwrite = 0;
-const psS32 testConfig1Fails = 1;
-const psS32 testConfig1Items = 25;
-const char* testConfig1KeyOverwrite[] =
-    {
-        "Double","String","boolean","primes","comment",
-        "comment","comment","comment","comment","Float",
-        "boolean1","negprimes","vector1","vector2","vector3",
-        "vector4","vector5","vector6","vector7","vector8",
-        "CELL.00", "CELL.01","MYCELL","MYCELL","cell"
-    };
-const char* testConfig1CommentOverwrite[] =
-    {
-        "This is a comment","comment","The value of 'boolean' is 'true'","These are prime numbers",
-        "","","","","",
-        "This generates a warning, and, if 'overwrite' is 'false', is ignored","The value of 'boolean' is 'false'",
-        "","","","","",
-        "","","","",
-        "","","","A number",""
-    };
-const psMetadataType testConfig1TypeOverwrite[] =
-    {
-        PS_META_F64, PS_META_STR, PS_META_BOOL, PS_META_VEC, PS_META_STR,
-        PS_META_STR, PS_META_STR, PS_META_STR, PS_META_STR,  PS_META_F64,
-        PS_META_BOOL, PS_META_VEC, PS_META_VEC, PS_META_VEC, PS_META_VEC,
-        PS_META_VEC, PS_META_VEC, PS_META_VEC, PS_META_VEC, PS_META_VEC,
-        PS_META_META, PS_META_META, PS_META_META, PS_META_S32, PS_META_META
-    };
-const psS32 testConfig1ValueS32Overwrite[] =
-    {
-        0, 0, 0, 0, 0,
-        0, 0, 0, 0, 0,
-        0, 0, 0, 0, 0,
-        0, 0, 0, 0, 0,
-        0, 0, 0, 123, 0
-    };
-const psF32 testConfig1ValueF32Overwrite[] =
-    {
-        0.0, 0.0, 0.0, 0.0, 0.0,
-        0.0, 0.0, 0.0, 0.0, 0.0,
-        0.0, 0.0, 0.0, 0.0, 0.0,
-        0.0, 0.0, 0.0, 0.0, 0.0,
-        0.0, 0.0, 0.0, 0.0, 0.0
-    };
-const psF64 testConfig1ValueF64Overwrite[] =
-    {
-        1.23456789, 0.0, 0.0, 0.0, 0.0,
-        0.0, 0.0, 0.0, 0.0, 1.23456,
-        0.0, 0.0, 0.0, 0.0, 0.0,
-        0.0, 0.0, 0.0, 0.0, 0.0,
-        0.0, 0.0, 0.0, 0.0, 0.0
-    };
-const psBool testConfig1ValueBoolOverwrite[] =
-    {
-        false, false, true, false, false,
-        false, false, false, false, false,
-        false, false, false, false, false,
-        false, false, false, false, false,
-        false, false, false, false, false
-    };
-const char* testConfig1ValueStrOverwrite[] =
-    {
-        "", "This is the string that forms the value","","","This",
-        "is","a","non-unique","key","",
-        "","","","","",
-        "","","","","",
-        "","","","",""
-    };
-const psS32 testConfig1ValueVecItemsU8 = 7;
-const psElemType testConfig1ValueVecTypeU8 = PS_TYPE_U8;
-const psU8 testConfig1ValueVecValueU8[] =
-    {
-        2, 3, 5, 7, 11, 13, 17
-    };
-const psS32 testConfig1ValueVecItemsS8 = 8;
-const psElemType testConfig1ValueVecTypeS8 = PS_TYPE_S8;
-const psS8 testConfig1ValueVecValueS8[] =
-    {
-        -2, -3, -5, -7, -11, -13, -17, -19
-    };
-const psS32 testConfig1ValueVecItemsU16 = 5;
-const psElemType testConfig1ValueVecTypeU16 = PS_TYPE_U16;
-const psU16 testConfig1ValueVecValueU16[] =
-    {
-        0, 1, 2, 4, 8
-    };
-const psS32 testConfig1ValueVecItemsU32 = 6;
-const psElemType testConfig1ValueVecTypeU32 = PS_TYPE_U32;
-const psU32 testConfig1ValueVecValueU32[] =
-    {
-        0, 8, 16, 32, 64, 128
-    };
-const psS32 testConfig1ValueVecItemsU64 = 3;
-const psElemType testConfig1ValueVecTypeU64 = PS_TYPE_U64;
-const psU64 testConfig1ValueVecValueU64[] =
-    {
-        0, 64, 256
-    };
-const psS32 testConfig1ValueVecItemsS16 = 5;
-const psElemType testConfig1ValueVecTypeS16 = PS_TYPE_S16;
-const psS16 testConfig1ValueVecValueS16[] =
-    {
-        -2, -1, 0, 1, 2
-    };
-const psS32 testConfig1ValueVecItemsS32 = 6;
-const psElemType testConfig1ValueVecTypeS32 = PS_TYPE_S32;
-const psS32 testConfig1ValueVecValueS32[] =
-    {
-        -4, -2, 0, 2, 4, 6
-    };
-const psS32 testConfig1ValueVecItemsS64 = 7;
-const psElemType testConfig1ValueVecTypeS64 = PS_TYPE_S64;
-const psS64 testConfig1ValueVecValueS64[] =
-    {
-        -16, -4, 0, 4, 16, 36, 64
-    };
-const psS32 testConfig1ValueVecItemsF32 = 4;
-const psElemType testConfig1ValueVecTypeF32 = PS_TYPE_F32;
-const psF32 testConfig1ValueVecValueF32[] =
-    {
-        -1.03, 1.04, -1.05, 1.06
-    };
-const psS32 testConfig1ValueVecItemsF64 = 5;
-const psElemType testConfig1ValueVecTypeF64 = PS_TYPE_F64;
-const psF64 testConfig1ValueVecValueF64[] =
-    {
-        -2.22, 2.21, -2.20, 2.19, -2.18
-    };
-const psS32 testConfig1ValueMetaItems1 = 3;
-const char* testConfig1ValueMetaNames1[] =
-    {
-        "EXTNAME","BIASSEC","CHIP"
-    };
-const psMetadataType testConfig1ValueMetaTypes1[] =
-    {
-        PS_META_STR, PS_META_STR, PS_META_STR
-    };
-const char* testConfig1ValueMetaValue1[] =
-    {
-        "CCD00","BSEC-00","CHIP.00"
-    };
-const psS32 testConfig1ValueMetaItems2 = 3;
-const char* testConfig1ValueMetaNames2[] =
-    {
-        "EXTNAME","BIASSEC","CHIP"
-    };
-const psMetadataType testConfig1ValueMetaTypes2[] =
-    {
-        PS_META_STR, PS_META_STR, PS_META_STR
-    };
-const char* testConfig1ValueMetaValue2[] =
-    {
-        "CCD01","BSEC-01","CHIP.00"
-    };
-const psS32 testConfig1ValueMetaItems3 = 4;
-const char* testConfig1ValueMetaNames3[] =
-    {
-        "EXTNAME","BIASSEC","CHIP","NCELL"
-    };
-const psMetadataType testConfig1ValueMetaTypes3[] =
-    {
-        PS_META_STR, PS_META_STR, PS_META_STR, PS_META_S32
-    };
-const char* testConfig1ValueMetaValueStr3[] =
-    {
-        "CCD00","BSEC-00","CHIP.00",""
-    };
-const psS32 testConfig1ValueMetaValueS323[] =
-    {
-        0, 0, 0, 24
-    };
-
-static void writeMetadata(psMetadata* metadata, char* indentStr)
-{
-    writeMetadataList(metadata->list, indentStr);
-}
-
-static void writeMetadataList(psList* metadataItemList, char* indentStr)
-{
-    psMetadataItem* entryChild        = NULL;
-    psMetadataItem* searchChild       = NULL;
-    psArray*        nonUniqueKeyArray = NULL;
-    psBool          keyFound          = false;
-    char*           tempKey           = NULL;
-
-    // Allocate iterator for moving through metadata list
-    psListIterator* iter = psListIteratorAlloc(metadataItemList, PS_LIST_HEAD, true);
-    psListIterator* searchIter = psListIteratorAlloc(metadataItemList, PS_LIST_HEAD, true);
-
-    // Allocate array for nonUnique key names
-    nonUniqueKeyArray = psArrayAlloc(10);
-    nonUniqueKeyArray->n = 0;
-
-
-    // Loop through all items in the list
-    while ( (entryChild = psListGetAndIncrement(iter)) != NULL) {
-        // Search list for another entry with same key name
-        // Check if last entry
-        if(iter->index != metadataItemList->n) {
-            // Set search iterator to index
-            if(!psListIteratorSet(searchIter,iter->index) ) {
-                psError(PS_ERR_UNKNOWN,true,"Error searching list for multiple keys");
-                break;
-            }
-            keyFound = false;
-            while ( (searchChild = psListGetAndIncrement(searchIter)) != NULL) {
-                if(strcmp(entryChild->name,searchChild->name) == 0) {
-                    // Search nonUnique key array
-                    for(psS32 i = 0; i < nonUniqueKeyArray->n; i++) {
-                        if(strcmp(entryChild->name,nonUniqueKeyArray->data[i]) == 0) {
-                            keyFound = true;
-                        }
-                    }
-                    if(!keyFound) {
-                        // Add key to non-unique array
-                        tempKey = psStringCopy(entryChild->name);
-                        nonUniqueKeyArray = psArrayAdd(nonUniqueKeyArray,1,tempKey);
-                        psFree(tempKey);
-
-                        // Print MULTI line
-                        printf("%-25s MULTI\n",entryChild->name);
-
-                        // Break out of loop
-                        break;
-                    }
-                }
-            }
-        }
-        writeMetadataItem(entryChild,indentStr);
-    }
-
-    psFree(iter);
-    psFree(searchIter);
-    psFree(nonUniqueKeyArray);
-}
-
-char* vectorToConfigString(psVector* vector)
-{
-    psS32  maxLength = 256;
-
-    char* str = psAlloc(sizeof(char)*maxLength+1);
-
-    if (vector == NULL) {
-        snprintf(str,maxLength, "NULL");
-        return str;
-    }
-
-    int size = vector->n;
-
-    if (size == 0) {
-        snprintf(str,maxLength, " ");
-        return str;
-    }
-
-    char* tempStr = psAlloc(sizeof(char)*maxLength+1);
-    *str = '\0';
-    bool full = false;
-
-    #define APPEND_ELEMENTS_CASE(TYPE, NATIVE_TYPE, FORMAT) \
-case PS_TYPE_##TYPE: \
-    strcat(str,#TYPE); \
-    for(psS32 i = 0; i < (strlen(str)-6); i++) {  \
-        strcat(str," "); \
-    } \
-    for (lcv=0; lcv < size && ! full; lcv++) { \
-        snprintf(tempStr, maxLength, "%s" FORMAT, prefix, (NATIVE_TYPE) (vector->data.TYPE[lcv])); \
-        strncat(str,tempStr,maxLength); \
-        full = (strlen(str) > maxLength-2); \
-        prefix = ","; \
-    } \
-    break;
-
-    int lcv;
-    char* prefix = " ";
-    switch(vector->type.type) {
-        APPEND_ELEMENTS_CASE(S8,char,"%hd")
-        APPEND_ELEMENTS_CASE(S16,short int,"%hd")
-        APPEND_ELEMENTS_CASE(S32,int,"%d")
-        APPEND_ELEMENTS_CASE(S64,long,"%ld")
-        APPEND_ELEMENTS_CASE(U8,unsigned char,"%hu")
-        APPEND_ELEMENTS_CASE(U16,unsigned short,"%hu")
-        APPEND_ELEMENTS_CASE(U32,unsigned int, "%u")
-        APPEND_ELEMENTS_CASE(U64,unsigned long,"%lu")
-        APPEND_ELEMENTS_CASE(F32,double,"%g")
-        APPEND_ELEMENTS_CASE(F64,double,"%g")
-    default:
-        snprintf(str,maxLength,"INVALID TYPE");
-        break;
-    }
-
-    psFree(tempStr);
-
-    return str;
-}
-
-
-static void writeMetadataItem(psMetadataItem *metadataItem, char* indentStr)
-{
-    char*  vecStr;
-
-    switch(metadataItem->type) {
-    case PS_META_BOOL:
-        printf("%s%-25s BOOL  %40d",indentStr,metadataItem->name,metadataItem->data.B);
-        break;
-    case PS_META_S32:
-        printf("%s%-25s S32   %40d",indentStr,metadataItem->name,metadataItem->data.S32);
-        break;
-    case PS_META_F32:
-        printf("%s%-25s F32   %40f",indentStr,metadataItem->name,metadataItem->data.F32);
-        break;
-    case PS_META_F64:
-        printf("%s%-25s F64   %40lf",indentStr,metadataItem->name,metadataItem->data.F64);
-        break;
-    case PS_META_VEC:
-        vecStr = (char*)vectorToConfigString((psVector*)metadataItem->data.V);
-        printf("%s@%-24s %s",indentStr,metadataItem->name,vecStr);
-        psFree(vecStr);
-        break;
-    case PS_META_STR:
-        printf("%s%-25s STR   %40s",indentStr,metadataItem->name,(char*)metadataItem->data.V);
-        break;
-    case PS_META_META:
-        printf("%s%-25s METADATA\n",indentStr,metadataItem->name);
-        char nestedStr[256] = "    ";
-        strcat(nestedStr,indentStr);
-        writeMetadata((psMetadata*)metadataItem->data.md,nestedStr);
-        printf("%sEND",indentStr);
-        break;
-    default:
-        printf("#%s%-24s BAD TYPE=%d",indentStr,metadataItem->name,metadataItem->type);
-        break;
-    }
-    if(strlen(metadataItem->comment) > 0) {
-        printf("  # %-20s\n",metadataItem->comment);
-    } else {
-        printf("\n");
-    }
-}
-
-static psBool checkFailedLines(psS32 failedLines, psS32 expectedFailedLines, char* configFile)
-{
-    psBool     returnValue = true;
-
-    // Verify the expected number of failed lines
-    if(failedLines != expectedFailedLines) {
-        psError(PS_ERR_UNKNOWN,true,"File: %s : Number of failed lines = %d not as expected %d",
-                configFile,failedLines,expectedFailedLines);
-        returnValue = false;
-    }
-    return returnValue;
-}
-
-static psBool checkNumberOfItems(psMetadata* md, psS32 expectedItems, char* configFile)
-{
-    psBool     returnValue = true;
-
-    // Verify the number of items in metadata
-    if(md->list->n != expectedItems) {
-        psError(PS_ERR_UNKNOWN,true,"File: %s : Number of items = %d not as expected %d",
-                configFile,md->list->n, expectedItems);
-        returnValue = false;
-    }
-    return returnValue;
-}
-
-static psBool checkItemName(psMetadataItem* mdItem, char* expectedName, char* configFile)
-{
-    psBool    returnValue = true;
-
-    // Compare key names
-    if(strcmp(mdItem->name,expectedName) != 0) {
-        psError(PS_ERR_UNKNOWN,true,"File: %s : Key name %s not as expected %s",
-                configFile,mdItem->name,expectedName);
-        returnValue = false;
-    }
-
-    return returnValue;
-}
-
-static psBool checkItemType(psMetadataItem* mdItem, psS32 expectedType, char* configFile)
-{
-    psBool     returnValue = true;
-
-    // Compare types
-    if(mdItem->type != expectedType) {
-        psError(PS_ERR_UNKNOWN,true,"File: %s : Type %d not as expected %d",
-                configFile,mdItem->type,expectedType);
-        returnValue = false;
-    }
-    return returnValue;
-}
-
-static psBool checkItemComment(psMetadataItem* mdItem, char* expectedComment, char* configFile)
-{
-    psBool    returnValue = true;
-
-    // Compare comments
-    if(strcmp(mdItem->comment,expectedComment) != 0) {
-        psError(PS_ERR_UNKNOWN,true,"File: %s : Comment %s not as expected %s",
-                configFile,mdItem->comment,expectedComment);
-        returnValue = false;
-    }
-    return returnValue;
-}
-
-psS32 main(psS32 argc, char* argv[])
-{
-    psLogSetLevel(PS_LOG_INFO);
-
-    if( !runTestSuite(stderr,"psMetadataConfigParse",tests,argc,argv)) {
-        return 1;
-    }
-
-    return 0;
-}
-
-psS32 testMetadataParseConfig(void)
-{
-    psMetadata*       metadata1      = NULL;
-    psMetadataItem*   entryChild     = NULL;
-    psU32             failedLines    = 0;
-    psListIterator*   iter           = NULL;
-    psListIterator*   mdIter         = NULL;
-    psMetadataItem*   mdChild        = NULL;
-    psS32             metaCounter    = 0;
-    psS32             mdCounter      = 0;
-
-    // Read config file test1.config with overwrite set true
-    metadata1 = psMetadataConfigParse(metadata1,&failedLines,testConfig1,true);
-    // Verify the expected number of failed lines
-    if(!checkFailedLines(failedLines,testConfig1FailsOverwrite,(char*)testConfig1)) {
-        return 1;
-    }
-    // Verify the number of items in metadata
-    if(!checkNumberOfItems(metadata1,testConfig1Items,(char*)testConfig1)) {
-        return 2;
-    }
-    // Verify metadata item quads
-    iter = psListIteratorAlloc(metadata1->list, PS_LIST_HEAD, true);
-    for(psS32 i = 0; i < testConfig1Items; i++) {
-        // Get list item
-        entryChild = psListGetAndIncrement(iter);
-
-        // Verify end of list not reached prematurely
-        if(entryChild == NULL) {
-            psError(PS_ERR_UNKNOWN,true,"End of list encountered at %d not as expected %d",
-                    i,testConfig1Items);
-            return i*10+1;
-        }
-        // Verify name
-        if(!checkItemName(entryChild,(char*)testConfig1KeyOverwrite[i],(char*)testConfig1)) {
-            return i*10+2;
-        }
-        // Verify type
-        if(!checkItemType(entryChild,testConfig1TypeOverwrite[i],(char*)testConfig1)) {
-            return i*10+3;
-        }
-        // Verify comment
-        if(!checkItemComment(entryChild,(char*)testConfig1CommentOverwrite[i],(char*)testConfig1)) {
-            return i*10+4;
-        }
-        // Compare values
-        switch(entryChild->type) {
-        case PS_META_S32:
-            if(entryChild->data.S32 != testConfig1ValueS32Overwrite[i]) {
-                psError(PS_ERR_UNKNOWN,true,"File: %s : Value %d not as expected %d",
-                        testConfig1,entryChild->data.S32, testConfig1ValueS32Overwrite[i]);
-                return i*10+5;
-            }
-            break;
-        case PS_META_F32:
-            if(fabs(entryChild->data.F32 - testConfig1ValueF32Overwrite[i]) > ERROR_TOL) {
-                psError(PS_ERR_UNKNOWN,true,"File: %s : Value %f not as expected %f",
-                        testConfig1,entryChild->data.F32, testConfig1ValueF32Overwrite[i]);
-                return i*10+5;
-            }
-            break;
-        case PS_META_F64:
-            if(fabs(entryChild->data.F64 - testConfig1ValueF64Overwrite[i]) > ERROR_TOL) {
-                psError(PS_ERR_UNKNOWN,true,"File: %s : Value %lf not as expected %lf",
-                        testConfig1,entryChild->data.F64, testConfig1ValueF64Overwrite[i]);
-                return i*10+5;
-            }
-            break;
-        case PS_META_BOOL:
-            if(entryChild->data.B != testConfig1ValueBoolOverwrite[i]) {
-                psError(PS_ERR_UNKNOWN,true,"File: %s : Value %d not as expected %d",
-                        testConfig1,entryChild->data.B,testConfig1ValueBoolOverwrite[i]);
-                return i*10+5;
-            }
-            break;
-        case PS_META_STR:
-            if(strcmp(entryChild->data.V,testConfig1ValueStrOverwrite[i]) != 0) {
-                psError(PS_ERR_UNKNOWN,true,"File: %s : Value %s not as expected %s",
-                        testConfig1,entryChild->data.V,testConfig1ValueStrOverwrite[i]);
-                return i*10+5;
-            }
-            break;
-        case PS_META_VEC:
-            // Verify the correct number of entries
-            switch(((psVector*)(entryChild->data.V))->type.type) {
-            case PS_TYPE_U8:
-                if(((psVector*)(entryChild->data.V))->n != testConfig1ValueVecItemsU8) {
-                    psError(PS_ERR_UNKNOWN,true,"File: %s : Vector entries %d not as expected %d",
-                            testConfig1,((psVector*)(entryChild->data.V))->n,testConfig1ValueVecItemsU8);
-                    return i*10+5;
-                }
-                // Verify the correct type
-                if(((psVector*)(entryChild->data.V))->type.type != testConfig1ValueVecTypeU8) {
-                    psError(PS_ERR_UNKNOWN,true,"File: %s : Vector type %d not as expected %s",
-                            testConfig1,((psVector*)entryChild->data.V)->type.type,testConfig1ValueVecTypeU8);
-                    return i*10+5;
-                }
-                // Verify the values in vector
-                for(psS32 j = 0; j < testConfig1ValueVecItemsU8; j++) {
-                    if(((psVector*)entryChild->data.V)->data.U8[j] != testConfig1ValueVecValueU8[j]) {
-                        psError(PS_ERR_UNKNOWN,true,"File: %s : Vector data[%d] = %d not as expected %d",
-                                testConfig1,j,((psVector*)entryChild->data.V)->data.U8[j],
-                                testConfig1ValueVecValueU8[j]);
-                        return i*10+5*j;
-                    }
-                }
-                break;
-            case PS_TYPE_U16:
-                if(((psVector*)(entryChild->data.V))->n != testConfig1ValueVecItemsU16) {
-                    psError(PS_ERR_UNKNOWN,true,"File: %s : Vector entries %d not as expected %d",
-                            testConfig1,((psVector*)(entryChild->data.V))->n,testConfig1ValueVecItemsU16);
-                    return i*10+5;
-                }
-                // Verify the correct type
-                if(((psVector*)(entryChild->data.V))->type.type != testConfig1ValueVecTypeU16) {
-                    psError(PS_ERR_UNKNOWN,true,"File: %s : Vector type %d not as expected %s",
-                            testConfig1,((psVector*)entryChild->data.V)->type.type,testConfig1ValueVecTypeU16);
-                    return i*10+5;
-                }
-                // Verify the values in vector
-                for(psS32 j = 0; j < testConfig1ValueVecItemsU16; j++) {
-                    if(((psVector*)entryChild->data.V)->data.U16[j] != testConfig1ValueVecValueU16[j]) {
-                        psError(PS_ERR_UNKNOWN,true,"File: %s : Vector data[%d] = %d not as expected %d",
-                                testConfig1,j,((psVector*)entryChild->data.V)->data.U16[j],
-                                testConfig1ValueVecValueU16[j]);
-                        return i*10+5*j;
-                    }
-                }
-                break;
-            case PS_TYPE_U32:
-                if(((psVector*)(entryChild->data.V))->n != testConfig1ValueVecItemsU32) {
-                    psError(PS_ERR_UNKNOWN,true,"File: %s : Vector entries %d not as expected %d",
-                            testConfig1,((psVector*)(entryChild->data.V))->n,testConfig1ValueVecItemsU32);
-                    return i*10+5;
-                }
-                // Verify the correct type
-                if(((psVector*)(entryChild->data.V))->type.type != testConfig1ValueVecTypeU32) {
-                    psError(PS_ERR_UNKNOWN,true,"File: %s : Vector type %d not as expected %s",
-                            testConfig1,((psVector*)entryChild->data.V)->type.type,testConfig1ValueVecTypeU32);
-                    return i*10+5;
-                }
-                // Verify the values in vector
-                for(psS32 j = 0; j < testConfig1ValueVecItemsU32; j++) {
-                    if(((psVector*)entryChild->data.V)->data.U32[j] != testConfig1ValueVecValueU32[j]) {
-                        psError(PS_ERR_UNKNOWN,true,"File: %s : Vector data[%d] = %d not as expected %d",
-                                testConfig1,j,((psVector*)entryChild->data.V)->data.U32[j],
-                                testConfig1ValueVecValueU32[j]);
-                        return i*10+5*j;
-                    }
-                }
-                break;
-            case PS_TYPE_U64:
-                if(((psVector*)(entryChild->data.V))->n != testConfig1ValueVecItemsU64) {
-                    psError(PS_ERR_UNKNOWN,true,"File: %s : Vector entries %d not as expected %d",
-                            testConfig1,((psVector*)(entryChild->data.V))->n,testConfig1ValueVecItemsU64);
-                    return i*10+5;
-                }
-                // Verify the correct type
-                if(((psVector*)(entryChild->data.V))->type.type != testConfig1ValueVecTypeU64) {
-                    psError(PS_ERR_UNKNOWN,true,"File: %s : Vector type %d not as expected %s",
-                            testConfig1,((psVector*)entryChild->data.V)->type.type,testConfig1ValueVecTypeU64);
-                    return i*10+5;
-                }
-                // Verify the values in vector
-                for(psS32 j = 0; j < testConfig1ValueVecItemsU64; j++) {
-                    if(((psVector*)entryChild->data.V)->data.U64[j] != testConfig1ValueVecValueU64[j]) {
-                        psError(PS_ERR_UNKNOWN,true,"File: %s : Vector data[%d] = %ld not as expected %ld",
-                                testConfig1,j,((psVector*)entryChild->data.V)->data.U64[j],
-                                testConfig1ValueVecValueU64[j]);
-                        return i*10+5*j;
-                    }
-                }
-                break;
-            case PS_TYPE_S8:
-                if(((psVector*)(entryChild->data.V))->n != testConfig1ValueVecItemsS8) {
-                    psError(PS_ERR_UNKNOWN,true,"File: %s : Vector entries %d not as expected %d",
-                            testConfig1,((psVector*)(entryChild->data.V))->n,testConfig1ValueVecItemsS8);
-                    return i*10+5;
-                }
-                // Verify the correct type
-                if(((psVector*)(entryChild->data.V))->type.type != testConfig1ValueVecTypeS8) {
-                    psError(PS_ERR_UNKNOWN,true,"File: %s : Vector type %d not as expected %s",
-                            testConfig1,((psVector*)entryChild->data.V)->type.type,testConfig1ValueVecTypeS8);
-                    return i*10+5;
-                }
-                // Verify the values in vector
-                for(psS32 j = 0; j < testConfig1ValueVecItemsS8; j++) {
-                    if(((psVector*)entryChild->data.V)->data.S8[j] != testConfig1ValueVecValueS8[j]) {
-                        psError(PS_ERR_UNKNOWN,true,"File: %s : Vector data[%d] = %d not as expected %d",
-                                testConfig1,j,((psVector*)entryChild->data.V)->data.S8[j],
-                                testConfig1ValueVecValueS8[j]);
-                        return i*10+5*j;
-                    }
-                }
-                break;
-            case PS_TYPE_S16:
-                if(((psVector*)(entryChild->data.V))->n != testConfig1ValueVecItemsS16) {
-                    psError(PS_ERR_UNKNOWN,true,"File: %s : Vector entries %d not as expected %d",
-                            testConfig1,((psVector*)(entryChild->data.V))->n,testConfig1ValueVecItemsS16);
-                    return i*10+5;
-                }
-                // Verify the correct type
-                if(((psVector*)(entryChild->data.V))->type.type != testConfig1ValueVecTypeS16) {
-                    psError(PS_ERR_UNKNOWN,true,"File: %s : Vector type %d not as expected %s",
-                            testConfig1,((psVector*)entryChild->data.V)->type.type,testConfig1ValueVecTypeS16);
-                    return i*10+5;
-                }
-                // Verify the values in vector
-                for(psS32 j = 0; j < testConfig1ValueVecItemsS16; j++) {
-                    if(((psVector*)entryChild->data.V)->data.S16[j] != testConfig1ValueVecValueS16[j]) {
-                        psError(PS_ERR_UNKNOWN,true,"File: %s : Vector data[%d] = %d not as expected %d",
-                                testConfig1,j,((psVector*)entryChild->data.V)->data.S16[j],
-                                testConfig1ValueVecValueS16[j]);
-                        return i*10+5*j;
-                    }
-                }
-                break;
-            case PS_TYPE_S32:
-                if(((psVector*)(entryChild->data.V))->n != testConfig1ValueVecItemsS32) {
-                    psError(PS_ERR_UNKNOWN,true,"File: %s : Vector entries %d not as expected %d",
-                            testConfig1,((psVector*)(entryChild->data.V))->n,testConfig1ValueVecItemsS32);
-                    return i*10+5;
-                }
-                // Verify the correct type
-                if(((psVector*)(entryChild->data.V))->type.type != testConfig1ValueVecTypeS32) {
-                    psError(PS_ERR_UNKNOWN,true,"File: %s : Vector type %d not as expected %s",
-                            testConfig1,((psVector*)entryChild->data.V)->type.type,testConfig1ValueVecTypeS32);
-                    return i*10+5;
-                }
-                // Verify the values in vector
-                for(psS32 j = 0; j < testConfig1ValueVecItemsS32; j++) {
-                    if(((psVector*)entryChild->data.V)->data.S32[j] != testConfig1ValueVecValueS32[j]) {
-                        psError(PS_ERR_UNKNOWN,true,"File: %s : Vector data[%d] = %d not as expected %d",
-                                testConfig1,j,((psVector*)entryChild->data.V)->data.S32[j],
-                                testConfig1ValueVecValueS32[j]);
-                        return i*10+5*j;
-                    }
-                }
-                break;
-            case PS_TYPE_S64:
-                if(((psVector*)(entryChild->data.V))->n != testConfig1ValueVecItemsS64) {
-                    psError(PS_ERR_UNKNOWN,true,"File: %s : Vector entries %d not as expected %d",
-                            testConfig1,((psVector*)(entryChild->data.V))->n,testConfig1ValueVecItemsS64);
-                    return i*10+5;
-                }
-                // Verify the correct type
-                if(((psVector*)(entryChild->data.V))->type.type != testConfig1ValueVecTypeS64) {
-                    psError(PS_ERR_UNKNOWN,true,"File: %s : Vector type %d not as expected %s",
-                            testConfig1,((psVector*)entryChild->data.V)->type.type,testConfig1ValueVecTypeS64);
-                    return i*10+5;
-                }
-                // Verify the values in vector
-                for(psS32 j = 0; j < testConfig1ValueVecItemsS64; j++) {
-                    if(((psVector*)entryChild->data.V)->data.S64[j] != testConfig1ValueVecValueS64[j]) {
-                        psError(PS_ERR_UNKNOWN,true,"File: %s : Vector data[%d] = %ld not as expected %ld",
-                                testConfig1,j,((psVector*)entryChild->data.V)->data.S64[j],
-                                testConfig1ValueVecValueS64[j]);
-                        return i*10+5*j;
-                    }
-                }
-                break;
-            case PS_TYPE_F32:
-                if(((psVector*)(entryChild->data.V))->n != testConfig1ValueVecItemsF32) {
-                    psError(PS_ERR_UNKNOWN,true,"File: %s : Vector entries %d not as expected %d",
-                            testConfig1,((psVector*)(entryChild->data.V))->n,testConfig1ValueVecItemsF32);
-                    return i*10+5;
-                }
-                // Verify the correct type
-                if(((psVector*)(entryChild->data.V))->type.type != testConfig1ValueVecTypeF32) {
-                    psError(PS_ERR_UNKNOWN,true,"File: %s : Vector type %d not as expected %s",
-                            testConfig1,((psVector*)entryChild->data.V)->type.type,testConfig1ValueVecTypeF32);
-                    return i*10+5;
-                }
-                // Verify the values in vector
-                for(psS32 j = 0; j < testConfig1ValueVecItemsF32; j++) {
-                    if(fabs(((psVector*)entryChild->data.V)->data.F32[j]-testConfig1ValueVecValueF32[j])
-                            > ERROR_TOL) {
-                        psError(PS_ERR_UNKNOWN,true,"File: %s : Vector data[%d] = %f not as expected %f",
-                                testConfig1,j,((psVector*)entryChild->data.V)->data.F32[j],
-                                testConfig1ValueVecValueF32[j]);
-                        return i*10+5*j;
-                    }
-                }
-                break;
-            case PS_TYPE_F64:
-                if(((psVector*)(entryChild->data.V))->n != testConfig1ValueVecItemsF64) {
-                    psError(PS_ERR_UNKNOWN,true,"File: %s : Vector entries %d not as expected %d",
-                            testConfig1,((psVector*)(entryChild->data.V))->n,testConfig1ValueVecItemsF64);
-                    return i*10+5;
-                }
-                // Verify the correct type
-                if(((psVector*)(entryChild->data.V))->type.type != testConfig1ValueVecTypeF64) {
-                    psError(PS_ERR_UNKNOWN,true,"File: %s : Vector type %d not as expected %s",
-                            testConfig1,((psVector*)entryChild->data.V)->type.type,testConfig1ValueVecTypeF64);
-                    return i*10+5;
-                }
-                // Verify the values in vector
-                for(psS32 j = 0; j < testConfig1ValueVecItemsF64; j++) {
-                    if(fabs(((psVector*)entryChild->data.V)->data.F64[j]-testConfig1ValueVecValueF64[j])
-                            > ERROR_TOL) {
-                        psError(PS_ERR_UNKNOWN,true,"File: %s : Vector data[%d] = %lf not as expected %lf",
-                                testConfig1,j,((psVector*)entryChild->data.V)->data.F64[j],
-                                testConfig1ValueVecValueF64[j]);
-                        return i*10+5*j;
-                    }
-                }
-                break;
-            default:
-                break;
-            }
-            break;
-        case PS_META_META:
-            if(metaCounter == 0) {
-                // Check if number of items is as expected
-                if(entryChild->data.md->list->n != testConfig1ValueMetaItems1) {
-                    psError(PS_ERR_UNKNOWN,true,"File: %s : Metadata 1 items %d not as expected %d",
-                            testConfig1,entryChild->data.md->list->n,testConfig1ValueMetaItems1);
-                    return i*10+6;
-                }
-                // Loop through metadata items
-                mdIter = psListIteratorAlloc(entryChild->data.md->list, PS_LIST_HEAD, true);
-                mdCounter = 0;
-                while ( (mdChild = psListGetAndIncrement(mdIter)) != NULL) {
-                    if(strcmp(mdChild->name,testConfig1ValueMetaNames1[mdCounter]) != 0) {
-                        psError(PS_ERR_UNKNOWN,true,"File: %s : Metadata 1 name[%d] %s not as expected %s",
-                                testConfig1,mdCounter,mdChild->name,testConfig1ValueMetaNames1[mdCounter]);
-                        return i*10+6*mdCounter;
-                    }
-                    if(mdChild->type != testConfig1ValueMetaTypes1[mdCounter]) {
-                        psError(PS_ERR_UNKNOWN,true,"File: %s : Metadata 1 type[%d] %d not as expected %d",
-                                testConfig1,mdCounter,mdChild->type,testConfig1ValueMetaTypes1[mdCounter]);
-                        return i*10+6*mdCounter;
-                    }
-                    if(strcmp((char*)mdChild->data.V,testConfig1ValueMetaValue1[mdCounter]) != 0) {
-                        psError(PS_ERR_UNKNOWN,true,"File: %s : Metadata 1 value[%d] %s not as expected %s",
-                                testConfig1,mdCounter,(char*)mdChild->data.V,testConfig1ValueMetaValue1[mdCounter]);
-                        return i*10+6*mdCounter;
-                    }
-                    mdCounter++;
-                }
-                psFree(mdIter);
-            } else if(metaCounter == 1) {
-                // Check if number of items is as expected
-                if(entryChild->data.md->list->n != testConfig1ValueMetaItems2) {
-                    psError(PS_ERR_UNKNOWN,true,"File: %s : Metadata 2 items %d not as expected %d",
-                            testConfig1,entryChild->data.md->list->n,testConfig1ValueMetaItems2);
-                    return i*10+6;
-                }
-                // Loop through metadata items
-                mdIter = psListIteratorAlloc(entryChild->data.md->list, PS_LIST_HEAD, true);
-                mdCounter = 0;
-                while ( (mdChild = psListGetAndIncrement(mdIter)) != NULL) {
-                    if(strcmp(mdChild->name,testConfig1ValueMetaNames2[mdCounter]) != 0) {
-                        psError(PS_ERR_UNKNOWN,true,"File: %s : Metadata 2 name[%d] %s not as expected %s",
-                                testConfig1,mdCounter,mdChild->name,testConfig1ValueMetaNames2[mdCounter]);
-                        return i*10+6*mdCounter;
-                    }
-                    if(mdChild->type != testConfig1ValueMetaTypes2[mdCounter]) {
-                        psError(PS_ERR_UNKNOWN,true,"File: %s : Metadata 2 type[%d] %d not as expected %d",
-                                testConfig1,mdCounter,mdChild->type,testConfig1ValueMetaTypes2[mdCounter]);
-                        return i*10+6*mdCounter;
-                    }
-                    if(strcmp((char*)mdChild->data.V,testConfig1ValueMetaValue2[mdCounter]) != 0) {
-                        psError(PS_ERR_UNKNOWN,true,"File: %s : Metadata 2 value[%d] %s not as expected %s",
-                                testConfig1,mdCounter,(char*)mdChild->data.V,testConfig1ValueMetaValue2[mdCounter]);
-                        return i*10+6*mdCounter;
-                    }
-                    mdCounter++;
-                }
-                psFree(mdIter);
-            } else if(metaCounter == 2) {
-                // Check if number of items is as expected
-                if(entryChild->data.md->list->n != testConfig1ValueMetaItems3) {
-                    psError(PS_ERR_UNKNOWN,true,"File: %s : Metadata 3 items %d not as expected %d",
-                            testConfig1,entryChild->data.md->list->n,testConfig1ValueMetaItems3);
-                    return i*10+6;
-                }
-                // Loop through metadata items
-                mdIter = psListIteratorAlloc(entryChild->data.md->list, PS_LIST_HEAD, true);
-                mdCounter = 0;
-                while ( (mdChild = psListGetAndIncrement(mdIter)) != NULL) {
-                    if(strcmp(mdChild->name,testConfig1ValueMetaNames3[mdCounter]) != 0) {
-                        psError(PS_ERR_UNKNOWN,true,"File: %s : Metadata 3 name[%d] %s not as expected %s",
-                                testConfig1,mdCounter,mdChild->name,testConfig1ValueMetaNames3[mdCounter]);
-                        return i*10+6*mdCounter;
-                    }
-                    if(mdChild->type != testConfig1ValueMetaTypes3[mdCounter]) {
-                        psError(PS_ERR_UNKNOWN,true,"File: %s : Metadata 3 type[%d] %d not as expected %d",
-                                testConfig1,mdCounter,mdChild->type,testConfig1ValueMetaTypes3[mdCounter]);
-                        return i*10+6*mdCounter;
-                    }
-                    switch(mdChild->type) {
-                    case PS_META_STR:
-                        if(strcmp((char*)mdChild->data.V,testConfig1ValueMetaValueStr3[mdCounter]) != 0) {
-                            psError(PS_ERR_UNKNOWN,true,"File: %s : Metadata 3 value[%d] %s not as expected %s",
-                                    testConfig1,mdCounter,(char*)mdChild->data.V,
-                                    testConfig1ValueMetaValueStr3[mdCounter]);
-                            return i*10+6*mdCounter;
-                        }
-                        break;
-                    case PS_META_S32:
-                        if(mdChild->data.S32 != testConfig1ValueMetaValueS323[mdCounter]) {
-                            psError(PS_ERR_UNKNOWN,true,"File: %s : Metadata 3 value[%d] %d not as expected %d",
-                                    testConfig1,mdCounter,mdChild->data.S32,
-                                    testConfig1ValueMetaValueS323[mdCounter]);
-                            return i*10+6*mdCounter;
-                        }
-                        break;
-                    default:
-                        psError(PS_ERR_UNKNOWN,true,"File: %s : Metadata 3 value[%d] unknown type",
-                                testConfig1,mdCounter);
-                        return i*10+6*mdCounter;
-                        break;
-                    }
-                    mdCounter++;
-                }
-                psFree(mdIter);
-            }
-            metaCounter++;
-            break;
-        default:
-            psError(PS_ERR_UNKNOWN,true,"Unexpected type %d encountered",entryChild->type);
-            return i*10+5;
-            break;
-        }
-    }
-
-    writeMetadata(metadata1,"");
-
-    psFree(metadata1);
-
-    return 0;
-}
-
-psS32 testMetadataParseConfig1(void)
-{
-    psMetadata*       metadata1      = NULL;
-    psU32             failedLines    = 0;
-
-    // Read config file test2.config with overwrite set true
-    // This file contains parse errors
-    psLogMsg(__func__,PS_LOG_INFO,"Following should generate parse error message");
-    metadata1 = psMetadataConfigParse(metadata1,&failedLines,testConfig2,true);
-    // Verify the expected number of failed lines
-    if(!checkFailedLines(failedLines,testConfig2Fails,(char*)testConfig2)) {
-        return 1;
-    }
-    // Verify return value is null
-    if(metadata1 == NULL) {
-        psError(PS_ERR_UNKNOWN,true,"Did not expected a NULL return for failed parse");
-        return 2;
-    }
-    psFree(metadata1);
-
-    // Attempt parse a non-existant file
-    psLogMsg(__func__,PS_LOG_INFO,"Following should generate error message");
-    metadata1 = psMetadataConfigParse(metadata1,&failedLines,"ab.config",true);
-    if(metadata1 != NULL) {
-        psError(PS_ERR_UNKNOWN,true,"Expected a NULL return for non-existant file");
-        return 3;
-    }
-
-    // Attempt parse with NULL failed lines ptr
-    psLogMsg(__func__,PS_LOG_INFO,"Following should generate an error message for NULL failed lines arg");
-    metadata1 = psMetadataConfigParse(metadata1,NULL,testConfig2,true);
-    if(metadata1 != NULL) {
-        psError(PS_ERR_UNKNOWN,true,"Expected a NULL return for NULL failed lines argument");
-        return 4;
-    }
-
-    // Attempt parse with NULL file name
-    psLogMsg(__func__,PS_LOG_INFO,"Following should generate an error message for NULL file name arg");
-    metadata1 = psMetadataConfigParse(metadata1,&failedLines,NULL,true);
-    if(metadata1 != NULL) {
-        psError(PS_ERR_UNKNOWN,true,"Expected a NULL return for NULL filename argument");
-        return 5;
-    }
-
-    psFree(metadata1);
-
-    return 0;
-}
-
-psS32 testMetadataParseConfig2(void)
-{
-    psMetadata*       metadata1      = NULL;
-    psU32             failedLines    = 0;
-
-    // Read config file test3.config with overwrite set false
-    psLogMsg(__func__,PS_LOG_INFO,"Following should generate an error of duplicate key names");
-    metadata1 = psMetadataConfigParse(metadata1,&failedLines,testConfig3,false);
-    // Verify the expected number of failed lines
-    if(!checkFailedLines(failedLines,testConfig3Fails,(char*)testConfig3)) {
-        return 1;
-    }
-    if(metadata1 == NULL) {
-        psError(PS_ERR_UNKNOWN,true,"Did not expected a NULL return for failed due to overwrite false");
-        return 2;
-    }
-    psFree(metadata1);
-
-    return 0;
-}
-
-psS32 testMetadataParseConfig3(void)
-{
-    psMetadata*       metadata1      = NULL;
-    psU32             failedLines    = 0;
-
-    // Read config file test4.config with overwrite set false
-    metadata1 = psMetadataConfigParse(metadata1,&failedLines,testConfig4,false);
-    // Verify the expected number of failed lines
-    if(!checkFailedLines(failedLines,testConfig4Fails,(char*)testConfig4)) {
-        return 1;
-    }
-    // Print out metadata items for comparison against STDERR verified file
-    writeMetadata(metadata1,"");
-
-    psFree(metadata1);
-
-    return 0;
-}
-
-psS32 testMetadataParseConfig4(void)
-{
-    psMetadata*       metadata1      = NULL;
-    psU32             failedLines    = 0;
-
-    // Read config file test4.config with overwrite set false
-    metadata1 = psMetadataConfigParse(metadata1,&failedLines,testConfig5,true);
-    // Verify the expected number of failed lines
-    if(!checkFailedLines(failedLines,testConfig5Fails,(char*)testConfig5)) {
-        return 1;
-    }
-    psFree(metadata1);
-
-    return 0;
-}
-
Index: trunk/psLib/test/collections/tst_psMetadata_01.c
===================================================================
--- trunk/psLib/test/collections/tst_psMetadata_01.c	(revision 4493)
+++ 	(revision )
@@ -1,259 +1,0 @@
-/** @file  tst_psMetadata_01.c
-*
-*  @brief Test driver for psMetadata functions
-*
-*  This test driver contains the following tests for psMetadata:
-*     Test A - Read 1st hdr from simple FITS file
-*     Test B - Read 2nd hdr from complex FITS file
-*     Test C - Read named hdr from complex FITS file
-*     Test D - Remove items with same name from all metadata
-*     Test E - Attempt to use null file descriptor
-*     Test F - Attempt to open nonexistant file
-*     Test G - Attempt to use two null inputs
-*     Test H - Attempt to use bad extNum
-*     Test I - Attempt to use bad extNameTest
-*     Test J - Read named hdr w/ invalid extnum
-*     Test K - Free psMetadata
-*
-*  @author  Ross Harman, MHPCC
-*
-*  @version $Revision: 1.26 $  $Name: not supported by cvs2svn $
-*  @date  $Date: 2005-07-06 03:04:35 $
-*
-*  Copyright 2004-2005 Maui High Performance Computing Center, University of Hawaii
-*
-*/
-
-#include <string.h>
-#include "pslib_strict.h"
-#include "psTest.h"
-
-static void printMetadataItem(psMetadataItem *metadataItem, char *spaces);
-static void printMetadata(psMetadata *metadata);
-static void printMetadataList(psList *metadataItemList, char* spaces);
-static void printMetadataTable(psHash *mdTable);
-
-static void printMetadata(psMetadata *metadata)
-{
-    printf("Contents of metadata list:\n");
-    printMetadataList(metadata->list, " ");
-    printf("\nContents of metadata table:\n");
-    printMetadataTable(metadata->table);
-}
-
-static void printMetadataList(psList *metadataItemList, char* spaces)
-{
-    psMetadataItem *entryChild = NULL;
-
-    psListIterator* iter = psListIteratorAlloc(metadataItemList, PS_LIST_HEAD, true);
-
-    while ( (entryChild=psListGetAndIncrement(iter)) != NULL) {
-        printMetadataItem(entryChild, spaces);
-    }
-
-    psFree(iter);
-
-}
-
-static void printMetadataTable(psHash *mdTable)
-{
-    psS32 i;
-    psHashBucket* ptr = NULL;
-    for(i=0; i<mdTable->n; i++) {
-        ptr = mdTable->buckets[i];
-        while (ptr != NULL) {
-            printMetadataItem(ptr->data, " ");
-            ptr = ptr->next;
-        }
-    }
-}
-
-static void printMetadataItem(psMetadataItem *metadataItem, char *spaces)
-{
-    printf("%sKey Name: %8s  ", spaces, metadataItem->name);
-    printf("Key mdType: 0x%08x  ", metadataItem->type);
-
-    switch (metadataItem->type) {
-    case PS_META_MULTI:
-        printf("Key Value: %17c", ' ');
-        break;
-    case PS_META_BOOL:
-        printf("Key Value: %15d  ", metadataItem->data.B);
-        break;
-    case PS_META_S32:
-        printf("Key Value: %15d  ", metadataItem->data.S32);
-        break;
-    case PS_META_F32:
-        printf("Key Value: %15.3f  ", metadataItem->data.F32);
-        break;
-    case PS_META_F64:
-        printf("Key Value: %15.3f  ", metadataItem->data.F64);
-        break;
-    case PS_META_STR:
-        printf("Key Value: %15s  ", (char*)metadataItem->data.V);
-        break;
-    default:
-        printf("Bad type: %d ", metadataItem->type);
-    }
-    printf("Key Comment: %s\n", metadataItem->comment);
-
-    if(metadataItem->data.V && metadataItem->type==PS_META_MULTI) {
-        printMetadataList(metadataItem->data.V, "    ");
-    }
-}
-
-
-psS32 main(psS32 argc, char* argv[])
-{
-    psMetadata *metadata1 = NULL;
-    psMetadata *metadata2 = NULL;
-    psMetadata *metadata3 = NULL;
-
-
-    // Test A - Read 1st hdr from simple FITS file
-
-    /* Header contents for header_1.fits:
-
-        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
-    */
-    printPositiveTestHeader(stdout, "psMetadata", "Test A - Read 1st hdr from simple FITS file");
-    metadata1 = psMetadataReadHeader(metadata1, NULL, 1, "header_1.fits");
-    printMetadata(metadata1);
-    printFooter(stdout, "psMetadata", "Test A - Read 1st hdr from simple FITS file", true);
-
-    // Test B - Read 2nd hdr from complex FITS file
-
-    /* Header contents for header_2.fits:
-
-        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 'Astronomy
-        COMMENT   and Astrophysics', volume 376, page 359; bibcode: 2001A&A...376..359H
-        END
-        <DATA>
-
-        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
-        <DATA>
-
-        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
-        <DATA>
-    */
-    printPositiveTestHeader(stdout, "psMetadata", "Test B - Read 2nd hdr from complex FITS file");
-    metadata2 = psMetadataReadHeader(metadata2, NULL, 2, "header_2.fits");
-    printMetadata(metadata2);
-    printFooter(stdout, "psMetadata", "Test B - Read 2nd hdr from complex FITS file", true);
-
-    // Test C - Read named hdr from complex FITS file
-    printPositiveTestHeader(stdout, "psMetadata", "Test C - Read named hdr from complex FITS file");
-    metadata3 = psMetadataReadHeader(metadata3, "MY_DATA_2", -1, "header_2.fits");
-    printMetadata(metadata3);
-    printFooter(stdout, "psMetadata", "Test C - Read named hdr from complex FITS file", true);
-
-
-    // Test D - Remove items with same name from all metadata
-    printPositiveTestHeader(stdout, "psMetadata", "Test D - Remove items with same name from all metadata");
-    printf("Removed HISTORY from all metadata from prior test. Resulting metadata:\n\n");
-    psMetadataRemove(metadata3, 0, "HISTORY");
-    printMetadata(metadata3);
-    printFooter(stdout, "psMetadata", "Test D - Remove items with same name from all metadata", true);
-
-
-    // Test E - Attempt to use null file filename
-    printNegativeTestHeader(stdout,"psMetadata", "Test E - Attempt to use null filename",
-                            "Null fileName not allowed", 0);
-    psMetadataReadHeader(NULL, NULL, 1, NULL);
-    printFooter(stdout, "psMetadata", "Test E - Attempt to use null filename", true);
-
-
-    // Test F - Attempt to open nonexistant file
-    printNegativeTestHeader(stdout,"psMetadata", "Test F - Attempt to open nonexistant file",
-                            "FITS error while opening file: missing.dat...Couldn't close FITS file...", 0);
-    psMetadataReadHeader(NULL, NULL, 1, "missing.dat");
-    printFooter(stdout, "psMetadata", "Test F - Attempt to open nonexistant file", true);
-
-
-    // Test G - Attempt to use two null inputs
-    printNegativeTestHeader(stdout,"psMetadata", "Test G - Attempt to use two null inputs",
-                            "Null extName and extNum = 0 not allowed", 0);
-    psMetadataReadHeader(NULL, NULL, 0, "header_2.fits");
-    printFooter(stdout, "psMetadata", "Test G - Attempt to use two null inputs", true);
-
-
-    // Test H - Attempt to use bad extNum
-    printNegativeTestHeader(stdout,"psMetadata", "Test H - Attempt to use bad extNum",
-                            "FITS error while locating header 22: tried to move past end of file", 0);
-    metadata1 = psMetadataReadHeader(metadata1, NULL, 22, "header_2.fits");
-    if (metadata1 != NULL ) {
-        psError(PS_ERR_UNKNOWN, true,"psMetadataReadHeader did not return null when invalid ext given.");
-        return 10;
-    }
-    printFooter(stdout, "psMetadata", "Test H - Attempt to use bad extNum", true);
-
-
-    // Test I - Attempt to use bad extName
-    printNegativeTestHeader(stdout,"psMetadata", "Test I - Attempt to use bad extName",
-                            "FITS error while locating header AARGH: illegal HDU number", 0);
-    metadata1 = psMetadataReadHeader(NULL, "AARGH", -1, "header_2.fits");
-    if (metadata1 != NULL ) {
-        psError(PS_ERR_UNKNOWN, true,"psMetadataReadHeader did not return null invalid extname give.");
-        return 11;
-    }
-    printFooter(stdout, "psMetadata", "Test I - Attempt to use bad extName", true);
-
-
-    // Test J - Read named hdr w/ invalid extnum
-    printNegativeTestHeader(stdout, "psMetadata", "Test J - Read named hdr w/ invalid extnum",
-                            "If extName specified, extNum should be -1.", 0);
-    metadata1 = psMetadataReadHeader(NULL, NULL, 0, "header_2.fits");
-    if (metadata1 != NULL ) {
-        psError(PS_ERR_UNKNOWN, true,"psMetadataReadHeader did not return null w/ valid extname, invalid extnum");
-        return 12;
-    }
-    printFooter(stdout, "psMetadata", "Test J - Read named hdr w/ invalid extnum", true);
-
-
-    // Test K - Free psMetadata
-    printPositiveTestHeader(stdout, "psMetadata", "Test K - Free psMetadata");
-    psFree(metadata1);
-    psFree(metadata2);
-    psFree(metadata3);
-    if(psMemCheckLeaks(0, NULL, stdout,false)) {
-        psError(PS_ERR_UNKNOWN,true,"Memory leaks detected.");
-    }
-    psMemCheckCorruption(0);
-    psS32 nBad = psMemCheckCorruption(0);
-    if(nBad) {
-        printf("ERROR: Found %d bad memory blocks\n", nBad);
-    }
-    printFooter(stdout, "psMetadata", "Test K - Free psMetadata", true);
-
-    return 0;
-}
Index: trunk/psLib/test/collections/tst_psMetadata_02.c
===================================================================
--- trunk/psLib/test/collections/tst_psMetadata_02.c	(revision 4493)
+++ 	(revision )
@@ -1,145 +1,0 @@
-/** @file  tst_psMetadata_02.c
- *
- *  @brief Test driver for psMetadata functions
- *
- *  This test driver contains the following tests for psMetadata:
- *     Test A - Allocate metadata items
- *     Test B - Attempt to create metadata item with null name
- *     Test C - Attempt to create metadata item with invalid type
- *     Test D - Allocate metadata
- *     Test E - Attempt to add metadata item to null metadata
- *     Test F - Attempt to add null metadata item to metadata
- *     Test G - Free psMetadata
- *
- *  @author  Ross Harman, MHPCC
- *  @author  Robert DeSonia, MHPCC
- *
- *  @version $Revision: 1.15 $  $Name: not supported by cvs2svn $
- *  @date  $Date: 2005-04-07 20:27:41 $
- *
- *  Copyright 2004-2005 Maui High Performance Computing Center, University of Hawaii
- *
- */
-
-#include <string.h>
-#include "pslib_strict.h"
-#include "psTest.h"
-
-static void printMetadataItem(psMetadataItem *metadataItem)
-{
-    printf("Key Name: %8s  ", metadataItem->name);
-    printf("Key mdType: 0x%08x  ", metadataItem->type);
-
-    switch (metadataItem->type) {
-    case PS_META_MULTI:
-        printf("Key Value: %17c", ' ');
-        break;
-    case PS_META_BOOL:
-        printf("Key Value: %15d  ", metadataItem->data.B);
-        break;
-    case PS_META_S32:
-        printf("Key Value: %15d  ", metadataItem->data.S32);
-        break;
-    case PS_META_F32:
-        printf("Key Value: %15.3f  ", metadataItem->data.F32);
-        break;
-    case PS_META_F64:
-        printf("Key Value: %15.3f  ", metadataItem->data.F64);
-        break;
-    case PS_META_STR:
-        printf("Key Value: %15s  ", (char*)metadataItem->data.V);
-        break;
-    default:
-        printf("Bad type: %d ", metadataItem->type);
-    }
-    printf("Key Comment: %s\n", metadataItem->comment);
-}
-
-
-psS32 main( psS32 argc, char* argv[] )
-{
-    psMetadataItem *item1 = NULL;
-    psMetadata *metadata = NULL;
-    psMetadataItem *item2 = NULL;
-    psMetadataItem *item3 = NULL;
-    psMetadataItem *item4 = NULL;
-    psMetadataItem *item5 = NULL;
-    psMetadataItem *badItem = NULL;
-
-
-    // Test A - Allocate metadata items
-    printPositiveTestHeader(stdout, "psMetadata", "Test A - Allocate metadata items");
-    item1 = psMetadataItemAlloc("myItem1", PS_META_BOOL, "I am a boolean", true);
-    item2 = psMetadataItemAlloc("myItem2", PS_META_S32, "I am a signed integer", 111);
-    item3 = psMetadataItemAlloc("myItem3", PS_META_F32, "I am a single precision floating point", 222.222);
-    item4 = psMetadataItemAlloc("myItem4", PS_META_F64, "I am a double precision floating point", 333.333);
-    item5 = psMetadataItemAlloc("myItem5", PS_META_STR, "I am a string", "HELLO WORLD");
-    printMetadataItem(item1);
-    printMetadataItem(item2);
-    printMetadataItem(item3);
-    printMetadataItem(item4);
-    printMetadataItem(item5);
-    printFooter(stdout, "psMetadata", "Test A - Allocate metadata items", true);
-
-
-    // Test B - Attempt to create metadata item with null name
-    printNegativeTestHeader(stdout,"psMetadata", "Test B - Attempt to create metadata item with null name",
-                            "Null value for name not allowed", 0);
-    psLogMsg(__func__,PS_LOG_INFO,"Following should produce error for null name.");
-    badItem = psMetadataItemAlloc(NULL, PS_META_STR, "I am a string", "HELLO WORLD");
-    if (badItem != NULL) {
-        psError(PS_ERR_UNKNOWN, true,"psMetadataItemAlloc did not return null with null name item.");
-        return 10;
-    }
-    printFooter(stdout, "psMetadata", "Test B - Attempt to create metadata item with null name", true);
-
-
-    // Test C - Attempt to create metadata item with invalid type
-    printNegativeTestHeader(stdout,"psMetadata", "Test C - Attempt to create metadata item with invalid type",
-                            "Invalid psMetadataType: 6", 0);
-    badItem = psMetadataItemAlloc("badItem", -1, "I am bad", "Bad comment");
-    printFooter(stdout, "psMetadata", "Test C - Attempt to create metadata item with invalid type", true);
-
-
-    // Test D - Allocate metadata
-    printPositiveTestHeader(stdout, "psMetadata", "Test D - Allocate metadata");
-    metadata = psMetadataAlloc();
-    printFooter(stdout, "psMetadata", "Test D - Allocate metadata", true);
-
-
-    // Test E - Attempt add metadata item to null metadata
-    printNegativeTestHeader(stdout,"psMetadata", "Test E - Attempt to add metadata item to null metadata",
-                            "Null metadata collection not allowed", 0);
-    psMetadataAddItem(NULL, item1, PS_LIST_HEAD, PS_META_DEFAULT);
-    printFooter(stdout, "psMetadata", "Test E - Attempt to add metadata item to null metadata", true);
-
-
-    // Test F - Attempt add null metadata item to metadata
-    printNegativeTestHeader(stdout,"psMetadata", "Test F - Attempt to add null metadata item to metadata",
-                            "Null metadata item not allowed", 0);
-    psMetadataAddItem(metadata, NULL, PS_LIST_HEAD, PS_META_DEFAULT);
-    printFooter(stdout, "psMetadata", "Test F - Attempt to add null metadata item to metadata", true);
-
-
-    // Test G - Free psMetadata
-    printPositiveTestHeader(stdout, "psMetadata", "Test G - Free psMetadata");
-    psFree(item1);
-    psFree(item2);
-    psFree(item3);
-    psFree(item4);
-    psFree(item5);
-    psFree(badItem);
-    psFree(metadata);
-    if(psMemCheckLeaks(0, NULL, stdout,false) ) {
-        psError(PS_ERR_UNKNOWN,true,"Memory leaks detected.");
-        return 10;
-    }
-    psMemCheckCorruption(0);
-    psS32 nBad = psMemCheckCorruption(0);
-    if(nBad) {
-        printf("ERROR: Found %d bad memory blocks\n", nBad);
-    }
-    printFooter(stdout, "psMetadata", "Test G - Free psMetadata", true);
-
-    return 0;
-}
Index: trunk/psLib/test/collections/tst_psMetadata_03.c
===================================================================
--- trunk/psLib/test/collections/tst_psMetadata_03.c	(revision 4493)
+++ 	(revision )
@@ -1,241 +1,0 @@
-/** @file  tst_psMetadata_03.c
-*
-*  @brief Test driver for psMetadata functions
-*
-*  This test driver contains the following tests for psMetadata:
-*     Test A - Allocate metadata and items
-*     Test B - Remove items from metadata by name
-*     Test C - Remove items from metadata by index
-*     Test D - Attempt to use null metadata
-*     Test E - Attempt to remove non-existant metadata item by name
-*     Test F - Attempt to remove non-existant metadata item by index
-*     Test G - Attempt to add item to an invalid metadata structure
-*     Test H - Attempt to add item to an invalid metadata structure
-*     Test I - Attempt to add item with a null name
-*     Test J - Attempt to add item to an invalid metadata structure
-*     Test K - Free psMetadata
-*
-*  @author  Ross Harman, MHPCC
-*
-*  @version $Revision: 1.17 $  $Name: not supported by cvs2svn $
-*  @date  $Date: 2005-04-07 20:27:41 $
-*
-*  Copyright 2004-2005 Maui High Performance Computing Center, University of Hawaii
-*
-*/
-
-#include <string.h>
-#include "pslib_strict.h"
-#include "psTest.h"
-
-static void printMetadataItem(psMetadataItem *metadataItem)
-{
-    printf("Key Name: %8s  ", metadataItem->name);
-    printf("Key mdType: 0x%08x  ", metadataItem->type);
-
-    switch (metadataItem->type) {
-    case PS_META_MULTI:
-        printf("Key Value: %17c", ' ');
-        break;
-    case PS_META_BOOL:
-        printf("Key Value: %15d  ", metadataItem->data.B);
-        break;
-    case PS_META_S32:
-        printf("Key Value: %15d  ", metadataItem->data.S32);
-        break;
-    case PS_META_F32:
-        printf("Key Value: %15.3f  ", metadataItem->data.F32);
-        break;
-    case PS_META_F64:
-        printf("Key Value: %15.3f  ", metadataItem->data.F64);
-        break;
-    case PS_META_STR:
-        printf("Key Value: %15s  ", (char*)metadataItem->data.V);
-        break;
-    default:
-        printf("Bad type: %d ", metadataItem->type);
-    }
-    printf("Key Comment: %s\n", metadataItem->comment);
-}
-
-
-psS32 main( psS32 argc, char* argv[] )
-{
-    psMetadataItem *item1 = NULL;
-    psMetadataItem *item2 = NULL;
-    psMetadataItem *item3 = NULL;
-    psMetadataItem *item4 = NULL;
-    psMetadataItem *errItem = NULL;
-    psMetadata *metadata = NULL;
-    psMetadata *errMetadata = NULL;
-    psHash *mdTable = NULL;
-    psList *mdList = NULL;
-    char *errName = NULL;
-
-    // Test A - Allocate metadata and items
-    printPositiveTestHeader(stdout, "psMetadata", "Test A - Allocate metadata items");
-    metadata = psMetadataAlloc();
-    item1 = psMetadataItemAlloc("myItem1", PS_META_BOOL, "I am a boolean", true);
-    item2 = psMetadataItemAlloc("myItem2", PS_META_S32, "I am a integer", 55);
-    item3 = psMetadataItemAlloc("myItem3", PS_META_BOOL, "I am a boolean", false);
-    item4 = psMetadataItemAlloc("myItem4", PS_META_S32, "I am a integer", 66);
-    errItem = psMetadataItemAlloc("errItem", PS_META_S32, "I am a integer", 99);
-    printMetadataItem(item1);
-    printMetadataItem(item2);
-    printMetadataItem(item3);
-    printMetadataItem(item4);
-    printFooter(stdout, "psMetadata", "Test A - Allocate metadata items", true);
-
-
-    // Test B - Remove items from metadata by name
-    printPositiveTestHeader(stdout, "psMetadata", "Test B - Remove items from metadata by name");
-    if(!psMetadataAddItem(metadata, item1, PS_LIST_HEAD, PS_META_DEFAULT)) {
-        psError(PS_ERR_UNKNOWN, true,"psMetadataAddItem did not return true when adding by name.");
-        return 10;
-    }
-    if(!psMetadataAdd(metadata,PS_LIST_HEAD,"myItem2", PS_META_S32, "I am S32 integer",77)) {
-        psError(PS_ERR_UNKNOWN, true,"psMetadataAddItem did not return true when adding by name.");
-        return 11;
-    }
-    if (!psMetadataRemove(metadata, 0, "myItem1")) {
-        psError(PS_ERR_UNKNOWN, true,"psMetadataRemove did not return true when removing by name.");
-        return 12;
-    }
-    if (!psMetadataRemove(metadata, 0, "myItem2")) {
-        psError(PS_ERR_UNKNOWN, true,"psMetadataRemove did not return true when removing by name.");
-        return 13;
-    }
-    printFooter(stdout, "psMetadata", "Test B - Remove items from metadata by name", true);
-
-
-    // Test C - Remove items from metadata by index
-    printPositiveTestHeader(stdout, "psMetadata", "Test C - Remove items from metadata by index");
-    if ( ! psMetadataAddItem(metadata, item3, PS_LIST_HEAD, PS_META_DEFAULT) ) {
-        psError(PS_ERR_UNKNOWN, true,"psMetadataAddItem did not return true when adding by index.");
-        return 14;
-    }
-    if ( ! psMetadataAdd(metadata,PS_LIST_HEAD,"myItem4", PS_META_S32, "I am S32 integer",88) ) {
-        psError(PS_ERR_UNKNOWN, true,"psMetadataAddItem did not return true when adding by index.");
-        return 15;
-    }
-    if( ! psMetadataRemove(metadata, 0, NULL) ) {
-        psError(PS_ERR_UNKNOWN, true,"psMetadataRemove did not return true when removing by index.");
-        return 16;
-    }
-    if ( ! psMetadataRemove(metadata, 0, NULL ) ) {
-        psError(PS_ERR_UNKNOWN, true,"psMetadataRemove did not return true when removing by index.");
-        return 17;
-    }
-    printFooter(stdout, "psMetadata", "Test C - Remove items from metadata by index", true);
-
-
-    // Test D - Attempt to use null metadata
-    printNegativeTestHeader(stdout,"psMetadata", "Test D - Attempt to use null metadata",
-                            "Null metadata collection not allowed", 0);
-    if ( psMetadataRemove(NULL, 0, NULL) ) {
-        psError(PS_ERR_UNKNOWN, true,"psMetadataRemove did not return false when removing from null metadata.");
-        return 18;
-    }
-    printFooter(stdout, "psMetadata", "Test D - Attempt to use null metadata", true);
-
-
-    // Test E - Attempt to remove non-existant metadata item by name
-    printNegativeTestHeader(stdout,"psMetadata", "Test E - Attempt to remove non-existant metadata item by name",
-                            "Couldn't find metadata item. Name: AARGH", 0);
-    if( psMetadataRemove(metadata, 0, "AARGH") ) {
-        psError(PS_ERR_UNKNOWN, true,"psMetadataRemove did not return false when removing non-existant item.");
-        return 19;
-    }
-    printFooter(stdout, "psMetadata", "Test E - Attempt to remove non-existant metadata item by name", true);
-
-
-    // Test F - Attempt to remove non-existant metadata item by index
-    printNegativeTestHeader(stdout,"psMetadata", "Test E - Attempt to remove non-existant metadata item by index",
-                            "Couldn't find metadata item in list. Index: 22", 0);
-    if( psMetadataRemove(metadata, 22, NULL) ) {
-        psError(PS_ERR_UNKNOWN, true,"psMetadataRemove did not return false when removing non-existant item.");
-        return 20;
-    }
-    printFooter(stdout, "psMetadata", "Test E - Attempt to remove non-existant metadata item by index", true);
-
-
-    // Test G - Attempt to add item to an invalid metadata structure
-    printNegativeTestHeader(stdout,"psMetadata","Test G - Attempt to add item to metadata w/o hash table",
-                            "Couldn't add item to invalid metadata structure.",0);
-    errMetadata = psMetadataAlloc();
-    mdTable = errMetadata->table;
-    errMetadata->table = NULL;
-    if ( psMetadataAddItem(errMetadata, item3, PS_LIST_HEAD, PS_META_DEFAULT) ) {
-        psError(PS_ERR_UNKNOWN, true,"psMetadataAddItem did not return false w/ invalid metadata struct w/o hash table.");
-        return 21;
-    }
-    if ( psMetadataRemove(errMetadata, PS_LIST_HEAD, "errItem") ) {
-        psError(PS_ERR_UNKNOWN, true,"psMetadataRemove did not return false w/ invalid metadata struct w/o hash table.");
-        return 31;
-    }
-    errMetadata->table = mdTable;
-    printFooter(stdout,"psMetadata","Test G - Attempt to add item to invalid metadata w/o hash table", true);
-
-    // Test H - Attempt to add item to an invalid metadata structure
-    printNegativeTestHeader(stdout,"psMetadata","Test H - Attempt to add item to metadata w/o link list",
-                            "Couldn't add item to invalid metadata structure.",0);
-    mdList = errMetadata->list;
-    errMetadata->list = NULL;
-    if ( psMetadataAddItem(errMetadata, item3, PS_LIST_HEAD, PS_META_DEFAULT) ) {
-        psError(PS_ERR_UNKNOWN, true,"psMetadataAddItem did not return false w/ invalid metadata struct w/o link list.");
-        return 22;
-    }
-    if ( psMetadataRemove(errMetadata, PS_LIST_HEAD, "errItem") ) {
-        psError(PS_ERR_UNKNOWN, true,"psMetadataRemove did not return false w/ invalid metadata struct w/o link list.");
-        return 32;
-    }
-    errMetadata->list = mdList;
-    printFooter(stdout,"psMetadata","Test H - Attempt to add item to invalid metadata w/o link list", true);
-
-    // Test I - Attempt to add item with a null name
-    printNegativeTestHeader(stdout,"psMetadata","Test I - Attempt to add item with null name",
-                            "Couldn't add item with null name.",0);
-    errName = errItem->name;
-    errItem->name = NULL;
-    if ( psMetadataAddItem(errMetadata, errItem, PS_LIST_HEAD, PS_META_DEFAULT) ) {
-        psError(PS_ERR_UNKNOWN, true,"psMetadataAddItem did not return false with item with null name.");
-        return 23;
-    }
-    errItem->name = errName;
-    printFooter(stdout,"psMetadata","Test I - Attempt to add item with null name", true);
-
-    // Test J - Attempt to add item to an invalid metadata structure
-    printNegativeTestHeader(stdout,"psMetadata","Test J - Attempt to add item to metadata w/o hash table",
-                            "Couldn't add item to invalid metadata structure.",0);
-    mdTable = errMetadata->table;
-    errMetadata->table = NULL;
-    if (psMetadataAdd(errMetadata, PS_LIST_HEAD, "errItem", PS_META_S32, "Integer",22) ) {
-        psError(PS_ERR_UNKNOWN, true,"psMetadataAddItem did not return false w/ invalid metadata struct w/o hash table.");
-        return 24;
-    }
-    errMetadata->table = mdTable;
-    printFooter(stdout,"psMetadata","Test J - Attempt to add item to invalid metadata w/o hash table", true);
-
-    // Test K - Free psMetadata
-    printPositiveTestHeader(stdout, "psMetadata", "Test K - Free psMetadata");
-    psFree(metadata);
-    psFree(item1);
-    psFree(item2);
-    psFree(item3);
-    psFree(item4);
-    psFree(errItem);
-    psFree(errMetadata);
-    if( psMemCheckLeaks(0, NULL, stdout,false) != 0 ) {
-        psError(PS_ERR_UNKNOWN, true,"Memory leaks detected.");
-        return 25;
-    }
-    psMemCheckCorruption(0);
-    psS32 nBad = psMemCheckCorruption(0);
-    if(nBad) {
-        printf("ERROR: Found %d bad memory blocks\n", nBad);
-    }
-    printFooter(stdout, "psMetadata", "Test K - Free psMetadata", true);
-
-
-    return 0;
-}
Index: trunk/psLib/test/collections/tst_psMetadata_04.c
===================================================================
--- trunk/psLib/test/collections/tst_psMetadata_04.c	(revision 4493)
+++ 	(revision )
@@ -1,292 +1,0 @@
-
-/** @file  tst_psMetadata_04.c
-*
-*  @brief Test driver for psMetadata functions
-*
-*  This test driver contains the following tests for psMetadata:
-*     Test A - Allocate metadata and items
-*     Test B - Lookup metadata item by name
-*     Test C - Attempt to use null metadata
-*     Test D - Attempt to use null key
-*     Test E - Attempt to lookup non-existant metadata item
-*     Test F - Lookup metadata item by index
-*     Test G - Lookup metadata item and return psS32 value
-*     Test H - Lookup metadata item and return psF64 value
-*     Test I - Lookup metadata item and return psVector pointer
-*     Test J - Attempt to use null metadata
-*     Test K - Attempt to get non-existant metadata item
-*     Test L - Attempt to look up with an invalid metadata object
-*     Test M - Attempt get item  with an invalid metadata object
-*     Test N - Attempt get value of non-existant metadata item
-*     Test O - Free psMetadata
-*
-*  @author  Ross Harman, MHPCC
-*
-*  @version $Revision: 1.19 $  $Name: not supported by cvs2svn $
-*  @date  $Date: 2005-06-17 23:44:22 $
-*
-*  Copyright 2004-2005 Maui High Performance Computing Center, University of Hawaii
-*
-*/
-
-#include <string.h>
-#include "pslib_strict.h"
-#include "psTest.h"
-
-static void printMetadataItem(psMetadataItem *metadataItem)
-{
-    printf("Key Name: %8s  ", metadataItem->name);
-    printf("Key mdType: 0x%08x  ", metadataItem->type);
-
-    switch (metadataItem->type) {
-    case PS_META_MULTI:
-        printf("Key Value: %17c", ' ');
-        break;
-    case PS_META_BOOL:
-        printf("Key Value: %15d  ", metadataItem->data.B);
-        break;
-    case PS_META_S32:
-        printf("Key Value: %15d  ", metadataItem->data.S32);
-        break;
-    case PS_META_F32:
-        printf("Key Value: %15.3f  ", metadataItem->data.F32);
-        break;
-    case PS_META_F64:
-        printf("Key Value: %15.3f  ", metadataItem->data.F64);
-        break;
-    case PS_META_STR:
-        printf("Key Value: %15s  ", (char*)metadataItem->data.V);
-        break;
-    default:
-        printf("Bad type: %d ", metadataItem->type);
-    }
-    printf("Key Comment: %s\n", metadataItem->comment);
-}
-
-
-psS32 main( psS32 argc, char* argv[] )
-{
-    psBool status = 0;
-    psMetadataItem *item1 = NULL;
-    psMetadataItem *item2 = NULL;
-    psMetadataItem *item3 = NULL;
-    psMetadataItem *item4 = NULL;
-    psMetadataItem *item5 = NULL;
-    psMetadataItem *item6 = NULL;
-    psMetadataItem *item = NULL;
-    psMetadata *metadata = NULL;
-    psHash* tmpTable = NULL;
-    psList* tmpList = NULL;
-
-
-    // Test A - Allocate metadata and items
-    printPositiveTestHeader(stdout, "psMetadata", "Test A - Allocate metadata items");
-    psVector *vec = psVectorAlloc(5, PS_TYPE_S32);
-    metadata = psMetadataAlloc();
-    item1 = psMetadataItemAlloc("myItem1", PS_META_BOOL, "I am a boolean", true);
-    item2 = psMetadataItemAlloc("myItem2", PS_META_S32, "I am a integer", 55);
-    item3 = psMetadataItemAlloc("myItem3", PS_META_BOOL, "I am a boolean", false);
-    item4 = psMetadataItemAlloc("myItem4", PS_META_S32, "I am a integer", 66);
-    item5 = psMetadataItemAlloc("myItem5", PS_META_F64, "I am a double", 3.14);
-    item6 = psMetadataItemAlloc("myItem6", PS_META_VEC, "I am a vector", vec);
-    printMetadataItem(item1);
-    printMetadataItem(item2);
-    printMetadataItem(item3);
-    printMetadataItem(item4);
-    printMetadataItem(item5);
-    psMetadataAddItem(metadata, item1, PS_LIST_HEAD, PS_META_DEFAULT);
-    psMetadataAddItem(metadata, item2, PS_LIST_HEAD, PS_META_DEFAULT);
-    psMetadataAddItem(metadata, item3, PS_LIST_HEAD, PS_META_DEFAULT);
-    psMetadataAddItem(metadata, item4, PS_LIST_HEAD, PS_META_DEFAULT);
-    psMetadataAddItem(metadata, item5, PS_LIST_HEAD, PS_META_DEFAULT);
-    psMetadataAddItem(metadata, item6, PS_LIST_HEAD, PS_META_DEFAULT);
-    psMemDecrRefCounter(vec); // vs. psFree, which now would set vec to NULL (want to keep it to comparison later)
-    printFooter(stdout, "psMetadata", "Test A - Allocate metadata items", true);
-
-
-    // Test B - Lookup metadata item by name
-    printPositiveTestHeader(stdout, "psMetadata", "Test B - Lookup metadata item by name");
-    item = psMetadataLookup(metadata, "myItem2");
-    printf("Found item named %s\n", item->name);
-    if(item == NULL) {
-        printf("ERROR: Item should not be null\n");
-        return 10;
-    }
-    printFooter(stdout, "psMetadata", "Test B - Lookup metadata item by name", true);
-
-
-    // Test C - Attempt to use null metadata
-    printNegativeTestHeader(stdout,"psMetadata", "Test C - Attempt to use null metadata",
-                            "Null metadata collection not allowed", 0);
-    if ( psMetadataLookup(NULL, "myItem2") != NULL ) {
-        psError(PS_ERR_UNKNOWN, true,"psMetadataLookup did not return NULL with null metadata.");
-        return 11;
-    }
-    printFooter(stdout, "psMetadata", "Test C - Attempt to use null metadata", true);
-
-
-    // Test D - Attempt to use null key
-    printNegativeTestHeader(stdout,"psMetadata", "Test D - Attempt to use null key",
-                            "Null key name not allowed", 0);
-    if ( psMetadataLookup(metadata, NULL) != NULL ) {
-        psError(PS_ERR_UNKNOWN, true,"psMetadata did not return NULL with null key.");
-        return 12;
-    }
-    printFooter(stdout, "psMetadata", "Test D - Attempt to use null key", true);
-
-
-    // Test E - Attempt to lookup non-existant metadata item
-    printNegativeTestHeader(stdout,"psMetadata", "Test E - Attempt to lookup non-existant metadata item",
-                            "Couldn't find metadata item. Name: AARGH", 0);
-    if ( psMetadataLookup(metadata, "AARGH") != NULL ) {
-        psError(PS_ERR_UNKNOWN, true,"psMetadata did not return NULL with a non-existant item.");
-        return 13;
-    }
-    printFooter(stdout, "psMetadata", "Test E - Attempt to lookup non-existant metadata item", true);
-
-
-    // Test F - Lookup metadata item by index
-    printPositiveTestHeader(stdout, "psMetadata", "Test F - Lookup metadata item by index");
-    item = psMetadataGet(metadata, 0);
-    printf("Found item named %s\n", item->name);
-    if(item == NULL) {
-        printf("ERROR: Item should not be null\n");
-        return 14;
-    }
-    printFooter(stdout, "psMetadata", "Test F - Lookup metadata item by index", true);
-
-    // Test G - Lookup metadata item and return psS32 value
-    printPositiveTestHeader(stdout, "psMetadata", "Test G - Lookup metadata item and return psS32 value");
-    psS32 valueS32 = 0;
-    valueS32 = psMetadataLookupS32(&status, metadata, "myItem2");
-    if(valueS32 != 55) {
-        printf("ERROR: Bad value, %d, Expected 55\n", valueS32);
-        return 15;
-    } else if(! status) {
-        printf("ERROR: Bad status, %d\n", status);
-        return 15;
-    }
-    printFooter(stdout, "psMetadata", "Test G - Lookup metadata item and return psS32 value", true);
-
-    // Test H - Lookup metadata item and return psF64 value
-    printPositiveTestHeader(stdout, "psMetadata", "Test H - Lookup metadata item and return psF64 value");
-    psF64 valueF64 = 0.0;
-    valueF64 = psMetadataLookupF64(&status, metadata, "myItem5");
-    if(fabs(valueF64-3.14) > FLT_EPSILON) {
-        printf("ERROR: Bad value, %g, Expected 3.14\n", valueF64);
-        return 16;
-    } else if(! status) {
-        printf("ERROR: Bad status, %d\n", status);
-        return 16;
-    }
-    printFooter(stdout, "psMetadata", "Test H - Lookup metadata item and return psF64 value", true);
-
-    // Test I - Lookup metadata item and return psVector pointer
-    printPositiveTestHeader(stdout, "psMetadata", "Test I - Lookup metadata item and return psVector pointer");
-    psVector *valueVec = NULL;
-    valueVec = psMetadataLookupPtr(&status, metadata, "myItem6");
-    if(valueVec != vec) {
-        printf("ERROR: Bad vector pointer\n");
-        return 17;
-    } else if(! status) {
-        printf("ERROR: Bad status, %d\n", status);
-        return 17;
-    }
-    printFooter(stdout, "psMetadata", "Test I - Lookup metadata item and return psVector pointer", true);
-
-
-    // Test J - Attempt to use null metadata
-    printNegativeTestHeader(stdout,"psMetadata", "Test J - Attempt to use null metadata",
-                            "Null metadata collection not allowed", 0);
-    item = psMetadataGet(NULL, 0);
-    if ( item != NULL ) {
-        psError(PS_ERR_UNKNOWN, true,"psMetadataGet did not return NULL with null metadata structure");
-        return 18;
-    }
-    printFooter(stdout, "psMetadata", "Test J - Attempt to use null metadata", true);
-
-
-    // Test K - Attempt to get non-existant metadata item
-    printNegativeTestHeader(stdout,"psMetadata", "Test K - Attempt to get non-existant metadata item",
-                            "Couldn't find metadata item with given index. Index: 22", 0);
-    if ( psMetadataGet(metadata, 22) != NULL ) {
-        psError(PS_ERR_UNKNOWN, true,"psMetadataGet did not return NULL with non-existant metadata item");
-        return 19;
-    }
-    printFooter(stdout, "psMetadata", "Test K - Attempt to get non-existant metadata item", true);
-
-    // Test L - Attempt to look up with an invalid metadata object
-    printNegativeTestHeader(stdout,"psMetadata","Test L - Attemp to look up with an invalid metadata",
-                            "Lookup item with invalid metadata object.", 0 );
-    tmpTable = metadata->table;
-    metadata->table = NULL;
-    if ( psMetadataLookup(metadata,"myItem2") != NULL ) {
-        psError(PS_ERR_UNKNOWN, true,"psMetadataLookup did not return null for invalid metadata object");
-        return 20;
-    }
-    metadata->table = tmpTable;
-    printFooter(stdout, "psMetadata","Test L - Attempt to lookup an invalid metadata object.",true);
-
-    // Test M - Attempt get item with an invalid metadata object
-    printNegativeTestHeader(stdout,"psMetadata","Test M - Attempt to get item with an invalid metadata",
-                            "Get item with invalid metadata object.", 0 );
-    tmpList = metadata->list;
-    metadata->list = NULL;
-    if ( psMetadataGet(metadata,0) != NULL ) {
-        psError(PS_ERR_UNKNOWN, true,"psMetadataLookup did not return null for invalid metadata object");
-        return 21;
-    }
-    metadata->list = tmpList;
-    printFooter(stdout, "psMetadata","Test M - Attempt to get item with  invalid metadata object",true);
-
-    // Test N - Attempt get psS32 value of non-existant metadata item
-    printPositiveTestHeader(stdout, "psMetadata", "Test N - Attempt get psS32 value of non-existant metadata item");
-    valueS32 = psMetadataLookupS32(&status, metadata, "myItem22");
-    if(status) {
-        printf("ERROR: Bad status, %d, \n", status);
-        return 22;
-    }
-    printFooter(stdout, "psMetadata","Test N - Attempt get psS32 value of non-existant metadata item",true);
-
-    // Test O - Attempt get psF64 value of non-existant metadata item
-    printPositiveTestHeader(stdout, "psMetadata", "Test O - Attempt get psF64 value of non-existant metadata item");
-    valueF64 = psMetadataLookupF64(&status, metadata, "myItem22");
-    if(status) {
-        printf("ERROR: Bad status, %d, \n", status);
-        return 23;
-    }
-    printFooter(stdout, "psMetadata","Test O - Attempt get psF64 value of non-existant metadata item",true);
-
-    // Test P - Attempt get psVector value of non-existant metadata item
-    printPositiveTestHeader(stdout, "psMetadata", "Test P - Attempt get psVector value of non-existant metadata item");
-    valueVec = psMetadataLookupPtr(&status, metadata, "myItem22");
-    if(status) {
-        printf("ERROR: Bad status, %d, \n", status);
-        return 24;
-    }
-    printFooter(stdout, "psMetadata","Test P - Attempt get psVector value of non-existant metadata item",true);
-
-    // Test Q - Free psMetadata
-    printPositiveTestHeader(stdout, "psMetadata", "Test Q - Free psMetadata");
-    psFree(metadata);
-    psFree(item1);
-    psFree(item2);
-    psFree(item3);
-    psFree(item4);
-    psFree(item5);
-    psFree(item6);
-    if ( psMemCheckLeaks(0, NULL, stdout,false) != 0 ) {
-        psError(PS_ERR_UNKNOWN, true,"memory leaks detected.");
-        return 23;
-    }
-    psMemCheckCorruption(0);
-    psS32 nBad = psMemCheckCorruption(0);
-    if(nBad) {
-        printf("ERROR: Found %d bad memory blocks\n", nBad);
-        return 24;
-    }
-    printFooter(stdout, "psMetadata", "Test Q - Free psMetadata", true);
-
-
-    return 0;
-}
Index: trunk/psLib/test/collections/tst_psMetadata_05.c
===================================================================
--- trunk/psLib/test/collections/tst_psMetadata_05.c	(revision 4493)
+++ 	(revision )
@@ -1,342 +1,0 @@
-
-
-/** @file  tst_psMetadata_05.c
-*
-*  @brief Test driver for psMetadata functions
-*
-*  This test driver contains the following tests for psMetadata:
-*     Test A - Allocate metadata and items
-*     Test B - Set iterator at second index
-*     Test C - Get next item at index
-*     Test D - Get next item at index and string
-*     Test E - Get previous item at index
-*     Test F - Write metadata item to file
-*     Test G - Attempt to use null metadata with setIterator
-*     Test H - Attempt to use null metadata with getNext
-*     Test I - Attempt to use null metadata with getPrevious
-*     Test J - Attempt to use null file with itemPrint
-*     Test K - Attempt to use null format with itemPrint
-*     Test L - Attempt to use null item with itemPrint
-*     Test M - Free psMetadata
-*
-*  @author  Ross Harman, MHPCC
-*
-*  @version $Revision: 1.24 $  $Name: not supported by cvs2svn $
-*  @date  $Date: 2005-04-07 20:27:41 $
-*
-*  Copyright 2004-2005 Maui High Performance Computing Center, University of Hawaii
-*
-*/
-
-#include <string.h>
-#include "pslib_strict.h"
-#include "psTest.h"
-
-static void printMetadataItem(psMetadataItem *metadataItem)
-{
-    printf("Key Name: %8s  ", metadataItem->name);
-    printf("Key mdType: 0x%08x  ", metadataItem->type);
-
-    switch (metadataItem->type) {
-    case PS_META_MULTI:
-        printf("Key Value: %17c", ' ');
-        break;
-    case PS_META_BOOL:
-        printf("Key Value: %15d  ", metadataItem->data.B);
-        break;
-    case PS_META_S32:
-        printf("Key Value: %15d  ", metadataItem->data.S32);
-        break;
-    case PS_META_F32:
-        printf("Key Value: %15.3f  ", metadataItem->data.F32);
-        break;
-    case PS_META_F64:
-        printf("Key Value: %15.3f  ", metadataItem->data.F64);
-        break;
-    case PS_META_STR:
-        printf("Key Value: %15s  ", (char*)metadataItem->data.V);
-        break;
-    default:
-        printf("Bad type: %d ", metadataItem->type);
-    }
-    printf("Key Comment: %s\n", metadataItem->comment);
-}
-
-
-psS32 main( psS32 argc, char* argv[] )
-{
-    psMetadataItem *item1 = NULL;
-    psMetadataItem *item2 = NULL;
-    psMetadataItem *item3 = NULL;
-    psMetadataItem *item4 = NULL;
-    psMetadataItem *item5 = NULL;
-    psMetadataItem *item6 = NULL;
-    psMetadataItem *item7 = NULL;
-    //    psMetadataItem *item8 = NULL;
-    psMetadata *metadata = NULL;
-    FILE *fd = NULL;
-
-    // Test A - Allocate metadata and items
-    printPositiveTestHeader(stdout, "psMetadata", "Test A - Allocate metadata items");
-    metadata = psMetadataAlloc();
-    item1 = psMetadataItemAlloc("myItem1", PS_META_BOOL, "I am a boolean", true);
-    item2 = psMetadataItemAlloc("myItem2", PS_META_S32, "I am a integer", 55);
-    item3 = psMetadataItemAlloc("myItem3", PS_META_BOOL, "I am a boolean", false);
-    item4 = psMetadataItemAlloc("myItem4", PS_META_S32, "I am a integer", 66);
-    item5 = psMetadataItemAlloc("myItem5", PS_META_F32, "I am a float", 3.14);
-    item6 = psMetadataItemAlloc("myItem6", PS_META_F64,"I am a double", 6.28);
-    item7 = psMetadataItemAlloc("myItem7", PS_META_STR, "I am a string", "GNIRTS");
-    //    item8 = psMetadataItemAlloc("myItem8", PS_TYPE_PTR, PS_META_UNKNOWN, "I am unknown");
-    printMetadataItem(item1);
-    printMetadataItem(item2);
-    printMetadataItem(item3);
-    printMetadataItem(item4);
-    psMetadataAddItem(metadata, item1, PS_LIST_HEAD, PS_META_DEFAULT);
-    psMetadataAddItem(metadata, item2, PS_LIST_HEAD, PS_META_DEFAULT);
-    psMetadataAddItem(metadata, item3, PS_LIST_HEAD, PS_META_DEFAULT);
-    psMetadataAddItem(metadata, item4, PS_LIST_HEAD, PS_META_DEFAULT);
-    printFooter(stdout, "psMetadata", "Test A - Allocate metadata items", true);
-
-    /*
-        // Test B - Set iterator at second index
-        printPositiveTestHeader(stdout, "psMetadata", "Test B - Set iterator at second index");
-        if (!psMetadataSetIterator(metadata, 2)) {
-            psError(PS_ERR_UNKNOWN,true,"Failed to set iterator");
-            return 100;
-        }
-        printFooter(stdout, "psMetadata", "Test B - Set iterator at second index", true);
-
-
-        // Test C - Get next item at index
-        printPositiveTestHeader(stdout, "psMetadata", "Test C - Get next item at index");
-        item = psMetadataGetNext(metadata, NULL, 2);
-        if(item == NULL) {
-            printf("ERROR: Item should not be null\n");
-        } else {
-            printf("Found item named %s\n", item->name);
-        }
-        printFooter(stdout, "psMetadata", "Test C - Get next item at index", true);
-
-
-        // Test D - Get next item at index and string
-        printPositiveTestHeader(stdout, "psMetadata", "Test D - Get next item at index and string");
-        item = psMetadataGetNext(metadata, "myItem1", 1);
-        if(item == NULL) {
-            printf("ERROR: Item should not be null\n");
-        } else {
-            printf("Found item named %s\n", item->name);
-        }
-        printFooter(stdout, "psMetadata", "Test D - Get next item at index and string", true);
-
-
-        // Test E - Get previous item at index
-        printPositiveTestHeader(stdout, "psMetadata", "Test E - Get previous item at index");
-        item = psMetadataGetPrevious(metadata, NULL, 1);
-        if(item == NULL) {
-            printf("ERROR: Item should not be null\n");
-        } else {
-            printf("Found item named %s\n", item->name);
-        }
-        if( psMetadataGetPrevious(metadata,"myItem3",1) == NULL) {
-            psError(PS_ERR_UNKNOWN, true,"psMetadataGetPrevious did not return an item from metadata.");
-            return 45;
-        }
-        tmpList = metadata->list;
-        metadata->list = NULL;
-        if ( psMetadataGetPrevious(metadata,NULL,1) != NULL) {
-            psError(PS_ERR_UNKNOWN, true,"psMetadataGetPrevious did not return null for invalid metadata.");
-            return 50;
-        }
-        metadata->list = tmpList;
-        printFooter(stdout, "psMetadata", "Test E - Get previous item at index", true);
-
-    */
-    // Test F - Write metadata item to file
-    printPositiveTestHeader(stdout, "psMetadata", "Test F - Write metadata item to file");
-    fd = fopen("temp/tst_psMetadata05_OUT", "w");
-    if(fd == NULL) {
-        printf("ERROR: Couldn't open file for writing\n");
-    }
-
-    if (psMetadataItemPrint(fd, "S32 = %ld\n", item2) == false) {
-        printf("ERROR: Return type should be true\n");
-        return 10;
-    }
-
-    if (psMetadataItemPrint(fd, "S32 = %+06.1f\n", item2) == false) {
-        printf("ERROR: Return type should be true\n");
-        return 10;
-    }
-
-    if (psMetadataItemPrint(fd, "BOL = %ld\n", item3) == false) {
-        printf("ERROR: Return type should be true\n");
-        return 11;
-    }
-
-    if (psMetadataItemPrint(fd, "F32 = %g\n", item5) == false) {
-        printf("ERROR: Return type should be true\n");
-        return 12;
-    }
-
-    if (psMetadataItemPrint(fd, "F32 = % #i\n", item5) == false) {
-        printf("ERROR: Return type should be true\n");
-        return 12;
-    }
-
-    if (psMetadataItemPrint(fd, "F64 = %g\n", item6) == false) {
-        printf("ERROR: Return type should be true\n");
-        return 13;
-    }
-
-    if (psMetadataItemPrint(fd, "STR = %s\n", item7) == false) {
-        printf("ERROR: Return type should be true\n");
-        return 14;
-    }
-    //    psLogMsg(__func__,PS_LOG_INFO,"Attempt to print item of invalid type, should generate error message");
-    //    if (psMetadataItemPrint(fd, "UNK = \n", item8) == true) {
-    //        printf("ERROR: Return type should be false\n");
-    //        fclose(fd);
-    //        return 15;
-    //    }
-    fclose(fd);
-
-    fd = fopen("temp/tst_psMetadata05_OUT", "r");
-    if(fd == NULL) {
-        printf("ERROR: Couldn't open file for reading\n");
-    }
-
-    char line[256];
-    char truth1[] = "S32 = 55";
-    fgets(line, 256, fd);
-    if(strncmp(line, truth1, 8)) {
-        printf("ERROR: Data in file is not as expected. Value: %s. Should be: %s\n", line, truth1);
-    }
-
-    char truth1b[] = "S32 = +055.0";
-    fgets(line, 256, fd);
-    if(strncmp(line, truth1b, 12)) {
-        printf("ERROR: Data in file is not as expected. Value: %s. Should be: %s\n", line, truth1b);
-    }
-
-    char truth2[] = "BOL = 0";
-    fgets(line, 256, fd);
-    if(strncmp(line, truth2, 7)) {
-        printf("ERROR: Data in file is not as expected. Value: %s. Should be: %s\n", line, truth2);
-    }
-
-    char truth3[] = "F32 = 3.14";
-    fgets(line, 256, fd);
-    if(strncmp(line, truth3, 10)) {
-        printf("ERROR: Data in file is not as expected. Value: %s. Should be: %s\n", line, truth3);
-    }
-
-    char truth3b[] = "F32 =  3";
-    fgets(line, 256, fd);
-    if(strncmp(line, truth3b, 8)) {
-        printf("ERROR: Data in file is not as expected. Value: %s. Should be: %s\n", line, truth3b);
-    }
-
-    char truth4[] = "F64 = 6.28";
-    fgets(line, 256, fd);
-    if(strncmp(line, truth4, 10)) {
-        printf("ERROR: Data in file is not as expected. Value: %s. Should be: %s\n", line, truth4);
-    }
-
-    char truth5[] = "STR = GNIRTS";
-    fgets(line, 256, fd);
-    if(strncmp(line, truth5, 12)) {
-        printf("ERROR: Data in file is not as expected. Value: %s. Should be: %s\n", line, truth5);
-    }
-
-    fclose(fd);
-    printFooter(stdout, "psMetadata", "Test F - Write metadata item to file", true);
-    /*
-        // Test G - Attempt to use null metadata with setIterator
-        printNegativeTestHeader(stdout,"psMetadata", "Test G - Attempt to use null metadata with setIterator",
-                                "Null metadata collection not allowed", 0);
-        if( psMetadataSetIterator(NULL, 0)) {
-            psError(PS_ERR_UNKNOWN,true,"Set iterator did not detect invalid parameter.");
-            return 101;
-        }
-        tmpList = metadata->list;
-        metadata->list = NULL;
-        if( psMetadataSetIterator(metadata,0)) {
-            psError(PS_ERR_UNKNOWN,true,"Set iterator did not detect null list.");
-            return 102;
-        }
-        metadata->list = tmpList;
-        printFooter(stdout, "psMetadata", "Test G - Attempt to use null metadata with setIterator", true);
-
-
-        // Test H - Attempt to use null metadata with getNext
-        printNegativeTestHeader(stdout,"psMetadata", "Test H - Attempt to use null metadata with getNext",
-                                "Null metadata collection not allowed", 0);
-        if( psMetadataGetNext(NULL, "myItem2", 0) != NULL ) {
-            psError(PS_ERR_UNKNOWN, true,"psMetadataGetNext did not return null for null metadata.");
-            return 40;
-        }
-        tmpList = metadata->list;
-        metadata->list = NULL;
-        if ( psMetadataGetNext(metadata, "myItem2", 0) != NULL ) {
-            psError(PS_ERR_UNKNOWN, true,"psMetadataGetNext did not return null for invalid metadata.");
-            return 41;
-        }
-        metadata->list = tmpList;
-
-        printFooter(stdout, "psMetadata", "Test H - Attempt to use null metadata with getNext", true);
-
-
-        // Test I - Attempt to use null metadata with getPrevious
-        printNegativeTestHeader(stdout,"psMetadata", "Test I - Attempt to use null metadata with getPrevious",
-                                "Null metadata collection not allowed", 0);
-        psMetadataGetPrevious(NULL, "myItem2", 0);
-        printFooter(stdout, "psMetadata", "Test I - Attempt to use null metadata with getPrevious", true);
-
-    */
-    // Test J - Attempt to use null file with itemPrint
-    printNegativeTestHeader(stdout,"psMetadata", "Test J - Attempt to use null file with itemPrint",
-                            "Null file descriptor not allowed", 0);
-    psMetadataItemPrint(NULL, "Item value: %ld", item2);
-    printFooter(stdout, "psMetadata", "Test J - Attempt to use null file with itemPrint", true);
-
-
-    // Test K - Attempt to use null format with itemPrint
-    printNegativeTestHeader(stdout,"psMetadata", "Test K - Attempt to use null format with itemPrint",
-                            "Null format not allowed", 0);
-    psMetadataItemPrint(fd, NULL, item2);
-    printFooter(stdout, "psMetadata", "Test K - Attempt to use null format with itemPrint", true);
-
-
-    // Test L - Attempt to use null item with itemPrint
-    printNegativeTestHeader(stdout,"psMetadata", "Test L - Attempt to use null item with itemPrint",
-                            "Null metadata not allowed", 0);
-    psMetadataItemPrint(fd, "Item value: %ld", NULL);
-    printFooter(stdout, "psMetadata", "Test L - Attempt to use null item with itemPrint", true);
-
-
-    // Test M - Free psMetadata
-    printPositiveTestHeader(stdout, "psMetadata", "Test M - Free psMetadata");
-    psFree(metadata);
-    psFree(item1);
-    psFree(item2);
-    psFree(item3);
-    psFree(item4);
-    psFree(item5);
-    psFree(item6);
-    psFree(item7);
-    //    psFree(item8);
-    if ( psMemCheckLeaks(0, NULL, stdout, false) != 0 ) {
-        psError(PS_ERR_UNKNOWN, true,"Memory leaks detected.");
-        return 50;
-    }
-    psMemCheckCorruption(0);
-    psS32 nBad = psMemCheckCorruption(0);
-    if(nBad) {
-        printf("ERROR: Found %d bad memory blocks\n", nBad);
-        return 51;
-    }
-    printFooter(stdout, "psMetadata", "Test M - Free psMetadata", true);
-
-
-    return 0;
-}
Index: trunk/psLib/test/collections/tst_psMetadata_06.c
===================================================================
--- trunk/psLib/test/collections/tst_psMetadata_06.c	(revision 4493)
+++ 	(revision )
@@ -1,166 +1,0 @@
-
-/** @file  tst_psMetadata_06.c
-*
-*  @brief Test driver for psMetadata functions
-*
-*  This test driver contains the following tests for psMetadata:
-*     Test A - Allocate metadata and items
-*     Test B - Add leaf node on top of existing leaf node
-*     Test C - Add leaf node to existing folder node
-*     Test D - Add folder node on top of existing leaf node
-*     Test E - Free psMetadata
-*
-*  @author  Ross Harman, MHPCC
-*
-*  @version $Revision: 1.13 $  $Name: not supported by cvs2svn $
-*  @date  $Date: 2005-04-07 20:27:41 $
-*
-*  Copyright 2004-2005 Maui High Performance Computing Center, University of Hawaii
-*
-*/
-
-#include <string.h>
-#include "pslib_strict.h"
-#include "psTest.h"
-
-static void printMetadataItem(psMetadataItem *metadataItem)
-{
-    printf("Key Name: %8s  ", metadataItem->name);
-    printf("Key mdType: 0x%08x  ", metadataItem->type);
-
-    switch (metadataItem->type) {
-    case PS_META_MULTI:
-        printf("Key Value: %17c", ' ');
-        break;
-    case PS_META_LIST:
-        printf("Key Value: %15s  ", "psList");
-        break;
-    case PS_META_BOOL:
-        printf("Key Value: %15d  ", metadataItem->data.B);
-        break;
-    case PS_META_S32:
-        printf("Key Value: %15d  ", metadataItem->data.S32);
-        break;
-    case PS_META_F32:
-        printf("Key Value: %15.3f  ", metadataItem->data.F32);
-        break;
-    case PS_META_F64:
-        printf("Key Value: %15.3f  ", metadataItem->data.F64);
-        break;
-    case PS_META_STR:
-        printf("Key Value: %15s  ", (char*)metadataItem->data.V);
-        break;
-    default:
-        printf("Bad type: %d ", metadataItem->type);
-    }
-    printf("Key Comment: %s\n", metadataItem->comment);
-}
-
-
-psS32 main( psS32 argc, char* argv[] )
-{
-    psMetadataItem *item1a = NULL;
-    psMetadataItem *item1b = NULL;
-    psMetadataItem *item1c = NULL;
-    psMetadataItem *item2a = NULL;
-    psMetadataItem *item2b = NULL;
-    psMetadata *metadata = NULL;
-
-
-    // Test A - Allocate metadata and items
-    printPositiveTestHeader(stdout, "psMetadata", "Test A - Allocate metadata and items");
-    item1a = psMetadataItemAlloc("myItem1", PS_META_BOOL, "I am a boolean", true);
-    item1b = psMetadataItemAlloc("myItem1", PS_META_S32, "I am a signed integer", 111);
-    item1c = psMetadataItemAlloc("myItem1", PS_META_S32, "I am a signed integer", 222);
-    item2a = psMetadataItemAlloc("myItem2", PS_META_S32, "I am a signed integer", 333);
-    item2b = psMetadataItemAlloc("myItem2", PS_META_LIST, "I am a list", NULL);
-    metadata = psMetadataAlloc();
-    printMetadataItem(item1a);
-    printMetadataItem(item1b);
-    printMetadataItem(item1c);
-    printMetadataItem(item2a);
-    printMetadataItem(item2b);
-    printFooter(stdout, "psMetadata", "Test A - Allocate metadata and items", true);
-
-
-    // Test B - Add leaf node on top of existing leaf node
-    printPositiveTestHeader(stdout, "psMetadata", "Test B - replace an item in the metadata");
-    if(!psMetadataAddItem(metadata, item1a, PS_LIST_HEAD, PS_META_DEFAULT)) {
-        psError(PS_ERR_UNKNOWN, true,"psMetadataAddItem returned false for adding a node top.");
-        return 20;
-    }
-    psMetadataItem* tempItem = psMetadataLookup(metadata, item1a->name);
-    if (tempItem != item1a) {
-        psError(PS_ERR_UNKNOWN, true,"psMetadataAddItem didn't add the metadata entry.");
-        return 20;
-    }
-
-    if (!psMetadataAddItem(metadata, item1b, PS_LIST_HEAD, PS_META_REPLACE)) {
-        psError(PS_ERR_UNKNOWN, true,"psMetadataAddItem returned false for adding a node top.");
-        return 21;
-    }
-
-    tempItem = psMetadataLookup(metadata, item1a->name);
-    if (tempItem != item1b) {
-        psError(PS_ERR_UNKNOWN, true,"psMetadataAddItem didn't replace the metadata entry.");
-        return 21;
-    }
-
-    printFooter(stdout, "psMetadata", "Test B - replace an item in the metadata", true);
-
-
-    // Test C - Add leaf node to existing folder node
-    printPositiveTestHeader(stdout, "psMetadata", "Test C - add duplicate-key metadata item");
-    if (!psMetadataAddItem(metadata, item1c, PS_LIST_HEAD, PS_META_DUPLICATE_OK)) {
-        psError(PS_ERR_UNKNOWN, true,"psMetadataAddItem return false for adding a not to existing node.");
-        return 22;
-    }
-
-    tempItem = psMetadataLookup(metadata, item1a->name);
-    if (tempItem == NULL || tempItem->type != PS_META_MULTI) {
-        psError(PS_ERR_UNKNOWN, true,"psMetadataAddItem didn't add additional metadata entry of same key.");
-        return 22;
-    }
-    printFooter(stdout, "psMetadata", "Test C - add duplicate-key metadata item", true);
-
-
-    // Test D - Add folder node on top of existing leaf node
-    printPositiveTestHeader(stdout, "psMetadata", "Test D - Add folder node on top of existing leaf node");
-    if (!psMetadataAddItem(metadata, item2a, PS_LIST_HEAD, PS_META_DEFAULT)) {
-        psError(PS_ERR_UNKNOWN, true,"psMetadataAddItem returned false for adding a node to existing leaf node.");
-        return 23;
-    }
-    if (!psMetadataAddItem(metadata, item2b, PS_LIST_HEAD, PS_META_DUPLICATE_OK)) {
-        psError(PS_ERR_UNKNOWN, true,"psMetadataAddItem returned false for adding a nod to existing leaf node.");
-        return 24;
-    }
-    printFooter(stdout, "psMetadata", "Test D - Add folder node on top of existing leaf node", true);
-    tempItem = psMetadataLookup(metadata, item1a->name);
-    if (tempItem == NULL || tempItem->type != PS_META_MULTI) {
-        psError(PS_ERR_UNKNOWN, true,"psMetadataAddItem didn't add additional metadata entry of same key.");
-        return 24;
-    }
-
-
-    // Test E - Free psMetadata
-    printPositiveTestHeader(stdout, "psMetadata", "Test E - Free psMetadata");
-    psFree(item1a);
-    psFree(item1b);
-    psFree(item1c);
-    psFree(item2a);
-    psFree(item2b);
-    psFree(metadata);
-    if ( psMemCheckLeaks(0, NULL, stdout, false) != 0 ) {
-        psError(PS_ERR_UNKNOWN, true,"Memory leaks detected.");
-        return 25;
-    }
-    psMemCheckCorruption(0);
-    psS32 nBad = psMemCheckCorruption(0);
-    if(nBad) {
-        printf("ERROR: Found %d bad memory blocks\n", nBad);
-    }
-    printFooter(stdout, "psMetadata", "Test E - Free psMetadata", true);
-
-
-    return 0;
-}
Index: trunk/psLib/test/collections/tst_psMetadata_07.c
===================================================================
--- trunk/psLib/test/collections/tst_psMetadata_07.c	(revision 4493)
+++ 	(revision )
@@ -1,46 +1,0 @@
-/** @file  tst_psMetadata_07.c
-*
-*  @brief Test driver for psMetadataIO functions
-*
-*  This test driver contains the following tests for psMetadata:
-*     Test A - Read an XML config file
-*     Test B - Free data
-*
-*  @author  Ross Harman, MHPCC
-*
-*  @version $Revision: 1.11 $  $Name: not supported by cvs2svn $
-*  @date  $Date: 2005-06-10 18:09:12 $
-*
-*  Copyright 2004-2005 Maui High Performance Computing Center, University of Hawaii
-*
-*/
-#include "config.h"
-#include "pslib_strict.h"
-#include "psTest.h"
-
-int main(int argc, char* argv[])
-{
-    // Test A - Read an XML config file
-    printPositiveTestHeader(stdout, "psMetadata", "Test A - Read an XML config file");
-    int res = 0;
-    psU32 nFail = 0;
-    psMetadata *md = NULL;
-    md = psMetadataConfigParseXml(md, &nFail, XML_CONFIG_FILE, true);
-    if (nFail != 0) {
-        printf("psMetadataConfigParseXml returned error %d\n", res);
-    }
-
-    psFree(md);
-    printFooter(stdout, "psMetadata", "Test A - Read an XML config file", true);
-
-    // Test B - Free data
-    printPositiveTestHeader(stdout, "psMetadata", "Test B - Free data");
-    psMemCheckLeaks(0, NULL, stdout, false);
-    psS32 nBad = psMemCheckCorruption(0);
-    if(nBad) {
-        printf("ERROR: Found %d bad memory blocks\n", nBad);
-    }
-    printFooter(stdout, "psMetadata", "Test B - Free data", true);
-
-    return 0;
-}
Index: trunk/psLib/test/collections/tst_psPixels.c
===================================================================
--- trunk/psLib/test/collections/tst_psPixels.c	(revision 4493)
+++ 	(revision )
@@ -1,503 +1,0 @@
-/** @file  tst_psPixels.c
- *
- *  @brief Contains the tests for psPixels.[ch]
- *
- *  @author Robert DeSonia, MHPCC
- *
- *  @version $Revision: 1.7 $
- *           $Name: not supported by cvs2svn $
- *  @date $Date: 2005-06-09 23:51:49 $
- *
- *  Copyright 2005 Maui High Performance Computing Center, University of Hawaii
- */
-
-#include "psTest.h"
-#include "pslib_strict.h"
-
-static psS32 testPixelsAlloc(void);
-static psS32 testPixelsRealloc(void);
-static psS32 testPixelsCopy(void);
-static int testPixelsToMask(void);
-static int testPixelsFromMask(void);
-static int testPixelsConcatenate(void);
-
-testDescription tests[] = {
-                              {testPixelsAlloc,860,"psPixelsAlloc",0,false},
-                              {testPixelsRealloc,862,"psPixelsRealloc",0,false},
-                              {testPixelsCopy,863,"psPixelsCopy",0,false},
-                              {testPixelsToMask,864,"psPixelsToMask",0,false},
-                              {testPixelsFromMask,865,"psPixelsFromMask",0,false},
-                              {testPixelsConcatenate,866,"psPixelsConcatenate",0,false},
-                              {NULL}
-                          };
-
-psS32 main(psS32 argc, char* argv[])
-{
-    psLogSetLevel(PS_LOG_INFO);
-
-    if ( ! runTestSuite(stderr,"psPixels",tests,argc,argv) ) {
-        psError(PS_ERR_UNKNOWN,true,"One or more tests failed");
-        return 1;
-    }
-    return 0;
-}
-
-psS32 testPixelsAlloc(void)
-{
-
-    psPixels* p0 = psPixelsAlloc(0);
-
-    if (p0 == NULL) {
-        psError(PS_ERR_UNKNOWN, true,
-                "psPixelsAlloc failed to allocate a zero-sized psPixels");
-        return 1;
-    }
-    if (p0->data != NULL) {
-        psError(PS_ERR_UNKNOWN, true,
-                "psPixelsAlloc failed to set data to NULL for a zero-sized psPixels");
-        return 2;
-    }
-    if (p0->n != p0->nalloc) {
-        psError(PS_ERR_UNKNOWN, true,
-                "psPixelsAlloc failed to set n = 0");
-        return 3;
-    }
-    if (p0->nalloc != 0) {
-        psError(PS_ERR_UNKNOWN, true,
-                "psPixelsAlloc failed to set nalloc = 0");
-        return 4;
-    }
-
-    psPixels* p1 = psPixelsAlloc(1);
-
-    if (p1 == NULL) {
-        psError(PS_ERR_UNKNOWN, true,
-                "psPixelsAlloc failed to allocate a one-sized psPixels");
-        return 11;
-    }
-    if (p1->data == NULL) {
-        psError(PS_ERR_UNKNOWN, true,
-                "psPixelsAlloc failed to allocate data for a one-sized psPixels");
-        return 12;
-    }
-    p1->data[0].x = 1;
-    p1->data[0].y = 2;
-
-    if (p1->n != p1->nalloc) {
-        psError(PS_ERR_UNKNOWN, true,
-                "psPixelsAlloc failed to set n = %d", p1->nalloc);
-        return 13;
-    }
-    if (p1->nalloc != 1) {
-        psError(PS_ERR_UNKNOWN, true,
-                "psPixelsAlloc failed to set nalloc = 1 (%d)",
-                p1->nalloc);
-        return 14;
-    }
-
-    psPixels* p2 = psPixelsAlloc(10);
-
-    if (p2 == NULL) {
-        psError(PS_ERR_UNKNOWN, true,
-                "psPixelsAlloc failed to allocate a one-sized psPixels");
-        return 11;
-    }
-    if (p2->data == NULL) {
-        psError(PS_ERR_UNKNOWN, true,
-                "psPixelsAlloc failed to allocate data for a one-sized psPixels");
-        return 12;
-    }
-    for (int i = 0; i < 10; i++) {
-        p2->data[i].x = i;
-        p2->data[i].y = 100+i;
-    }
-
-    if (p2->n != p2->nalloc) {
-        psError(PS_ERR_UNKNOWN, true,
-                "psPixelsAlloc failed to set n = %d", p2->nalloc);
-        return 13;
-    }
-    if (p2->nalloc != 10) {
-        psError(PS_ERR_UNKNOWN, true,
-                "psPixelsAlloc failed to set nalloc = 1 (%d)",
-                p2->nalloc);
-        return 14;
-    }
-
-
-    psFree(p2);
-    psFree(p1);
-    psFree(p0);
-
-    return 0;
-}
-
-psS32 testPixelsRealloc(void)
-{
-
-    // first, tests that reallocing a NULL just allocates
-    psPixels* p0 = psPixelsRealloc(NULL,10);
-
-    if (p0 == NULL) {
-        psError(PS_ERR_UNKNOWN, true,
-                "psPixelsRealloc failed to allocate a zero-sized psPixels");
-        return 1;
-    }
-    if (p0->data == NULL) {
-        psError(PS_ERR_UNKNOWN, true,
-                "psPixelsRealloc failed to set data to NULL for a zero-sized psPixels");
-        return 2;
-    }
-    if (p0->n != p0->nalloc) {
-        psError(PS_ERR_UNKNOWN, true,
-                "psPixelsRealloc failed to set n = 0");
-        return 3;
-    }
-    if (p0->nalloc != 10) {
-        psError(PS_ERR_UNKNOWN, true,
-                "psPixelsRealloc failed to set nalloc = 10");
-        return 4;
-    }
-    for (int i = 0; i < 10; i++) {
-        p0->data[i].x = i;
-        p0->data[i].y = 100+i;
-    }
-    p0->n = 10;
-
-    psPixels* p1 = psPixelsRealloc(p0, 20);
-
-    if (p1 != p0) {
-        psError(PS_ERR_UNKNOWN, true,
-                "psPixelsRealloc failed to return a resized input psPixels");
-        return 11;
-    }
-    if (p1->data == NULL) {
-        psError(PS_ERR_UNKNOWN, true,
-                "psPixelsRealloc failed to set data to non-NULL");
-        return 12;
-    }
-    if (p1->n != 10) {
-        psError(PS_ERR_UNKNOWN, true,
-                "resizing up didn't preserve the size");
-        return 13;
-    }
-    if (p1->nalloc != 20) {
-        psError(PS_ERR_UNKNOWN, true,
-                "psPixelsRealloc failed to set nalloc = 0");
-        return 14;
-    }
-    for (int i = 0; i < 10; i++) {
-        if (p0->data[i].x != i || p0->data[i].y != 100+i) {
-            psError(PS_ERR_UNKNOWN, true,
-                    "The value of pixel %d was not preserved (%d,%d) vs (%d,%d).",
-                    i, p0->data[i].x, p0->data[i].y, i, 100+i);
-            return 15;
-        }
-    }
-    for (int i = 10; i < 20; i++) {
-        p1->data[i].x = i;
-        p1->data[i].y = 100+i;
-    }
-    p1->n = 20;
-
-
-    psPixels* p2 = psPixelsRealloc(p1,5);
-
-    if (p2 != p1) {
-        psError(PS_ERR_UNKNOWN, true,
-                "psPixelsRealloc didn't return input psPixels.");
-        return 21;
-    }
-    if (p2->data == NULL) {
-        psError(PS_ERR_UNKNOWN, true,
-                "psPixelsRealloc failed to allocate data");
-        return 22;
-    }
-
-    if (p2->n != 5) {
-        psError(PS_ERR_UNKNOWN, true,
-                "psPixelsRealloc failed to set n=nalloc after shrinking");
-        return 23;
-    }
-    if (p2->nalloc != 5) {
-        psError(PS_ERR_UNKNOWN, true,
-                "psPixelsRealloc failed to set nalloc properly");
-        return 24;
-    }
-
-    psPixels* p3 = psPixelsRealloc(p2,0);
-
-    if (p3 != p2) {
-        psError(PS_ERR_UNKNOWN, true,
-                "psPixelsRealloc didn't return input psPixels.");
-        return 31;
-    }
-    if (p3->data != NULL) {
-        psError(PS_ERR_UNKNOWN, true,
-                "psPixelsRealloc failed to deallocate data when size=0");
-        return 32;
-    }
-
-    if (p3->n != 0) {
-        psError(PS_ERR_UNKNOWN, true,
-                "psPixelsRealloc failed to set n=nalloc after shrinking");
-        return 33;
-    }
-    if (p3->nalloc != 0) {
-        psError(PS_ERR_UNKNOWN, true,
-                "psPixelsRealloc failed to set nalloc properly");
-        return 34;
-    }
-
-    psFree(p3);
-
-    return 0;
-}
-
-psS32 testPixelsCopy(void)
-{
-    psPixels* in1 = psPixelsAlloc(10);
-
-    for (int i = 0; i < 10; i++) {
-        in1->data[i].x = i;
-        in1->data[i].y = 100+i;
-    }
-    in1->n = 10;
-
-    psPixels* out1 = psPixelsCopy(NULL, in1);
-    if (out1 == in1) {
-        psError(PS_ERR_UNKNOWN, true,
-                "output == input?");
-        return 1;
-    }
-    if (out1 == NULL) {
-        psError(PS_ERR_UNKNOWN, true,
-                "output == NULL?");
-        return 2;
-    }
-
-    if (out1->n != in1->n) {
-        psError(PS_ERR_UNKNOWN, true,
-                "out->n != in->n");
-        return 3;
-    }
-    for (int i = 0; i < out1->n; i++) {
-        if (out1->data[i].x != in1->data[i].x || out1->data[i].y != in1->data[i].y) {
-            psError(PS_ERR_UNKNOWN, true,
-                    "failed to copy the values correctly at index %d", i);
-            return 4;
-        }
-    }
-
-    // now test what happens when copying a 0-length list.
-    psPixels* in2 = psPixelsAlloc(0);
-    psPixels* out2 = psPixelsCopy(out1, in2);
-    if (out2 != out1) {
-        psError(PS_ERR_UNKNOWN, true,
-                "failed to recycle.");
-        return 10;
-    }
-    if (out2->n != in2->n) {
-        psError(PS_ERR_UNKNOWN, true,
-                "failed to set size when copying 0-length pixel list.");
-        return 11;
-    }
-
-    // Attempt to copy from NULL input
-    psLogMsg(__func__,PS_LOG_INFO,"Following should generate an error message for NULL input");
-    out2 = psPixelsCopy(out2,NULL);
-    if (out2 != NULL) {
-        psError(PS_ERR_UNKNOWN, true,
-                "Copying a NULL should create a NULL.");
-        return 20;
-    }
-
-    psFree(in1);
-    psFree(in2);
-
-    return 0;
-}
-
-int testPixelsToMask(void)
-{
-    // create a pixel list for
-    psPixels* pixels = psPixelsAlloc(10);
-    for (int i = 0; i < 10; i++) {
-        pixels->data[i].x = i;
-        pixels->data[i].y = i;
-    }
-    pixels->n = 10;
-
-    psImage* mask = psPixelsToMask(NULL,pixels, psRegionSet(0,10,0,10), 1);
-
-    if (mask == NULL) {
-        psError(PS_ERR_UNKNOWN, true,
-                "Resulting mask was null.");
-        return 1;
-    }
-    if (mask->type.type != PS_TYPE_MASK) {
-        psError(PS_ERR_UNKNOWN, true,
-                "mask type was not PS_TYPE_MASK.");
-        return 2;
-    }
-
-    for (int row=0;row<10;row++) {
-        psMaskType* rowData = mask->data.PS_TYPE_MASK_DATA[row];
-        for (int col=0;col<10;col++) {
-            if ( (col==row && rowData[col] != 1) ||
-                    (col!=row && rowData[col] != 0) ) {
-                psError(PS_ERR_UNKNOWN,true,
-                        "Mask has unexpected value, %d, at (%d,%d)",
-                        rowData[col], col, row);
-                return 10;
-            }
-        }
-    }
-
-    // test when input psPixels is NULL.
-    psLogMsg(__func__,PS_LOG_INFO,"Following should generate an error for NULL pixels");
-    mask = psPixelsToMask(mask, NULL, psRegionSet(0,10,0,10), 1);
-    if (mask != NULL) {
-        psError(PS_ERR_UNKNOWN, true,
-                "Resulting mask was not null though input psPixels was NULL.");
-        return 20;
-    }
-
-
-    // Test for invalid region
-    psLogMsg(__func__,PS_LOG_INFO,"Following should generate an error for invalid range");
-    mask = psPixelsToMask(mask,pixels,psRegionSet(10,0,10,0),1);
-    if(mask != NULL) {
-        psError(PS_ERR_UNKNOWN,true,"Did not expect non-NULL for invalid range");
-        return 21;
-    }
-
-    psFree(mask);
-    psFree(pixels);
-
-    return 0;
-}
-
-int testPixelsFromMask(void)
-{
-    const int numRows = 10;
-    const int numCols = 20;
-    psImage* mask = psImageAlloc(numCols,numRows,PS_TYPE_MASK);
-    for (int row=0;row<numRows;row++) {
-        for (int col=0;col<numCols;col++) {
-            mask->data.PS_TYPE_MASK_DATA[row][col] = (row*2 == col) ? 1 : 0;
-        }
-    }
-
-    psPixels* pixels = psPixelsFromMask(NULL, mask, 1);
-
-    if (pixels == NULL) {
-        psError(PS_ERR_UNKNOWN, false,
-                "resulting psPixels was NULL?");
-        return 1;
-    }
-
-    if (pixels->n != numRows) {
-        psError(PS_ERR_UNKNOWN, false,
-                "wrong number of pixels in list.  Got %d, should be %d.",
-                pixels->n, numRows);
-        return 2;
-    }
-
-    for (int i = 0; i < pixels->n; i++) {
-        if (mask->data.PS_TYPE_MASK_DATA[pixels->data[i].y][pixels->data[i].x] != 1) {
-            psError(PS_ERR_UNKNOWN, false,
-                    "Item in psPixels list (%d,%d) didn't coorespond to a masked value in image",
-                    pixels->data[i].x, pixels->data[i].y);
-            return 3;
-        }
-    }
-
-    // Attempt to create pixels from NULL mask
-    psLogMsg(__func__,PS_LOG_INFO,"Following should generate error for NULL mask");
-    pixels = psPixelsFromMask(pixels, NULL, 1);
-
-    if (pixels != NULL) {
-        psError(PS_ERR_UNKNOWN, false,
-                "given a NULL image, got a non-NULL mask?");
-        return 4;
-    }
-
-    psFree(mask);
-
-    return 0;
-}
-
-int testPixelsConcatenate(void)
-{
-    // create a pixel list for
-    psPixels* pixels = psPixelsAlloc(10);
-    psPixels* pixels1 = psPixelsAlloc(10);
-    for (int i = 0; i < 10; i++) {
-        pixels->data[i].x = i;
-        pixels->data[i].y = i;
-        if (i%2) {
-            pixels1->data[i].x = -i;
-        } else {
-            pixels1->data[i].x = i;
-        }
-        pixels1->data[i].y = i;
-    }
-    pixels->n = 10;
-    pixels1->n = 10;
-    p_psPixelsPrint(stdout, pixels, "pixels");
-    p_psPixelsPrint(stdout, pixels1, "pixels1");
-
-    psPixels* pixels2 = psPixelsConcatenate(NULL, pixels);
-    p_psPixelsPrint(stdout, pixels2, "pixels2");
-    if (pixels2 == NULL) {
-        psError(PS_ERR_UNKNOWN, true,
-                "pixels2 == NULL?");
-        return 1;
-    }
-    if (pixels == pixels2) {
-        psError(PS_ERR_UNKNOWN, true,
-                "pixels == pixels2?  Should have made a copy.");
-        return 2;
-    }
-    if (pixels2->n != pixels->n) {
-        psError(PS_ERR_UNKNOWN, true,
-                "pixels2->n != pixels->n");
-        return 3;
-    }
-    for (int i = 0; i < pixels2->n; i++) {
-        if (pixels2->data[i].x != pixels->data[i].x || pixels2->data[i].y != pixels->data[i].y) {
-            psError(PS_ERR_UNKNOWN, true,
-                    "failed to copy the values correctly at index %d", i);
-            return 4;
-        }
-    }
-
-    // add pixels that are half unique.
-    psPixels* pixels3 = psPixelsConcatenate(pixels2, pixels1);
-    p_psPixelsPrint(stdout, pixels3, "pixels3");
-    if (pixels3 != pixels2) {
-        psError(PS_ERR_UNKNOWN, true,
-                "return expected to be the out parameter.");
-        return 10;
-    }
-    if (pixels3->n != 15) {
-        psError(PS_ERR_UNKNOWN, true,
-                "pixels3->n != 15, == %d", pixels3->n);
-        return 11;
-    }
-
-    // Attempt to concatenate with NULL pixels
-    psLogMsg(__func__,PS_LOG_INFO,"Following should generate an error message for NULL pixels");
-    if(psPixelsConcatenate(pixels2,NULL) != NULL) {
-        psError(PS_ERR_UNKNOWN,true,"Did not expect return to be non-NULL for NULL input pixels");
-        return 12;
-    }
-
-    psFree(pixels3);
-    psFree(pixels1);
-    psFree(pixels);
-
-    return 0;
-}
-
Index: trunk/psLib/test/collections/tst_psScalar.c
===================================================================
--- trunk/psLib/test/collections/tst_psScalar.c	(revision 4493)
+++ 	(revision )
@@ -1,138 +1,0 @@
-/** @file  tst_psScalar.c
- *
- *  @brief Contains the tests for psScalar.[ch]
- *
- *  @author Eric Van Alst, MHPCC
- *
- *  @version $Revision: 1.4 $
- *           $Name: not supported by cvs2svn $
- *  @date $Date: 2005-04-07 20:27:41 $
- *
- *  Copyright 2004-2005 Maui High Performance Computing Center, University of Hawaii
- */
-
-#include "psTest.h"
-#include "pslib_strict.h"
-
-static psS32 testScalarAlloc(void);
-static psS32 testScalarCopy(void);
-
-#define tstScalarAllocByType(datatype,value)                                                                    \
-scalar = psScalarAlloc(value,PS_TYPE_##datatype);                                                               \
-if(scalar == NULL) {                                                                                            \
-    psError(PS_ERR_UNKNOWN,true,"psScalarAlloc returned NULL.");                                                \
-    return 1+value;                                                                                             \
-} else {                                                                                                        \
-    if( (scalar->type.type != PS_TYPE_##datatype) && (scalar->data.datatype != value) ) {                       \
-        psError(PS_ERR_UNKNOWN,true,"psScalarAlloc created object with unexpected type and/or value");          \
-        return 2+value;                                                                                         \
-    }                                                                                                           \
-}                                                                                                               \
-psFree(scalar);
-
-#define tstScalarCopyByType(datatype,value)                                                                               \
-scalarOrig = psScalarAlloc(value,PS_TYPE_##datatype);                                                                     \
-scalarCopy = psScalarCopy(scalarOrig);                                                                                    \
-if(scalarCopy == NULL) {                                                                                                  \
-    psError(PS_ERR_UNKNOWN,true,"psScalarCopy returned NULL.");                                                           \
-    return 3+value;                                                                                                       \
-} else {                                                                                                                  \
-    if( (scalarCopy->type.type != scalarOrig->type.type) || (scalarCopy->data.datatype != scalarOrig->data.datatype) ) {  \
-        psError(PS_ERR_UNKNOWN,true,"psScalarCopy did not copy the original scalar by type and/or value");                \
-        return 4+value;                                                                                                   \
-    }                                                                                                                     \
-}                                                                                                                         \
-psFree(scalarCopy);                                                                                                       \
-psFree(scalarOrig);
-
-testDescription tests[] = {
-                              {testScalarAlloc,783,"psScalarAlloc",0,false},
-                              {testScalarCopy,784,"psScalarCopy",0,false},
-                              {NULL}
-                          };
-
-psS32 main(psS32 argc, char* argv[])
-{
-    psLogSetLevel(PS_LOG_INFO);
-
-    if ( ! runTestSuite(stderr,"psScalar",tests,argc,argv) ) {
-        psError(PS_ERR_UNKNOWN,true,"One or more tests failed");
-        return 1;
-    }
-    return 0;
-}
-
-psS32 testScalarAlloc(void)
-{
-    psScalar* scalar;
-
-    psLogMsg(__func__,PS_LOG_INFO,"psScalarAlloc shall create scalar data objects");
-
-    // Verify the proper allocation/deallocation of scalar objects of valid types
-    tstScalarAllocByType(S8,10);
-    tstScalarAllocByType(U8,12);
-    tstScalarAllocByType(S16,14);
-    tstScalarAllocByType(U16,16);
-    tstScalarAllocByType(S32,18);
-    tstScalarAllocByType(U32,20);
-    tstScalarAllocByType(S64,22);
-    tstScalarAllocByType(U64,24);
-    tstScalarAllocByType(F32,26);
-    tstScalarAllocByType(F64,28);
-    tstScalarAllocByType(C32,30);
-    tstScalarAllocByType(C64,32);
-
-    // Verify return is null for invalid scalar type
-    psLogMsg(__func__,PS_LOG_INFO,"Following should generate an error message");
-    scalar = psScalarAlloc(true,PS_TYPE_BOOL);
-    if(scalar != NULL) {
-        psError(PS_ERR_UNKNOWN,true,"psScalarAlloc did not return null for invalid type");
-        return 5;
-    }
-
-    return 0;
-}
-
-psS32 testScalarCopy(void)
-{
-    psScalar*  scalarOrig;
-    psScalar*  scalarCopy;
-
-    psLogMsg(__func__,PS_LOG_INFO,"psScalarCopy shall copy scalar objects");
-
-    // Verify the proper copying of scalar objects for all valid types
-    tstScalarCopyByType(S8,100);
-    tstScalarCopyByType(U8,110);
-    tstScalarCopyByType(S16,120);
-    tstScalarCopyByType(U16,130);
-    tstScalarCopyByType(S32,140);
-    tstScalarCopyByType(U32,150);
-    tstScalarCopyByType(S64,160);
-    tstScalarCopyByType(U64,170);
-    tstScalarCopyByType(F32,180);
-    tstScalarCopyByType(F64,190);
-    tstScalarCopyByType(C32,200);
-    tstScalarCopyByType(C64,210);
-
-    // Verify the return is null for invalid scalar type in the original
-    scalarOrig = psScalarAlloc(0,PS_TYPE_S8);
-    scalarOrig->type.type = PS_TYPE_BOOL;
-    psLogMsg(__func__,PS_LOG_INFO,"Following should generate an error message");
-    scalarCopy = psScalarCopy(scalarOrig);
-    if(scalarCopy != NULL ) {
-        psError(PS_ERR_UNKNOWN,true,"psScalarCopy did not return NULL for invalid type");
-        return 6;
-    }
-    psFree(scalarOrig);
-
-    // Verify the return is null for null original scalar value
-    psLogMsg(__func__,PS_LOG_INFO,"Following should generate an error message");
-    scalarCopy = psScalarCopy(NULL);
-    if(scalarCopy != NULL) {
-        psError(PS_ERR_UNKNOWN,true,"psScalarCopy did not return NULL for NULL argument");
-        return 7;
-    }
-
-    return 0;
-}
-
Index: trunk/psLib/test/collections/tst_psVector.c
===================================================================
--- trunk/psLib/test/collections/tst_psVector.c	(revision 4493)
+++ 	(revision )
@@ -1,271 +1,0 @@
-/** @file  tst_psVector.c
- *
- *  @brief Test driver for psVector integer functions
- *
- *  This test driver contains the following tests for psVector test point 1:
- *     A)  Create S32 vector
- *     B)  Add data to S32 vector
- *     C)  Reallocate S32 vector bigger
- *     D)  Reallocate S32 vector smaller
- *     E)  Free S32 vector
- *     F)  Attempt to create a S32 vector with zero size
- *     G)  Attempt to realloc a null S32 vector
- *
- *  @author  Ross Harman, MHPCC
- *
- *  @version $Revision: 1.10 $  $Name: not supported by cvs2svn $
- *  @date  $Date: 2005-07-07 02:17:53 $
- *
- *  Copyright 2004-2005 Maui High Performance Computing Center, University of Hawaii
- *
- */
-
-#include "psTest.h"
-#include "pslib_strict.h"
-
-static psS32 testVectorAlloc(void);
-static psS32 testVectorRealloc(void);
-static psS32 testVectorExtend(void);
-
-testDescription tests[] = {
-                              {testVectorAlloc,-1,"psVectorAlloc",0,false},
-                              {testVectorRealloc,-2,"psVectorRealloc",0,false},
-                              {testVectorExtend,-3,"psVectorExtend",0,false},
-                              {NULL}
-                          };
-
-psS32 main(psS32 argc, char* argv[])
-{
-    psLogSetLevel(PS_LOG_INFO);
-
-    if ( ! runTestSuite(stderr,"psVector",tests,argc,argv) ) {
-        return 1;
-    }
-    return 0;
-}
-
-psS32 testVectorAlloc(void)
-{
-    psVector *psVec = psVectorAlloc(5, PS_TYPE_S32);
-
-    if (psVec == NULL) {
-        fprintf(stderr,"ERROR: Return is NULL\n");
-        return 1;
-    }
-    if (psVec->nalloc != 5) {
-        fprintf(stderr,"Vector size = %ld\n", psVec->nalloc);
-        return 1;
-    }
-    if (psVec->n != psVec->nalloc) {
-        fprintf(stderr,"Vector population = %ld\n", psVec->n);
-        return 2;
-    }
-
-    if (psVec->type.type != PS_TYPE_S32) {
-        fprintf(stderr,"Vector type = %d\n", psVec->type.type);
-        return 3;
-    }
-    if (psVec->type.dimen != PS_DIMEN_VECTOR) {
-        fprintf(stderr,"Vector dimen = %d\n", psVec->type.dimen);
-        return 4;
-    }
-
-    // Test B - Add data to integer vector
-    for(psS32 i = 0; i < 5; i++) {
-        psVec->data.S32[i] = i*10;
-    }
-
-    psVector* vecZero = psVectorAlloc(0, PS_TYPE_S32);
-    if(vecZero == NULL) {
-        fprintf(stderr,"ERROR: Return is NULL\n");
-        return 5;
-    }
-    if (vecZero->nalloc != 0) {
-        fprintf(stderr,"Vector size = %ld\n", vecZero->nalloc);
-        return 6;
-    }
-    if (vecZero->n != vecZero->nalloc) {
-        fprintf(stderr,"Vector population = %ld\n", vecZero->n);
-        return 7;
-    }
-
-    psLogMsg(__func__,PS_LOG_INFO, "Following should be an error.");
-    psVector* vecBogus = psVectorAlloc(10, 0);
-    if (vecBogus != NULL) {
-        fprintf(stderr,"Huh!  bogus type generated a psVector?");
-        return 20;
-    }
-
-    psFree(psVec);
-    psFree(vecZero);
-
-    return 0;
-}
-
-psS32 testVectorRealloc(void)
-{
-    // create new psVector
-    psVector *psVec = psVectorAlloc(5, PS_TYPE_S32);
-    if (psVec == NULL) {
-        fprintf(stderr,"ERROR: Return is NULL\n");
-        return 30;
-    }
-    for(psS32 i = 0; i < 5; i++) {
-        psVec->data.S32[i] = i*10;
-    }
-
-    // Test C - Reallocate S32 vector bigger
-    psVec = psVectorRealloc(psVec,10);
-    if (psVec == NULL) {
-        fprintf(stderr,"ERROR: Return is NULL\n");
-        return 1;
-    }
-    if (psVec->nalloc != 10) {
-        fprintf(stderr,"Vector size = %ld\n", psVec->nalloc);
-        return 1;
-    }
-    if (psVec->n != 5) {
-        fprintf(stderr,"Vector population = %ld\n", psVec->n);
-        return 2;
-    }
-
-    if (psVec->type.type != PS_TYPE_S32) {
-        fprintf(stderr,"Vector type = %d\n", psVec->type.type);
-        return 3;
-    }
-    if (psVec->type.dimen != PS_DIMEN_VECTOR) {
-        fprintf(stderr,"Vector dimen = %d\n", psVec->type.dimen);
-        return 4;
-    }
-
-    for(psS32 i = 5; i < 10; i++) {
-        psVec->data.S32[i] = i*10;
-        psVec->n++;
-    }
-
-    for(psS32 i = 0; i < 10; i++) {
-        if (psVec->data.S32[i] != i*10) {
-            fprintf(stderr,"Elem %d = %d, expected %d\n", i, psVec->data.S32[i], i*10);
-            return 5;
-        }
-    }
-
-    // Test D - Reallocate S32 vector smaller
-    psVec = psVectorRealloc(psVec,3);
-    if (psVec == NULL) {
-        fprintf(stderr,"ERROR: Return is NULL\n");
-        return 9;
-    }
-    if (psVec->nalloc != 3) {
-        fprintf(stderr,"Vector size = %ld\n", psVec->nalloc);
-        return 10;
-    }
-    if (psVec->n != 3) {
-        fprintf(stderr,"Vector population = %ld\n", psVec->n);
-        return 11;
-    }
-
-    for(psS32 i = 0; i < 3; i++) {
-        if (psVec->data.S32[i] != i*10) {
-            fprintf(stderr,"Elem %d = %d, expected %d\n", i, psVec->data.S32[i], i*10);
-            return 12;
-        }
-    }
-
-    psVec = psVectorRealloc(psVec,0);
-    if (psVec == NULL) {
-        fprintf(stderr,"ERROR: Return is NULL\n");
-        return 20;
-    }
-    if (psVec->nalloc != 0) {
-        fprintf(stderr,"Vector size = %ld\n", psVec->nalloc);
-        return 21;
-    }
-    if (psVec->n != 0) {
-        fprintf(stderr,"Vector population = %ld\n", psVec->n);
-        return 22;
-    }
-
-    psVector* vecBogus = psVectorRealloc(NULL, 6);
-    if (vecBogus != NULL) {
-        fprintf(stderr,"Huh!  bogus type generated a psVector?");
-        return 25;
-    }
-
-    // Test E - Free S32 vector
-    psFree(psVec);
-
-    return 0;
-}
-
-psS32 testVectorExtend(void)
-{
-    // create new psVector
-    psVector *psVec = psVectorAlloc(5, PS_TYPE_S32);
-    if (psVec == NULL) {
-        fprintf(stderr,"ERROR: Return is NULL\n");
-        return 1;
-    }
-
-    psVec->n = 0;
-
-    psVec = psVectorExtend(psVec, 0, 2);
-    if (psVec == NULL) {
-        fprintf(stderr,"ERROR: Return is NULL\n");
-        return 2;
-    }
-    if (psVec->nalloc != 5) { // no growth should occur
-        fprintf(stderr,"Vector size = %ld\n", psVec->nalloc);
-        return 3;
-    }
-    if (psVec->n != 2) {
-        fprintf(stderr,"Vector population = %ld\n", psVec->n);
-        return 4;
-    }
-
-    psVec = psVectorExtend(psVec, 0, 2);
-    if (psVec == NULL) {
-        fprintf(stderr,"ERROR: Return is NULL\n");
-        return 10;
-    }
-    if (psVec->nalloc != 15) { // growth should occur
-        fprintf(stderr,"Vector size = %ld\n", psVec->nalloc);
-        return 11;
-    }
-    if (psVec->n != 4) {
-        fprintf(stderr,"Vector population = %ld\n", psVec->n);
-        return 12;
-    }
-
-    psVec = psVectorExtend(psVec, 0, -2);
-    if (psVec == NULL) {
-        fprintf(stderr,"ERROR: Return is NULL\n");
-        return 20;
-    }
-    if (psVec->nalloc != 15) { // no growth
-        fprintf(stderr,"Vector size = %ld\n", psVec->nalloc);
-        return 21;
-    }
-    if (psVec->n != 2) {
-        fprintf(stderr,"Vector population = %ld\n", psVec->n);
-        return 22;
-    }
-
-    psVec = psVectorExtend(psVec, 0, -20);
-    if (psVec == NULL) {
-        fprintf(stderr,"ERROR: Return is NULL\n");
-        return 30;
-    }
-    if (psVec->nalloc != 15) { // no growth
-        fprintf(stderr,"Vector size = %ld\n", psVec->nalloc);
-        return 31;
-    }
-    if (psVec->n != 0) {
-        fprintf(stderr,"Vector population = %ld\n", psVec->n);
-        return 32;
-    }
-
-    psFree(psVec);
-
-    return 0;
-}
Index: trunk/psLib/test/collections/tst_psVectorSort_01.c
===================================================================
--- trunk/psLib/test/collections/tst_psVectorSort_01.c	(revision 4493)
+++ 	(revision )
@@ -1,182 +1,0 @@
-/** @file  tst_psVectorSort_01.c
- *
- *  @brief Test driver for psVectorSort functions
- *
- *  This test driver contains the following tests for psVectorSort test point 1:
- *     A)  Sort input vector to output vector for all types
- *     B)  Sort input float vector into itself
- *     C)  Attempt to sort vector with invalid type (i.e. PS_TYPE_BOOL)
- *     D)  Sort input vector with zero items
- *     C)  Free float vectors
- *
- *  @author  Ross Harman, MHPCC
- *
- *  @version $Revision: 1.9 $  $Name: not supported by cvs2svn $
- *  @date  $Date: 2005-04-21 21:18:23 $
- *
- *  Copyright 2004-2005 Maui High Performance Computing Center, University of Hawaii
- *
- */
-
-#include "pslib_strict.h"
-#include "psTest.h"
-
-#define tstVectorSortByType(datatype,value)   \
-in = psVectorAlloc(7,PS_TYPE_##datatype); \
-in->n = 7;  \
-out = psVectorAlloc(7,PS_TYPE_##datatype); \
-out->n = 7;  \
-in->data.datatype[0] = 7+value; \
-in->data.datatype[1] = 9+value; \
-in->data.datatype[2] = 3+value; \
-in->data.datatype[3] = 1+value; \
-in->data.datatype[4] = 5+value; \
-in->data.datatype[5] = 5+value; \
-in->data.datatype[6] = 0+value; \
-tempVec = out; \
-out = psVectorSort(out, in); \
-if(tempVec != out) {  \
-    psError(PS_ERR_UNKNOWN,true,"Return value not equal to orignal output argument passed to function"); \
-    return 5; \
-} \
-if(out->data.datatype[0] != in->data.datatype[6]) { \
-    psError(PS_ERR_UNKNOWN,true,"Improper sort out[0] type %s",#datatype); \
-    return 10; \
-} \
-if(out->data.datatype[1] != in->data.datatype[3]) { \
-    psError(PS_ERR_UNKNOWN,true,"Improper sort out[1] type %s",#datatype); \
-    return 20; \
-} \
-if(out->data.datatype[2] != in->data.datatype[2]) { \
-    psError(PS_ERR_UNKNOWN,true,"Improper sort out[2] type %s",#datatype); \
-    return 30; \
-} \
-if(out->data.datatype[3] != in->data.datatype[4]) { \
-    psError(PS_ERR_UNKNOWN,true,"Improper sort out[3] type %s",#datatype); \
-    return 40; \
-} \
-if(out->data.datatype[4] != in->data.datatype[5]) { \
-    psError(PS_ERR_UNKNOWN,true,"Improper sort out[4] %s",#datatype); \
-    return 50; \
-} \
-if(out->data.datatype[5] != in->data.datatype[0]) { \
-    psError(PS_ERR_UNKNOWN,true,"Improper sort out[5] %s",#datatype); \
-    return 60; \
-} \
-if(out->data.datatype[6] != in->data.datatype[1]) { \
-    psError(PS_ERR_UNKNOWN,true,"Improper sort out[6] %s",#datatype); \
-    return 70; \
-} \
-psFree(in); \
-psFree(out);
-
-
-
-psS32 main(psS32 argc,
-           char* argv[])
-{
-    psVector *in = NULL;
-    psVector *out = NULL;
-    psVector *tempVec = NULL;
-
-    // Test A - Verify the sort for all supported types
-    printPositiveTestHeader(stdout,"psVectorSort","Sort all types");
-    tstVectorSortByType(S8,0);
-    tstVectorSortByType(S16,1);
-    tstVectorSortByType(S32,2);
-    tstVectorSortByType(S64,3);
-    tstVectorSortByType(U8,4);
-    tstVectorSortByType(U16,5);
-    tstVectorSortByType(U32,6);
-    tstVectorSortByType(U64,7);
-    tstVectorSortByType(F32,8);
-    tstVectorSortByType(F64,9);
-    printFooter(stdout,"psVectorSort","Sort all types",true);
-
-    // Test B - Sort input vector into itself
-    printPositiveTestHeader(stdout,"psVectorSort", "Sort input float vector into itself");
-    in = psVectorAlloc(7, PS_TYPE_F32);
-    in->n = 7;
-    in->data.F32[0] = 0.7f;
-    in->data.F32[1] = 0.9f;
-    in->data.F32[2] = 0.3f;
-    in->data.F32[3] = 0.1f;
-    in->data.F32[4] = 0.5f;
-    in->data.F32[5] = 0.5f;
-    in->data.F32[6] = -2.0f;
-    in = psVectorSort(in, in);
-    if(in->data.F32[0] != -2.0f) {
-        psError(PS_ERR_UNKNOWN,true,"Improper self sort in[0]");
-        return 100;
-    }
-    if(in->data.F32[1] != 0.1f) {
-        psError(PS_ERR_UNKNOWN,true,"Improper self sort in[1]");
-        return 200;
-    }
-    if(in->data.F32[2] != 0.3f) {
-        psError(PS_ERR_UNKNOWN,true,"Improper self sort in[2]");
-        return 300;
-    }
-    if(in->data.F32[3] != 0.5f) {
-        psError(PS_ERR_UNKNOWN,true,"Improper self sort in[3]");
-        return 400;
-    }
-    if(in->data.F32[4] != 0.5f) {
-        psError(PS_ERR_UNKNOWN,true,"Improper self sort in[4]");
-        return 500;
-    }
-    if(in->data.F32[5] != 0.7f) {
-        psError(PS_ERR_UNKNOWN,true,"Improper self sort in[5]");
-        return 600;
-    }
-    if(in->data.F32[6] != 0.9f) {
-        psError(PS_ERR_UNKNOWN,true,"Improper self sort in[6]");
-        return 700;
-    }
-    printFooter(stdout, "psVectorSort", "Sort input float vector into itself", true);
-
-    // Test C - Attempt to sort vector with invalid type
-    printPositiveTestHeader(stdout,"psVectorSort","Invalid vector type");
-    in->type.type = PS_TYPE_BOOL;
-    out = psVectorAlloc(7,PS_TYPE_F32);
-    psLogMsg(__func__,PS_LOG_INFO,"Following should generate an error messgae");
-    tempVec = psVectorSort(out,in);
-    if(tempVec != NULL) {
-        psError(PS_ERR_UNKNOWN,true,"Did not return NULL on error or didn't error?");
-        return 33;
-    }
-    printFooter(stdout,"psVectorSort","Invalid vector type",true);
-
-    // Test D - Sort vector with zero elements
-    printPositiveTestHeader(stdout,"psVectorSort","Sort zero element vector");
-    out = psVectorAlloc(7,PS_TYPE_F32);
-    tempVec = out;
-    in->n = 0;
-    out = psVectorSort(out,in);
-    if(tempVec != out) {
-        psError(PS_ERR_UNKNOWN,true,"Did not return the specified output vector");
-        return 44;
-    }
-    if(out->n != 0) {
-        psError(PS_ERR_UNKNOWN,true,"Did not proper set the number of elements to zero");
-        return 55;
-    }
-    printFooter(stdout,"psVectorSort","Sort zero element vector",true);
-
-
-    // Test D - Free float vectors
-    printPositiveTestHeader(stdout,"psVectorSort", "Free float vectors");
-    psFree(in);
-    psFree(out);
-    if ( psMemCheckLeaks(0, NULL, stdout, false)) {
-        psError(PS_ERR_UNKNOWN,true,"Memory leaks detected.");
-        return 10;
-    }
-    psS32 nBad = psMemCheckCorruption(0);
-    if(nBad) {
-        printf("ERROR: Found %d bad memory blocks\n", nBad);
-    }
-    printFooter(stdout, "psVectorSort", "Free float vectors", true);
-
-    return 0;
-}
Index: trunk/psLib/test/collections/tst_psVectorSort_02.c
===================================================================
--- trunk/psLib/test/collections/tst_psVectorSort_02.c	(revision 4493)
+++ 	(revision )
@@ -1,179 +1,0 @@
-/** @file  tst_psVectorSort_02.c
- *
- *  @brief Test driver for psVectorSort functions
- *
- *  This test driver contains the following tests for psVectorSort test point 2:
- *     A)  Create vectors
- *     B)  Sort integer vector of indices based on pre-sort order of floating point vector
- *     C)  Attempt to sort with null input vector
- *     D)  Sort with output vector which needs to be resized
- *     E)  Sort input vector with zero elements
- *     F)  Attempt to sort input vector with invalid type
- *     G)  Free vectors
- *
- *  @author  Ross Harman, MHPCC
- *
- *  @version $Revision: 1.9 $  $Name: not supported by cvs2svn $
- *  @date  $Date: 2005-04-21 21:18:23 $
- *
- *  Copyright 2004-2005 Maui High Performance Computing Center, University of Hawaii
- *
- */
-
-#include "pslib_strict.h"
-#include "psTest.h"
-
-#define tstVectorSortIndexByType(datatype,value) \
-in = psVectorAlloc( 5, PS_TYPE_##datatype ); \
-in->n = 5; \
-in->data.datatype[0] = 7+value; \
-in->data.datatype[1] = 9+value; \
-in->data.datatype[2] = 5+value; \
-in->data.datatype[3] = 1+value; \
-in->data.datatype[4] = 5+value; \
-out = psVectorSortIndex(out,in); \
-if(out->type.type != PS_TYPE_U32) { \
-    psError(PS_ERR_UNKNOWN,true,"Output vector is not of type PS_TYPE_U32"); \
-    return 10; \
-} \
-if(out->data.U32[0] != 3 ) { \
-    psError(PS_ERR_UNKNOWN,true,"Improper index sort out[0] = %ld",out->data.U32[0]); \
-    return 20; \
-} \
-if(out->data.U32[1] != 2 ) { \
-    psError(PS_ERR_UNKNOWN,true,"Improper index sort out[1] = %ld",out->data.U32[1]); \
-    return 30; \
-} \
-if(out->data.U32[2] != 4 ) { \
-    psError(PS_ERR_UNKNOWN,true,"Improper index sort out[2] = %ld",out->data.U32[2]); \
-    return 40; \
-} \
-if(out->data.U32[3] != 0 ) { \
-    psError(PS_ERR_UNKNOWN,true,"Improper index sort out[3] = %ld",out->data.U32[3]); \
-    return 50; \
-} \
-if(out->data.U32[4] != 1 ) { \
-    psError(PS_ERR_UNKNOWN,true,"Improper index sort out[4] = %ld",out->data.U32[4]); \
-    return 60; \
-} \
-psFree(in);
-
-psS32 main(psS32 argc,
-           char* argv[])
-{
-    psVector *in = NULL;
-    psVector *out = NULL;
-    psVector *tempVect = NULL;
-
-    // Test A - Sort vectors by index for all types
-    printPositiveTestHeader(stdout,"psVectorSortIndex","Sort by index for all types");
-    tstVectorSortIndexByType(S8,0)
-    tstVectorSortIndexByType(U8,1)
-    tstVectorSortIndexByType(S16,2)
-    tstVectorSortIndexByType(U16,3)
-    tstVectorSortIndexByType(S32,4)
-    tstVectorSortIndexByType(U32,5)
-    tstVectorSortIndexByType(S64,6)
-    tstVectorSortIndexByType(U64,7)
-    tstVectorSortIndexByType(F32,8)
-    tstVectorSortIndexByType(F64,9)
-    psFree(out);
-    printFooter(stdout,"psVectorSortIndex","Sort by index for all types",true);
-
-    // Test  C  Attempt to sort with null input vector
-    printPositiveTestHeader(stdout,"psVectorSortIndex","Attempt to sort with NULL input");
-    psLogMsg(__func__,PS_LOG_INFO,"Following should generate an error message");
-    in = NULL;
-    out = psVectorAlloc(5,PS_TYPE_U32);
-    out = psVectorSortIndex(out,in);
-    if(out != NULL) {
-        psError(PS_ERR_UNKNOWN,true,"Did not return NULL with NULL input specified");
-        return 111;
-    }
-    printFooter(stdout,"psVectorSortIndex","Attempt to sort with NULL input",true);
-
-    // Test  D  Sort with output vector which needs to be resized
-    printPositiveTestHeader(stdout,"psVectorSortIndex","Sort with resize output vector");
-    in = psVectorAlloc(5,PS_TYPE_U8);
-    for(psS32 m=0; m<5; m++) {
-        in->data.U8[m]= 20-m;
-    }
-    out = psVectorAlloc(3,PS_TYPE_U32);
-    out = psVectorSortIndex(out,in);
-    if(out->n != 5) {
-        psError(PS_ERR_UNKNOWN,true,"Did not properly resize output vector");
-        return 112;
-    }
-    if(out->data.U32[0] != 4) {
-        psError(PS_ERR_UNKNOWN,true,"Did not properly sort index out[0] = %d",out->data.U32[0]);
-        return 113;
-    }
-    if(out->data.U32[1] != 3) {
-        psError(PS_ERR_UNKNOWN,true,"Did not properly sort index out[1] = %d",out->data.U32[1]);
-        return 114;
-    }
-    if(out->data.U32[2] != 2) {
-        psError(PS_ERR_UNKNOWN,true,"Did not properly sort index out[2] = %d",out->data.U32[2]);
-        return 115;
-    }
-    if(out->data.U32[3] != 1) {
-        psError(PS_ERR_UNKNOWN,true,"Did not properly sort index out[3] = %d",out->data.U32[3]);
-        return 116;
-    }
-    if(out->data.U32[4] != 0) {
-        psError(PS_ERR_UNKNOWN,true,"Did not properly sort index out[4] = %d",out->data.U32[4]);
-        return 117;
-    }
-    psFree(in);
-    psFree(out);
-    printFooter(stdout,"psVectorSortIndex","Sort with resize output vector",true);
-
-    // Test E - Sort input vector with zero elements
-    printPositiveTestHeader(stdout,"psVectorSortIndex","Sort with input vector with zero elements");
-    in = psVectorAlloc(5,PS_TYPE_U8);
-    out = psVectorAlloc(5,PS_TYPE_U32);
-    in->n = 0;
-    out->n = 0;
-    tempVect = out;
-    out = psVectorSortIndex(out,in);
-    if ( out != tempVect ) {
-        psError(PS_ERR_UNKNOWN,true,"Did not return the same output vector");
-        return 118;
-    }
-    in->n=5;
-    out->n=5;
-    psFree(out);
-    psFree(in);
-    printFooter(stdout,"psVectorSortIndex","Sort with input vector with zero elements",true);
-
-    // Test F - Attempt to sort input vector with invalid type
-    printPositiveTestHeader(stdout,"psVectorSortIndex","Attempt to sort with invalid type");
-    in = psVectorAlloc(5,PS_TYPE_U8);
-    out = psVectorAlloc(5,PS_TYPE_U32);
-    tempVect = out;
-    in->type.type = PS_TYPE_BOOL;
-    psLogMsg(__func__,PS_LOG_INFO,"Following should generate two error messages(psVectorSort,psVectorSortIndex)");
-    out = psVectorSortIndex(out,in);
-    if( out != NULL) {
-        psError(PS_ERR_UNKNOWN,true,"Did not return NULL on error or didn't error?");
-        return 119;
-    }
-    in->type.type = PS_TYPE_U8;
-    psFree(in);
-    printFooter(stdout,"psVectorSortIndex","Attempt to sort with invalid type",true);
-
-    // Test G - Free vectors
-    printPositiveTestHeader(stdout,"psVectorSortIndex", "Free vectors");
-    psS32 nLeaks = psMemCheckLeaks(0, NULL, stdout, false);
-    if(nLeaks) {
-        printf("ERROR: Found %d memory leaks\n", nLeaks);
-        return 222;
-    }
-    psS32 nBad = psMemCheckCorruption(0);
-    if(nBad) {
-        printf("ERROR: Found %d bad memory blocks\n", nBad);
-        return 333;
-    }
-    printFooter(stdout, "psVectorSort", "Free vectors", true);
-
-}
Index: trunk/psLib/test/collections/tst_psVectorSort_03.c
===================================================================
--- trunk/psLib/test/collections/tst_psVectorSort_03.c	(revision 4493)
+++ 	(revision )
@@ -1,84 +1,0 @@
-/** @file  tst_psVectorSort_03.c
- *
- *  @brief Test driver for psVectorSort functions
- *
- *  This test driver contains the following tests for psVectorSort test point 3:
- *     A)  Create float vectors of different sizes
- *     B)  Attempt to sort vectors...should get errors
- *     C)  Create float vector and double vector
- *     D)  Attempt to sort vectors...should get errors
- *     E)  Free float, double vectors
- *
- *  @author  Ross Harman, MHPCC
- *
- *  @version $Revision: 1.8 $  $Name: not supported by cvs2svn $
- *  @date  $Date: 2005-04-07 20:27:41 $
- *
- *  Copyright 2004-2005 Maui High Performance Computing Center, University of Hawaii
- *
- */
-
-#include "pslib_strict.h"
-#include "psTest.h"
-
-psS32 main(psS32 argc,
-           char* argv[])
-{
-    psVector *in = NULL;
-    psVector *out = NULL;
-    psVector *in2 = NULL;
-    psVector *out2 = NULL;
-
-    // Test A - Create float vectors
-    printPositiveTestHeader(stdout,"psVectorSort", "Create float vectors of different sizes");
-    in = psVectorAlloc(5, PS_TYPE_F32);
-    in->n = 5;
-    out = psVectorAlloc(6, PS_TYPE_F32);
-    out->n = 6;
-    in->n = 5;
-    for(psS32 i=0; i<5; i++) {
-        printf("arr[%d] = %f\n", i, in->data.F32[i]);
-    }
-    printFooter(stdout, "psVectorSort", "Create float vectors of different sizes", true);
-
-
-    // Test B - Sort input float vector and put results into output float vector
-    printNegativeTestHeader(stdout,"psVectorSort", "Sort float vector",
-                            "Input and output vector sizes are not equal", 0);
-    out = psVectorSort(out, in);
-    printFooter(stdout, "psVectorSort", "Sort float vector", true);
-
-    // Test C - Create float vector and double vector
-    printPositiveTestHeader(stdout,"psVectorSort","Create float & double vectors of same size");
-    in2 = psVectorAlloc(5, PS_TYPE_F32);
-    in2->n = 5;
-    out2 = psVectorAlloc(5, PS_TYPE_F64);
-    out2->n = 5;
-    for(psS32 j=0; j<5; j++) {
-        printf("vec[%d] = %f\n", j, in2->data.F32[j]);
-    }
-    printFooter(stdout, "psVectorSort", "Create float and double vectors same size", true);
-
-    // Test D - Attempt to sort vectors with output of different type should create error
-    printNegativeTestHeader(stdout,"psVectorSort", "Sort F32/F64 vector",
-                            "Input and output vector different types", 0);
-    out2 = psVectorSort(out2, in2);
-    printFooter(stdout, "psVectorSort", "Sort float vector", true);
-
-    // Test C - Free float vectors
-    printPositiveTestHeader(stdout,"psVectorSort", "Free float vectors");
-    psFree(in);
-    psFree(in2);
-    psFree(out);
-    psFree(out2);
-    psS32 nLeaks = psMemCheckLeaks(0, NULL, stdout, false);
-    if(nLeaks) {
-        printf("ERROR: Found %d memory leaks\n", nLeaks);
-    }
-    psS32 nBad = psMemCheckCorruption(0);
-    if(nBad) {
-        printf("ERROR: Found %d bad memory blocks\n", nBad);
-    }
-    printFooter(stdout, "psVectorSort", "Free float vectors", true);
-
-}
Index: trunk/psLib/test/collections/tst_psVectorSort_04.c
===================================================================
--- trunk/psLib/test/collections/tst_psVectorSort_04.c	(revision 4493)
+++ 	(revision )
@@ -1,47 +1,0 @@
-/** @file  tst_psVectorSort_04.c
- *
- *  @brief Test driver for psVectorSort functions
- *
- *  This test driver contains the following tests for psVectorSort test point 4:
- *     A)  Attempt to sort with null input vector
- *     B)  Free vectors
- *
- *  @author  Ross Harman, MHPCC
- *
- *  @version $Revision: 1.7 $  $Name: not supported by cvs2svn $
- *  @date  $Date: 2005-04-07 20:27:41 $
- *
- *  Copyright 2004-2005 Maui High Performance Computing Center, University of Hawaii
- *
- */
-
-#include "pslib_strict.h"
-#include "psTest.h"
-
-psS32 main(psS32 argc,
-           char* argv[])
-{
-    psVector *badIn = NULL;
-    psVector *goodOut = psVectorAlloc(5, PS_TYPE_F32);
-
-    // Test A - Attempt to sort with null input vector
-    printNegativeTestHeader(stdout,"psVectorSort", "Attempt to sort with null input vector",
-                            "Null input vector", 0);
-    goodOut = psVectorSort(goodOut, badIn);
-    printFooter(stdout, "psVectorSort", "Attempt to sort with null input vector", true);
-
-    // Test B - Free vectors
-    printPositiveTestHeader(stdout, "psVectorSort", "Free vectors");
-    psFree(goodOut);
-    psS32 nLeaks = psMemCheckLeaks(0, NULL, stdout, false);
-    if(nLeaks) {
-        printf("ERROR: Found %d memory blocks\n", nLeaks);
-    }
-    psS32 nBad = psMemCheckCorruption(0);
-    if(nBad) {
-        printf("ERROR: Found %d bad memory blocks\n", nBad);
-    }
-    printFooter(stdout, "psVectorSort", "Free arays", true);
-
-    return 0;
-}
Index: trunk/psLib/test/collections/verified/tst_psArray.stderr
===================================================================
--- trunk/psLib/test/collections/verified/tst_psArray.stderr	(revision 4493)
+++ 	(revision )
@@ -1,220 +1,0 @@
-/***************************** TESTPOINT ******************************************\
-*             TestFile: tst_psArray.c                                              *
-*            TestPoint: psArray{psArray}                                           *
-*             TestType: Positive                                                   *
-\**********************************************************************************/
-
-/***************************** TESTPOINT ******************************************\
-*             TestFile: tst_psArray.c                                              *
-*            TestPoint: psArray{Create void pointer array}                         *
-*             TestType: Positive                                                   *
-\**********************************************************************************/
-
-
----> TESTPOINT PASSED (psArray{Create void pointer array} | tst_psArray.c)
-
-/***************************** TESTPOINT ******************************************\
-*             TestFile: tst_psArray.c                                              *
-*            TestPoint: psArray{Add data to void pointer array}                    *
-*             TestType: Positive                                                   *
-\**********************************************************************************/
-
-ts[0].x = 0 ts[0].y = 0.00
-ts[1].x = 10 ts[1].y = 10.10
-ts[2].x = 20 ts[2].y = 20.20
-ts[3].x = 30 ts[3].y = 30.30
-ts[4].x = 40 ts[4].y = 40.40
-array size = 5
-array population = 5
-
----> TESTPOINT PASSED (psArray{Add data to void pointer array} | tst_psArray.c)
-
-/***************************** TESTPOINT ******************************************\
-*             TestFile: tst_psArray.c                                              *
-*            TestPoint: psArray{Reallocate void pointer array bigger}              *
-*             TestType: Positive                                                   *
-\**********************************************************************************/
-
-Adding more elements to void pointer array...
-ts[0].x = 0 ts[0].y = 0.00
-ts[1].x = 10 ts[1].y = 10.10
-ts[2].x = 20 ts[2].y = 20.20
-ts[3].x = 30 ts[3].y = 30.30
-ts[4].x = 40 ts[4].y = 40.40
-ts[5].x = 50 ts[5].y = 50.50
-ts[6].x = 60 ts[6].y = 60.60
-ts[7].x = 70 ts[7].y = 70.70
-ts[8].x = 80 ts[8].y = 80.80
-ts[9].x = 90 ts[9].y = 90.90
-array size = 10
-array population = 10
-
----> TESTPOINT PASSED (psArray{Reallocate void pointer array bigger} | tst_psArray.c)
-
-/***************************** TESTPOINT ******************************************\
-*             TestFile: tst_psArray.c                                              *
-*            TestPoint: psArray{Reallocate void pointer array smaller}             *
-*             TestType: Positive                                                   *
-\**********************************************************************************/
-
-ts[0].x = 0 ts[0].y = 0.00
-ts[1].x = 10 ts[1].y = 10.10
-ts[2].x = 20 ts[2].y = 20.20
-array size = 3
-array population = 3
-
----> TESTPOINT PASSED (psArray{Reallocate integer void pointer smaller} | tst_psArray.c)
-
-/***************************** TESTPOINT ******************************************\
-*             TestFile: tst_psArray.c                                              *
-*            TestPoint: psArray{Reallocate with a null array}                      *
-*             TestType: Negative                                                   *
-*    ExpectedErrorText: Error message generator                                    *
-*  ExpectedStatusValue: 0                                                          *
-\**********************************************************************************/
-
-<DATE><TIME>|<HOST>|I|testArray
-    Following should generate an error message.
-<DATE><TIME>|<HOST>|E|psArrayRealloc (FILE:LINENO)
-    psArrayRealloc must be given a non-NULL psArray to resize.
-
----> TESTPOINT PASSED (psArray{Reallocate with a null array} | tst_psArray.c)
-
-/***************************** TESTPOINT ******************************************\
-*             TestFile: tst_psArray.c                                              *
-*            TestPoint: psArray{Remove valid item}                                 *
-*             TestType: Positive                                                   *
-\**********************************************************************************/
-
-Array size after removal = 2
-ts[0].x = 10 ts[0].y = 10.10
-ts[1].x = 20 ts[1].y = 20.20
-
----> TESTPOINT PASSED (psArray{Remove valid item} | tst_psArray.c)
-
-/***************************** TESTPOINT ******************************************\
-*             TestFile: tst_psArray.c                                              *
-*            TestPoint: psArray{Remove invalid item from array}                    *
-*             TestType: Positive                                                   *
-\**********************************************************************************/
-
-
----> TESTPOINT PASSED (psArray{Remove invalid item from array} | tst_psArray.c)
-
-/***************************** TESTPOINT ******************************************\
-*             TestFile: tst_psArray.c                                              *
-*            TestPoint: psArray{Remove item from null array}                       *
-*             TestType: Positive                                                   *
-\**********************************************************************************/
-
-<DATE><TIME>|<HOST>|E|psArrayRemove (FILE:LINENO)
-    Specified psArray can not be NULL.
-
----> TESTPOINT PASSED (psArray{Remove item from null array} | tst_psArray.c)
-
-/***************************** TESTPOINT ******************************************\
-*             TestFile: tst_psArray.c                                              *
-*            TestPoint: psArray{Remove null item from array}                       *
-*             TestType: Positive                                                   *
-\**********************************************************************************/
-
-
----> TESTPOINT PASSED (psArray{Remove null item from array} | tst_psArray.c)
-
-/***************************** TESTPOINT ******************************************\
-*             TestFile: tst_psArray.c                                              *
-*            TestPoint: psArray{Free void pointer array}                           *
-*             TestType: Positive                                                   *
-\**********************************************************************************/
-
-
----> TESTPOINT PASSED (psArray{Free void pointer array} | tst_psArray.c)
-
-
----> TESTPOINT PASSED (psArray{psArray} | tst_psArray.c)
-
-/***************************** TESTPOINT ******************************************\
-*             TestFile: tst_psArray.c                                              *
-*            TestPoint: psArray{psArray}                                           *
-*             TestType: Positive                                                   *
-\**********************************************************************************/
-
-/***************************** TESTPOINT ******************************************\
-*             TestFile: tst_psArray.c                                              *
-*            TestPoint: psArray{Create void pointer array}                         *
-*             TestType: Positive                                                   *
-\**********************************************************************************/
-
-
----> TESTPOINT PASSED (psArray{Create void pointer array} | tst_psArray.c)
-
-/***************************** TESTPOINT ******************************************\
-*             TestFile: tst_psArray.c                                              *
-*            TestPoint: psArray{Add data to void pointer array}                    *
-*             TestType: Positive                                                   *
-\**********************************************************************************/
-
-ts[0].x = 100 ts[0].y = 101.00
-ts[1].x = 90 ts[1].y = 90.90
-ts[2].x = 80 ts[2].y = 80.80
-ts[3].x = 70 ts[3].y = 70.70
-ts[4].x = 60 ts[4].y = 60.60
-ts[5].x = 50 ts[5].y = 50.50
-ts[6].x = 40 ts[6].y = 40.40
-ts[7].x = 30 ts[7].y = 30.30
-ts[8].x = 20 ts[8].y = 20.20
-ts[9].x = 10 ts[9].y = 10.10
-array size = 10
-array population = 10
-
----> TESTPOINT PASSED (psArray{Add data to void pointer array} | tst_psArray.c)
-
-/***************************** TESTPOINT ******************************************\
-*             TestFile: tst_psArray.c                                              *
-*            TestPoint: psArray{Sort data in array}                                *
-*             TestType: Positive                                                   *
-\**********************************************************************************/
-
-ts[0].x = 10 ts[0].y = 10.10
-ts[1].x = 20 ts[1].y = 20.20
-ts[2].x = 30 ts[2].y = 30.30
-ts[3].x = 40 ts[3].y = 40.40
-ts[4].x = 50 ts[4].y = 50.50
-ts[5].x = 60 ts[5].y = 60.60
-ts[6].x = 70 ts[6].y = 70.70
-ts[7].x = 80 ts[7].y = 80.80
-ts[8].x = 90 ts[8].y = 90.90
-ts[9].x = 100 ts[9].y = 101.00
-
----> TESTPOINT PASSED (psArray{Sort data in array} | tst_psArray.c)
-
-/***************************** TESTPOINT ******************************************\
-*             TestFile: tst_psArray.c                                              *
-*            TestPoint: psArray{Attempt to sort array}                             *
-*             TestType: Positive                                                   *
-\**********************************************************************************/
-
-
----> TESTPOINT PASSED (psArray{Attempt to sort array} | tst_psArray.c)
-
-/***************************** TESTPOINT ******************************************\
-*             TestFile: tst_psArray.c                                              *
-*            TestPoint: psArray{Free void pointer array}                           *
-*             TestType: Positive                                                   *
-\**********************************************************************************/
-
-
----> TESTPOINT PASSED (psArray{Free void pointer array} | tst_psArray.c)
-
-
----> TESTPOINT PASSED (psArray{psArray} | tst_psArray.c)
-
-/***************************** TESTPOINT ******************************************\
-*             TestFile: tst_psArray.c                                              *
-*            TestPoint: psArray{psArrayAdd}                                        *
-*             TestType: Positive                                                   *
-\**********************************************************************************/
-
-
----> TESTPOINT PASSED (psArray{psArrayAdd} | tst_psArray.c)
-
Index: trunk/psLib/test/collections/verified/tst_psArray01.stdout
===================================================================
--- trunk/psLib/test/collections/verified/tst_psArray01.stdout	(revision 4493)
+++ 	(revision )
@@ -1,67 +1,0 @@
-/***************************** TESTPOINT ******************************************\
-*             TestFile: tst_psArray01.c                                            *
-*            TestPoint: psArray{Create void pointer array}                         *
-*             TestType: Positive                                                   *
-\**********************************************************************************/
-
-
----> TESTPOINT PASSED (psArray{Create void pointer array} | tst_psArray01.c)
-
-/***************************** TESTPOINT ******************************************\
-*             TestFile: tst_psArray01.c                                            *
-*            TestPoint: psArray{Add data to void pointer array}                    *
-*             TestType: Positive                                                   *
-\**********************************************************************************/
-
-ts[0].x = 100 ts[0].y = 101.00
-ts[1].x = 90 ts[1].y = 90.90
-ts[2].x = 80 ts[2].y = 80.80
-ts[3].x = 70 ts[3].y = 70.70
-ts[4].x = 60 ts[4].y = 60.60
-ts[5].x = 50 ts[5].y = 50.50
-ts[6].x = 40 ts[6].y = 40.40
-ts[7].x = 30 ts[7].y = 30.30
-ts[8].x = 20 ts[8].y = 20.20
-ts[9].x = 10 ts[9].y = 10.10
-array size = 10
-array population = 10
-
----> TESTPOINT PASSED (psArray{Add data to void pointer array} | tst_psArray01.c)
-
-/***************************** TESTPOINT ******************************************\
-*             TestFile: tst_psArray01.c                                            *
-*            TestPoint: psArray{Sort data in array}                                *
-*             TestType: Positive                                                   *
-\**********************************************************************************/
-
-ts[0].x = 10 ts[0].y = 10.10
-ts[1].x = 20 ts[1].y = 20.20
-ts[2].x = 30 ts[2].y = 30.30
-ts[3].x = 40 ts[3].y = 40.40
-ts[4].x = 50 ts[4].y = 50.50
-ts[5].x = 60 ts[5].y = 60.60
-ts[6].x = 70 ts[6].y = 70.70
-ts[7].x = 80 ts[7].y = 80.80
-ts[8].x = 90 ts[8].y = 90.90
-ts[9].x = 100 ts[9].y = 101.00
-
----> TESTPOINT PASSED (psArray{Sort data in array} | tst_psArray01.c)
-
-/***************************** TESTPOINT ******************************************\
-*             TestFile: tst_psArray01.c                                            *
-*            TestPoint: psArray{Attempt to sort array}                             *
-*             TestType: Positive                                                   *
-\**********************************************************************************/
-
-
----> TESTPOINT PASSED (psArray{Attempt to sort array} | tst_psArray01.c)
-
-/***************************** TESTPOINT ******************************************\
-*             TestFile: tst_psArray01.c                                            *
-*            TestPoint: psArray{Free void pointer array}                           *
-*             TestType: Positive                                                   *
-\**********************************************************************************/
-
-
----> TESTPOINT PASSED (psArray{Free void pointer array} | tst_psArray01.c)
-
Index: trunk/psLib/test/collections/verified/tst_psBitSet.stderr
===================================================================
--- trunk/psLib/test/collections/verified/tst_psBitSet.stderr	(revision 4493)
+++ 	(revision )
@@ -1,171 +1,0 @@
-/***************************** TESTPOINT ******************************************\
-*             TestFile: tst_psBitSet.c                                             *
-*            TestPoint: psBitSet{psBitSetAlloc}                                    *
-*             TestType: Positive                                                   *
-\**********************************************************************************/
-
-Creating psBitSet with 24 bits...
-Creating psBitSet with 25 bits...
-<DATE><TIME>|<HOST>|I|testBitSet01a
-    Following is an error.
-<DATE><TIME>|<HOST>|E|psBitSetAlloc (FILE:LINENO)
-    The number of bit in a psBitSet (-4) must be greater than zero.
-
----> TESTPOINT PASSED (psBitSet{psBitSetAlloc} | tst_psBitSet.c)
-
-/***************************** TESTPOINT ******************************************\
-*             TestFile: tst_psBitSet.c                                             *
-*            TestPoint: psBitSet{psBitSetSet/psBitSetClear}                        *
-*             TestType: Positive                                                   *
-\**********************************************************************************/
-
-Setting first bit...
-Setting third bit...
-Setting last bit...
-100000000000000000000101
-
-Clearing first bit...
-Clearing third bit...
-Clearing last bit...
-000000000000000000000000
-
-<DATE><TIME>|<HOST>|I|testBitSet01b
-    Following should be an error
-<DATE><TIME>|<HOST>|E|psBitSetClear (FILE:LINENO)
-    Can not operate on a NULL psBitSet.
-<DATE><TIME>|<HOST>|I|testBitSet01b
-    Following should be an error
-<DATE><TIME>|<HOST>|E|psBitSetClear (FILE:LINENO)
-    The specified bit position (-3) is invalid.  Position must be between 0 and 23.
-<DATE><TIME>|<HOST>|I|testBitSet01b
-    Following should be an error
-<DATE><TIME>|<HOST>|E|psBitSetSet (FILE:LINENO)
-    The specified bit position (-4) is invalid.  Position must be between 0 and 23.
-<DATE><TIME>|<HOST>|I|testBitSet01b
-    Following should be an error
-<DATE><TIME>|<HOST>|E|psBitSetSet (FILE:LINENO)
-    The specified bit position (200) is invalid.  Position must be between 0 and 23.
-<DATE><TIME>|<HOST>|I|testBitSet01b
-    Following should be an error
-<DATE><TIME>|<HOST>|E|psBitSetSet (FILE:LINENO)
-    Can not operate on a NULL psBitSet.
-
----> TESTPOINT PASSED (psBitSet{psBitSetSet/psBitSetClear} | tst_psBitSet.c)
-
-/***************************** TESTPOINT ******************************************\
-*             TestFile: tst_psBitSet.c                                             *
-*            TestPoint: psBitSet{psBitSetTest}                                     *
-*             TestType: Positive                                                   *
-\**********************************************************************************/
-
-Setting first bit...
-Setting third bit...
-Setting last bit...
-<DATE><TIME>|<HOST>|I|testBitSet01c
-    Following should be an error
-<DATE><TIME>|<HOST>|E|psBitSetTest (FILE:LINENO)
-    The specified bit position (-4) is invalid.  Position must be between 0 and 23.
-<DATE><TIME>|<HOST>|I|testBitSet01c
-    Following should be an error
-<DATE><TIME>|<HOST>|E|psBitSetTest (FILE:LINENO)
-    The specified bit position (200) is invalid.  Position must be between 0 and 23.
-<DATE><TIME>|<HOST>|I|testBitSet01c
-    Following should be an error
-<DATE><TIME>|<HOST>|E|psBitSetTest (FILE:LINENO)
-    Can not operate on a NULL psBitSet.
-
----> TESTPOINT PASSED (psBitSet{psBitSetTest} | tst_psBitSet.c)
-
-/***************************** TESTPOINT ******************************************\
-*             TestFile: tst_psBitSet.c                                             *
-*            TestPoint: psBitSet{psBitSetOp}                                       *
-*             TestType: Positive                                                   *
-\**********************************************************************************/
-
-<DATE><TIME>|<HOST>|I|testBitSet06
-    Following should be an error
-<DATE><TIME>|<HOST>|E|psBitSetOp (FILE:LINENO)
-    The psBitSet operand must be the same size.
-<DATE><TIME>|<HOST>|I|testBitSet06
-    Following is an error.
-<DATE><TIME>|<HOST>|E|psBitSetOp (FILE:LINENO)
-    Specified operator, FOO, is invalid.  Valid operators are AND, OR, and XOR.
-<DATE><TIME>|<HOST>|I|testBitSet06
-    Following is an error.
-<DATE><TIME>|<HOST>|E|psBitSetOp (FILE:LINENO)
-    Specified operator, FOO, is invalid.  Valid operators are AND, OR, and XOR.
-<DATE><TIME>|<HOST>|I|testBitSet06
-    Following should generate an error
-<DATE><TIME>|<HOST>|E|psBitSetOp (FILE:LINENO)
-    First psBitSet operand can not be NULL.
-<DATE><TIME>|<HOST>|I|testBitSet06
-    Following should generate an error
-<DATE><TIME>|<HOST>|E|psBitSetOp (FILE:LINENO)
-    Specified operator is NULL.  Must specify desired operator.
-<DATE><TIME>|<HOST>|I|testBitSet06
-    Following should generate an error
-<DATE><TIME>|<HOST>|E|psBitSetOp (FILE:LINENO)
-    Second psBitSet operand can not be NULL.
-
----> TESTPOINT PASSED (psBitSet{psBitSetOp} | tst_psBitSet.c)
-
-/***************************** TESTPOINT ******************************************\
-*             TestFile: tst_psBitSet.c                                             *
-*            TestPoint: psBitSet{psBitSetOp AND Operator}                          *
-*             TestType: Positive                                                   *
-\**********************************************************************************/
-
-psBitSetOp input is 001100110011001100110011, 010101010101010101010101.  Truth is 000100010001000100010001.
-<DATE><TIME>|<HOST>|I|testBitSet02
-    Perform binary AND with psBitSets
-<DATE><TIME>|<HOST>|I|testBitSet02
-    Perform binary AND and auto allocate output
-
----> TESTPOINT PASSED (psBitSet{psBitSetOp AND Operator} | tst_psBitSet.c)
-
-/***************************** TESTPOINT ******************************************\
-*             TestFile: tst_psBitSet.c                                             *
-*            TestPoint: psBitSet{psBitSetOp OR Operator}                           *
-*             TestType: Positive                                                   *
-\**********************************************************************************/
-
-psBitSetOp input is 110011001100110011001100, 101010101010101010101010.  Truth is 111011101110111011101110.
-<DATE><TIME>|<HOST>|I|testBitSet03
-    Perform binary OR with psBitSets
-<DATE><TIME>|<HOST>|I|testBitSet03
-    Perform binary OR and auto allocate output
-
----> TESTPOINT PASSED (psBitSet{psBitSetOp OR Operator} | tst_psBitSet.c)
-
-/***************************** TESTPOINT ******************************************\
-*             TestFile: tst_psBitSet.c                                             *
-*            TestPoint: psBitSet{psBitSetOp XOR Operator}                          *
-*             TestType: Positive                                                   *
-\**********************************************************************************/
-
-psBitSetOp input is 110011001100110011001100, 101010101010101010101010.  Truth is 011001100110011001100110.
-<DATE><TIME>|<HOST>|I|testBitSet04
-    Perform binary XOR with psBitSets
-<DATE><TIME>|<HOST>|I|testBitSet04
-    Perform binary XOR and auto allocate output
-
----> TESTPOINT PASSED (psBitSet{psBitSetOp XOR Operator} | tst_psBitSet.c)
-
-/***************************** TESTPOINT ******************************************\
-*             TestFile: tst_psBitSet.c                                             *
-*            TestPoint: psBitSet{psBitSetNot}                                      *
-*             TestType: Positive                                                   *
-\**********************************************************************************/
-
-psBitSetOp input is 101010101010101010101010.  Truth is 010101010101010101010101.
-<DATE><TIME>|<HOST>|I|testBitSet05
-    Perform binary NOT with psBitSets
-<DATE><TIME>|<HOST>|I|testBitSet05
-    Perform binary NOT and auto allocate output
-<DATE><TIME>|<HOST>|I|testBitSet05
-    Following should generate an error
-<DATE><TIME>|<HOST>|E|psBitSetNot (FILE:LINENO)
-    Operand can not be NULL.
-
----> TESTPOINT PASSED (psBitSet{psBitSetNot} | tst_psBitSet.c)
-
Index: trunk/psLib/test/collections/verified/tst_psHash00.stdout
===================================================================
--- trunk/psLib/test/collections/verified/tst_psHash00.stdout	(revision 4493)
+++ 	(revision )
@@ -1,9 +1,0 @@
-/***************************** TESTPOINT ******************************************\
-*             TestFile: tst_psHash00.c                                             *
-*            TestPoint: psHash functions{psHashAlloc()}                            *
-*             TestType: Positive                                                   *
-\**********************************************************************************/
-
-
----> TESTPOINT PASSED (psHash functions{psHashAlloc()} | tst_psHash00.c)
-
Index: trunk/psLib/test/collections/verified/tst_psHash01.stderr
===================================================================
--- trunk/psLib/test/collections/verified/tst_psHash01.stderr	(revision 4493)
+++ 	(revision )
@@ -1,12 +1,0 @@
-<DATE><TIME>|<HOST>|I|main
-    Following should generate an error message: psHashAdd with null table
-<DATE><TIME>|<HOST>|E|psHashAdd (FILE:LINENO)
-    Unallowable operation: hash is NULL.
-<DATE><TIME>|<HOST>|I|main
-    Following should generate an error message: psHashAdd with null key
-<DATE><TIME>|<HOST>|E|psHashAdd (FILE:LINENO)
-    Unallowable operation: key is NULL.
-<DATE><TIME>|<HOST>|I|main
-    Following should generate an error message: psHashAdd with null data
-<DATE><TIME>|<HOST>|E|psHashAdd (FILE:LINENO)
-    Unallowable operation: data is NULL.
Index: trunk/psLib/test/collections/verified/tst_psHash01.stdout
===================================================================
--- trunk/psLib/test/collections/verified/tst_psHash01.stdout	(revision 4493)
+++ 	(revision )
@@ -1,69 +1,0 @@
-/***************************** TESTPOINT ******************************************\
-*             TestFile: tst_psHash01.c                                             *
-*            TestPoint: psHash functions{psHashAlloc}                              *
-*             TestType: Positive                                                   *
-\**********************************************************************************/
-
-
----> TESTPOINT PASSED (psHash functions{psHashAlloc} | tst_psHash01.c)
-
-/***************************** TESTPOINT ******************************************\
-*             TestFile: tst_psHash01.c                                             *
-*            TestPoint: psHash functions{psHashAdd}                                *
-*             TestType: Positive                                                   *
-\**********************************************************************************/
-
-
----> TESTPOINT PASSED (psHash functions{psHashAdd} | tst_psHash01.c)
-
-/***************************** TESTPOINT ******************************************\
-*             TestFile: tst_psHash01.c                                             *
-*            TestPoint: psHash replace item{psHashAdd}                             *
-*             TestType: Positive                                                   *
-\**********************************************************************************/
-
-
----> TESTPOINT PASSED (psHash replace item{psHashAdd} | tst_psHash01.c)
-
-/***************************** TESTPOINT ******************************************\
-*             TestFile: tst_psHash01.c                                             *
-*            TestPoint: psHashAdd{NULL hash table}                                 *
-*             TestType: Negative                                                   *
-*    ExpectedErrorText: Hash table can not be NULL.                                *
-*  ExpectedStatusValue: 0                                                          *
-\**********************************************************************************/
-
-
----> TESTPOINT PASSED (psHashAdd{NULL hash table} | tst_psHash01.c)
-
-/***************************** TESTPOINT ******************************************\
-*             TestFile: tst_psHash01.c                                             *
-*            TestPoint: psHashAdd{NULL key}                                        *
-*             TestType: Negative                                                   *
-*    ExpectedErrorText: Hash key can not be NULL.                                  *
-*  ExpectedStatusValue: 0                                                          *
-\**********************************************************************************/
-
-
----> TESTPOINT PASSED (psHashAdd{NULL hash key} | tst_psHash01.c)
-
-/***************************** TESTPOINT ******************************************\
-*             TestFile: tst_psHash01.c                                             *
-*            TestPoint: psHashAdd{NULL hash data}                                  *
-*             TestType: Negative                                                   *
-*    ExpectedErrorText: Hash data can not be NULL.                                 *
-*  ExpectedStatusValue: 0                                                          *
-\**********************************************************************************/
-
-
----> TESTPOINT PASSED (psHashAdd{NULL hash data} | tst_psHash01.c)
-
-/***************************** TESTPOINT ******************************************\
-*             TestFile: tst_psHash01.c                                             *
-*            TestPoint: psHash functions{psHashFree}                               *
-*             TestType: Positive                                                   *
-\**********************************************************************************/
-
-
----> TESTPOINT PASSED (psHash functions{psHashFree()} | tst_psHash01.c)
-
Index: trunk/psLib/test/collections/verified/tst_psHash02.stderr
===================================================================
--- trunk/psLib/test/collections/verified/tst_psHash02.stderr	(revision 4493)
+++ 	(revision )
@@ -1,8 +1,0 @@
-<DATE><TIME>|<HOST>|I|main
-    Following should generate an error message: psHashLookup with null table
-<DATE><TIME>|<HOST>|E|psHashLookup (FILE:LINENO)
-    Unallowable operation: hash is NULL.
-<DATE><TIME>|<HOST>|I|main
-    Following should generate an error message: psHashLookup with null key
-<DATE><TIME>|<HOST>|E|psHashLookup (FILE:LINENO)
-    Unallowable operation: key is NULL.
Index: trunk/psLib/test/collections/verified/tst_psHash02.stdout
===================================================================
--- trunk/psLib/test/collections/verified/tst_psHash02.stdout	(revision 4493)
+++ 	(revision )
@@ -1,42 +1,0 @@
-/***************************** TESTPOINT ******************************************\
-*             TestFile: tst_psHash02.c                                             *
-*            TestPoint: psHash functions{psHashLookup}                             *
-*             TestType: Positive                                                   *
-\**********************************************************************************/
-
-
----> TESTPOINT PASSED (psHash functions{psHashLookup} | tst_psHash02.c)
-
-/***************************** TESTPOINT ******************************************\
-*             TestFile: tst_psHash02.c                                             *
-*            TestPoint: psHashLookup{Invalid key}                                  *
-*             TestType: Negative                                                   *
-*    ExpectedErrorText: Key is not found in the table                              *
-*  ExpectedStatusValue: 0                                                          *
-\**********************************************************************************/
-
-
----> TESTPOINT PASSED (psHashLookup{Invalid key} | tst_psHash02.c)
-
-/***************************** TESTPOINT ******************************************\
-*             TestFile: tst_psHash02.c                                             *
-*            TestPoint: psHashLookup{NULL table}                                   *
-*             TestType: Negative                                                   *
-*    ExpectedErrorText: Can not lookup with NULL table                             *
-*  ExpectedStatusValue: 0                                                          *
-\**********************************************************************************/
-
-
----> TESTPOINT PASSED (psHashLookup{NULL table} | tst_psHash02.c)
-
-/***************************** TESTPOINT ******************************************\
-*             TestFile: tst_psHash02.c                                             *
-*            TestPoint: psHashLookup{NULL key}                                     *
-*             TestType: Negative                                                   *
-*    ExpectedErrorText: Can not lookup with NULL key.                              *
-*  ExpectedStatusValue: 0                                                          *
-\**********************************************************************************/
-
-
----> TESTPOINT PASSED (psHashLookup{NULL key} | tst_psHash02.c)
-
Index: trunk/psLib/test/collections/verified/tst_psHash03.stderr
===================================================================
--- trunk/psLib/test/collections/verified/tst_psHash03.stderr	(revision 4493)
+++ 	(revision )
@@ -1,8 +1,0 @@
-<DATE><TIME>|<HOST>|I|main
-    Following should generate an error message: psHashRemove with null table
-<DATE><TIME>|<HOST>|E|psHashRemove (FILE:LINENO)
-    Unallowable operation: hash is NULL.
-<DATE><TIME>|<HOST>|I|main
-    Following should generate an error message: psHashRemove with null key
-<DATE><TIME>|<HOST>|E|psHashRemove (FILE:LINENO)
-    Unallowable operation: key is NULL.
Index: trunk/psLib/test/collections/verified/tst_psHash03.stdout
===================================================================
--- trunk/psLib/test/collections/verified/tst_psHash03.stdout	(revision 4493)
+++ 	(revision )
@@ -1,42 +1,0 @@
-/***************************** TESTPOINT ******************************************\
-*             TestFile: tst_psHash03.c                                             *
-*            TestPoint: psHash functions{psHashRemove}                             *
-*             TestType: Positive                                                   *
-\**********************************************************************************/
-
-
----> TESTPOINT PASSED (psHash functions{psHashRemove()} | tst_psHash03.c)
-
-/***************************** TESTPOINT ******************************************\
-*             TestFile: tst_psHash03.c                                             *
-*            TestPoint: psHashRemove{Invalid key}                                  *
-*             TestType: Negative                                                   *
-*    ExpectedErrorText: Key is not found in table                                  *
-*  ExpectedStatusValue: 0                                                          *
-\**********************************************************************************/
-
-
----> TESTPOINT PASSED (psHashRemove{Invalid key} | tst_psHash03.c)
-
-/***************************** TESTPOINT ******************************************\
-*             TestFile: tst_psHash03.c                                             *
-*            TestPoint: psHashRemove{NULL table}                                   *
-*             TestType: Negative                                                   *
-*    ExpectedErrorText: Can not remove with NULL table                             *
-*  ExpectedStatusValue: 0                                                          *
-\**********************************************************************************/
-
-
----> TESTPOINT PASSED (psHashRemove{NULL table} | tst_psHash03.c)
-
-/***************************** TESTPOINT ******************************************\
-*             TestFile: tst_psHash03.c                                             *
-*            TestPoint: psHashRemove{NULL key}                                     *
-*             TestType: Negative                                                   *
-*    ExpectedErrorText: Can not remove with NULL key                               *
-*  ExpectedStatusValue: 0                                                          *
-\**********************************************************************************/
-
-
----> TESTPOINT PASSED (psHashRemove{NULL key} | tst_psHash03.c)
-
Index: trunk/psLib/test/collections/verified/tst_psHash04.stdout
===================================================================
--- trunk/psLib/test/collections/verified/tst_psHash04.stdout	(revision 4493)
+++ 	(revision )
@@ -1,24 +1,0 @@
-/***************************** TESTPOINT ******************************************\
-*             TestFile: tst_psHash04.c                                             *
-*            TestPoint: psHash functions{psHashKeyList()}                          *
-*             TestType: Positive                                                   *
-\**********************************************************************************/
-
-Linked List Entries: ENTRY03
-Linked List Entries: ENTRY02
-Linked List Entries: ENTRY01
-Linked List Entries: ENTRY00
-
----> TESTPOINT PASSED (psHash functions{psHashKeyList()} | tst_psHash04.c)
-
-/***************************** TESTPOINT ******************************************\
-*             TestFile: tst_psHash04.c                                             *
-*            TestPoint: psHashKeyList{NULL table}                                  *
-*             TestType: Negative                                                   *
-*    ExpectedErrorText: Can not lookup with NULL table                             *
-*  ExpectedStatusValue: 0                                                          *
-\**********************************************************************************/
-
-
----> TESTPOINT PASSED (psHashKeyList{NULL table} | tst_psHash04.c)
-
Index: trunk/psLib/test/collections/verified/tst_psHash05.stderr
===================================================================
--- trunk/psLib/test/collections/verified/tst_psHash05.stderr	(revision 4493)
+++ 	(revision )
@@ -1,13 +1,0 @@
-/***************************** TESTPOINT ******************************************\
-*             TestFile: tst_psHash05.c                                             *
-*            TestPoint: psHash{psHashToArray}                                      *
-*             TestType: Positive                                                   *
-\**********************************************************************************/
-
-<DATE><TIME>|<HOST>|I|hashToArray
-    Following should be an error.
-<DATE><TIME>|<HOST>|E|psHashToArray (FILE:LINENO)
-    Unallowable operation: hash is NULL.
-
----> TESTPOINT PASSED (psHash{psHashToArray} | tst_psHash05.c)
-
Index: trunk/psLib/test/collections/verified/tst_psList.stderr
===================================================================
--- trunk/psLib/test/collections/verified/tst_psList.stderr	(revision 4493)
+++ 	(revision )
@@ -1,166 +1,0 @@
-/***************************** TESTPOINT ******************************************\
-*             TestFile: tst_psList.c                                               *
-*            TestPoint: psList{psListAlloc}                                        *
-*             TestType: Positive                                                   *
-\**********************************************************************************/
-
-<DATE><TIME>|<HOST>|I|testListAlloc
-    psListAlloc shall create a psList with either 0 or 1 element.
-
----> TESTPOINT PASSED (psList{psListAlloc} | tst_psList.c)
-
-/***************************** TESTPOINT ******************************************\
-*             TestFile: tst_psList.c                                               *
-*            TestPoint: psList{psListAdd}                                          *
-*             TestType: Positive                                                   *
-\**********************************************************************************/
-
-<DATE><TIME>|<HOST>|I|testListAdd
-    psListAdd shall add an element to list
-<DATE><TIME>|<HOST>|I|testListAdd
-    Following should generate an error for using NULL list.
-<DATE><TIME>|<HOST>|E|psListAdd (FILE:LINENO)
-    Specified psList reference is NULL.
-<DATE><TIME>|<HOST>|I|testListAdd
-    Following should generate an error msg to add NULL data
-<DATE><TIME>|<HOST>|E|psListAdd (FILE:LINENO)
-    Specified data item is NULL.
-<DATE><TIME>|<HOST>|I|testListAdd
-    Following should error with invalid insert location
-<DATE><TIME>|<HOST>|E|psListIteratorSet (FILE:LINENO)
-    Specified location, -7, is invalid.
-<DATE><TIME>|<HOST>|I|testListAdd
-    Following should be a warning.
-<DATE><TIME>|<HOST>|W|psListAdd
-    Specified location, 9, is beyond the end of the list.  Adding data item to tail.
-
----> TESTPOINT PASSED (psList{psListAdd} | tst_psList.c)
-
-/***************************** TESTPOINT ******************************************\
-*             TestFile: tst_psList.c                                               *
-*            TestPoint: psList{psListGet}                                          *
-*             TestType: Positive                                                   *
-\**********************************************************************************/
-
-<DATE><TIME>|<HOST>|I|testListGet
-    Following should be an error
-<DATE><TIME>|<HOST>|E|psListGet (FILE:LINENO)
-    Specified psList reference is NULL.
-<DATE><TIME>|<HOST>|E|psListIteratorSet (FILE:LINENO)
-    Specified location, 5, is invalid.
-<DATE><TIME>|<HOST>|E|psListGet (FILE:LINENO)
-    Specified location, 5, is invalid.
-<DATE><TIME>|<HOST>|E|psListIteratorSet (FILE:LINENO)
-    Specified location, 4, is invalid.
-<DATE><TIME>|<HOST>|E|psListGet (FILE:LINENO)
-    Specified location, 4, is invalid.
-
----> TESTPOINT PASSED (psList{psListGet} | tst_psList.c)
-
-/***************************** TESTPOINT ******************************************\
-*             TestFile: tst_psList.c                                               *
-*            TestPoint: psList{psListRemove}                                       *
-*             TestType: Positive                                                   *
-\**********************************************************************************/
-
-<DATE><TIME>|<HOST>|I|testListRemove
-    Following should be an error
-<DATE><TIME>|<HOST>|E|psListRemove (FILE:LINENO)
-    Specified psList reference is NULL.
-<DATE><TIME>|<HOST>|I|testListRemove
-    Next message should be an error
-<DATE><TIME>|<HOST>|E|psListRemoveData (FILE:LINENO)
-    Specified data item is NULL.
-<DATE><TIME>|<HOST>|I|testListRemove
-    Next message should be an error
-<DATE><TIME>|<HOST>|E|psListRemoveData (FILE:LINENO)
-    Specified data item is not found in the psList.
-<DATE><TIME>|<HOST>|I|testListRemove
-    NULL list in psListRemoveData should generate error message.
-<DATE><TIME>|<HOST>|E|psListRemoveData (FILE:LINENO)
-    Specified psList reference is NULL.
-
----> TESTPOINT PASSED (psList{psListRemove} | tst_psList.c)
-
-/***************************** TESTPOINT ******************************************\
-*             TestFile: tst_psList.c                                               *
-*            TestPoint: psList{psListConvert}                                      *
-*             TestType: Positive                                                   *
-\**********************************************************************************/
-
-
----> TESTPOINT PASSED (psList{psListConvert} | tst_psList.c)
-
-/***************************** TESTPOINT ******************************************\
-*             TestFile: tst_psList.c                                               *
-*            TestPoint: psList{psListIterator}                                     *
-*             TestType: Positive                                                   *
-\**********************************************************************************/
-
-<DATE><TIME>|<HOST>|I|testListIterator
-     psListSetIterator/psListGetNext/psListGetPrev shall move the list cursor to the specified location
-<DATE><TIME>|<HOST>|W|psListGetAndDecrement
-    Attempt to get previous with itertator cursor NULL and offEnd false
-
----> TESTPOINT PASSED (psList{psListIterator} | tst_psList.c)
-
-/***************************** TESTPOINT ******************************************\
-*             TestFile: tst_psList.c                                               *
-*            TestPoint: psList{psListFree}                                         *
-*             TestType: Positive                                                   *
-\**********************************************************************************/
-
-
----> TESTPOINT PASSED (psList{psListFree} | tst_psList.c)
-
-/***************************** TESTPOINT ******************************************\
-*             TestFile: tst_psList.c                                               *
-*            TestPoint: psList{psListSort}                                         *
-*             TestType: Positive                                                   *
-\**********************************************************************************/
-
-
----> TESTPOINT PASSED (psList{psListSort} | tst_psList.c)
-
-/***************************** TESTPOINT ******************************************\
-*             TestFile: tst_psList.c                                               *
-*            TestPoint: psList{psListAddAfter}                                     *
-*             TestType: Positive                                                   *
-\**********************************************************************************/
-
-<DATE><TIME>|<HOST>|I|testListAddAfter
-    NULL data pointer should generate error message
-<DATE><TIME>|<HOST>|E|psListAddAfter (FILE:LINENO)
-    Specified data item is NULL.
-<DATE><TIME>|<HOST>|I|testListAddAfter
-    NULL iterator should generate error message
-<DATE><TIME>|<HOST>|E|psListAddAfter (FILE:LINENO)
-    Specified iterator is NULL.
-<DATE><TIME>|<HOST>|I|testListAddAfter
-    Non-mutable list should generate error message
-<DATE><TIME>|<HOST>|E|psListAddAfter (FILE:LINENO)
-    Specified iterator indicates list is non-mutable.
-
----> TESTPOINT PASSED (psList{psListAddAfter} | tst_psList.c)
-
-/***************************** TESTPOINT ******************************************\
-*             TestFile: tst_psList.c                                               *
-*            TestPoint: psList{psListAddBefore}                                    *
-*             TestType: Positive                                                   *
-\**********************************************************************************/
-
-<DATE><TIME>|<HOST>|I|testListAddBefore
-    NULL data pointer should generate error message
-<DATE><TIME>|<HOST>|E|psListAddBefore (FILE:LINENO)
-    Specified data item is NULL.
-<DATE><TIME>|<HOST>|I|testListAddBefore
-    NULL iterator should generate error message
-<DATE><TIME>|<HOST>|E|psListAddBefore (FILE:LINENO)
-    Specified iterator is NULL.
-<DATE><TIME>|<HOST>|I|testListAddBefore
-    Non-mutable list should generate error message
-<DATE><TIME>|<HOST>|E|psListAddBefore (FILE:LINENO)
-    Specified iterator indicates list is non-mutable.
-
----> TESTPOINT PASSED (psList{psListAddBefore} | tst_psList.c)
-
Index: trunk/psLib/test/collections/verified/tst_psMetadataIO.stderr
===================================================================
--- trunk/psLib/test/collections/verified/tst_psMetadataIO.stderr	(revision 4493)
+++ 	(revision )
@@ -1,117 +1,0 @@
-/***************************** TESTPOINT ******************************************\
-*             TestFile: tst_psMetadataIO.c                                         *
-*            TestPoint: psMetadataConfigParse{psMetadataConfigParse}               *
-*             TestType: Positive                                                   *
-\**********************************************************************************/
-
-<DATE><TIME>|<HOST>|W|psMetadataAddItem
-    Metadata item Float has been replaced
-
----> TESTPOINT PASSED (psMetadataConfigParse{psMetadataConfigParse} | tst_psMetadataIO.c)
-
-/***************************** TESTPOINT ******************************************\
-*             TestFile: tst_psMetadataIO.c                                         *
-*            TestPoint: psMetadataConfigParse{psMetadataConfigParse}               *
-*             TestType: Positive                                                   *
-\**********************************************************************************/
-
-<DATE><TIME>|<HOST>|I|testMetadataParseConfig1
-    Following should generate parse error message
-<DATE><TIME>|<HOST>|E|parseMetadataItem (FILE:LINENO)
-    Failed to parse the value 'X' of metadata item boolean, type BOOL, on line 2 of test2.config.
-<DATE><TIME>|<HOST>|E|parseMetadataItem (FILE:LINENO)
-    Failed to read a metadata value on line 4 of test2.config.
-<DATE><TIME>|<HOST>|E|parseMetadataItem (FILE:LINENO)
-    Failed to read a metadata value on line 7 of test2.config.
-<DATE><TIME>|<HOST>|E|parseMetadataItem (FILE:LINENO)
-    Failed to parse the value 'x,y,z' of metadata item @vector1, type U8, on line 8 of test2.config.
-<DATE><TIME>|<HOST>|E|parseMetadataItem (FILE:LINENO)
-    Failed to read a metadata type on line 9 of test2.config.
-<DATE><TIME>|<HOST>|E|parseMetadataItem (FILE:LINENO)
-    Failed to read a metadata value on line 9 of test2.config.
-<DATE><TIME>|<HOST>|E|parseMetadataItem (FILE:LINENO)
-    Failed to parse the value '' of metadata item @vector3, type F8, on line 10 of test2.config.
-<DATE><TIME>|<HOST>|E|parseMetadataItem (FILE:LINENO)
-    Duplicate MULTI specifier on line 14 of test2.config.
-<DATE><TIME>|<HOST>|E|parseMetadataItem (FILE:LINENO)
-    Metadata type 'CELL', found on line 17 of test2.config, is invalid.
-<DATE><TIME>|<HOST>|E|parseMetadataItem (FILE:LINENO)
-    Failed to parse the value 'aabb' of metadata item value1, type F64, on line 20 of test2.config.
-<DATE><TIME>|<HOST>|E|parseMetadataItem (FILE:LINENO)
-    Failed to parse the value 'ccdd' of metadata item value2, type S32, on line 21 of test2.config.
-<DATE><TIME>|<HOST>|E|parseLine (FILE:LINENO)
-    More than one '@' character not allowed.  Found on line 24 of test2.config.
-<DATE><TIME>|<HOST>|E|parseLine (FILE:LINENO)
-    Failed to read a metadata type on line 27 of test2.config.
-<DATE><TIME>|<HOST>|E|parseLine (FILE:LINENO)
-    Specified type, CELL, on line 31 of test2.config is already defined.
-<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|parseLine (FILE:LINENO)
-    Metadata type 'NEWCELL', found on line 37 of test2.config, is invalid.
-<DATE><TIME>|<HOST>|E|parseMetadataItem (FILE:LINENO)
-    Failed to read a metadata OURCELL on line 40 of test2.config.
-<DATE><TIME>|<HOST>|E|parseLine (FILE:LINENO)
-    Metadata type 'NEWCELL1', found on line 43 of test2.config, is invalid.
-<DATE><TIME>|<HOST>|I|testMetadataParseConfig1
-    Following should generate error message
-<DATE><TIME>|<HOST>|E|psMetadataConfigParse (FILE:LINENO)
-    Failed to open file 'ab.config'. Check if it exists and it has the proper permissions.
-<DATE><TIME>|<HOST>|I|testMetadataParseConfig1
-    Following should generate an error message for NULL failed lines arg
-<DATE><TIME>|<HOST>|E|psMetadataConfigParse (FILE:LINENO)
-    Unallowable operation: nFail is NULL.
-<DATE><TIME>|<HOST>|I|testMetadataParseConfig1
-    Following should generate an error message for NULL file name arg
-<DATE><TIME>|<HOST>|E|psMetadataConfigParse (FILE:LINENO)
-    Unallowable operation: fileName is NULL.
-
----> TESTPOINT PASSED (psMetadataConfigParse{psMetadataConfigParse} | tst_psMetadataIO.c)
-
-/***************************** TESTPOINT ******************************************\
-*             TestFile: tst_psMetadataIO.c                                         *
-*            TestPoint: psMetadataConfigParse{psMetadataConfigParse}               *
-*             TestType: Positive                                                   *
-\**********************************************************************************/
-
-<DATE><TIME>|<HOST>|I|testMetadataParseConfig2
-    Following should generate an error of duplicate key names
-<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.
-
----> TESTPOINT PASSED (psMetadataConfigParse{psMetadataConfigParse} | tst_psMetadataIO.c)
-
-/***************************** TESTPOINT ******************************************\
-*             TestFile: tst_psMetadataIO.c                                         *
-*            TestPoint: psMetadataConfigParse{psMetadataConfigParse}               *
-*             TestType: Positive                                                   *
-\**********************************************************************************/
-
-
----> TESTPOINT PASSED (psMetadataConfigParse{psMetadataConfigParse} | tst_psMetadataIO.c)
-
-/***************************** TESTPOINT ******************************************\
-*             TestFile: tst_psMetadataIO.c                                         *
-*            TestPoint: psMetadataConfigParse{psMetadataConfigParse}               *
-*             TestType: Positive                                                   *
-\**********************************************************************************/
-
-<DATE><TIME>|<HOST>|E|parseMetadataItem (FILE:LINENO)
-    Metadata type 'CELL', found on line 6 of test5.config, is invalid.
-<DATE><TIME>|<HOST>|E|parseMetadataItem (FILE:LINENO)
-    Metadata type 'CELL2', found on line 12 of test5.config, is invalid.
-<DATE><TIME>|<HOST>|E|parseMetadataItem (FILE:LINENO)
-    Metadata type 'CELL3', found on line 18 of test5.config, is invalid.
-<DATE><TIME>|<HOST>|E|parseMetadataItem (FILE:LINENO)
-    Failed to read a metadata CELL.00 on line 22 of test5.config.
-<DATE><TIME>|<HOST>|E|parseLine (FILE:LINENO)
-    Specified type, CELL5, on line 26 of test5.config is already defined.
-<DATE><TIME>|<HOST>|E|parseMetadataItem (FILE:LINENO)
-    Metadata type 'CELL6', found on line 30 of test5.config, is invalid.
-<DATE><TIME>|<HOST>|E|parseMetadataItem (FILE:LINENO)
-    Metadata type 'CELL6', found on line 31 of test5.config, is invalid.
-
----> TESTPOINT PASSED (psMetadataConfigParse{psMetadataConfigParse} | tst_psMetadataIO.c)
-
Index: trunk/psLib/test/collections/verified/tst_psMetadataIO.stdout
===================================================================
--- trunk/psLib/test/collections/verified/tst_psMetadataIO.stdout	(revision 4493)
+++ 	(revision )
@@ -1,222 +1,0 @@
-Double                    F64                                   1.234568  # This is a comment   
-String                    STR    This is the string that forms the value  # comment             
-boolean                   BOOL                                         1  # The value of 'boolean' is 'true'
-@primes                   U8     2,3,5,7,11,13,17  # These are prime numbers
-comment                   MULTI
-comment                   STR                                       This
-comment                   STR                                         is
-comment                   STR                                          a
-comment                   STR                                 non-unique
-comment                   STR                                        key
-Float                     F64                                   1.234560  # This generates a warning, and, if 'overwrite' is 'false', is ignored
-boolean1                  BOOL                                         0  # The value of 'boolean' is 'false'
-@negprimes                S8     -2,-3,-5,-7,-11,-13,-17,-19
-@vector1                  U16    0,1,2,4,8
-@vector2                  U32    0,8,16,32,64,128
-@vector3                  U64    0,64,256
-@vector4                  S16    -2,-1,0,1,2
-@vector5                  S32    -4,-2,0,2,4,6
-@vector6                  S64    -16,-4,0,4,16,36,64
-@vector7                  F32    -1.03,1.04,-1.05,1.06
-@vector8                  F64    -2.22,2.21,-2.2,2.19,-2.18
-CELL.00                   METADATA
-    EXTNAME                   STR                                      CCD00
-    BIASSEC                   STR                                    BSEC-00
-    CHIP                      STR                                    CHIP.00
-END
-CELL.01                   METADATA
-    EXTNAME                   STR                                      CCD01
-    BIASSEC                   STR                                    BSEC-01
-    CHIP                      STR                                    CHIP.00
-END
-MYCELL                    MULTI
-MYCELL                    METADATA
-    EXTNAME                   STR                                      CCD00
-    BIASSEC                   STR                                    BSEC-00
-    CHIP                      STR                                    CHIP.00
-    NCELL                     S32                                         24
-END
-MYCELL                    S32                                        123  # A number            
-cell                      METADATA
-    foo                       METADATA
-        bar                       STR                                        BAZ
-        ping                      STR                                       PONG
-    END
-    EXTNAME                   STR                                      CCD00
-    BIASSEC                   STR                                    BSEC-00
-    CHIP                      STR                                    CHIP.00
-    NCELL                     S32                                         12
-END
-CELL1                     METADATA
-    EXTNAME                   STR                                      CCD00
-    BIASSEC                   STR                                    BSEC-00
-    CHIP                      STR                                    CHIP.00
-    NCELL                     S32                                         24
-END
-CELL2                     METADATA
-    FOO                       METADATA
-        BAR                       STR                                        BAZ
-        PING                      STR                                       PONG
-    END
-    EXTNAME                   STR                                      CCD00
-    BIASSEC                   STR                                    BSEC-00
-    CHIP                      STR                                    CHIP.00
-    NCELL                     S32                                         24
-END
-FOO1                      METADATA
-    FOO2                      METADATA
-        FOO3                      METADATA
-            FOO4                      METADATA
-                FOO5                      METADATA
-                    FOO6                      METADATA
-                        BAR                       STR                                        BAZ
-                        PING                      STR                                       PONG
-                    END
-                    BAR                       STR                                        BAZ
-                    PING                      STR                                       PONG
-                END
-                BAR                       STR                                        BAZ
-                PING                      STR                                       PONG
-            END
-            BAR                       STR                                        BAZ
-            PING                      STR                                       PONG
-        END
-        BAR                       STR                                        BAZ
-        PING                      STR                                       PONG
-    END
-    BAR                       STR                                        BAZ
-    PING                      STR                                       PONG
-END
-FOO2                      METADATA
-    BAR                       STR                                        BAZ
-    PING                      STR                                       PONG
-    FOO3                      METADATA
-        BAR                       STR                                        BAZ
-        PING                      STR                                       PONG
-        FOO4                      METADATA
-            BAR                       STR                                        BAZ
-            PING                      STR                                       PONG
-            FOO5                      METADATA
-                BAR                       STR                                        BAZ
-                PING                      STR                                       PONG
-                FOO6                      METADATA
-                    BAR                       STR                                        BAZ
-                    PING                      STR                                       PONG
-                    FOO7                      METADATA
-                        BAR                       STR                                        BAZ
-                        PING                      STR                                       PONG
-                    END
-                END
-            END
-        END
-    END
-END
-FOO3                      METADATA
-    BAR                       STR                                        BAZ
-    FOO4                      METADATA
-        BAR                       STR                                        BAZ
-        FOO5                      METADATA
-            BAR                       STR                                        BAZ
-            FOO6                      METADATA
-                BAR                       STR                                        BAZ
-                FOO7                      METADATA
-                    BAR                       STR                                        BAZ
-                    FOO8                      METADATA
-                        BAR                       STR                                        BAZ
-                        PING                      STR                                       PONG
-                    END
-                    PING                      STR                                       PONG
-                END
-                PING                      STR                                       PONG
-            END
-            PING                      STR                                       PONG
-        END
-        PING                      STR                                       PONG
-    END
-    PING                      STR                                       PONG
-END
-FOO4                      METADATA
-    FOO5                      METADATA
-        BAR                       STR                                        BAZ
-        PING                      STR                                       PONG
-    END
-    FOO6                      METADATA
-        BAR                       STR                                        BAZ
-        PING                      STR                                       PONG
-    END
-END
-CELL.00                   METADATA
-    EXTNAME                   STR                                      CCD00
-    BIASSEC                   STR                                    BSEC-00
-    CHIP                      STR                                    CHIP.00
-END
-CELL.01                   METADATA
-    EXTNAME                   STR                                      CCD01
-    BIASSEC                   STR                                    BSEC-01
-    CHIP                      STR                                    CHIP.00
-END
-FOO5                      METADATA
-    CELL.00                   METADATA
-        EXTNAME                   STR                                      CCD00
-        BIASSEC                   STR                                    BSEC-00
-    END
-    CELL.01                   METADATA
-        EXTNAME                   STR                                      CCD01
-        BIASSEC                   STR                                    BSEC-01
-    END
-    FOO6                      METADATA
-        CELL.00                   METADATA
-            EXTNAME                   STR                                      CCD00
-        END
-        CELL.01                   METADATA
-            EXTNAME                   STR                                      CCD01
-        END
-    END
-END
-foo                       MULTI
-foo                       S32                                         -1
-foo                       STR                                    bar baz
-foo                       BOOL                                         1
-foo1                      MULTI
-foo1                      S32                                         -1  # bar                 
-foo1                      STR                                    bar baz  # baz                 
-foo1                      BOOL                                         1
-foo2                      MULTI
-foo2                      S32                                         -1
-foo2                      STR                                    bar baz
-foo2                      BOOL                                         1
-bar1                      METADATA
-foo                       MULTI
-    foo                       S32                                         -1
-    foo                       STR                                    bar baz
-    foo                       BOOL                                         1
-END
-foo3                      MULTI
-foo3                      METADATA
-    bar                       BOOL                                         1
-END
-foo3                      METADATA
-    bar                       BOOL                                         1
-END
-foo4                      MULTI
-foo4                      METADATA
-    a                         STR                                          x
-    b                         STR                                          y
-    c                         STR                                          z
-END
-foo4                      METADATA
-    a                         STR                                          x
-    b                         STR                                          y
-    c                         STR                                          z
-END
-foo5                      MULTI
-foo5                      METADATA
-    a                         STR                                          x
-    b                         STR                                          y
-    c                         STR                                          z
-END
-foo5                      METADATA
-    a                         STR                                          x
-    b                         STR                                          y
-    c                         STR                                          z
-END
Index: trunk/psLib/test/collections/verified/tst_psMetadata_01.stderr
===================================================================
--- trunk/psLib/test/collections/verified/tst_psMetadata_01.stderr	(revision 4493)
+++ 	(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: trunk/psLib/test/collections/verified/tst_psMetadata_01.stdout
===================================================================
--- trunk/psLib/test/collections/verified/tst_psMetadata_01.stdout	(revision 4493)
+++ 	(revision )
@@ -1,192 +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)
-
-/***************************** 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)
-
-/***************************** 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 4493)
+++ 	(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: item is NULL.
Index: trunk/psLib/test/collections/verified/tst_psMetadata_02.stdout
===================================================================
--- trunk/psLib/test/collections/verified/tst_psMetadata_02.stdout	(revision 4493)
+++ 	(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: trunk/psLib/test/collections/verified/tst_psMetadata_03.stderr
===================================================================
--- trunk/psLib/test/collections/verified/tst_psMetadata_03.stderr	(revision 4493)
+++ 	(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: item->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 4493)
+++ 	(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: trunk/psLib/test/collections/verified/tst_psMetadata_04.stderr
===================================================================
--- trunk/psLib/test/collections/verified/tst_psMetadata_04.stderr	(revision 4493)
+++ 	(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: trunk/psLib/test/collections/verified/tst_psMetadata_04.stdout
===================================================================
--- trunk/psLib/test/collections/verified/tst_psMetadata_04.stdout	(revision 4493)
+++ 	(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: trunk/psLib/test/collections/verified/tst_psMetadata_05.stderr
===================================================================
--- trunk/psLib/test/collections/verified/tst_psMetadata_05.stderr	(revision 4493)
+++ 	(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: item is NULL.
Index: trunk/psLib/test/collections/verified/tst_psMetadata_05.stdout
===================================================================
--- trunk/psLib/test/collections/verified/tst_psMetadata_05.stdout	(revision 4493)
+++ 	(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: trunk/psLib/test/collections/verified/tst_psMetadata_06.stdout
===================================================================
--- trunk/psLib/test/collections/verified/tst_psMetadata_06.stdout	(revision 4493)
+++ 	(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: trunk/psLib/test/collections/verified/tst_psMetadata_07.stdout
===================================================================
--- trunk/psLib/test/collections/verified/tst_psMetadata_07.stdout	(revision 4493)
+++ 	(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/verified/tst_psPixels.stderr
===================================================================
--- trunk/psLib/test/collections/verified/tst_psPixels.stderr	(revision 4493)
+++ 	(revision )
@@ -1,74 +1,0 @@
-/***************************** TESTPOINT ******************************************\
-*             TestFile: tst_psPixels.c                                             *
-*            TestPoint: psPixels{psPixelsAlloc}                                    *
-*             TestType: Positive                                                   *
-\**********************************************************************************/
-
-
----> TESTPOINT PASSED (psPixels{psPixelsAlloc} | tst_psPixels.c)
-
-/***************************** TESTPOINT ******************************************\
-*             TestFile: tst_psPixels.c                                             *
-*            TestPoint: psPixels{psPixelsRealloc}                                  *
-*             TestType: Positive                                                   *
-\**********************************************************************************/
-
-
----> TESTPOINT PASSED (psPixels{psPixelsRealloc} | tst_psPixels.c)
-
-/***************************** TESTPOINT ******************************************\
-*             TestFile: tst_psPixels.c                                             *
-*            TestPoint: psPixels{psPixelsCopy}                                     *
-*             TestType: Positive                                                   *
-\**********************************************************************************/
-
-<DATE><TIME>|<HOST>|I|testPixelsCopy
-    Following should generate an error message for NULL input
-<DATE><TIME>|<HOST>|E|psPixelsCopy (FILE:LINENO)
-    Input psPixels can not be NULL.
-
----> TESTPOINT PASSED (psPixels{psPixelsCopy} | tst_psPixels.c)
-
-/***************************** TESTPOINT ******************************************\
-*             TestFile: tst_psPixels.c                                             *
-*            TestPoint: psPixels{psPixelsToMask}                                   *
-*             TestType: Positive                                                   *
-\**********************************************************************************/
-
-<DATE><TIME>|<HOST>|I|testPixelsToMask
-    Following should generate an error for NULL pixels
-<DATE><TIME>|<HOST>|E|psPixelsToMask (FILE:LINENO)
-    Input psPixels can not be NULL.
-<DATE><TIME>|<HOST>|I|testPixelsToMask
-    Following should generate an error for invalid range
-<DATE><TIME>|<HOST>|E|psPixelsToMask (FILE:LINENO)
-    Specified psRegion, [10:0,10:0], does not specify a valid region.
-
----> TESTPOINT PASSED (psPixels{psPixelsToMask} | tst_psPixels.c)
-
-/***************************** TESTPOINT ******************************************\
-*             TestFile: tst_psPixels.c                                             *
-*            TestPoint: psPixels{psPixelsFromMask}                                 *
-*             TestType: Positive                                                   *
-\**********************************************************************************/
-
-<DATE><TIME>|<HOST>|I|testPixelsFromMask
-    Following should generate error for NULL mask
-<DATE><TIME>|<HOST>|E|psPixelsFromMask (FILE:LINENO)
-    Specified mask can not be NULL.
-
----> TESTPOINT PASSED (psPixels{psPixelsFromMask} | tst_psPixels.c)
-
-/***************************** TESTPOINT ******************************************\
-*             TestFile: tst_psPixels.c                                             *
-*            TestPoint: psPixels{psPixelsConcatenate}                              *
-*             TestType: Positive                                                   *
-\**********************************************************************************/
-
-<DATE><TIME>|<HOST>|I|testPixelsConcatenate
-    Following should generate an error message for NULL pixels
-<DATE><TIME>|<HOST>|E|psPixelsConcatenate (FILE:LINENO)
-    Input psPixels can not be NULL.
-
----> TESTPOINT PASSED (psPixels{psPixelsConcatenate} | tst_psPixels.c)
-
Index: trunk/psLib/test/collections/verified/tst_psScalar.stderr
===================================================================
--- trunk/psLib/test/collections/verified/tst_psScalar.stderr	(revision 4493)
+++ 	(revision )
@@ -1,34 +1,0 @@
-/***************************** TESTPOINT ******************************************\
-*             TestFile: tst_psScalar.c                                             *
-*            TestPoint: psScalar{psScalarAlloc}                                    *
-*             TestType: Positive                                                   *
-\**********************************************************************************/
-
-<DATE><TIME>|<HOST>|I|testScalarAlloc
-    psScalarAlloc shall create scalar data objects
-<DATE><TIME>|<HOST>|I|testScalarAlloc
-    Following should generate an error message
-<DATE><TIME>|<HOST>|E|psScalarAlloc (FILE:LINENO)
-    Specified datatype (4865) is unsupported by psScalar.
-
----> TESTPOINT PASSED (psScalar{psScalarAlloc} | tst_psScalar.c)
-
-/***************************** TESTPOINT ******************************************\
-*             TestFile: tst_psScalar.c                                             *
-*            TestPoint: psScalar{psScalarCopy}                                     *
-*             TestType: Positive                                                   *
-\**********************************************************************************/
-
-<DATE><TIME>|<HOST>|I|testScalarCopy
-    psScalarCopy shall copy scalar objects
-<DATE><TIME>|<HOST>|I|testScalarCopy
-    Following should generate an error message
-<DATE><TIME>|<HOST>|E|psScalarCopy (FILE:LINENO)
-    Specified datatype (4865) is unsupported by psScalar.
-<DATE><TIME>|<HOST>|I|testScalarCopy
-    Following should generate an error message
-<DATE><TIME>|<HOST>|E|psScalarCopy (FILE:LINENO)
-    Can not copy a NULL psScalar.
-
----> TESTPOINT PASSED (psScalar{psScalarCopy} | tst_psScalar.c)
-
Index: trunk/psLib/test/collections/verified/tst_psVector.stderr
===================================================================
--- trunk/psLib/test/collections/verified/tst_psVector.stderr	(revision 4493)
+++ 	(revision )
@@ -1,33 +1,0 @@
-/***************************** TESTPOINT ******************************************\
-*             TestFile: tst_psVector.c                                             *
-*            TestPoint: psVector{psVectorAlloc}                                    *
-*             TestType: Positive                                                   *
-\**********************************************************************************/
-
-<DATE><TIME>|<HOST>|I|testVectorAlloc
-    Following should be an error.
-<DATE><TIME>|<HOST>|E|psVectorAlloc (FILE:LINENO)
-    Input psVector is an unsupported type (0x0).
-
----> TESTPOINT PASSED (psVector{psVectorAlloc} | tst_psVector.c)
-
-/***************************** TESTPOINT ******************************************\
-*             TestFile: tst_psVector.c                                             *
-*            TestPoint: psVector{psVectorRealloc}                                  *
-*             TestType: Positive                                                   *
-\**********************************************************************************/
-
-<DATE><TIME>|<HOST>|E|psVectorRealloc (FILE:LINENO)
-    psVectorRealloc must a given a non-NULL psVector to resize.  Desired datatype unknown.
-
----> TESTPOINT PASSED (psVector{psVectorRealloc} | tst_psVector.c)
-
-/***************************** TESTPOINT ******************************************\
-*             TestFile: tst_psVector.c                                             *
-*            TestPoint: psVector{psVectorExtend}                                   *
-*             TestType: Positive                                                   *
-\**********************************************************************************/
-
-
----> TESTPOINT PASSED (psVector{psVectorExtend} | tst_psVector.c)
-
Index: trunk/psLib/test/collections/verified/tst_psVectorSort_01.stderr
===================================================================
--- trunk/psLib/test/collections/verified/tst_psVectorSort_01.stderr	(revision 4493)
+++ 	(revision )
@@ -1,4 +1,0 @@
-<DATE><TIME>|<HOST>|I|main
-    Following should generate an error messgae
-<DATE><TIME>|<HOST>|E|psVectorSort (FILE:LINENO)
-    Input psVector is an unsupported type (0x1301).
Index: trunk/psLib/test/collections/verified/tst_psVectorSort_01.stdout
===================================================================
--- trunk/psLib/test/collections/verified/tst_psVectorSort_01.stdout	(revision 4493)
+++ 	(revision )
@@ -1,45 +1,0 @@
-/***************************** TESTPOINT ******************************************\
-*             TestFile: tst_psVectorSort_01.c                                      *
-*            TestPoint: psVectorSort{Sort all types}                               *
-*             TestType: Positive                                                   *
-\**********************************************************************************/
-
-
----> TESTPOINT PASSED (psVectorSort{Sort all types} | tst_psVectorSort_01.c)
-
-/***************************** TESTPOINT ******************************************\
-*             TestFile: tst_psVectorSort_01.c                                      *
-*            TestPoint: psVectorSort{Sort input float vector into itself}          *
-*             TestType: Positive                                                   *
-\**********************************************************************************/
-
-
----> TESTPOINT PASSED (psVectorSort{Sort input float vector into itself} | tst_psVectorSort_01.c)
-
-/***************************** TESTPOINT ******************************************\
-*             TestFile: tst_psVectorSort_01.c                                      *
-*            TestPoint: psVectorSort{Invalid vector type}                          *
-*             TestType: Positive                                                   *
-\**********************************************************************************/
-
-
----> TESTPOINT PASSED (psVectorSort{Invalid vector type} | tst_psVectorSort_01.c)
-
-/***************************** TESTPOINT ******************************************\
-*             TestFile: tst_psVectorSort_01.c                                      *
-*            TestPoint: psVectorSort{Sort zero element vector}                     *
-*             TestType: Positive                                                   *
-\**********************************************************************************/
-
-
----> TESTPOINT PASSED (psVectorSort{Sort zero element vector} | tst_psVectorSort_01.c)
-
-/***************************** TESTPOINT ******************************************\
-*             TestFile: tst_psVectorSort_01.c                                      *
-*            TestPoint: psVectorSort{Free float vectors}                           *
-*             TestType: Positive                                                   *
-\**********************************************************************************/
-
-
----> TESTPOINT PASSED (psVectorSort{Free float vectors} | tst_psVectorSort_01.c)
-
Index: trunk/psLib/test/collections/verified/tst_psVectorSort_02.stderr
===================================================================
--- trunk/psLib/test/collections/verified/tst_psVectorSort_02.stderr	(revision 4493)
+++ 	(revision )
@@ -1,8 +1,0 @@
-<DATE><TIME>|<HOST>|I|main
-    Following should generate an error message
-<DATE><TIME>|<HOST>|E|psVectorSortIndex (FILE:LINENO)
-    psVectorSort can not sort a NULL psVector.
-<DATE><TIME>|<HOST>|I|main
-    Following should generate two error messages(psVectorSort,psVectorSortIndex)
-<DATE><TIME>|<HOST>|E|psVectorSortIndex (FILE:LINENO)
-    Input psVector is an unsupported type (0x1301).
Index: trunk/psLib/test/collections/verified/tst_psVectorSort_02.stdout
===================================================================
--- trunk/psLib/test/collections/verified/tst_psVectorSort_02.stdout	(revision 4493)
+++ 	(revision )
@@ -1,54 +1,0 @@
-/***************************** TESTPOINT ******************************************\
-*             TestFile: tst_psVectorSort_02.c                                      *
-*            TestPoint: psVectorSortIndex{Sort by index for all types}             *
-*             TestType: Positive                                                   *
-\**********************************************************************************/
-
-
----> TESTPOINT PASSED (psVectorSortIndex{Sort by index for all types} | tst_psVectorSort_02.c)
-
-/***************************** TESTPOINT ******************************************\
-*             TestFile: tst_psVectorSort_02.c                                      *
-*            TestPoint: psVectorSortIndex{Attempt to sort with NULL input}         *
-*             TestType: Positive                                                   *
-\**********************************************************************************/
-
-
----> TESTPOINT PASSED (psVectorSortIndex{Attempt to sort with NULL input} | tst_psVectorSort_02.c)
-
-/***************************** TESTPOINT ******************************************\
-*             TestFile: tst_psVectorSort_02.c                                      *
-*            TestPoint: psVectorSortIndex{Sort with resize output vector}          *
-*             TestType: Positive                                                   *
-\**********************************************************************************/
-
-
----> TESTPOINT PASSED (psVectorSortIndex{Sort with resize output vector} | tst_psVectorSort_02.c)
-
-/***************************** TESTPOINT ******************************************\
-*             TestFile: tst_psVectorSort_02.c                                      *
-*            TestPoint: psVectorSortIndex{Sort with input vector with zero elements} *
-*             TestType: Positive                                                   *
-\**********************************************************************************/
-
-
----> TESTPOINT PASSED (psVectorSortIndex{Sort with input vector with zero elements} | tst_psVectorSort_02.c)
-
-/***************************** TESTPOINT ******************************************\
-*             TestFile: tst_psVectorSort_02.c                                      *
-*            TestPoint: psVectorSortIndex{Attempt to sort with invalid type}       *
-*             TestType: Positive                                                   *
-\**********************************************************************************/
-
-
----> TESTPOINT PASSED (psVectorSortIndex{Attempt to sort with invalid type} | tst_psVectorSort_02.c)
-
-/***************************** TESTPOINT ******************************************\
-*             TestFile: tst_psVectorSort_02.c                                      *
-*            TestPoint: psVectorSortIndex{Free vectors}                            *
-*             TestType: Positive                                                   *
-\**********************************************************************************/
-
-
----> TESTPOINT PASSED (psVectorSort{Free vectors} | tst_psVectorSort_02.c)
-
Index: trunk/psLib/test/collections/verified/tst_psVectorSort_03.stdout
===================================================================
--- trunk/psLib/test/collections/verified/tst_psVectorSort_03.stdout	(revision 4493)
+++ 	(revision )
@@ -1,59 +1,0 @@
-/***************************** TESTPOINT ******************************************\
-*             TestFile: tst_psVectorSort_03.c                                      *
-*            TestPoint: psVectorSort{Create float vectors of different sizes}      *
-*             TestType: Positive                                                   *
-\**********************************************************************************/
-
-arr[0] = 0.000000
-arr[1] = 0.000000
-arr[2] = 0.000000
-arr[3] = 0.000000
-arr[4] = 0.000000
-
----> TESTPOINT PASSED (psVectorSort{Create float vectors of different sizes} | tst_psVectorSort_03.c)
-
-/***************************** TESTPOINT ******************************************\
-*             TestFile: tst_psVectorSort_03.c                                      *
-*            TestPoint: psVectorSort{Sort float vector}                            *
-*             TestType: Negative                                                   *
-*    ExpectedErrorText: Input and output vector sizes are not equal                *
-*  ExpectedStatusValue: 0                                                          *
-\**********************************************************************************/
-
-
----> TESTPOINT PASSED (psVectorSort{Sort float vector} | tst_psVectorSort_03.c)
-
-/***************************** TESTPOINT ******************************************\
-*             TestFile: tst_psVectorSort_03.c                                      *
-*            TestPoint: psVectorSort{Create float & double vectors of same size}   *
-*             TestType: Positive                                                   *
-\**********************************************************************************/
-
-vec[0] = 0.000000
-vec[1] = 0.000000
-vec[2] = 0.000000
-vec[3] = 0.000000
-vec[4] = 0.000000
-
----> TESTPOINT PASSED (psVectorSort{Create float and double vectors same size} | tst_psVectorSort_03.c)
-
-/***************************** TESTPOINT ******************************************\
-*             TestFile: tst_psVectorSort_03.c                                      *
-*            TestPoint: psVectorSort{Sort F32/F64 vector}                          *
-*             TestType: Negative                                                   *
-*    ExpectedErrorText: Input and output vector different types                    *
-*  ExpectedStatusValue: 0                                                          *
-\**********************************************************************************/
-
-
----> TESTPOINT PASSED (psVectorSort{Sort float vector} | tst_psVectorSort_03.c)
-
-/***************************** TESTPOINT ******************************************\
-*             TestFile: tst_psVectorSort_03.c                                      *
-*            TestPoint: psVectorSort{Free float vectors}                           *
-*             TestType: Positive                                                   *
-\**********************************************************************************/
-
-
----> TESTPOINT PASSED (psVectorSort{Free float vectors} | tst_psVectorSort_03.c)
-
Index: trunk/psLib/test/collections/verified/tst_psVectorSort_04.stderr
===================================================================
--- trunk/psLib/test/collections/verified/tst_psVectorSort_04.stderr	(revision 4493)
+++ 	(revision )
@@ -1,2 +1,0 @@
-<DATE><TIME>|<HOST>|E|psVectorSort (FILE:LINENO)
-    psVectorSort can not sort a NULL psVector.
Index: trunk/psLib/test/collections/verified/tst_psVectorSort_04.stdout
===================================================================
--- trunk/psLib/test/collections/verified/tst_psVectorSort_04.stdout	(revision 4493)
+++ 	(revision )
@@ -1,20 +1,0 @@
-/***************************** TESTPOINT ******************************************\
-*             TestFile: tst_psVectorSort_04.c                                      *
-*            TestPoint: psVectorSort{Attempt to sort with null input vector}       *
-*             TestType: Negative                                                   *
-*    ExpectedErrorText: Null input vector                                          *
-*  ExpectedStatusValue: 0                                                          *
-\**********************************************************************************/
-
-
----> TESTPOINT PASSED (psVectorSort{Attempt to sort with null input vector} | tst_psVectorSort_04.c)
-
-/***************************** TESTPOINT ******************************************\
-*             TestFile: tst_psVectorSort_04.c                                      *
-*            TestPoint: psVectorSort{Free vectors}                                 *
-*             TestType: Positive                                                   *
-\**********************************************************************************/
-
-
----> TESTPOINT PASSED (psVectorSort{Free arays} | tst_psVectorSort_04.c)
-
