Index: trunk/psLib/test/collections/tst_psList.c
===================================================================
--- trunk/psLib/test/collections/tst_psList.c	(revision 3111)
+++ trunk/psLib/test/collections/tst_psList.c	(revision 3112)
@@ -6,6 +6,6 @@
  *  @author Robert DeSonia, MHPCC
  *
- *  @version $Revision: 1.27 $ $Name: not supported by cvs2svn $
- *  @date $Date: 2005-02-02 21:58:48 $
+ *  @version $Revision: 1.28 $ $Name: not supported by cvs2svn $
+ *  @date $Date: 2005-02-02 23:59:36 $
  *
  *  Copyright 2004 Maui High Performance Computing Center, University of Hawaii
@@ -460,5 +460,5 @@
     psFree(data);
     // verify that the size incremented
-    if (list->size != 6  || *(psS32 *)list->tail->prev->data != 7) {
+    if (list->size != 6  || *(psS32 *)list->tail->prev->prev->data != 7) {
         printListInt(list);
         psError(PS_ERR_UNKNOWN, true,"psListAdd didn't insert to position #2.");
@@ -597,4 +597,10 @@
     }
 
+    data = (psS32*)psListGet(list,-2);
+    if (data == NULL || *data !=2) {
+        psError(PS_ERR_UNKNOWN,true,"psListGet failed with location=-2");
+        return 9;
+    }
+
     psFree(list);
 
@@ -682,4 +688,19 @@
     }
 
+    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->size != --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");
Index: trunk/psLib/test/collections/verified/tst_psList.stderr
===================================================================
--- trunk/psLib/test/collections/verified/tst_psList.stderr	(revision 3111)
+++ trunk/psLib/test/collections/verified/tst_psList.stderr	(revision 3112)
@@ -29,5 +29,5 @@
     Following should error with invalid insert location
 <DATE><TIME>|<HOST>|E|psListIteratorSet (psList.c:<LINENO>)
-    Specified location, -6, is invalid.
+    Specified location, -7, is invalid.
 <DATE><TIME>|<HOST>|I|testListAdd
     Following should be a warning.
