Index: trunk/psLib/test/astro/tst_psEarthOrientation.c
===================================================================
--- trunk/psLib/test/astro/tst_psEarthOrientation.c	(revision 5524)
+++ trunk/psLib/test/astro/tst_psEarthOrientation.c	(revision 5533)
@@ -5,6 +5,6 @@
 *  @author d-Rob, MHPCC
 *
-*  @version $Revision: 1.13 $ $Name: not supported by cvs2svn $
-*  @date $Date: 2005-11-16 20:52:23 $
+*  @version $Revision: 1.14 $ $Name: not supported by cvs2svn $
+*  @date $Date: 2005-11-17 03:59:05 $
 *
 *  Copyright 2004-2005 Maui High Performance Computing Center, University of Hawaii
@@ -14,6 +14,4 @@
 #include "pslib_strict.h"
 
-//static psS32 testEOCParallax(void);
-static psS32 testEOCInit_Final(void);
 static psS32 testAberration(void);
 static psS32 testGravityDeflect(void);
@@ -26,8 +24,6 @@
 
 testDescription tests[] = {
-                              {testEOCInit_Final, 665, "psEOCInit_Final", 0, false},
                               {testAberration, 666, "psAberration()", 0, false},
                               {testGravityDeflect, 667, "psGravityDeflect()", 0, false},
-                              //                              {testEOCParallax, 668, "psEOCParallax()", 0, false},
                               {testEOCPrecession, 669, "psEOCPrecession()", 0, false},
                               {testEOCPolar, 670, "psEOCPolar()", 0, false},
@@ -56,9 +52,4 @@
 
     //    return ( ! runTestSuite( stderr, "psEarthOrientation", tests, argc, argv ) );
-}
-
-psS32 testEOCInit_Final(void)
-{
-    return 0;
 }
 
@@ -171,5 +162,4 @@
     psFree(UT1time);
     //Check return values from valid precession input
-
     pmodel = psEOC_PrecessionModel(time);
     if ( pmodel == NULL ) {
@@ -288,4 +278,44 @@
 psS32 testEOCNutation(void)
 {
+    psTime *in = psTimeAlloc(PS_TIME_TAI);
+    in->sec = 1131579114;
+    in->nsec = 498489000;
+    in->leapsecond = false;
+    psTime *empty = NULL;
+    psEarthPole *nute = NULL;
+
+    //Return NULL for NULL input time.
+    nute = psEOC_NutationCorr(empty);
+    if (nute != NULL) {
+        psError(PS_ERR_BAD_PARAMETER_VALUE, false,
+                "psEOC_NutationCorr failed to return NULL for NULL input time.\n");
+        return 1;
+    }
+    //Return NULL for UT1 time input
+    psTime *UT1time = psTimeAlloc(PS_TIME_UT1);
+    nute = psEOC_NutationCorr(UT1time);
+    if (nute != NULL) {
+        psError(PS_ERR_BAD_PARAMETER_VALUE, false,
+                "psEOC_NutationCorr failed to return NULL for UT1 input time.\n");
+        return 2;
+    }
+    psFree(UT1time);
+    //Check return values from valid nutation time input
+    nute = psEOC_PrecessionModel(in);
+    if ( nute == NULL ) {
+        psError(PS_ERR_BAD_PARAMETER_NULL, false,
+                "psEOC_NutationCorr returned NULL for valid input.\n");
+        return 3;
+    } else {
+        printf("Nutation Correction output = x,y,s = %.8g, %.8g, %.8g\n\n",
+               nute->x, nute->y, nute->s);
+    }
+    psFree(nute);
+    psFree(in);
+
+    if (!p_psEOCFinalize() ) {
+        psError(PS_ERR_BAD_PARAMETER_VALUE, false, "EOC failed finalization!\n");
+        return 12;
+    }
 
     return 0;
