IPP Software Navigation Tools IPP Links Communication Pan-STARRS Links

Ignore:
Timestamp:
Dec 7, 2005, 2:00:57 PM (21 years ago)
Author:
gusciora
Message:

Coded the pmFPASelectChip() and pmFPAExcludeChip() routines.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/psModules/test/astrom/tst_pmAstrometry01.c

    r5681 r5739  
    55*  @author GLG, MHPCC
    66*
    7 *  @version $Revision: 1.2 $ $Name: not supported by cvs2svn $
    8 *  @date $Date: 2005-12-05 21:28:55 $
     7*  @version $Revision: 1.3 $ $Name: not supported by cvs2svn $
     8*  @date $Date: 2005-12-08 00:00:57 $
    99*
    1010* XXX: Add tests were the coordinate does not transform to any legitimate cell
     
    1212*
    1313* XXX: For each function, add tests for bad input parameters, as well as failed transforms.
     14*
     15* XXX: Must test pmFPASelectChip() and pmFPAExcludeChip().
    1416*
    1517*  Copyright 2004-2005 Maui High Performance Computing Center, University of Hawaii
     
    2325static psS32 test3( void );
    2426static psS32 test4( void );
     27static psS32 test5( void );
    2528
    2629testDescription tests[] = {
    2730                              {test3, -3, "pmAstrometry focal plane transformations", 0, false},
    2831                              {test4, -3, "pmCheckParents()", 0, false},
     32                              {test5, -3, "pmFPASelectChip() and pmFPAExcludeChip()", 0, false},
    2933                              {NULL}
    3034                          };
     
    584588    return(testStatus);
    585589}
     590
     591/******************************************************************************
     592test5(): This routine wil test the pmFPASelectChip() and pmFPAExcludeChip()
     593functions.  We generate an pmFPA hierarchy, then set the ->valid members with
     594those routines, then verify.
     595 *****************************************************************************/
     596psS32 test5( void )
     597{
     598    psS32 testStatus = 0;
     599    pmChip *tmpChip = NULL;
     600
     601    //
     602    // Generate a pmFPA hierarchy.
     603    //
     604    pmFPA *tmpFPA = genSystem();
     605
     606    //
     607    // We test the ->valid member for each chip.
     608    //
     609    for (psS32 i = 0 ; i < tmpFPA->chips->n ; i++) {
     610        tmpChip = (pmChip *) tmpFPA->chips->data[i];
     611        if ((tmpChip == NULL) || (tmpChip->valid != false)) {
     612            printf("TEST ERROR: Could not properly generate an FPA hierarchy.\n");
     613            testStatus = 1;
     614        }
     615    }
     616
     617    //
     618    // Exclude chip number 0, include all others, then test return value
     619    //
     620    psS32 numChips = pmFPAExcludeChip(tmpFPA, 0);
     621    if (numChips != (NUM_CHIPS-1)) {
     622        printf("TEST ERROR: pmFPAExcludeChip() did not return the correct number of chips.\n");
     623        testStatus = 2;
     624    }
     625
     626    //
     627    // We test the ->valid member for each chip.
     628    //
     629    tmpChip = (pmChip *) tmpFPA->chips->data[0];
     630    if (tmpChip->valid != false) {
     631        printf("TEST ERROR: pmFPAExcludeChip() did not set the proper chip->valid to FALSE.\n");
     632        testStatus = 3;
     633    }
     634    for (psS32 i = 1 ; i < tmpFPA->chips->n ; i++) {
     635        pmChip *tmpChip = (pmChip *) tmpFPA->chips->data[i];
     636        if (tmpChip->valid != true) {
     637            printf("TEST ERROR: pmFPAExcludeChip() did not set the proper chip->valids to FALSE.\n");
     638            testStatus = 4;
     639        }
     640    }
     641
     642
     643    //
     644    // Include chip number 0, exclude all others, then test return value
     645    //
     646    psBool tmpBool = pmFPASelectChip(tmpFPA, 0);
     647    if (tmpBool != true) {
     648        printf("TEST ERROR: pmFPASelectChip() returned FALSE.\n");
     649        testStatus = 5;
     650    }
     651
     652    //
     653    // We test the ->valid member for each chip.
     654    //
     655    tmpChip = (pmChip *) tmpFPA->chips->data[0];
     656    if (tmpChip->valid != true) {
     657        printf("TEST ERROR: pmFPASelectChip() did not set the proper chip->valid to FALSE.\n");
     658        testStatus = 6;
     659    }
     660    for (psS32 i = 1 ; i < tmpFPA->chips->n ; i++) {
     661        pmChip *tmpChip = (pmChip *) tmpFPA->chips->data[i];
     662        if (tmpChip->valid != false) {
     663            printf("TEST ERROR: pmFPASelectChip() did not set the proper chip->valids to FALSE.\n");
     664            testStatus = 7;
     665        }
     666    }
     667
     668    psFree(tmpFPA);
     669    return(testStatus);
     670}
Note: See TracChangeset for help on using the changeset viewer.