Index: /trunk/psLib/test/astro/Makefile.am
===================================================================
--- /trunk/psLib/test/astro/Makefile.am	(revision 4600)
+++ /trunk/psLib/test/astro/Makefile.am	(revision 4601)
@@ -9,6 +9,7 @@
 	tst_psTime_02 \
 	tst_psTime_03 \
-	tst_psTime_04
-#	tst_psCoord
+	tst_psTime_04 \
+	tst_psCoord   \
+	tst_psSphereOps
 
 tst_psTime_01_SOURCES = tst_psTime_01.c
@@ -17,4 +18,5 @@
 tst_psTime_04_SOURCES = tst_psTime_04.c
 tst_psCoord_SOURCES = tst_psCoord.c
+tst_psSphereOps_SOURCES = tst_psSphereOps.c
 tst_psCoord01_SOURCES = tst_psCoord01.c
 
Index: /trunk/psLib/test/astro/tst_psCoord.c
===================================================================
--- /trunk/psLib/test/astro/tst_psCoord.c	(revision 4600)
+++ /trunk/psLib/test/astro/tst_psCoord.c	(revision 4601)
@@ -6,6 +6,6 @@
 *  @author GLG, MHPCC
 *
-*  @version $Revision: 1.2 $ $Name: not supported by cvs2svn $
-*  @date $Date: 2005-07-20 01:21:13 $
+*  @version $Revision: 1.3 $ $Name: not supported by cvs2svn $
+*  @date $Date: 2005-07-23 02:44:09 $
 *
 *  Copyright 2004-2005 Maui High Performance Computing Center, University of Hawaii
@@ -14,35 +14,14 @@
 #include "psTest.h"
 #include "pslib_strict.h"
-static psS32 testSphereRotAlloc(void);
 static psS32 testPlaneTransformAlloc(void);
 static psS32 testPlaneDistortAlloc(void);
 static psS32 testPlaneTransformApply(void);
 static psS32 testPlaneDistortApply(void);
-static psS32 testSphereRotApply1(void);
-static psS32 testSphereRotApply2(void);
-static psS32 testSphereRotApply3(void);
-static psS32 testSphereRotApply4(void);
-static psS32 testSphereRotApply5(void);
-static psS32 testSphereRotICRSToEcliptic(void);
-static psS32 testSphereRotEclipticToICRS(void);
-static psS32 testSphereRotICRSToGalactic(void);
-static psS32 testSphereRotGalacticToICRS(void);
-static psS32 testSphereRotPrecess(void);
+
 testDescription tests[] = {
-                              {testSphereRotAlloc, 819, "psSphereRotAlloc()", 0, false},
                               {testPlaneTransformAlloc, 826, "psPlaneTransformAlloc()", 0, false},
                               {testPlaneDistortAlloc, 827, "psPlaneDistortAlloc()", 0, false},
                               {testPlaneTransformApply, 831, "psPlaneTransformApply()", 0, false},
                               {testPlaneDistortApply, 832, "psPlaneDistortApply()", 0, false},
-                              {testSphereRotApply1, 820, "psSphereRotApply()", 0, false},
-                              {testSphereRotApply2, 820, "psSphereRotApply()", 0, false},
-                              {testSphereRotApply3, 820, "psSphereRotApply()", 0, false},
-                              {testSphereRotApply4, 820, "psSphereRotApply()", 0, false},
-                              {testSphereRotApply5, 820, "psSphereRotApply()", 0, false},
-                              {testSphereRotICRSToEcliptic, 821, "psSphereRotICRSToEcliptic()", 0, false},
-                              {testSphereRotEclipticToICRS, 822, "psSphereRotEclipticToICRS()", 0, false},
-                              {testSphereRotICRSToGalactic, 824, "psSphereRotICRSToGalactic()", 0, false},
-                              {testSphereRotGalacticToICRS, 823, "psSphereRotGalacticToICRS()", 0, false},
-                              {testSphereRotPrecess, 825, "psSphereRotPrecess()", 0, false},
                               {NULL}
                           };
@@ -53,58 +32,4 @@
 
     return ( ! runTestSuite( stderr, "psCoord", tests, argc, argv ) );
-}
-
-#define DEG_INC   30.0
-
-#define MJD_1900  15021.0        // Modified Julian Day 1/1/1900 00:00:00
-#define MJD_2000  51544.0        // Modified Julian Day 1/1/2000 00:00:00
-#define MJD_2100  88069.0        // Modified Julian Day 1/1/2100 00:00:00
-
-#define ERROR_TOL   0.0001
-
-#define ALPHA_P 1.0
-#define DELTA_P 2.0
-#define PHI_P 3.0
-
-psS32 testSphereRotAlloc( void )
-{
-    // Allocate data structure
-    psSphereRot* myST = psSphereRotAlloc(ALPHA_P, DELTA_P, PHI_P);
-
-    // Verify null not returned
-    if(myST == NULL) {
-        psError(PS_ERR_UNKNOWN,true,"Returned NULL with valid parameters");
-        return 1;
-    }
-    // Verify sin member is updated
-    double vx = cos(DELTA_P)*cos(ALPHA_P);
-    double vy = cos(DELTA_P)*sin(ALPHA_P);
-    double vz = sin(DELTA_P);
-    double q0 = vx * sin(PHI_P/2.0);
-    double q1 = vy * sin(PHI_P/2.0);
-    double q2 = vz * sin(PHI_P/2.0);
-    double q3 = cos(PHI_P/2.0);
-
-    if (FLT_EPSILON < fabs(q0 - myST->q0)) {
-        psError(PS_ERR_UNKNOWN,true,"myST->q0 is %f, should be %f\n", myST->q0, q0);
-        return 2;
-    }
-    if (FLT_EPSILON < fabs(q1 - myST->q1)) {
-        psError(PS_ERR_UNKNOWN,true,"myST->q1 is %f, should be %f\n", myST->q1, q1);
-        return 3;
-    }
-    if (FLT_EPSILON < fabs(q2 - myST->q2)) {
-        psError(PS_ERR_UNKNOWN,true,"myST->q2 is %f, should be %f\n", myST->q2, q2);
-        return 4;
-    }
-    if (FLT_EPSILON < fabs(q3 - myST->q3)) {
-        psError(PS_ERR_UNKNOWN,true,"myST->q0 is %f, should be %f\n", myST->q3, q3);
-        return 5;
-    }
-
-    // Free data structure
-    psFree(myST);
-
-    return 0;
 }
 
@@ -445,907 +370,2 @@
 }
 
-// We do a simple identity transformation on a few RA, DEC pairs.
-psS32 testSphereRotApply1( void )
-{
-    psSphere *in = psSphereAlloc();
-    psSphere *out = psSphereAlloc();
-    psSphere *temp = NULL;
-    psSphere *rc = NULL;
-    psSphereRot *myST = psSphereRotAlloc(0.0, 0.0, 0.0);
-
-    for (float r=0.0;r<180.0;r+=DEG_INC) {
-        for (float d=0.0;d<90.0;d+=DEG_INC) {
-            in->r = DEG_TO_RAD(r);
-            in->d = DEG_TO_RAD(d);
-            in->rErr = 0.0;
-            in->dErr = 0.0;
-
-            if(psSphereRotApply(out, myST, in) != out) {
-                psError(PS_ERR_UNKNOWN,true,"Did not return output pointer.");
-                return 1;
-            }
-            if (ERROR_TOL < fabs(out->r - in->r)) {
-                psError(PS_ERR_UNKNOWN,true,"out->r is %f, should be %f\n", out->r, in->r);
-                return 2;
-            }
-            if (ERROR_TOL < fabs(out->d - in->d)) {
-                psError(PS_ERR_UNKNOWN,true,"out->d is %f, should be %f\n", out->d, in->d);
-                return 3;
-            }
-        }
-    }
-
-    // Verify new sphere object is created if out parameter NULL
-    temp = psSphereRotApply(NULL, myST, in);
-    if ( temp == NULL) {
-        psError(PS_ERR_UNKNOWN,true,"Returned NULL when out parameter was null");
-        return 4;
-    }
-    psFree(temp);
-
-    // Verify NULL returned if transform structure null
-    psLogMsg(__func__,PS_LOG_INFO,"Following should generate an error");
-    rc = psSphereRotApply(NULL, NULL, in);
-    if (rc != NULL) {
-        psError(PS_ERR_UNKNOWN,true,"psSphereRotApply() did not return NULL.");
-        return 5;
-    }
-
-    // Verify NULL returned when input sphere is NULL
-    psLogMsg(__func__,PS_LOG_INFO,"Following should generate an error");
-    rc = psSphereRotApply(NULL, myST, NULL);
-    if (rc != NULL) {
-        psError(PS_ERR_UNKNOWN,true,"psSphereRotApply() did not return NULL");
-        return 6;
-    }
-
-    psFree(myST);
-    psFree(out);
-    psFree(in);
-
-    return 0;
-}
-
-/******************************************************************************
-testSphereRotApply2(): This test verifies that psSphereRotApply()
-works properly.  We create two psSphereRots: a forward transform and a
-reverse transform (which is the mathematical inverse of the forward transform).
-We apply both transforms to several spherical coordinates and ensure that the
-original input coordinate is obtained after applying both transforms.
- 
-XXX: We currently test the alpha and delta offsets independently.  Attempts to
-test them both concurrently failed.  Determine why this is.  Are the following
-spherical transforms not mathematical inverses?
-    psSphereRotAlloc(X, Y, 0.0)
-    psSphereRotAlloc(-X, -Y, 0.0)
- *****************************************************************************/
-#define ERROR_PERCENT 0.01
-psS32 testSphereRotApply2( void )
-{
-    psS32 testStatus = 0;
-    psSphere in;
-    psSphere out;
-    psSphere out2;
-    psSphereRot *mySphereRotForward = NULL;
-    psSphereRot *mySphereRotReverse = NULL;
-
-
-    mySphereRotForward = psSphereRotAlloc(DEG_TO_RAD(22.0),
-                                          0.0,
-                                          0.0);
-    mySphereRotReverse = psSphereRotAlloc(DEG_TO_RAD(-22.0),
-                                          0.0,
-                                          0.0);
-
-    for (float r=0.1;r<180.0;r+=(DEG_INC/5.0)) {
-        for (float d=0.1;d<90.0;d+=(DEG_INC/5.0)) {
-            in.r = DEG_TO_RAD(r);
-            in.d = DEG_TO_RAD(d);
-            in.rErr = 0.0;
-            in.dErr = 0.0;
-
-            psSphereRotApply(&out, mySphereRotForward, &in);
-            psSphereRotApply(&out2, mySphereRotReverse, &out);
-
-            if ((fabs((in.r - out2.r) / in.r) > ERROR_PERCENT) ||
-                    (fabs((in.d - out2.d) / in.d) > ERROR_PERCENT)) {
-                printf("ERROR: \n");
-                printf("Input  coords (R, D) are (%f, %f)\n", in.r, in.d);
-                printf("Output coords (R, D) are (%f, %f)\n", out2.r, out2.d);
-                testStatus = 4;
-            }
-        }
-    }
-    psFree(mySphereRotForward);
-    psFree(mySphereRotReverse);
-
-    mySphereRotForward = psSphereRotAlloc(0.0,
-                                          DEG_TO_RAD(33.0),
-                                          0.0);
-    mySphereRotReverse = psSphereRotAlloc(0.0,
-                                          DEG_TO_RAD(-33.0),
-                                          0.0);
-    for (float r=0.1;r<180.0;r+=(DEG_INC/5.0)) {
-        for (float d=0.1;d<90.0;d+=(DEG_INC/5.0)) {
-            in.r = DEG_TO_RAD(r);
-            in.d = DEG_TO_RAD(d);
-            in.rErr = 0.0;
-            in.dErr = 0.0;
-
-            psSphereRotApply(&out, mySphereRotForward, &in);
-            psSphereRotApply(&out2, mySphereRotReverse, &out);
-
-            if ((fabs((in.r - out2.r) / in.r) > ERROR_PERCENT) ||
-                    (fabs((in.d - out2.d) / in.d) > ERROR_PERCENT)) {
-                printf("ERROR: \n");
-                printf("Input  coords (R, D) are (%f, %f)\n", in.r, in.d);
-                printf("Output coords (R, D) are (%f, %f)\n", out2.r, out2.d);
-                testStatus = 4;
-            }
-        }
-    }
-    psFree(mySphereRotForward);
-    psFree(mySphereRotReverse);
-
-    return(testStatus);
-}
-
-// Test point 1  ADD  ICRS(0,0) to Galactic (96.337272,-60.188553)
-//                              to Ecliptic (0,0) with T=1
-#define SPHERE_COORD_TP1_GAL_R           1.681409       //  96.337272 degrees
-#define SPHERE_COORD_TP1_GAL_D          -1.050488       // -60.188553 degrees
-#define SPHERE_COORD_TP1_ECL_R           0.0
-#define SPHERE_COORD_TP1_ECL_D           0.0
-#define SPHERE_COORD_TP1_INVERSE_R       0.0
-#define SPHERE_COORD_TP1_INVERSE_D       0.0
-
-// Test point 2 ADD  ICRS(0,90) to Galactic (122.93192, 27.12825)
-//                              to Ecliptic (90,66.560719) with T=1
-#define SPHERE_COORD_TP2_GAL_R           2.145567       // 122.93192 degrees
-#define SPHERE_COORD_TP2_GAL_D           0.473477       // 27.12825  degrees
-#define SPHERE_COORD_TP2_ECL_R           1.570796       // 90        degrees
-#define SPHERE_COORD_TP2_ECL_D           1.161704       // 66.560719 degrees
-#define SPHERE_COORD_TP2_INVERSE_R       0.0            // 0         degrees
-#define SPHERE_COORD_TP2_INVERSE_D       1.570796       // 90        degrees
-
-// Test point 3 ADD  ICRS(180,30) to Galactic (195.639488, 78.353806)
-//                                to Ecliptic (167.072470, 27.308813) with T=2
-#define SPHERE_COORD_TP3_GAL_R           3.414553       // 195.639488 degrees
-#define SPHERE_COORD_TP3_GAL_D           1.367532       // 78.353806  degrees
-#define SPHERE_COORD_TP3_ECL_R           2.915965       // 167.07247  degrees
-#define SPHERE_COORD_TP3_ECL_D           0.476629       // 27.308813  degrees
-#define SPHERE_COORD_TP3_INVERSE_R       3.141593       // 180.0      degrees
-#define SPHERE_COORD_TP3_INVERSE_D       0.523599       // 30.0       degrees
-
-psS32 testSphereRotApply3( void)
-{
-
-    psSphereRot*  testTransform;
-    psSphere*           inputCoord = psSphereAlloc();
-    psSphere*           outputCoord = NULL;
-    psSphere*           inverseOutputCoord = NULL;
-
-    inputCoord->r = SPHERE_COORD_TP1_INVERSE_R;
-    inputCoord->d = SPHERE_COORD_TP1_INVERSE_D;
-    inputCoord->rErr = 0.0;
-    inputCoord->dErr = 0.0;
-
-    // Set test date time to 1/1/2000 00:00:00
-    psTime* testDateTime = psTimeFromMJD(MJD_2000);
-
-    // Create transform ICRS to Galactic
-    testTransform = psSphereRotICRSToGalactic();
-
-    // Perform transform from ICRS to Galactic
-    outputCoord = psSphereRotApply(outputCoord,testTransform,inputCoord);
-    // Verify output not NULL and member values set correctly
-    if(outputCoord == NULL) {
-        psError(PS_ERR_UNKNOWN,true,"psSphereRotApply returned NULL");
-        return 1;
-    }
-    if(fabs(outputCoord->r - SPHERE_COORD_TP1_GAL_R) > ERROR_TOL) {
-        psError(PS_ERR_UNKNOWN,true,"psSphereRotApply return coord r %lg not as expected %lg",
-                outputCoord->r, SPHERE_COORD_TP1_GAL_R);
-        return 2;
-    }
-    if(fabs(outputCoord->d - SPHERE_COORD_TP1_GAL_D) > ERROR_TOL) {
-        psError(PS_ERR_UNKNOWN,true,"psSphereRotApply return coord d %ld not as expected %lg",
-                outputCoord->d, SPHERE_COORD_TP1_GAL_D);
-        return 3;
-    }
-    psFree(testTransform);
-
-    // Create inverse transform Galactic to ICRS
-    testTransform = psSphereRotGalacticToICRS();
-
-    // Perform transform from Galactic to ICRS
-    inverseOutputCoord = psSphereRotApply(inverseOutputCoord,testTransform,outputCoord);
-    // Verify output not NULL and member values set correctly
-    if(inverseOutputCoord == NULL) {
-        psError(PS_ERR_UNKNOWN,true,"psSphereRotApply returned NULL");
-        return 4;
-    }
-
-    if(fabs(inverseOutputCoord->r - SPHERE_COORD_TP1_INVERSE_R) > ERROR_TOL) {
-        psError(PS_ERR_UNKNOWN,true,"psSphereRotApply return coord r %lg not as expected %lg",
-                inverseOutputCoord->r, SPHERE_COORD_TP1_INVERSE_R);
-        return 5;
-    }
-    if(fabs(inverseOutputCoord->d - SPHERE_COORD_TP1_INVERSE_D) > ERROR_TOL) {
-        psError(PS_ERR_UNKNOWN,true,"psSphereRotApply return coord d %ld not as expected %lg",
-                inverseOutputCoord->d, SPHERE_COORD_TP1_INVERSE_D);
-        return 6;
-    }
-    psFree(testTransform);
-
-    // Create transform ICRS to Ecliptic
-    testTransform = psSphereRotICRSToEcliptic(testDateTime);
-
-    // Perform transform from ICRS to Ecliptic
-    outputCoord = psSphereRotApply(outputCoord,testTransform,inputCoord);
-    // Verify output not NULL and member values set correctly
-    if(outputCoord == NULL) {
-        psError(PS_ERR_UNKNOWN,true,"psSphereRotApply returned NULL");
-        return 7;
-    }
-    if(fabs(outputCoord->r - SPHERE_COORD_TP1_ECL_R) > ERROR_TOL) {
-        psError(PS_ERR_UNKNOWN,true,"psSphereRotApply return coord r %lg not as expected %lg",
-                outputCoord->r, SPHERE_COORD_TP1_ECL_R);
-        return 8;
-    }
-    if(fabs(outputCoord->d - SPHERE_COORD_TP1_ECL_D) > ERROR_TOL) {
-        psError(PS_ERR_UNKNOWN,true,"psSphereRotApply return coord d %ld not as expected %lg",
-                outputCoord->d, SPHERE_COORD_TP1_ECL_D);
-        return 9;
-    }
-    psFree(testTransform);
-
-    // Create inverse transform Ecliptic to ICRS
-    testTransform = psSphereRotEclipticToICRS(testDateTime);
-
-    // Perform transform from Ecliptic to ICRS
-    inverseOutputCoord = psSphereRotApply(inverseOutputCoord,testTransform,outputCoord);
-    // Verify output not NULL and member values set correctly
-    if(inverseOutputCoord == NULL) {
-        psError(PS_ERR_UNKNOWN,true,"psSphereRotApply returned NULL");
-        return 10;
-    }
-    if(fabs(inverseOutputCoord->r - SPHERE_COORD_TP1_INVERSE_R) > ERROR_TOL) {
-        psError(PS_ERR_UNKNOWN,true,"psSphereRotApply return coord r %lg not as expected %lg",
-                inverseOutputCoord->r, SPHERE_COORD_TP1_INVERSE_R);
-        return 11;
-    }
-    if(fabs(inverseOutputCoord->d - SPHERE_COORD_TP1_INVERSE_D) > ERROR_TOL) {
-        psError(PS_ERR_UNKNOWN,true,"psSphereRotApply return coord d %ld not as expected %lg",
-                inverseOutputCoord->d, SPHERE_COORD_TP1_INVERSE_D);
-        return 12;
-    }
-    psFree(testTransform);
-
-    psFree(testDateTime);
-    psFree(outputCoord);
-    psFree(inputCoord);
-    psFree(inverseOutputCoord);
-
-    return 0;
-}
-
-psS32 testSphereRotApply4( void)
-{
-
-    psSphereRot*  testTransform;
-    psSphere*           inputCoord = psSphereAlloc();
-    psSphere*           outputCoord = NULL;
-    psSphere*           inverseOutputCoord = NULL;
-
-    inputCoord->r = SPHERE_COORD_TP2_INVERSE_R;
-    inputCoord->d = SPHERE_COORD_TP2_INVERSE_D;
-    inputCoord->rErr = 0.0;
-    inputCoord->dErr = 0.0;
-
-    // Set test date time to 1/1/2000 00:00:00
-    psTime* testDateTime = psTimeFromMJD(MJD_2000);
-
-    // Create transform ICRS to Galactic
-    testTransform = psSphereRotICRSToGalactic();
-
-    // Perform transform from ICRS to Galactic
-    outputCoord = psSphereRotApply(outputCoord,testTransform,inputCoord);
-    // Verify output not NULL and member values set correctly
-    if(outputCoord == NULL) {
-        psError(PS_ERR_UNKNOWN,true,"psSphereRotApply returned NULL");
-        return 1;
-    }
-    if(fabs(outputCoord->r - SPHERE_COORD_TP2_GAL_R) > ERROR_TOL) {
-        psError(PS_ERR_UNKNOWN,true,"psSphereRotApply return coord r %lg not as expected %lg",
-                outputCoord->r, SPHERE_COORD_TP2_GAL_R);
-        return 2;
-    }
-    if(fabs(outputCoord->d - SPHERE_COORD_TP2_GAL_D) > ERROR_TOL) {
-        psError(PS_ERR_UNKNOWN,true,"psSphereRotApply return coord d %ld not as expected %lg",
-                outputCoord->d, SPHERE_COORD_TP2_GAL_D);
-        return 3;
-    }
-    psFree(testTransform);
-
-    // Create inverse transform Galactic to ICRS
-    testTransform = psSphereRotGalacticToICRS();
-
-    // Perform transform from Galactic to ICRS
-    inverseOutputCoord = psSphereRotApply(inverseOutputCoord,testTransform,outputCoord);
-    // Verify output not NULL and member values set correctly
-    if(inverseOutputCoord == NULL) {
-        psError(PS_ERR_UNKNOWN,true,"psSphereRotApply returned NULL");
-        return 4;
-    }
-    // atan2 function introduces some error with y close to zero, increased error tolerance
-    if(fabs(inverseOutputCoord->r - SPHERE_COORD_TP2_INVERSE_R) > ERROR_TOL+0.1) {
-        psError(PS_ERR_UNKNOWN,true,"psSphereRotApply return coord r %lg not as expected %lg",
-                inverseOutputCoord->r, SPHERE_COORD_TP2_INVERSE_R);
-        return 5;
-    }
-    if(fabs(inverseOutputCoord->d - SPHERE_COORD_TP2_INVERSE_D) > ERROR_TOL) {
-        psError(PS_ERR_UNKNOWN,true,"psSphereRotApply return coord d %ld not as expected %lg",
-                inverseOutputCoord->d, SPHERE_COORD_TP2_INVERSE_D);
-        return 6;
-    }
-    psFree(testTransform);
-
-    // Create transform ICRS to Ecliptic
-    testTransform = psSphereRotICRSToEcliptic(testDateTime);
-
-    // Perform transform from ICRS to Ecliptic
-    outputCoord = psSphereRotApply(outputCoord,testTransform,inputCoord);
-    // Verify output not NULL and member values set correctly
-    if(outputCoord == NULL) {
-        psError(PS_ERR_UNKNOWN,true,"psSphereRotApply returned NULL");
-        return 7;
-    }
-    if(fabs(outputCoord->r - SPHERE_COORD_TP2_ECL_R) > ERROR_TOL) {
-        psError(PS_ERR_UNKNOWN,true,"psSphereRotApply return coord r %lg not as expected %lg",
-                outputCoord->r, SPHERE_COORD_TP2_ECL_R);
-        return 8;
-    }
-    if(fabs(outputCoord->d - SPHERE_COORD_TP2_ECL_D) > ERROR_TOL) {
-        psError(PS_ERR_UNKNOWN,true,"psSphereRotApply return coord d %ld not as expected %lg",
-                outputCoord->d, SPHERE_COORD_TP2_ECL_D);
-        return 9;
-    }
-    psFree(testTransform);
-
-    // Create inverse transform Ecliptic to ICRS
-    testTransform = psSphereRotEclipticToICRS(testDateTime);
-
-    // Perform transform from Ecliptic to ICRS
-    inverseOutputCoord = psSphereRotApply(inverseOutputCoord,testTransform,outputCoord);
-    // Verify output not NULL and member values set correctly
-    if(inverseOutputCoord == NULL) {
-        psError(PS_ERR_UNKNOWN,true,"psSphereRotApply returned NULL");
-        return 10;
-    }
-    if(fabs(inverseOutputCoord->r - SPHERE_COORD_TP2_INVERSE_R) > ERROR_TOL) {
-        psError(PS_ERR_UNKNOWN,true,"psSphereRotApply return coord r %lg not as expected %lg",
-                inverseOutputCoord->r, SPHERE_COORD_TP2_INVERSE_R);
-        return 11;
-    }
-    if(fabs(inverseOutputCoord->d - SPHERE_COORD_TP2_INVERSE_D) > ERROR_TOL) {
-        psError(PS_ERR_UNKNOWN,true,"psSphereRotApply return coord d %ld not as expected %lg",
-                inverseOutputCoord->d, SPHERE_COORD_TP2_INVERSE_D);
-        return 12;
-    }
-    psFree(testTransform);
-
-    psFree(testDateTime);
-    psFree(outputCoord);
-    psFree(inputCoord);
-    psFree(inverseOutputCoord);
-
-    return 0;
-}
-
-psS32 testSphereRotApply5( void)
-{
-    psSphereRot*  testTransform;
-    psSphere*           inputCoord = psSphereAlloc();
-    psSphere*           outputCoord = NULL;
-    psSphere*           inverseOutputCoord = NULL;
-
-    inputCoord->r = SPHERE_COORD_TP3_INVERSE_R;
-    inputCoord->d = SPHERE_COORD_TP3_INVERSE_D;
-    inputCoord->rErr = 0.0;
-    inputCoord->dErr = 0.0;
-
-    // Set test date time to 1/1/2100 00:00:00
-    psTime* testDateTime = psTimeFromMJD(MJD_2100);
-
-    // Create transform ICRS to Galactic
-    testTransform = psSphereRotICRSToGalactic();
-
-    // Perform transform from ICRS to Galactic
-    outputCoord = psSphereRotApply(outputCoord,testTransform,inputCoord);
-    // Verify output not NULL and member values set correctly
-    if(outputCoord == NULL) {
-        psError(PS_ERR_UNKNOWN,true,"psSphereRotApply returned NULL");
-        return 1;
-    }
-    if(fabs(outputCoord->r - SPHERE_COORD_TP3_GAL_R) > ERROR_TOL) {
-        psError(PS_ERR_UNKNOWN,true,"psSphereRotApply return coord r %lg not as expected %lg",
-                outputCoord->r, SPHERE_COORD_TP3_GAL_R);
-        return 2;
-    }
-    if(fabs(outputCoord->d - SPHERE_COORD_TP3_GAL_D) > ERROR_TOL) {
-        psError(PS_ERR_UNKNOWN,true,"psSphereRotApply return coord d %ld not as expected %lg",
-                outputCoord->d, SPHERE_COORD_TP3_GAL_D);
-        return 3;
-    }
-    psFree(testTransform);
-
-    // Create inverse transform Galactic to ICRS
-    testTransform = psSphereRotGalacticToICRS();
-
-    // Perform transform from Galactic to ICRS
-    inverseOutputCoord = psSphereRotApply(inverseOutputCoord,testTransform,outputCoord);
-    // Verify output not NULL and member values set correctly
-    if(inverseOutputCoord == NULL) {
-        psError(PS_ERR_UNKNOWN,true,"psSphereRotApply returned NULL");
-        return 4;
-    }
-    if(fabs(inverseOutputCoord->r - SPHERE_COORD_TP3_INVERSE_R) > ERROR_TOL+0.1) {
-        psError(PS_ERR_UNKNOWN,true,"psSphereRotApply return coord r %lg not as expected %lg",
-                inverseOutputCoord->r, SPHERE_COORD_TP3_INVERSE_R);
-        return 5;
-    }
-    if(fabs(inverseOutputCoord->d - SPHERE_COORD_TP3_INVERSE_D) > ERROR_TOL) {
-        psError(PS_ERR_UNKNOWN,true,"psSphereRotApply return coord d %ld not as expected %lg",
-                inverseOutputCoord->d, SPHERE_COORD_TP3_INVERSE_D);
-        return 6;
-    }
-    psFree(testTransform);
-
-    // Create transform ICRS to Ecliptic
-    testTransform = psSphereRotICRSToEcliptic(testDateTime);
-
-    // Perform transform from ICRS to Ecliptic
-    outputCoord = psSphereRotApply(outputCoord,testTransform,inputCoord);
-    // Verify output not NULL and member values set correctly
-    if(outputCoord == NULL) {
-        psError(PS_ERR_UNKNOWN,true,"psSphereRotApply returned NULL");
-        return 7;
-    }
-    if(fabs(outputCoord->r - SPHERE_COORD_TP3_ECL_R) > ERROR_TOL) {
-        psError(PS_ERR_UNKNOWN,true,"psSphereRotApply return coord r %lg not as expected %lg",
-                outputCoord->r, SPHERE_COORD_TP3_ECL_R);
-        return 8;
-    }
-    if(fabs(outputCoord->d - SPHERE_COORD_TP3_ECL_D) > ERROR_TOL) {
-        psError(PS_ERR_UNKNOWN,true,"psSphereRotApply return coord d %ld not as expected %lg",
-                outputCoord->d, SPHERE_COORD_TP3_ECL_D);
-        return 9;
-    }
-    psFree(testTransform);
-
-    // Create inverse transform Ecliptic to ICRS
-    testTransform = psSphereRotEclipticToICRS(testDateTime);
-
-    // Perform transform from Ecliptic to ICRS
-    inverseOutputCoord = psSphereRotApply(inverseOutputCoord,testTransform,outputCoord);
-    // Verify output not NULL and member values set correctly
-    if(inverseOutputCoord == NULL) {
-        psError(PS_ERR_UNKNOWN,true,"psSphereRotApply returned NULL");
-        return 10;
-    }
-    if(fabs(inverseOutputCoord->r - SPHERE_COORD_TP3_INVERSE_R) > ERROR_TOL) {
-        psError(PS_ERR_UNKNOWN,true,"psSphereRotApply return coord r %lg not as expected %lg",
-                inverseOutputCoord->r, SPHERE_COORD_TP3_INVERSE_R);
-        return 11;
-    }
-    if(fabs(inverseOutputCoord->d - SPHERE_COORD_TP3_INVERSE_D) > ERROR_TOL) {
-        psError(PS_ERR_UNKNOWN,true,"psSphereRotApply return coord d %ld not as expected %lg",
-                inverseOutputCoord->d, SPHERE_COORD_TP3_INVERSE_D);
-        return 12;
-    }
-    psFree(testTransform);
-
-    psFree(testDateTime);
-    psFree(outputCoord);
-    psFree(inputCoord);
-    psFree(inverseOutputCoord);
-
-    return 0;
-}
-
-#define SPHERE_PRECESS_TP1_R            0.0               //    0.0       degrees
-#define SPHERE_PRECESS_TP1_D            0.0               //    0.0       degrees
-#define SPHERE_PRECESS_TP1_EXPECT_R     6.238453          //  357.437     degrees
-#define SPHERE_PRECESS_TP1_EXPECT_D    -0.019426          //   -1.113     degrees
-#define SPHERE_PRECESS_TP2_R            0.0               //    0.0       degrees
-#define SPHERE_PRECESS_TP2_D            1.570796          //   90.0       degrees
-#define SPHERE_PRECESS_TP2_EXPECT_R     6.260828          //  358.719     degrees
-#define SPHERE_PRECESS_TP2_EXPECT_D     1.551353          //   88.886     degrees
-#define SPHERE_PRECESS_TP3_R            3.141593          //  180.0       degrees
-#define SPHERE_PRECESS_TP3_D            0.523599          //   30.0       degrees
-#define SPHERE_PRECESS_TP3_EXPECT_R     3.096616          //  177.423     degrees
-#define SPHERE_PRECESS_TP3_EXPECT_D     0.543024          //   31.113     degrees
-
-psS32 testSphereRotPrecess( void )
-{
-    psSphere*     inputCoord  = psSphereAlloc();
-    psSphere*     outputCoord = NULL;
-    psTime*       fromTime    = psTimeFromMJD(MJD_2100);
-    psTime*       toTime      = psTimeFromMJD(MJD_1900);
-
-    // Set input coordinate
-    inputCoord->r = SPHERE_PRECESS_TP1_R;
-    inputCoord->d = SPHERE_PRECESS_TP1_D;
-    inputCoord->rErr = 0.0;
-    inputCoord->dErr = 0.0;
-
-    // Calculate precess
-    outputCoord = psSpherePrecess(inputCoord, fromTime, toTime);
-    // Verify return is not NULL
-    if(outputCoord == NULL) {
-        psError(PS_ERR_UNKNOWN,true,"Returned NULL not expected");
-        return 1;
-    }
-    // Verify return with expected values
-    if( fabs(outputCoord->r - SPHERE_PRECESS_TP1_EXPECT_R) > ERROR_TOL) {
-        psError(PS_ERR_UNKNOWN,true,"Precess r = %lg not equal to expected = %lg",
-                outputCoord->r,SPHERE_PRECESS_TP1_EXPECT_R);
-        return 2;
-    }
-    if( fabs(outputCoord->d - SPHERE_PRECESS_TP1_EXPECT_D) > ERROR_TOL) {
-        psError(PS_ERR_UNKNOWN,true,"Precess d = %lg not equal to expected = %lg",
-                outputCoord->d,SPHERE_PRECESS_TP1_EXPECT_D);
-        return 3;
-    }
-    psFree(outputCoord);
-
-    // Set input coordinate
-    inputCoord->r = SPHERE_PRECESS_TP2_R;
-    inputCoord->d = SPHERE_PRECESS_TP2_D;
-    inputCoord->rErr = 0.0;
-    inputCoord->dErr = 0.0;
-
-    // Calculate precess
-    outputCoord = psSpherePrecess(inputCoord, fromTime, toTime);
-    // Verify return is not NULL
-    if(outputCoord == NULL) {
-        psError(PS_ERR_UNKNOWN,true,"Returned NULL not expected");
-        return 4;
-    }
-    // Verify return with expected values
-    if( fabs(outputCoord->r - SPHERE_PRECESS_TP2_EXPECT_R) > ERROR_TOL) {
-        psError(PS_ERR_UNKNOWN,true,"Precess r = %lg not equal to expected = %lg",
-                outputCoord->r,SPHERE_PRECESS_TP2_EXPECT_R);
-        return 5;
-    }
-    if( fabs(outputCoord->d - SPHERE_PRECESS_TP2_EXPECT_D) > ERROR_TOL) {
-        psError(PS_ERR_UNKNOWN,true,"Precess d = %lg not equal to expected = %lg",
-                outputCoord->d,SPHERE_PRECESS_TP2_EXPECT_D);
-        return 6;
-    }
-    psFree(outputCoord);
-
-    // Set input coordinate
-    inputCoord->r = SPHERE_PRECESS_TP3_R;
-    inputCoord->d = SPHERE_PRECESS_TP3_D;
-    inputCoord->rErr = 0.0;
-    inputCoord->dErr = 0.0;
-
-    // Calculate precess
-    outputCoord = psSpherePrecess(inputCoord, fromTime, toTime);
-    // Verify return is not NULL
-    if(outputCoord == NULL) {
-        psError(PS_ERR_UNKNOWN,true,"Returned NULL not expected");
-        return 7;
-    }
-    // Verify return with expected values
-    if( fabs(outputCoord->r - SPHERE_PRECESS_TP3_EXPECT_R) > ERROR_TOL) {
-        psError(PS_ERR_UNKNOWN,true,"Precess r = %lg not equal to expected = %lg",
-                outputCoord->r,SPHERE_PRECESS_TP3_EXPECT_R);
-        return 8;
-    }
-    if( fabs(outputCoord->d - SPHERE_PRECESS_TP3_EXPECT_D) > ERROR_TOL) {
-        psError(PS_ERR_UNKNOWN,true,"Precess d = %lg not equal to expected = %lg",
-                outputCoord->d,SPHERE_PRECESS_TP3_EXPECT_D);
-        return 9;
-    }
-    psFree(outputCoord);
-
-    // Invoke precess with invalid parameter
-    psLogMsg(__func__,PS_LOG_INFO,"Following should generate an error message");
-    outputCoord = psSpherePrecess(inputCoord, fromTime, NULL);
-    if(outputCoord != NULL) {
-        psError(PS_ERR_UNKNOWN,true,"Did not return NULL with invalid input");
-        return 10;
-    }
-
-    // Invoke precess with invalid parameter
-    psLogMsg(__func__,PS_LOG_INFO,"Following should generate an error message");
-    outputCoord = psSpherePrecess(inputCoord, NULL, toTime);
-    if(outputCoord != NULL) {
-        psError(PS_ERR_UNKNOWN,true,"Did not return NULL with invalid input");
-        return 11;
-    }
-
-    // Invoke precess with invalid parameter
-    psLogMsg(__func__,PS_LOG_INFO,"Following should generate an error message");
-    outputCoord = psSpherePrecess(NULL, fromTime, toTime);
-    if(outputCoord != NULL) {
-        psError(PS_ERR_UNKNOWN,true,"Did not return NULL with invalid input");
-        return 12;
-    }
-
-    // Free objects
-    psFree(fromTime);
-    psFree(toTime);
-    psFree(inputCoord);
-
-    return 0;
-}
-
-psS32 testSphereRotICRSToEcliptic( void )
-{
-    psF64  expectedQ0 = 0.0;
-    psF64  expectedQ1 = 0.0;
-    psF64  expectedQ2 = 0.0;
-    psF64  expectedQ3 = 0.0;
-
-    // Set test date time to 1/1/2000 00:00:00
-    psTime* testDateTime = psTimeFromMJD(MJD_2000);
-
-    // Invoke function to set psSphereRota objec
-    psSphereRot *myST = psSphereRotICRSToEcliptic(testDateTime);
-
-    // Verify expected values for the specified time
-    if (ERROR_TOL < fabs(expectedQ0 - myST->q0)) {
-        psError(PS_ERR_UNKNOWN,true,"myST->q0 is %f, should be %f",
-                myST->q0, expectedQ0);
-        return 1;
-    }
-    if (ERROR_TOL < fabs(expectedQ1 - myST->q1)) {
-        psError(PS_ERR_UNKNOWN,true,"myST->q1 is %f, should be %f",
-                myST->q1, expectedQ1);
-        return 2;
-    }
-    if (ERROR_TOL < fabs(expectedQ2 - myST->q2)) {
-        psError(PS_ERR_UNKNOWN,true,"myST->q2 is %f, should be %f",
-                myST->q2, expectedQ2);
-        return 3;
-    }
-    if (ERROR_TOL < fabs(expectedQ3 - myST->q3)) {
-        psError(PS_ERR_UNKNOWN,true,"myST->q3 is %f, should be %f",
-                myST->q3, expectedQ3);
-        return 4;
-    }
-    psFree(myST);
-    psFree(testDateTime);
-
-    // Set test date time to 1/1/2100 00:00:00
-    testDateTime = psTimeFromMJD(MJD_2100);
-
-    // Invoke function to set psSphereRota objec
-    myST = psSphereRotICRSToEcliptic(testDateTime);
-
-    // Verify expected values for the specified time
-    // Verify expected values for the specified time
-    if (ERROR_TOL < fabs(expectedQ0 - myST->q0)) {
-        psError(PS_ERR_UNKNOWN,true,"myST->q0 is %f, should be %f",
-                myST->q0, expectedQ0);
-        return 5;
-    }
-    if (ERROR_TOL < fabs(expectedQ1 - myST->q1)) {
-        psError(PS_ERR_UNKNOWN,true,"myST->q1 is %f, should be %f",
-                myST->q1, expectedQ1);
-        return 6;
-    }
-    if (ERROR_TOL < fabs(expectedQ2 - myST->q2)) {
-        psError(PS_ERR_UNKNOWN,true,"myST->q2 is %f, should be %f",
-                myST->q2, expectedQ2);
-        return 7;
-    }
-    if (ERROR_TOL < fabs(expectedQ3 - myST->q3)) {
-        psError(PS_ERR_UNKNOWN,true,"myST->q3 is %f, should be %f",
-                myST->q3, expectedQ3);
-        return 8;
-    }
-    psFree(myST);
-    psFree(testDateTime);
-
-    // Verify if argument psTime is NULL, function returns NULL and error message generated
-    psLogMsg(__func__,PS_LOG_INFO,"Following should generate an error message");
-    myST = psSphereRotICRSToEcliptic(NULL);
-    if (myST != NULL) {
-        psError(PS_ERR_UNKNOWN,true,"psSphereRotICRSToEcliptic() did not return NULL.");
-        return 9;
-    }
-
-    // Verify if argument psTime is less than 1900, function return NULL and error msg generated
-    psLogMsg(__func__,PS_LOG_INFO,"Following should generate an error message");
-    testDateTime = psTimeFromMJD(MJD_1900 - 1.0);
-    myST = psSphereRotICRSToEcliptic(testDateTime);
-    if (myST != NULL) {
-        psError(PS_ERR_UNKNOWN,true,"psSphereRotICRSToEcliptic() did not return NULL.");
-        return 10;
-    }
-    psFree(testDateTime);
-
-    return 0;
-}
-
-
-psS32 testSphereRotEclipticToICRS( void )
-{
-    psF64  expectedPhiP = 0.0;
-    psF64  expectedAlphaP = 0.0;
-    psF64  expectedCosDeltaP = 0.0;
-    psF64  expectedSinDeltaP = 0.0;
-
-    // Set test date time to 1/1/2000 00:00:00
-    psTime* testDateTime = psTimeFromMJD(MJD_2000);
-
-    // Invoke function to set psSphereRota object
-    psSphereRot *myST = psSphereRotEclipticToICRS(testDateTime);
-
-    // Verify expected values for the specified time
-    if (ERROR_TOL < fabs(expectedSinDeltaP - myST->sinDeltaP)) {
-        psError(PS_ERR_UNKNOWN,true,"myST->sinDeltaP is %f, should be %f",
-                myST->sinDeltaP, expectedSinDeltaP);
-        return 1;
-    }
-    if (ERROR_TOL < fabs(expectedCosDeltaP - myST->cosDeltaP)) {
-        psError(PS_ERR_UNKNOWN,true,"myST->cosDeltaP is %f, should be %f",
-                myST->cosDeltaP, expectedCosDeltaP);
-        return 2;
-    }
-    if (ERROR_TOL < fabs(expectedAlphaP - myST->alphaP)) {
-        psError(PS_ERR_UNKNOWN,true,"myST->alphaP is %f, should be %f",
-                myST->alphaP, expectedAlphaP);
-        return 3;
-    }
-    if (ERROR_TOL < fabs(expectedPhiP - myST->phiP)) {
-        psError(PS_ERR_UNKNOWN,true,"myST->phiP is %f, should be %f",
-                myST->phiP, expectedPhiP);
-        return 4;
-    }
-    psFree(myST);
-    psFree(testDateTime);
-
-    expectedCosDeltaP = EXPECT_COS_DELTAP_2100;
-    expectedSinDeltaP = -EXPECT_SIN_DELTAP_2100;
-
-    // Set test date time to 1/1/2100 00:00:00
-    testDateTime = psTimeFromMJD(MJD_2100);
-
-    // Invoke function to set psSphereRota objec
-    myST = psSphereRotEclipticToICRS(testDateTime);
-
-    // Verify expected values for the specified time
-    if (ERROR_TOL < fabs(expectedSinDeltaP - myST->sinDeltaP)) {
-        psError(PS_ERR_UNKNOWN,true,"myST->sinDeltaP is %f, should be %f",
-                myST->sinDeltaP, expectedSinDeltaP);
-        return 5;
-    }
-    if (ERROR_TOL < fabs(expectedCosDeltaP - myST->cosDeltaP)) {
-        psError(PS_ERR_UNKNOWN,true,"myST->cosDeltaP is %f, should be %f",
-                myST->cosDeltaP, expectedCosDeltaP);
-        return 6;
-    }
-    if (ERROR_TOL < fabs(expectedAlphaP - myST->alphaP)) {
-        psError(PS_ERR_UNKNOWN,true,"myST->alphaP is %f, should be %f",
-                myST->alphaP, expectedAlphaP);
-        return 7;
-    }
-    if (ERROR_TOL < fabs(expectedPhiP - myST->phiP)) {
-        psError(PS_ERR_UNKNOWN,true,"myST->phiP is %f, should be %f",
-                myST->phiP, expectedPhiP);
-        return 8;
-    }
-    psFree(myST);
-    psFree(testDateTime);
-
-    // Verify if argument psTime is NULL, function returns NULL and error message generated
-    psLogMsg(__func__,PS_LOG_INFO,"Following should generate an error message");
-    myST = psSphereRotEclipticToICRS(NULL);
-    if (myST != NULL) {
-        psError(PS_ERR_UNKNOWN,true,"psSphereRotEclipticICRS() did not return NULL.");
-        return 9;
-    }
-
-    // Verify if argument psTime is less than 1900, function return NULL and error msg generated
-    psLogMsg(__func__,PS_LOG_INFO,"Following should generate an error message");
-    testDateTime = psTimeFromMJD(MJD_1900 - 1.0);
-    myST = psSphereRotEclipticToICRS(testDateTime);
-    if (myST != NULL) {
-        psError(PS_ERR_UNKNOWN,true,"psSphereRotEclipticToICRS() did not return NULL.");
-        return 10;
-    }
-    psFree(testDateTime);
-
-    return 0;
-}
-
-#define ITG_EXPECT_ALPHAP      4.93683
-#define ITG_EXPECT_SINDELTAP   0.88999
-#define ITG_EXPECT_COSDELTAP   0.45598
-#define ITG_EXPECT_PHIP        0.57477
-
-psS32 testSphereRotICRSToGalactic( void )
-{
-    // Invoke function
-    psSphereRot *myST = psSphereRotICRSToGalactic();
-
-    // Verify did not return NULL
-    if(myST == NULL) {
-        psError(PS_ERR_UNKNOWN,true,"psSphereRotICRSToGalactic returned NULL");
-        return 1;
-    }
-    // Verify returned structure has members set properly
-    if (ERROR_TOL < fabs(ITG_EXPECT_SINDELTAP - myST->sinDeltaP)) {
-        psError(PS_ERR_UNKNOWN,true,"myST->sinDeltaP is %f, should be %f",
-                myST->sinDeltaP, ITG_EXPECT_SINDELTAP);
-        return 2;
-    }
-    if (ERROR_TOL < fabs(ITG_EXPECT_COSDELTAP - myST->cosDeltaP)) {
-        psError(PS_ERR_UNKNOWN,true,"myST->cosDeltaP is %f, should be %f",
-                myST->cosDeltaP, ITG_EXPECT_COSDELTAP);
-        return 3;
-    }
-    if (ERROR_TOL < fabs(ITG_EXPECT_ALPHAP - myST->alphaP)) {
-        psError(PS_ERR_UNKNOWN,true,"myST->alphaP is %f, should be %f",
-                myST->alphaP, ITG_EXPECT_ALPHAP);
-        return 4;
-    }
-    if (ERROR_TOL < fabs(ITG_EXPECT_PHIP - myST->phiP)) {
-        psError(PS_ERR_UNKNOWN,true,"myST->phiP is %f, should be %f",
-                myST->phiP, ITG_EXPECT_PHIP);
-        return 5;
-    }
-    // Free data structure created
-    psFree(myST);
-
-    return 0;
-}
-
-#define GTI_EXPECT_PHIP        4.93683
-#define GTI_EXPECT_SINDELTAP  -0.88999
-#define GTI_EXPECT_COSDELTAP   0.45598
-#define GTI_EXPECT_ALPHAP      0.57477
-
-psS32 testSphereRotGalacticToICRS( void )
-{
-    // Invoke function
-    psSphereRot *myST = psSphereRotGalacticToICRS();
-
-    // Verify did not return NULL
-    if(myST == NULL) {
-        psError(PS_ERR_UNKNOWN,true,"psSphereRotGalacticToICRS returned NULL");
-        return 1;
-    }
-    // Verify returned structure has members set properly
-    if (ERROR_TOL < fabs(GTI_EXPECT_SINDELTAP - myST->sinDeltaP)) {
-        psError(PS_ERR_UNKNOWN,true,"myST->sinDeltaP is %f, should be %f",
-                myST->sinDeltaP, GTI_EXPECT_SINDELTAP);
-        return 2;
-    }
-    if (ERROR_TOL < fabs(GTI_EXPECT_COSDELTAP - myST->cosDeltaP)) {
-        psError(PS_ERR_UNKNOWN,true,"myST->cosDeltaP is %f, should be %f",
-                myST->cosDeltaP, GTI_EXPECT_COSDELTAP);
-        return 3;
-    }
-    if (ERROR_TOL < fabs(GTI_EXPECT_ALPHAP - myST->alphaP)) {
-        psError(PS_ERR_UNKNOWN,true,"myST->alphaP is %f, should be %f",
-                myST->alphaP, GTI_EXPECT_ALPHAP);
-        return 4;
-    }
-    if (ERROR_TOL < fabs(GTI_EXPECT_PHIP - myST->phiP)) {
-        psError(PS_ERR_UNKNOWN,true,"myST->phiP is %f, should be %f",
-                myST->phiP, GTI_EXPECT_PHIP);
-        return 5;
-    }
-    // Free data structure created
-    psFree(myST);
-
-    return 0;
-}
-
Index: /trunk/psLib/test/astro/tst_psSphereOps.c
===================================================================
--- /trunk/psLib/test/astro/tst_psSphereOps.c	(revision 4601)
+++ /trunk/psLib/test/astro/tst_psSphereOps.c	(revision 4601)
@@ -0,0 +1,461 @@
+/** @file  tst_psCoord.c
+*
+*  @brief The code will ...
+*
+*
+*  @author GLG, MHPCC
+*
+*  @version $Revision: 1.1 $ $Name: not supported by cvs2svn $
+*  @date $Date: 2005-07-23 02:44:09 $
+*
+*  Copyright 2004-2005 Maui High Performance Computing Center, University of Hawaii
+*/
+
+#include "psTest.h"
+#include "pslib_strict.h"
+static psS32 testSphereRotAlloc(void);
+static psS32 testSphereRotApply1(void);
+static psS32 testSphereRotApply2(void);
+static psS32 testSphereRotApplyCelestial(void);
+static psS32 testSphereRotPrecess(void);
+
+testDescription tests[] = {
+                              {testSphereRotAlloc, 819, "psSphereRotAlloc()", 0, false},
+                              {testSphereRotApply1, 820, "psSphereRotApply()", 0, false},
+                              {testSphereRotApply2, 820, "psSphereRotApply()", 0, false},
+                              {testSphereRotApplyCelestial, 820, "psSphereRotApply()", 0, false},
+                              {testSphereRotApplyCelestial, 821, "psSphereRotICRSToEcliptic()", true},
+                              {testSphereRotApplyCelestial, 822, "psSphereRotEclipticToICRS()", 0, true},
+                              {testSphereRotApplyCelestial, 824, "psSphereRotICRSToGalactic()", 0, true},
+                              {testSphereRotApplyCelestial, 823, "psSphereRotGalacticToICRS()", 0, true},
+                              {testSphereRotPrecess, 825, "psSphereRotPrecess()", 0, false},
+                              {NULL}
+                          };
+
+psS32 main( psS32 argc, char* argv[] )
+{
+    psLogSetLevel( PS_LOG_INFO );
+
+    return ( ! runTestSuite( stderr, "psCoord", tests, argc, argv ) );
+}
+
+#define DEG_INC   30.0
+
+#define MJD_1900  15021.0        // Modified Julian Day 1/1/1900 00:00:00
+#define MJD_2000  51544.0        // Modified Julian Day 1/1/2000 00:00:00
+#define MJD_2100  88069.0        // Modified Julian Day 1/1/2100 00:00:00
+
+#define ERROR_TOL   0.0001
+
+#define ALPHA_P 1.0
+#define DELTA_P 2.0
+#define PHI_P 3.0
+
+psS32 testSphereRotAlloc( void )
+{
+    // Allocate data structure
+    psSphereRot* myST = psSphereRotAlloc(ALPHA_P, DELTA_P, PHI_P);
+
+    // Verify null not returned
+    if(myST == NULL) {
+        psError(PS_ERR_UNKNOWN,true,"Returned NULL with valid parameters");
+        return 1;
+    }
+    // Verify sin member is updated
+    double vx = cos(DELTA_P)*cos(ALPHA_P);
+    double vy = cos(DELTA_P)*sin(ALPHA_P);
+    double vz = sin(DELTA_P);
+    double q0 = vx * sin(PHI_P/2.0);
+    double q1 = vy * sin(PHI_P/2.0);
+    double q2 = vz * sin(PHI_P/2.0);
+    double q3 = cos(PHI_P/2.0);
+
+    if (FLT_EPSILON < fabs(q0 - myST->q0)) {
+        psError(PS_ERR_UNKNOWN,true,"myST->q0 is %f, should be %f\n", myST->q0, q0);
+        return 2;
+    }
+    if (FLT_EPSILON < fabs(q1 - myST->q1)) {
+        psError(PS_ERR_UNKNOWN,true,"myST->q1 is %f, should be %f\n", myST->q1, q1);
+        return 3;
+    }
+    if (FLT_EPSILON < fabs(q2 - myST->q2)) {
+        psError(PS_ERR_UNKNOWN,true,"myST->q2 is %f, should be %f\n", myST->q2, q2);
+        return 4;
+    }
+    if (FLT_EPSILON < fabs(q3 - myST->q3)) {
+        psError(PS_ERR_UNKNOWN,true,"myST->q0 is %f, should be %f\n", myST->q3, q3);
+        return 5;
+    }
+
+    // Free data structure
+    psFree(myST);
+
+    return 0;
+}
+
+// We do a simple identity transformation on a few RA, DEC pairs.
+psS32 testSphereRotApply1( void )
+{
+    psSphere *in = psSphereAlloc();
+    psSphere *out = psSphereAlloc();
+    psSphere *temp = NULL;
+    psSphere *rc = NULL;
+    psSphereRot *myST = psSphereRotAlloc(0.0, 0.0, 0.0);
+
+    for (float r=0.0;r<180.0;r+=DEG_INC) {
+        for (float d=0.0;d<90.0;d+=DEG_INC) {
+            in->r = DEG_TO_RAD(r);
+            in->d = DEG_TO_RAD(d);
+            in->rErr = 0.0;
+            in->dErr = 0.0;
+
+            if(psSphereRotApply(out, myST, in) != out) {
+                psError(PS_ERR_UNKNOWN,true,"Did not return output pointer.");
+                return 1;
+            }
+            if (ERROR_TOL < fabs(out->r - in->r)) {
+                psError(PS_ERR_UNKNOWN,true,"out->r is %f, should be %f\n", out->r, in->r);
+                return 2;
+            }
+            if (ERROR_TOL < fabs(out->d - in->d)) {
+                psError(PS_ERR_UNKNOWN,true,"out->d is %f, should be %f\n", out->d, in->d);
+                return 3;
+            }
+        }
+    }
+
+    // Verify new sphere object is created if out parameter NULL
+    temp = psSphereRotApply(NULL, myST, in);
+    if ( temp == NULL) {
+        psError(PS_ERR_UNKNOWN,true,"Returned NULL when out parameter was null");
+        return 4;
+    }
+    psFree(temp);
+
+    // Verify NULL returned if transform structure null
+    psLogMsg(__func__,PS_LOG_INFO,"Following should generate an error");
+    rc = psSphereRotApply(NULL, NULL, in);
+    if (rc != NULL) {
+        psError(PS_ERR_UNKNOWN,true,"psSphereRotApply() did not return NULL.");
+        return 5;
+    }
+
+    // Verify NULL returned when input sphere is NULL
+    psLogMsg(__func__,PS_LOG_INFO,"Following should generate an error");
+    rc = psSphereRotApply(NULL, myST, NULL);
+    if (rc != NULL) {
+        psError(PS_ERR_UNKNOWN,true,"psSphereRotApply() did not return NULL");
+        return 6;
+    }
+
+    psFree(myST);
+    psFree(out);
+    psFree(in);
+
+    return 0;
+}
+
+/******************************************************************************
+testSphereRotApply2(): This test verifies that psSphereRotApply()
+works properly.  We create two psSphereRots: a forward transform and a
+reverse transform (which is the mathematical inverse of the forward transform).
+We apply both transforms to several spherical coordinates and ensure that the
+original input coordinate is obtained after applying both transforms.
+ 
+XXX: We currently test the alpha and delta offsets independently.  Attempts to
+test them both concurrently failed.  Determine why this is.  Are the following
+spherical transforms not mathematical inverses?
+    psSphereRotAlloc(X, Y, 0.0)
+    psSphereRotAlloc(-X, -Y, 0.0)
+ *****************************************************************************/
+#define ERROR_PERCENT 0.01
+psS32 testSphereRotApply2( void )
+{
+    psS32 testStatus = 0;
+    psSphere in;
+    psSphere out;
+    psSphere out2;
+    psSphereRot *mySphereRotForward = NULL;
+    psSphereRot *mySphereRotReverse = NULL;
+
+
+    mySphereRotForward = psSphereRotAlloc(DEG_TO_RAD(22.0),
+                                          0.0,
+                                          0.0);
+    mySphereRotReverse = psSphereRotAlloc(DEG_TO_RAD(-22.0),
+                                          0.0,
+                                          0.0);
+
+    for (float r=0.1;r<180.0;r+=(DEG_INC/5.0)) {
+        for (float d=0.1;d<90.0;d+=(DEG_INC/5.0)) {
+            in.r = DEG_TO_RAD(r);
+            in.d = DEG_TO_RAD(d);
+            in.rErr = 0.0;
+            in.dErr = 0.0;
+
+            psSphereRotApply(&out, mySphereRotForward, &in);
+            psSphereRotApply(&out2, mySphereRotReverse, &out);
+
+            if ((fabs((in.r - out2.r) / in.r) > ERROR_PERCENT) ||
+                    (fabs((in.d - out2.d) / in.d) > ERROR_PERCENT)) {
+                printf("ERROR: \n");
+                printf("Input  coords (R, D) are (%f, %f)\n", in.r, in.d);
+                printf("Output coords (R, D) are (%f, %f)\n", out2.r, out2.d);
+                testStatus = 4;
+            }
+        }
+    }
+    psFree(mySphereRotForward);
+    psFree(mySphereRotReverse);
+
+    mySphereRotForward = psSphereRotAlloc(0.0,
+                                          DEG_TO_RAD(33.0),
+                                          0.0);
+    mySphereRotReverse = psSphereRotAlloc(0.0,
+                                          DEG_TO_RAD(-33.0),
+                                          0.0);
+    for (float r=0.1;r<180.0;r+=(DEG_INC/5.0)) {
+        for (float d=0.1;d<90.0;d+=(DEG_INC/5.0)) {
+            in.r = DEG_TO_RAD(r);
+            in.d = DEG_TO_RAD(d);
+            in.rErr = 0.0;
+            in.dErr = 0.0;
+
+            psSphereRotApply(&out, mySphereRotForward, &in);
+            psSphereRotApply(&out2, mySphereRotReverse, &out);
+
+            if ((fabs((in.r - out2.r) / in.r) > ERROR_PERCENT) ||
+                    (fabs((in.d - out2.d) / in.d) > ERROR_PERCENT)) {
+                printf("ERROR: \n");
+                printf("Input  coords (R, D) are (%f, %f)\n", in.r, in.d);
+                printf("Output coords (R, D) are (%f, %f)\n", out2.r, out2.d);
+                testStatus = 4;
+            }
+        }
+    }
+    psFree(mySphereRotForward);
+    psFree(mySphereRotReverse);
+
+    return(testStatus);
+}
+
+psS32 testSphereRotApplyCelestial( void)
+{
+    int numTestPoints = 3;
+    // ICRS coordinates
+    double alpha[] = {  0.0,        0.0,     180.0     };
+    double delta[] = {  0.0,       90.0,      30.0     };
+    //Ecliptic coordinates
+    double lambda[] ={  0.0,       90.0,     167.072470};
+    double beta[] =  {  0.0,       66.560719, 27.308813};
+    // Galactic coordinates
+    double l[] =     { 96.337272, 122.93192, 195.639488};
+    double b[] =     {-60.188553,  27.12825,  78.353806};
+
+    double t[] =     {  MJD_2000,  MJD_2000,   MJD_2100};
+
+    double TOLERANCE = 0.001;
+
+
+
+    for (int x = 0; x < numTestPoints; x++) {
+
+        psTime* time = psTimeFromMJD(t[x]);
+        psSphereRot* toEcliptic = psSphereRotICRSToEcliptic(time);
+        psSphereRot* fromEcliptic = psSphereRotEclipticToICRS(time);
+        psSphereRot* toGalactic = psSphereRotICRSToGalactic();
+        psSphereRot* fromGalactic = psSphereRotGalacticToICRS();
+        psFree(time);
+
+        // set the ICRS coordinate
+        psSphere* icrs = psSphereAlloc();
+        icrs->r = DEG_TO_RAD(alpha[x]);
+        icrs->d = DEG_TO_RAD(delta[x]);
+
+        // apply/unapply Ecliptic
+        psSphere* ecliptic = psSphereRotApply(NULL, toEcliptic, icrs);
+        psSphere* icrsFromEcliptic = psSphereRotApply(NULL, fromEcliptic, ecliptic);
+
+        // check ecliptic transforms for correctness
+        if (abs(RAD_TO_DEG(ecliptic->r) - lambda[x]) > TOLERANCE ||
+                abs(RAD_TO_DEG(ecliptic->d) - beta[x]) > TOLERANCE) {
+            psError(PS_ERR_UNKNOWN, false,
+                    "Ecliptic tranformation incorrect.  Result is (%g,%g), expected (%g,%g)",
+                    RAD_TO_DEG(ecliptic->r),RAD_TO_DEG(ecliptic->d),
+                    lambda[x], beta[x]);
+            return 1;
+        }
+        if (abs(RAD_TO_DEG(icrsFromEcliptic->r) - alpha[x]) > TOLERANCE ||
+                abs(RAD_TO_DEG(icrsFromEcliptic->d) - delta[x]) > TOLERANCE) {
+            psError(PS_ERR_UNKNOWN, false,
+                    "ICRS for Ecliptic tranformation incorrect.  Result is (%g,%g), expected (%g,%g)",
+                    RAD_TO_DEG(icrsFromEcliptic->r),RAD_TO_DEG(icrsFromEcliptic->d),
+                    alpha[x], delta[x]);
+            return 2;
+        }
+        psFree(ecliptic);
+        psFree(icrsFromEcliptic);
+
+        // apply/unapply Galactic
+        psSphere* galactic = psSphereRotApply(NULL, toGalactic, icrs);
+        psSphere* icrsFromGalactic = psSphereRotApply(NULL, fromGalactic, galactic);
+
+        // check ecliptic transforms for correctness
+        if (abs(RAD_TO_DEG(galactic->r) - l[x]) > TOLERANCE ||
+                abs(RAD_TO_DEG(galactic->d) - b[x]) > TOLERANCE) {
+            psError(PS_ERR_UNKNOWN, false,
+                    "Galactic tranformation incorrect.  Result is (%g,%g), expected (%g,%g)",
+                    RAD_TO_DEG(galactic->r),RAD_TO_DEG(galactic->d),
+                    l[x], b[x]);
+            return 3;
+        }
+        if (abs(RAD_TO_DEG(icrsFromGalactic->r) - alpha[x]) > TOLERANCE ||
+                abs(RAD_TO_DEG(icrsFromGalactic->d) - delta[x]) > TOLERANCE) {
+            psError(PS_ERR_UNKNOWN, false,
+                    "ICRS for Galactic tranformation incorrect.  Result is (%g,%g), expected (%g,%g)",
+                    RAD_TO_DEG(icrsFromGalactic->r),RAD_TO_DEG(icrsFromGalactic->d),
+                    alpha[x], delta[x]);
+            return 4;
+        }
+        psFree(galactic);
+        psFree(icrsFromGalactic);
+
+        psFree(toEcliptic);
+        psFree(fromEcliptic);
+        psFree(toGalactic);
+        psFree(fromGalactic);
+
+    }
+
+    return 0;
+}
+
+#define SPHERE_PRECESS_TP1_R            0.0               //    0.0       degrees
+#define SPHERE_PRECESS_TP1_D            0.0               //    0.0       degrees
+#define SPHERE_PRECESS_TP1_EXPECT_R     6.238453          //  357.437     degrees
+#define SPHERE_PRECESS_TP1_EXPECT_D    -0.019426          //   -1.113     degrees
+#define SPHERE_PRECESS_TP2_R            0.0               //    0.0       degrees
+#define SPHERE_PRECESS_TP2_D            1.570796          //   90.0       degrees
+#define SPHERE_PRECESS_TP2_EXPECT_R     6.260828          //  358.719     degrees
+#define SPHERE_PRECESS_TP2_EXPECT_D     1.551353          //   88.886     degrees
+#define SPHERE_PRECESS_TP3_R            3.141593          //  180.0       degrees
+#define SPHERE_PRECESS_TP3_D            0.523599          //   30.0       degrees
+#define SPHERE_PRECESS_TP3_EXPECT_R     3.096616          //  177.423     degrees
+#define SPHERE_PRECESS_TP3_EXPECT_D     0.543024          //   31.113     degrees
+
+psS32 testSphereRotPrecess( void )
+{
+    psSphere*     inputCoord  = psSphereAlloc();
+    psSphere*     outputCoord = NULL;
+    psTime*       fromTime    = psTimeFromMJD(MJD_2100);
+    psTime*       toTime      = psTimeFromMJD(MJD_1900);
+
+    // Set input coordinate
+    inputCoord->r = SPHERE_PRECESS_TP1_R;
+    inputCoord->d = SPHERE_PRECESS_TP1_D;
+    inputCoord->rErr = 0.0;
+    inputCoord->dErr = 0.0;
+
+    // Calculate precess
+    outputCoord = psSpherePrecess(inputCoord, fromTime, toTime);
+    // Verify return is not NULL
+    if(outputCoord == NULL) {
+        psError(PS_ERR_UNKNOWN,true,"Returned NULL not expected");
+        return 1;
+    }
+    // Verify return with expected values
+    if( fabs(outputCoord->r - SPHERE_PRECESS_TP1_EXPECT_R) > ERROR_TOL) {
+        psError(PS_ERR_UNKNOWN,true,"Precess r = %lg not equal to expected = %lg",
+                outputCoord->r,SPHERE_PRECESS_TP1_EXPECT_R);
+        return 2;
+    }
+    if( fabs(outputCoord->d - SPHERE_PRECESS_TP1_EXPECT_D) > ERROR_TOL) {
+        psError(PS_ERR_UNKNOWN,true,"Precess d = %lg not equal to expected = %lg",
+                outputCoord->d,SPHERE_PRECESS_TP1_EXPECT_D);
+        return 3;
+    }
+    psFree(outputCoord);
+
+    // Set input coordinate
+    inputCoord->r = SPHERE_PRECESS_TP2_R;
+    inputCoord->d = SPHERE_PRECESS_TP2_D;
+    inputCoord->rErr = 0.0;
+    inputCoord->dErr = 0.0;
+
+    // Calculate precess
+    outputCoord = psSpherePrecess(inputCoord, fromTime, toTime);
+    // Verify return is not NULL
+    if(outputCoord == NULL) {
+        psError(PS_ERR_UNKNOWN,true,"Returned NULL not expected");
+        return 4;
+    }
+    // Verify return with expected values
+    if( fabs(outputCoord->r - SPHERE_PRECESS_TP2_EXPECT_R) > ERROR_TOL) {
+        psError(PS_ERR_UNKNOWN,true,"Precess r = %lg not equal to expected = %lg",
+                outputCoord->r,SPHERE_PRECESS_TP2_EXPECT_R);
+        return 5;
+    }
+    if( fabs(outputCoord->d - SPHERE_PRECESS_TP2_EXPECT_D) > ERROR_TOL) {
+        psError(PS_ERR_UNKNOWN,true,"Precess d = %lg not equal to expected = %lg",
+                outputCoord->d,SPHERE_PRECESS_TP2_EXPECT_D);
+        return 6;
+    }
+    psFree(outputCoord);
+
+    // Set input coordinate
+    inputCoord->r = SPHERE_PRECESS_TP3_R;
+    inputCoord->d = SPHERE_PRECESS_TP3_D;
+    inputCoord->rErr = 0.0;
+    inputCoord->dErr = 0.0;
+
+    // Calculate precess
+    outputCoord = psSpherePrecess(inputCoord, fromTime, toTime);
+    // Verify return is not NULL
+    if(outputCoord == NULL) {
+        psError(PS_ERR_UNKNOWN,true,"Returned NULL not expected");
+        return 7;
+    }
+    // Verify return with expected values
+    if( fabs(outputCoord->r - SPHERE_PRECESS_TP3_EXPECT_R) > ERROR_TOL) {
+        psError(PS_ERR_UNKNOWN,true,"Precess r = %lg not equal to expected = %lg",
+                outputCoord->r,SPHERE_PRECESS_TP3_EXPECT_R);
+        return 8;
+    }
+    if( fabs(outputCoord->d - SPHERE_PRECESS_TP3_EXPECT_D) > ERROR_TOL) {
+        psError(PS_ERR_UNKNOWN,true,"Precess d = %lg not equal to expected = %lg",
+                outputCoord->d,SPHERE_PRECESS_TP3_EXPECT_D);
+        return 9;
+    }
+    psFree(outputCoord);
+
+    // Invoke precess with invalid parameter
+    psLogMsg(__func__,PS_LOG_INFO,"Following should generate an error message");
+    outputCoord = psSpherePrecess(inputCoord, fromTime, NULL);
+    if(outputCoord != NULL) {
+        psError(PS_ERR_UNKNOWN,true,"Did not return NULL with invalid input");
+        return 10;
+    }
+
+    // Invoke precess with invalid parameter
+    psLogMsg(__func__,PS_LOG_INFO,"Following should generate an error message");
+    outputCoord = psSpherePrecess(inputCoord, NULL, toTime);
+    if(outputCoord != NULL) {
+        psError(PS_ERR_UNKNOWN,true,"Did not return NULL with invalid input");
+        return 11;
+    }
+
+    // Invoke precess with invalid parameter
+    psLogMsg(__func__,PS_LOG_INFO,"Following should generate an error message");
+    outputCoord = psSpherePrecess(NULL, fromTime, toTime);
+    if(outputCoord != NULL) {
+        psError(PS_ERR_UNKNOWN,true,"Did not return NULL with invalid input");
+        return 12;
+    }
+
+    // Free objects
+    psFree(fromTime);
+    psFree(toTime);
+    psFree(inputCoord);
+
+    return 0;
+}
Index: /trunk/psLib/test/astro/verified/tst_psCoord.stderr
===================================================================
--- /trunk/psLib/test/astro/verified/tst_psCoord.stderr	(revision 4600)
+++ /trunk/psLib/test/astro/verified/tst_psCoord.stderr	(revision 4601)
@@ -1,11 +1,2 @@
-/***************************** TESTPOINT ******************************************\
-*             TestFile: tst_psCoord.c                                              *
-*            TestPoint: psCoord{psSphereTransformAlloc()}                          *
-*             TestType: Positive                                                   *
-\**********************************************************************************/
-
-
----> TESTPOINT PASSED (psCoord{psSphereTransformAlloc()} | tst_psCoord.c)
-
 /***************************** TESTPOINT ******************************************\
 *             TestFile: tst_psCoord.c                                              *
@@ -100,128 +91,2 @@
 ---> TESTPOINT PASSED (psCoord{psPlaneDistortApply()} | tst_psCoord.c)
 
-/***************************** TESTPOINT ******************************************\
-*             TestFile: tst_psCoord.c                                              *
-*            TestPoint: psCoord{psSphereTransformApply()}                          *
-*             TestType: Positive                                                   *
-\**********************************************************************************/
-
-<DATE><TIME>|<HOST>|I|testSphereTransformApply1
-    Following should generate an error
-<DATE><TIME>|<HOST>|E|psSphereTransformApply (FILE:LINENO)
-    Unallowable operation: transform is NULL.
-<DATE><TIME>|<HOST>|I|testSphereTransformApply1
-    Following should generate an error
-<DATE><TIME>|<HOST>|E|psSphereTransformApply (FILE:LINENO)
-    Unallowable operation: coord is NULL.
-
----> TESTPOINT PASSED (psCoord{psSphereTransformApply()} | tst_psCoord.c)
-
-/***************************** TESTPOINT ******************************************\
-*             TestFile: tst_psCoord.c                                              *
-*            TestPoint: psCoord{psSphereTransformApply()}                          *
-*             TestType: Positive                                                   *
-\**********************************************************************************/
-
-
----> TESTPOINT PASSED (psCoord{psSphereTransformApply()} | tst_psCoord.c)
-
-/***************************** TESTPOINT ******************************************\
-*             TestFile: tst_psCoord.c                                              *
-*            TestPoint: psCoord{psSphereTransformApply()}                          *
-*             TestType: Positive                                                   *
-\**********************************************************************************/
-
-
----> TESTPOINT PASSED (psCoord{psSphereTransformApply()} | tst_psCoord.c)
-
-/***************************** TESTPOINT ******************************************\
-*             TestFile: tst_psCoord.c                                              *
-*            TestPoint: psCoord{psSphereTransformApply()}                          *
-*             TestType: Positive                                                   *
-\**********************************************************************************/
-
-
----> TESTPOINT PASSED (psCoord{psSphereTransformApply()} | tst_psCoord.c)
-
-/***************************** TESTPOINT ******************************************\
-*             TestFile: tst_psCoord.c                                              *
-*            TestPoint: psCoord{psSphereTransformApply()}                          *
-*             TestType: Positive                                                   *
-\**********************************************************************************/
-
-
----> TESTPOINT PASSED (psCoord{psSphereTransformApply()} | tst_psCoord.c)
-
-/***************************** TESTPOINT ******************************************\
-*             TestFile: tst_psCoord.c                                              *
-*            TestPoint: psCoord{psSphereTransformICRSToEcliptic()}                 *
-*             TestType: Positive                                                   *
-\**********************************************************************************/
-
-<DATE><TIME>|<HOST>|I|testSphereTransformICRSToEcliptic
-    Following should generate an error message
-<DATE><TIME>|<HOST>|E|psSphereTransformICRSToEcliptic (FILE:LINENO)
-    Unallowable operation: time is NULL.
-<DATE><TIME>|<HOST>|I|testSphereTransformICRSToEcliptic
-    Following should generate an error message
-<DATE><TIME>|<HOST>|E|psSphereTransformICRSToEcliptic (FILE:LINENO)
-    Specified time is less than 1900.
-
----> TESTPOINT PASSED (psCoord{psSphereTransformICRSToEcliptic()} | tst_psCoord.c)
-
-/***************************** TESTPOINT ******************************************\
-*             TestFile: tst_psCoord.c                                              *
-*            TestPoint: psCoord{psSphereTransformEclipticToICRS()}                 *
-*             TestType: Positive                                                   *
-\**********************************************************************************/
-
-<DATE><TIME>|<HOST>|I|testSphereTransformEclipticToICRS
-    Following should generate an error message
-<DATE><TIME>|<HOST>|E|psSphereTransformEclipticToICRS (FILE:LINENO)
-    Unallowable operation: time is NULL.
-<DATE><TIME>|<HOST>|I|testSphereTransformEclipticToICRS
-    Following should generate an error message
-<DATE><TIME>|<HOST>|E|psSphereTransformEclipticToICRS (FILE:LINENO)
-    Specified time is less than 1900.
-
----> TESTPOINT PASSED (psCoord{psSphereTransformEclipticToICRS()} | tst_psCoord.c)
-
-/***************************** TESTPOINT ******************************************\
-*             TestFile: tst_psCoord.c                                              *
-*            TestPoint: psCoord{psSphereTransformICRSToGalactic()}                 *
-*             TestType: Positive                                                   *
-\**********************************************************************************/
-
-
----> TESTPOINT PASSED (psCoord{psSphereTransformICRSToGalactic()} | tst_psCoord.c)
-
-/***************************** TESTPOINT ******************************************\
-*             TestFile: tst_psCoord.c                                              *
-*            TestPoint: psCoord{psSphereTransformGalacticToICRS()}                 *
-*             TestType: Positive                                                   *
-\**********************************************************************************/
-
-
----> TESTPOINT PASSED (psCoord{psSphereTransformGalacticToICRS()} | tst_psCoord.c)
-
-/***************************** TESTPOINT ******************************************\
-*             TestFile: tst_psCoord.c                                              *
-*            TestPoint: psCoord{psSphereTransformPrecess()}                        *
-*             TestType: Positive                                                   *
-\**********************************************************************************/
-
-<DATE><TIME>|<HOST>|I|testSphereTransformPrecess
-    Following should generate an error message
-<DATE><TIME>|<HOST>|E|psSpherePrecess (FILE:LINENO)
-    Unallowable operation: toTime is NULL.
-<DATE><TIME>|<HOST>|I|testSphereTransformPrecess
-    Following should generate an error message
-<DATE><TIME>|<HOST>|E|psSpherePrecess (FILE:LINENO)
-    Unallowable operation: fromTime is NULL.
-<DATE><TIME>|<HOST>|I|testSphereTransformPrecess
-    Following should generate an error message
-<DATE><TIME>|<HOST>|E|psSpherePrecess (FILE:LINENO)
-    Unallowable operation: coords is NULL.
-
----> TESTPOINT PASSED (psCoord{psSphereTransformPrecess()} | tst_psCoord.c)
-
Index: unk/psLib/test/collections/.cvsignore
===================================================================
--- /trunk/psLib/test/collections/.cvsignore	(revision 4600)
+++ 	(revision )
@@ -1,57 +1,0 @@
-.deps
-.libs
-Makefile.in
-temp
-Makefile
-tst_psBitSet_01
-tst_psBitSet_02
-tst_psBitSet_03
-tst_psBitSet_04
-tst_psBitSet_05
-tst_psBitSet_06
-tst_psBitSet_07
-tst_psBitSet_08
-tst_psImage
-tst_psSort_01
-tst_psSort_02
-tst_psSort_03
-tst_psSort_04
-tst_psVector_01
-tst_psVector_02
-tst_psVector_03
-tst_psList
-tst_psArray
-tst_psArray02
-tst_psVector
-tst_psVectorSort_01
-tst_psVectorSort_02
-tst_psVectorSort_03
-tst_psVectorSort_04
-tst_psHash00
-tst_psHash01
-tst_psHash02
-tst_psHash03
-tst_psHash04
-tst_psHash05
-tst_psBitSet
-tst_psArray01
-tst_psScalar
-tst_psMetadata05_OUT
-tst_psMetadata_01
-tst_psMetadata_02
-tst_psMetadata_03
-tst_psMetadata_04
-tst_psMetadata_05
-tst_psMetadata_06
-tst_psMetadata_07
-tst_psMetadataIO
-tst_psPixels
-header_1.fits
-header_2.fits
-test.config
-test1.config
-test2.config
-test3.config
-test4.config
-test5.config
-*.lo
Index: unk/psLib/test/collections/Makefile.am
===================================================================
--- /trunk/psLib/test/collections/Makefile.am	(revision 4600)
+++ 	(revision )
@@ -1,119 +1,0 @@
-#Makefile for collections functions of psLib
-#
-EXTRA_DIST = verified \
-	data/header_1.fits \
-	data/header_2.fits \
-	data/test.config \
-	data/test1.config \
-	data/test2.config \
-	data/test3.config \
-	data/test4.config \
-	data/test5.config
-
-INCLUDES = \
-	-I$(top_srcdir)/src \
-	-I$(top_srcdir)/src/astronomy \
-	-I$(top_srcdir)/src/collections \
-	-I$(top_srcdir)/src/dataManip \
-	-I$(top_srcdir)/src/dataIO \
-	-I$(top_srcdir)/src/image \
-	-I$(top_srcdir)/src/sysUtils \
-	$(all_includes)
-
-AM_LDFLAGS = -L$(top_builddir)/src -lpslib $(PSLIB_LIBS)
-AM_CFLAGS = -DXML_CONFIG_FILE="\"$(top_srcdir)/etc/pslib/psTime.xml\""
-
-TESTS = \
-         tst_psVector          \
-         tst_psArray           \
-         tst_psBitSet          \
-         tst_psVectorSort_01   \
-         tst_psVectorSort_02   \
-         tst_psVectorSort_03   \
-         tst_psVectorSort_04   \
-         tst_psList            \
-         tst_psHash00          \
-         tst_psHash01          \
-         tst_psHash02          \
-         tst_psHash03          \
-         tst_psHash04          \
-         tst_psHash05          \
-         tst_psScalar \
-         tst_psMetadataIO  \
-         tst_psMetadata_01 \
-         tst_psMetadata_02 \
-         tst_psMetadata_03 \
-         tst_psMetadata_04 \
-         tst_psMetadata_05 \
-         tst_psMetadata_06 \
-         tst_psMetadata_07 \
-         tst_psPixels
-
-check_PROGRAMS =$(TESTS)
-
-check_DATA = test.config \
-	test1.config \
-	test2.config \
-	test3.config \
-	test4.config \
-	test5.config \
-	header_1.fits \
-	header_2.fits
-
-
-TESTS_ENVIRONMENT = perl $(top_srcdir)/test/runTest -verified=$(srcdir)/verified
-
-CLEANFILES = $(TESTS) $(check_DATA) temp/*
-
-tests: $(check_DATA) $(TESTS)
-
-tst_psVector_SOURCES = tst_psVector.c
-tst_psArray_SOURCES = tst_psArray.c
-tst_psBitSet_SOURCES = tst_psBitSet.c
-tst_psVectorSort_01_SOURCES = tst_psVectorSort_01.c
-tst_psVectorSort_02_SOURCES = tst_psVectorSort_02.c
-tst_psVectorSort_03_SOURCES = tst_psVectorSort_03.c
-tst_psVectorSort_04_SOURCES = tst_psVectorSort_04.c
-tst_psList_SOURCES = tst_psList.c
-tst_psHash00_SOURCES = tst_psHash00.c
-tst_psHash01_SOURCES = tst_psHash01.c
-tst_psHash02_SOURCES = tst_psHash02.c
-tst_psHash03_SOURCES = tst_psHash03.c
-tst_psHash04_SOURCES = tst_psHash04.c
-tst_psHash05_SOURCES = tst_psHash05.c
-tst_psScalar_SOURCES = tst_psScalar.c
-tst_psMetadataIO_SOURCES = tst_psMetadataIO.c
-tst_psMetadata_01_SOURCES = tst_psMetadata_01.c
-tst_psMetadata_02_SOURCES = tst_psMetadata_02.c
-tst_psMetadata_03_SOURCES = tst_psMetadata_03.c
-tst_psMetadata_04_SOURCES = tst_psMetadata_04.c
-tst_psMetadata_05_SOURCES = tst_psMetadata_05.c
-tst_psMetadata_06_SOURCES = tst_psMetadata_06.c
-tst_psMetadata_07_SOURCES = tst_psMetadata_07.c
-tst_psPixels_SOURCES = tst_psPixels.c
-
-test.config: data/test.config
-	cp $? $@
-
-test1.config: data/test1.config
-	cp $? $@
-
-test2.config: data/test2.config
-	cp $? $@
-
-test3.config: data/test3.config
-	cp $? $@
-
-test4.config: data/test4.config
-	cp $? $@
-
-test5.config: data/test5.config
-	cp $? $@
-
-header_1.fits: data/header_1.fits
-	cp $? $@
-
-header_2.fits: data/header_2.fits
-	cp $? $@
-
-test: check
Index: unk/psLib/test/collections/verified/tst_psSort_01.stdout
===================================================================
--- /trunk/psLib/test/collections/verified/tst_psSort_01.stdout	(revision 4600)
+++ 	(revision )
@@ -1,57 +1,0 @@
-/***************************** TESTPOINT ******************************************\
-*             TestFile: tst_psSort_01.c                                            *
-*            TestPoint: psSort{Create float vectors}                               *
-*             TestType: Positive                                                   *
-\**********************************************************************************/
-
-vec[0] = 7.000000
-vec[1] = 9.000000
-vec[2] = 3.000000
-vec[3] = 1.000000
-vec[4] = 5.000000
-vec[5] = 5.000000
-vec[6] = -20.000000
-
----> TESTPOINT PASSED (psSort{Create float vectors} | tst_psSort_01.c)
-
-/***************************** TESTPOINT ******************************************\
-*             TestFile: tst_psSort_01.c                                            *
-*            TestPoint: psSort{Sort float vector}                                  *
-*             TestType: Positive                                                   *
-\**********************************************************************************/
-
-vec[0] = -20.000000
-vec[1] = 1.000000
-vec[2] = 3.000000
-vec[3] = 5.000000
-vec[4] = 5.000000
-vec[5] = 7.000000
-vec[6] = 9.000000
-
----> TESTPOINT PASSED (psSort{Sort float vector} | tst_psSort_01.c)
-
-/***************************** TESTPOINT ******************************************\
-*             TestFile: tst_psSort_01.c                                            *
-*            TestPoint: psSort{Sort input float vector into itself}                *
-*             TestType: Positive                                                   *
-\**********************************************************************************/
-
-vec[0] = -20.000000
-vec[1] = 1.000000
-vec[2] = 3.000000
-vec[3] = 5.000000
-vec[4] = 5.000000
-vec[5] = 7.000000
-vec[6] = 9.000000
-
----> TESTPOINT PASSED (psSort{Sort input float vector into itself} | tst_psSort_01.c)
-
-/***************************** TESTPOINT ******************************************\
-*             TestFile: tst_psSort_01.c                                            *
-*            TestPoint: psSort{Free float vectors}                                 *
-*             TestType: Positive                                                   *
-\**********************************************************************************/
-
-
----> TESTPOINT PASSED (psSort{Free float vectors} | tst_psSort_01.c)
-
Index: unk/psLib/test/collections/verified/tst_psSort_02.stdout
===================================================================
--- /trunk/psLib/test/collections/verified/tst_psSort_02.stdout	(revision 4600)
+++ 	(revision )
@@ -1,37 +1,0 @@
-/***************************** TESTPOINT ******************************************\
-*             TestFile: tst_psSort_02.c                                            *
-*            TestPoint: psSort{Create vectors}                                     *
-*             TestType: Positive                                                   *
-\**********************************************************************************/
-
-arr[0] = 7.000000
-arr[1] = 9.000000
-arr[2] = 3.000000
-arr[3] = 1.000000
-arr[4] = 5.000000
-
----> TESTPOINT PASSED (psSort{Create vectors} | tst_psSort_02.c)
-
-/***************************** TESTPOINT ******************************************\
-*             TestFile: tst_psSort_02.c                                            *
-*            TestPoint: psSort{Create sorted index vector}                         *
-*             TestType: Positive                                                   *
-\**********************************************************************************/
-
-arr[0] = 3
-arr[1] = 2
-arr[2] = 4
-arr[3] = 0
-arr[4] = 1
-
----> TESTPOINT PASSED (psSort{Create sorted index vector} | tst_psSort_02.c)
-
-/***************************** TESTPOINT ******************************************\
-*             TestFile: tst_psSort_02.c                                            *
-*            TestPoint: psSort{Free vectors}                                       *
-*             TestType: Positive                                                   *
-\**********************************************************************************/
-
-
----> TESTPOINT PASSED (psSort{Free vectors} | tst_psSort_02.c)
-
Index: unk/psLib/test/collections/verified/tst_psSort_03.stderr
===================================================================
--- /trunk/psLib/test/collections/verified/tst_psSort_03.stderr	(revision 4600)
+++ 	(revision )
@@ -1,1 +1,0 @@
- <DATE> <TIME> |<HOST>|E|         psSort| : Line 137 - Input and output vector sizes are not equal: in=5 out=6
Index: unk/psLib/test/collections/verified/tst_psSort_03.stdout
===================================================================
--- /trunk/psLib/test/collections/verified/tst_psSort_03.stdout	(revision 4600)
+++ 	(revision )
@@ -1,34 +1,0 @@
-/***************************** TESTPOINT ******************************************\
-*             TestFile: tst_psSort_03.c                                            *
-*            TestPoint: psSort{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 (psSort{Create float vectors of different sizes} | tst_psSort_03.c)
-
-/***************************** TESTPOINT ******************************************\
-*             TestFile: tst_psSort_03.c                                            *
-*            TestPoint: psSort{Sort float vector}                                  *
-*             TestType: Negative                                                   *
-*    ExpectedErrorText: Input and output vector sizes are not equal                *
-*  ExpectedStatusValue: 0                                                          *
-\**********************************************************************************/
-
-
----> TESTPOINT PASSED (psSort{Sort float vector} | tst_psSort_03.c)
-
-/***************************** TESTPOINT ******************************************\
-*             TestFile: tst_psSort_03.c                                            *
-*            TestPoint: psSort{Free float vectors}                                 *
-*             TestType: Positive                                                   *
-\**********************************************************************************/
-
-
----> TESTPOINT PASSED (psSort{Free float vectors} | tst_psSort_03.c)
-
Index: unk/psLib/test/collections/verified/tst_psSort_04.stderr
===================================================================
--- /trunk/psLib/test/collections/verified/tst_psSort_04.stderr	(revision 4600)
+++ 	(revision )
@@ -1,1 +1,0 @@
- <DATE> <TIME> |<HOST>|E|         psSort| : Line 119 - Null input vector
Index: unk/psLib/test/collections/verified/tst_psSort_04.stdout
===================================================================
--- /trunk/psLib/test/collections/verified/tst_psSort_04.stdout	(revision 4600)
+++ 	(revision )
@@ -1,20 +1,0 @@
-/***************************** TESTPOINT ******************************************\
-*             TestFile: tst_psSort_04.c                                            *
-*            TestPoint: psSort{Attempt to sort with null input vector}             *
-*             TestType: Negative                                                   *
-*    ExpectedErrorText: Null input vector                                          *
-*  ExpectedStatusValue: 0                                                          *
-\**********************************************************************************/
-
-
----> TESTPOINT PASSED (psSort{Attempt to sort with null input vector} | tst_psSort_04.c)
-
-/***************************** TESTPOINT ******************************************\
-*             TestFile: tst_psSort_04.c                                            *
-*            TestPoint: psSort{Free vectors}                                       *
-*             TestType: Positive                                                   *
-\**********************************************************************************/
-
-
----> TESTPOINT PASSED (psSort{Free arays} | tst_psSort_04.c)
-
Index: unk/psLib/test/collections/verified/tst_psVector_01.stderr
===================================================================
--- /trunk/psLib/test/collections/verified/tst_psVector_01.stderr	(revision 4600)
+++ 	(revision )
@@ -1,2 +1,0 @@
- <DATE> <TIME> |<HOST>|E|  psVectorAlloc|Invalid value for nalloc. nalloc: 0
- <DATE> <TIME> |<HOST>|E|psVectorRealloc|Null input vector
Index: unk/psLib/test/collections/verified/tst_psVector_01.stdout
===================================================================
--- /trunk/psLib/test/collections/verified/tst_psVector_01.stdout	(revision 4600)
+++ 	(revision )
@@ -1,91 +1,0 @@
-/***************************** TESTPOINT ******************************************\
-*             TestFile: tst_psVector_01.c                                          *
-*            TestPoint: psVector{Create S32 vector}                                *
-*             TestType: Positive                                                   *
-\**********************************************************************************/
-
-Vector size = 5
-Vector type = 260
-Vector dimen = 1
-
----> TESTPOINT PASSED (psVector{Create S32 vector} | tst_psVector_01.c)
-
-/***************************** TESTPOINT ******************************************\
-*             TestFile: tst_psVector_01.c                                          *
-*            TestPoint: psVector{Add data to S32 vector}                           *
-*             TestType: Positive                                                   *
-\**********************************************************************************/
-
-Elem 0 = 0
-Elem 1 = 10
-Elem 2 = 20
-Elem 3 = 30
-Elem 4 = 40
-Vector size = 5
-Vector population = 5
-
----> TESTPOINT PASSED (psVector{Add data to S32 vector} | tst_psVector_01.c)
-
-/***************************** TESTPOINT ******************************************\
-*             TestFile: tst_psVector_01.c                                          *
-*            TestPoint: psVector{Reallocate S32 vector bigger}                     *
-*             TestType: Positive                                                   *
-\**********************************************************************************/
-
-Adding more elements to S32 vector...
-Elem 5 = 50
-Elem 6 = 60
-Elem 7 = 70
-Elem 8 = 80
-Elem 9 = 90
-Vector size = 10
-Vector population = 10
-
----> TESTPOINT PASSED (psVector{Reallocate S32 vector bigger} | tst_psVector_01.c)
-
-/***************************** TESTPOINT ******************************************\
-*             TestFile: tst_psVector_01.c                                          *
-*            TestPoint: psVector{Reallocate S32 vector smaller}                    *
-*             TestType: Positive                                                   *
-\**********************************************************************************/
-
-Vector size = 3
-Elem 0 = 0
-Elem 1 = 10
-Elem 2 = 20
-Vector size = 3
-Vector population = 3
-
----> TESTPOINT PASSED (psVector{Reallocate integer S32 smaller} | tst_psVector_01.c)
-
-/***************************** TESTPOINT ******************************************\
-*             TestFile: tst_psVector_01.c                                          *
-*            TestPoint: psVector{Free S32 vector}                                  *
-*             TestType: Positive                                                   *
-\**********************************************************************************/
-
-
----> TESTPOINT PASSED (psVector{Free S32 vector} | tst_psVector_01.c)
-
-/***************************** TESTPOINT ******************************************\
-*             TestFile: tst_psVector_01.c                                          *
-*            TestPoint: psVector{Attempt to create a S32 vector with zero size}    *
-*             TestType: Negative                                                   *
-*    ExpectedErrorText: Invalid value for nalloc                                   *
-*  ExpectedStatusValue: 0                                                          *
-\**********************************************************************************/
-
-
----> TESTPOINT PASSED (psVector{Attempt to create a S32 vector with zero size} | tst_psVector_01.c)
-
-/***************************** TESTPOINT ******************************************\
-*             TestFile: tst_psVector_01.c                                          *
-*            TestPoint: psVector{Attempt to realloc a null S32 vector}             *
-*             TestType: Negative                                                   *
-*    ExpectedErrorText: Null input vector                                          *
-*  ExpectedStatusValue: 0                                                          *
-\**********************************************************************************/
-
-
----> TESTPOINT PASSED (psVector{Attempt to realloc a null S32 vector} | tst_psVector_01.c)
-
Index: unk/psLib/test/collections/verified/tst_psVector_02.stdout
===================================================================
--- /trunk/psLib/test/collections/verified/tst_psVector_02.stdout	(revision 4600)
+++ 	(revision )
@@ -1,73 +1,0 @@
-/***************************** TESTPOINT ******************************************\
-*             TestFile: tst_psVector_02.c                                          *
-*            TestPoint: psVector{Create void pointer vector}                       *
-*             TestType: Positive                                                   *
-\**********************************************************************************/
-
-Vector size = 5
-Vector type = 0
-Vector dimen = 1
-
----> TESTPOINT PASSED (psVector{Create void pointer vector} | tst_psVector_02.c)
-
-/***************************** TESTPOINT ******************************************\
-*             TestFile: tst_psVector_02.c                                          *
-*            TestPoint: psVector{Add data to void pointer vector}                  *
-*             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
-Vector size = 5
-Vector population = 5
-
----> TESTPOINT PASSED (psVector{Add data to void pointer vector} | tst_psVector_02.c)
-
-/***************************** TESTPOINT ******************************************\
-*             TestFile: tst_psVector_02.c                                          *
-*            TestPoint: psVector{Reallocate void pointer vector bigger}            *
-*             TestType: Positive                                                   *
-\**********************************************************************************/
-
-Adding more elements to void pointer vector...
-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
-Vector size = 10
-Vector population = 10
-
----> TESTPOINT PASSED (psVector{Reallocate void pointer vector bigger} | tst_psVector_02.c)
-
-/***************************** TESTPOINT ******************************************\
-*             TestFile: tst_psVector_02.c                                          *
-*            TestPoint: psVector{Reallocate void pointer vector 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
-Vector size = 3
-Vector population = 3
-
----> TESTPOINT PASSED (psVector{Reallocate integer void pointer smaller} | tst_psVector_02.c)
-
-/***************************** TESTPOINT ******************************************\
-*             TestFile: tst_psVector_02.c                                          *
-*            TestPoint: psVector{Free void pointer vector}                         *
-*             TestType: Positive                                                   *
-\**********************************************************************************/
-
-
----> TESTPOINT PASSED (psVector{Free void pointer vector} | tst_psVector_02.c)
-
Index: unk/psLib/test/collections/verified/tst_psVector_03.stdout
===================================================================
--- /trunk/psLib/test/collections/verified/tst_psVector_03.stdout	(revision 4600)
+++ 	(revision )
@@ -1,73 +1,0 @@
-/***************************** TESTPOINT ******************************************\
-*             TestFile: tst_psVector_03.c                                          *
-*            TestPoint: psVector{Create void pointer vector}                       *
-*             TestType: Positive                                                   *
-\**********************************************************************************/
-
-Vector size = 5
-Vector type = 0
-Vector dimen = 1
-
----> TESTPOINT PASSED (psVector{Create void pointer vector} | tst_psVector_03.c)
-
-/***************************** TESTPOINT ******************************************\
-*             TestFile: tst_psVector_03.c                                          *
-*            TestPoint: psVector{Add data to void pointer vector}                  *
-*             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
-Vector size = 5
-Vector population = 5
-
----> TESTPOINT PASSED (psVector{Add data to void pointer vector} | tst_psVector_03.c)
-
-/***************************** TESTPOINT ******************************************\
-*             TestFile: tst_psVector_03.c                                          *
-*            TestPoint: psVector{Reallocate void pointer vector bigger}            *
-*             TestType: Positive                                                   *
-\**********************************************************************************/
-
-Adding more elements to void pointer vector...
-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
-Vector size = 10
-Vector population = 10
-
----> TESTPOINT PASSED (psVector{Reallocate void pointer vector bigger} | tst_psVector_03.c)
-
-/***************************** TESTPOINT ******************************************\
-*             TestFile: tst_psVector_03.c                                          *
-*            TestPoint: psVector{Reallocate void pointer vector 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
-Vector size = 3
-Vector population = 3
-
----> TESTPOINT PASSED (psVector{Reallocate integer void pointer smaller} | tst_psVector_03.c)
-
-/***************************** TESTPOINT ******************************************\
-*             TestFile: tst_psVector_03.c                                          *
-*            TestPoint: psVector{Free void pointer array with function callback}   *
-*             TestType: Positive                                                   *
-\**********************************************************************************/
-
-
----> TESTPOINT PASSED (psVector{Free void pointer array with function callback} | tst_psVector_03.c)
-
Index: unk/psLib/test/dataIO/.cvsignore
===================================================================
--- /trunk/psLib/test/dataIO/.cvsignore	(revision 4600)
+++ 	(revision )
@@ -1,17 +1,0 @@
-.deps
-.libs
-Makefile
-Makefile.in
-tmpImages
-temp
-tst_psLookupTable_01
-tst_psDB
-tst_psFits
-multi.fits
-table.fits
-table10.dat
-table2.dat
-table3.dat
-tableF32.dat
-tableU8.dat
-tableS32.dat
Index: unk/psLib/test/dataIO/Makefile.am
===================================================================
--- /trunk/psLib/test/dataIO/Makefile.am	(revision 4600)
+++ 	(revision )
@@ -1,42 +1,0 @@
-#Makefile for dataIO functions of psLib
-#
-EXTRA_DIST = verified
-
-EXTRA_PROGRAMS = tst_psDB
-
-INCLUDES = \
-	-I$(top_srcdir)/src \
-	-I$(top_srcdir)/src/astronomy \
-	-I$(top_srcdir)/src/collections \
-	-I$(top_srcdir)/src/dataManip \
-	-I$(top_srcdir)/src/dataIO \
-	-I$(top_srcdir)/src/image \
-	-I$(top_srcdir)/src/sysUtils \
-	$(all_includes)
-
-AM_LDFLAGS = -L$(top_builddir)/src -lpslib $(PSLIB_LIBS)
-AM_CFLAGS = -DUTC_DAT_FILE="\"$(top_srcdir)/share/pslib/tai_utc.dat\""
-
-TESTS = \
-	tst_psLookupTable_01 \
-	tst_psFits \
-	@TST_PSDB@
-
-check_PROGRAMS = $(TESTS)
-
-check_DATA = table10.dat table2.dat table3.dat tableF32.dat tableS32.dat tableU8.dat
-
-TESTS_ENVIRONMENT = perl $(top_srcdir)/test/runTest -verified=$(srcdir)/verified 
-
-tests: $(check_DATA) $(TESTS)
-
-CLEANFILES = $(TESTS) $(check_DATA) multi.fits table.fits temp/*
-
-tst_psLookupTable_01_SOURCES =  tst_psLookupTable_01.c
-tst_psFits_SOURCES =  tst_psFits.c
-tst_psDB_SOURCES = tst_psDB.c
-
-%.dat: verified/%.dat
-	cp $? $@
-
-test: check
Index: unk/psLib/test/dataIO/verified/table10.dat
===================================================================
--- /trunk/psLib/test/dataIO/verified/table10.dat	(revision 4600)
+++ 	(revision )
@@ -1,14 +1,0 @@
-#  Table with valid types and index-values
-#
-#psU8     psU16    psU32     psU64    psS8    psS16    psS32    psS64    psF32   psF64
-6        14       28        256      -6      -14      -28      -256     1.50    13.98
-10       22       44        4096     -10     -22      -44      -4096    4.50    27.30
-1        4        8         16       -1      -4       -8       -16      -2.25   -2.67
-3        8        16        32       -3      -8       -16      -32      -0.75   3.99
-9        20       40        2048     -9      -20      -40      -2048    3.75    23.97
-2        6        12        24       -2      -6       -12      -24      -1.5    0.66
-7        16       32        512      -7      -16      -32      -512     2.250   17.31
-4        10       20        64       -4      -10      -20      -64      0.00    7.32
-5        12       24        128      -5      -12      -24      -128     0.75    10.65
-8        18       36        1024     -8      -18      -36      -1024    3.00    20.64
-#
Index: unk/psLib/test/dataIO/verified/table2.dat
===================================================================
--- /trunk/psLib/test/dataIO/verified/table2.dat	(revision 4600)
+++ 	(revision )
@@ -1,8 +1,0 @@
-# Table with invalid type in the type row but with valid index-values
-#
-psU8     psU16    psU32     psU64    psXS8    psS16    psS32    psS64    psF32   psF64
-0        2        4         8        0       -2       -4       -8       -0.5    -1.5
-1        4        8         16       -1      -4       -8       -16      0.0     -1.0
-2        6        12        24       -2      -6       -12      -24      0.5     -0.25
-3        8        16        32       -3      -8       -16      -32      0.75     1.75
-#
Index: unk/psLib/test/dataIO/verified/table3.dat
===================================================================
--- /trunk/psLib/test/dataIO/verified/table3.dat	(revision 4600)
+++ 	(revision )
@@ -1,8 +1,0 @@
-#  Table with valid types and index-values
-#
-psU8     psU16    psU32     psU64    psS8    psS16    psS32    psS64    psF32   psF64
-0        2        4         8        0       -2       -4       -8       -0.5    -1.5
-1)       4=       8;        1(6      -1_     -4$      -8@      -16{     0.0[    -1.0]
-2        6        12        24       -2      -6       -12      -24      0.5     -0.25
-3        8        16        32       -3      -8       -16      -32      0.75     1.75
-#
Index: unk/psLib/test/dataIO/verified/tableF32.dat
===================================================================
--- /trunk/psLib/test/dataIO/verified/tableF32.dat	(revision 4600)
+++ 	(revision )
@@ -1,9 +1,0 @@
-#  Table with valid types and index-values
-#
-#psF32     psU16    psU32     psU64    psS8    psS16    psS32    psS64    psU8   psF64
--10.05    2        4         8        0       -2       -4       -8       5      -1.5
- 1.009     4        8         16       -1      -4       -8       -16      0      -1.0
-23.45     6        12        24       -2      -6       -12      -24      5      -0.25
-3500.67   8        16        32       -3      -8       -16      -32      75     1.75
-   
-#
Index: unk/psLib/test/dataIO/verified/tableF32_err.dat
===================================================================
--- /trunk/psLib/test/dataIO/verified/tableF32_err.dat	(revision 4600)
+++ 	(revision )
@@ -1,9 +1,0 @@
-#  Table with valid types and index-values
-#
-#psF32     psU16    psU32     psU64    psS8    psS16    psS32    psS64    psU8   psF64
--10.05    2        4         8        0       -2       -4       -8       5      -1.5
- k.009     4        8         16       -1      -4       -8       -16      0      -1.0
-23.45     6        12        24       -2      -6       -12      -24      5      -0.25
-3500.67   8        16        32       -3      -8       -16      -32      75     1.75
-   
-#
Index: unk/psLib/test/dataIO/verified/tableS32.dat
===================================================================
--- /trunk/psLib/test/dataIO/verified/tableS32.dat	(revision 4600)
+++ 	(revision )
@@ -1,8 +1,0 @@
-#  Table with valid types and index-values
-#
-psS32    psU16    psU32     psU64    psS8    psS16    psU8     psS64    psF32   psF64
--1       2        4         8        0       -2       99       -8       -0.5    -1.5
-11       4        8         16       -1      -4       100       -16      0.0     -1.0
-22       6        12        24       -2      -6       101      -24      0.5     -0.25
-33       8        16        32       -3      -8       102      -32      0.75     1.75
-#
Index: unk/psLib/test/dataIO/verified/tableU8.dat
===================================================================
--- /trunk/psLib/test/dataIO/verified/tableU8.dat	(revision 4600)
+++ 	(revision )
@@ -1,8 +1,0 @@
-#  Table with valid types and index-values
-#
-#psU8     psU16    psU32     psU64    psS8    psS16    psS32    psS64    psF32   psF64
-0        2        4         8        0       -2       -4       -8       -0.5    -1.5
-1        4        8         16       -1      -4       -8       -16      0.0     -1.0
-2        6        12        24       -2      -6       -12      -24      0.5     -0.25
-3        8        16        32       -3      -8       -16      -32      0.75     1.75
-#
Index: unk/psLib/test/dataManip/.cvsignore
===================================================================
--- /trunk/psLib/test/dataManip/.cvsignore	(revision 4600)
+++ 	(revision )
@@ -1,66 +1,0 @@
-.deps
-.libs
-Makefile
-Makefile.in
-temp
-tmpImages
-tst_psMatrix01
-tst_psStats00
-tst_psStats01
-tst_psStats02
-tst_psStats03
-tst_psStats04
-tst_psFunc00
-tst_psFunc01
-tst_psHist00
-tst_psHist01
-tst_psHist02
-tst_psImageIO
-tst_psImageStats00
-tst_psImageStats01
-tst_psImageStats02
-tst_psMatrix02
-tst_psMatrix03
-tst_psMatrix04
-tst_psMatrix05
-tst_psMatrix06
-tst_psMatrix07
-tst_psStats05
-tst_psStats06
-tst_psStats07
-tst_psStats08
-tst_psStats09
-tst_psImageFFT
-tst_psVectorFFT
-tst_psImageStats03
-tst_psMatrixVectorArithmetic01
-tst_psMatrixVectorArithmetic02
-test/dataManip/tst_psImageManip
-tst_psMatrixVectorArithmetic03
-tst_psMatrixVectorArithmetic04
-tst_psMinimize00
-tst_psMinimize01
-tst_psMinimize02
-tst_psMinimize03
-tst_psMinimize04
-tst_psImageManip
-tst_psFunc02
-tst_psFunc03
-tst_psFunc04
-tst_psFunc05
-tst_psFunc07
-tst_psHist03
-tst_psMinimize05
-tst_psMinimize06
-tst_psMinimize04_F32
-tst_psMinimize04b
-tst_psMinimize04b_F32
-tst_psMinimize07
-tst_psRandom
-seed_msglog1.txt
-seed_msglog2.txt
-tst_psFunc08
-tst_psFunc09
-tst_psFunc10
-tst_psFunc11
-
Index: unk/psLib/test/dataManip/Makefile.am
===================================================================
--- /trunk/psLib/test/dataManip/Makefile.am	(revision 4600)
+++ 	(revision )
@@ -1,118 +1,0 @@
-#Makefile for dataManip functions of psLib
-#
-EXTRA_DIST = verified
-
-INCLUDES = \
-	-I$(top_srcdir)/src \
-	-I$(top_srcdir)/src/astronomy \
-	-I$(top_srcdir)/src/collections \
-	-I$(top_srcdir)/src/dataManip \
-	-I$(top_srcdir)/src/dataIO \
-	-I$(top_srcdir)/src/image \
-	-I$(top_srcdir)/src/sysUtils \
-	$(all_includes)
-
-AM_LDFLAGS = -L$(top_builddir)/src -lpslib $(PSLIB_LIBS)
-
-TESTS = \
-	tst_psFunc00 \
-	tst_psFunc01 \
-	tst_psFunc02 \
-	tst_psFunc03 \
-	tst_psFunc04 \
-	tst_psFunc05 \
-	tst_psFunc07 \
-	tst_psFunc08 \
-	tst_psFunc09 \
-	tst_psFunc10 \
-        tst_psFunc11 \
-	tst_psHist00 \
-	tst_psHist01 \
-	tst_psHist02 \
-	tst_psHist03 \
-	tst_psMatrix01 \
-	tst_psMatrix02 \
-	tst_psMatrix03 \
-	tst_psMatrix04 \
-	tst_psMatrix05 \
-	tst_psMatrix06 \
-	tst_psMatrix07 \
-	tst_psMatrixVectorArithmetic01 \
-	tst_psMatrixVectorArithmetic02 \
-	tst_psMatrixVectorArithmetic03 \
-	tst_psMatrixVectorArithmetic04 \
-	tst_psMinimize04 \
-	tst_psMinimize04_F32 \
-	tst_psMinimize04b \
-	tst_psMinimize04b_F32 \
-	tst_psMinimize05 \
-	tst_psMinimize06 \
-	tst_psMinimize07 \
-	tst_psStats00 \
-	tst_psStats01 \
-	tst_psStats02 \
-	tst_psStats03 \
-	tst_psStats05 \
-	tst_psStats06 \
-	tst_psStats07 \
-	tst_psStats08 \
-	tst_psStats09 \
-	tst_psRandom \
-	tst_psVectorFFT 
-
-check_PROGRAMS = $(TESTS)
-
-check_DATA =
-
-CLEANFILES = $(TESTS) $(check_DATA) temp/*
-
-TESTS_ENVIRONMENT = perl $(top_srcdir)/test/runTest -verified=$(srcdir)/verified 
-
-tests: $(TESTS) $(check_DATA)
-
-tst_psFunc00_SOURCES =  tst_psFunc00.c
-tst_psFunc01_SOURCES =  tst_psFunc01.c
-tst_psFunc02_SOURCES =  tst_psFunc02.c
-tst_psFunc03_SOURCES =  tst_psFunc03.c
-tst_psFunc04_SOURCES =  tst_psFunc04.c
-tst_psFunc05_SOURCES =  tst_psFunc05.c
-tst_psFunc07_SOURCES =  tst_psFunc07.c
-tst_psFunc08_SOURCES =  tst_psFunc08.c
-tst_psFunc09_SOURCES =  tst_psFunc09.c
-tst_psFunc10_SOURCES =  tst_psFunc10.c
-tst_psFunc11_SOURCES =  tst_psFunc11.c
-tst_psHist00_SOURCES =  tst_psHist00.c
-tst_psHist01_SOURCES =  tst_psHist01.c
-tst_psHist02_SOURCES =  tst_psHist02.c
-tst_psHist03_SOURCES =  tst_psHist03.c
-tst_psMatrix01_SOURCES =  tst_psMatrix01.c
-tst_psMatrix02_SOURCES =  tst_psMatrix02.c
-tst_psMatrix03_SOURCES =  tst_psMatrix03.c
-tst_psMatrix04_SOURCES =  tst_psMatrix04.c
-tst_psMatrix05_SOURCES =  tst_psMatrix05.c
-tst_psMatrix06_SOURCES =  tst_psMatrix06.c
-tst_psMatrix07_SOURCES =  tst_psMatrix07.c
-tst_psMatrixVectorArithmetic01_SOURCES =  tst_psMatrixVectorArithmetic01.c
-tst_psMatrixVectorArithmetic02_SOURCES =  tst_psMatrixVectorArithmetic02.c
-tst_psMatrixVectorArithmetic03_SOURCES =  tst_psMatrixVectorArithmetic03.c
-tst_psMatrixVectorArithmetic04_SOURCES =  tst_psMatrixVectorArithmetic04.c
-tst_psMinimize04_SOURCES =  tst_psMinimize04.c
-tst_psMinimize04_F32_SOURCES =  tst_psMinimize04.c
-tst_psMinimize04b_SOURCES =  tst_psMinimize04b.c
-tst_psMinimize04b_F32_SOURCES =  tst_psMinimize04b.c
-tst_psMinimize05_SOURCES =  tst_psMinimize05.c
-tst_psMinimize06_SOURCES =  tst_psMinimize06.c
-tst_psMinimize07_SOURCES =  tst_psMinimize07.c
-tst_psStats00_SOURCES =  tst_psStats00.c
-tst_psStats01_SOURCES =  tst_psStats01.c
-tst_psStats02_SOURCES =  tst_psStats02.c
-tst_psStats03_SOURCES =  tst_psStats03.c
-tst_psStats05_SOURCES =  tst_psStats05.c
-tst_psStats06_SOURCES =  tst_psStats06.c
-tst_psStats07_SOURCES =  tst_psStats07.c
-tst_psStats08_SOURCES =  tst_psStats08.c
-tst_psStats09_SOURCES =  tst_psStats09.c
-tst_psRandom_SOURCES =  tst_psRandom.c
-tst_psVectorFFT_SOURCES = tst_psVectorFFT.c
-
-test: check
Index: unk/psLib/test/image/.cvsignore
===================================================================
--- /trunk/psLib/test/image/.cvsignore	(revision 4600)
+++ 	(revision )
@@ -1,22 +1,0 @@
-fBiOut.fits
-fOut.fits
-sBiOut.fits
-sOut.fits
-.deps
-.libs
-Makefile
-Makefile.in
-temp
-tst_psImage
-tst_psImagePixelExtract
-tst_psImageStructManip
-tst_psImageFFT
-tst_psImagePixelManip
-tst_psImageGeomManip
-tst_psImageConvolve
-tst_psImageIO
-tmpImages
-tst_psImageStats04
-tst_psImageInterpolate
-tst_psImageStats
-*.lo
Index: unk/psLib/test/image/Makefile.am
===================================================================
--- /trunk/psLib/test/image/Makefile.am	(revision 4600)
+++ 	(revision )
@@ -1,64 +1,0 @@
-#Makefile for image functions of psLib
-#
-EXTRA_DIST = verified
-
-INCLUDES = \
-	-I$(top_srcdir)/src \
-	-I$(top_srcdir)/src/astronomy \
-	-I$(top_srcdir)/src/collections \
-	-I$(top_srcdir)/src/dataManip \
-	-I$(top_srcdir)/src/dataIO \
-	-I$(top_srcdir)/src/image \
-	-I$(top_srcdir)/src/sysUtils \
-	$(all_includes)
-
-AM_LDFLAGS = -L$(top_builddir)/src -lpslib $(PSLIB_LIBS)
-
-TESTS = \
-	tst_psImage \
-	tst_psImageFFT \
-	tst_psImageGeomManip \
-	tst_psImagePixelManip \
-	tst_psImageStats \
-	tst_psImagePixelExtract \
-	tst_psImageStructManip \
-	tst_psImageConvolve \
-	tst_psImageInterpolate
-
-check_PROGRAMS =$(TESTS)
-
-check_DATA = \
-	fBiOut.fits \
-	fOut.fits \
-	sBiOut.fits \
-	sOut.fits
-
-TESTS_ENVIRONMENT = perl $(top_srcdir)/test/runTest -verified=$(srcdir)/verified
-
-CLEANFILES = $(TESTS) $(check_DATA) temp/*
-
-tests: $(check_DATA) $(TESTS)
-
-tst_psImage_SOURCES =  tst_psImage.c
-tst_psImageFFT_SOURCES =  tst_psImageFFT.c
-tst_psImagePixelManip_SOURCES =  tst_psImagePixelManip.c
-tst_psImageGeomManip_SOURCES =  tst_psImageGeomManip.c
-tst_psImageStats_SOURCES =  tst_psImageStats.c
-tst_psImagePixelExtract_SOURCES =  tst_psImagePixelExtract.c
-tst_psImageStructManip_SOURCES =  tst_psImageStructManip.c
-tst_psImageConvolve_SOURCES =  tst_psImageConvolve.c
-tst_psImageInterpolate_SOURCES =  tst_psImageInterpolate.c
-
-fBiOut.fits: verified/fBiOut.fits
-	cp $? $@
-
-fOut.fits: verified/fOut.fits
-	cp $? $@
-
-sBiOut.fits: verified/sBiOut.fits
-	cp $? $@
-
-sOut.fits: verified/sOut.fits
-	cp $? $@
-
-test: check
Index: unk/psLib/test/sysUtils/.cvsignore
===================================================================
--- /trunk/psLib/test/sysUtils/.cvsignore	(revision 4600)
+++ 	(revision )
@@ -1,17 +1,0 @@
-.deps
-.libs
-Makefile
-Makefile.in
-temp
-tst_psAbort
-tst_psError
-tst_psLogMsg
-tst_psMemory
-tst_psStringCopy
-tst_psTrace
-tst_psTrace02_OUT
-tst_psTrace
-core*
-log.txt
-tst_psConfigure
-tst_psString
Index: unk/psLib/test/sysUtils/Makefile.am
===================================================================
--- /trunk/psLib/test/sysUtils/Makefile.am	(revision 4600)
+++ 	(revision )
@@ -1,44 +1,0 @@
-#Makefile for sysUtils functions of psLib
-#
-EXTRA_DIST = verified
-
-INCLUDES = \
-	-I$(top_srcdir)/src \
-	-I$(top_srcdir)/src/astronomy \
-	-I$(top_srcdir)/src/collections \
-	-I$(top_srcdir)/src/dataManip \
-	-I$(top_srcdir)/src/dataIO \
-	-I$(top_srcdir)/src/image \
-	-I$(top_srcdir)/src/sysUtils \
-	$(all_includes)
-
-AM_LDFLAGS = -L$(top_builddir)/src -lpslib $(PSLIB_LIBS)
-
-TESTS = \
-	tst_psAbort      \
-	tst_psMemory     \
-	tst_psError      \
-	tst_psLogMsg     \
-	tst_psString     \
-	tst_psTrace      \
-	tst_psConfigure
-
-check_PROGRAMS =$(TESTS)
-
-check_DATA =
-
-TESTS_ENVIRONMENT = perl $(top_srcdir)/test/runTest -verified=$(srcdir)/verified 
-
-CLEANFILES = $(TESTS) $(check_DATA) temp/*
-
-tests: $(check_DATA) $(TESTS)
-
-tst_psAbort_SOURCES =  tst_psAbort.c
-tst_psMemory_SOURCES =  tst_psMemory.c
-tst_psError_SOURCES =  tst_psError.c
-tst_psLogMsg_SOURCES =  tst_psLogMsg.c
-tst_psString_SOURCES =  tst_psString.c
-tst_psTrace_SOURCES =  tst_psTrace.c
-tst_psConfigure_SOURCES =  tst_psConfigure.c
-
-test: check
