IPP Software Navigation Tools IPP Links Communication Pan-STARRS Links

Changeset 5146


Ignore:
Timestamp:
Sep 27, 2005, 9:20:06 AM (21 years ago)
Author:
desonia
Message:

Added test for reading text table columns.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/psLib/test/fits/tst_psFits.c

    r5141 r5146  
    66*  @author Robert DeSonia, MHPCC
    77*
    8 *  @version $Revision: 1.7 $ $Name: not supported by cvs2svn $
    9 *  @date $Date: 2005-09-27 02:27:32 $
     8*  @version $Revision: 1.8 $ $Name: not supported by cvs2svn $
     9*  @date $Date: 2005-09-27 19:20:06 $
    1010*
    1111*  Copyright 2004-2005 Maui High Performance Computing Center, University of Hawaii
     
    888888        psF64 dblItem = psMetadataLookupF64(NULL, rowData, "MYDBL");
    889889        psBool boolItem = psMetadataLookupBool(NULL, rowData, "MYBOOL");
     890        psString strItem = psMetadataLookupStr(NULL, rowData, "MYSTR");
    890891
    891892        if (intItem != row) {
     
    915916                    row, boolItem, ((row&0x01) == 0));
    916917            return 23;
     918        }
     919
     920        char strValue[16];
     921        snprintf(strValue,16,"row=%d",row+1);
     922        if ( strncmp(strItem,strValue,strlen(strValue)) != 0) {
     923            psError(PS_ERR_UNKNOWN, true,
     924                    "Failed to retrieve psString metadata item from file (row=%d). Got '%s' vs '%s'",
     925                    row, strItem, strValue);
     926            return 24;
    917927        }
    918928    }
     
    10531063    psArray* colData;
    10541064    char* colname[4] = {"MYINT","MYFLT","MYDBL","MYBOOL"};
    1055     psF64 expectedValues[4][10] = {
     1065    psF64 expectedValues[3][10] = {
    10561066                                      {0,1,2,3,4,5,6,7,8,9},
    10571067                                      {1.0,1.0/2.0,1.0/3.0,1.0/4.0,1.0/5.0,1.0/6.0,1.0/7.0,1.0/8.0,1.0/9.0},
    1058                                       {1.0,1.0/2.0,1.0/3.0,1.0/4.0,1.0/5.0,1.0/6.0,1.0/7.0,1.0/8.0,1.0/9.0},
    1059                                       {1.0,0.0,1.0,0.0,1.0,0.0,1.0,0.0,1.0,0.0}
     1068                                      {1.0,1.0/2.0,1.0/3.0,1.0/4.0,1.0/5.0,1.0/6.0,1.0/7.0,1.0/8.0,1.0/9.0}
    10601069                                  };
     1070    char* expectedBoolValues[10] = {"T","F","T","F","T","F","T","F","T","F"};
     1071    char* expectedStrValues[10] = {"row=1","row=2","row=3","row=4","row=5","row=6","row=7","row=8","row=9","row=10"};
    10611072
    10621073    for (int col = 0; col < 4; col++) {
     
    10831094                }
    10841095            }
    1085         }
     1096        } else if (col == 3) {
     1097            for (int row = 0; row < tableNumRows; row++) {
     1098                if (strncmp(colData->data[row],expectedBoolValues[row],
     1099                            strlen(expectedBoolValues[row])) != 0) {
     1100                    psError(PS_ERR_UNKNOWN, false,
     1101                            "psFitsReadTableColumn returned unexpected values ('%s' vs '%s') for col=%d",
     1102                            (char*)colData->data[row], expectedBoolValues[row], col);
     1103                    return 5;
     1104                }
     1105            }
     1106        } else if (col == 4) {
     1107            for (int row = 0; row < tableNumRows; row++) {
     1108                if (strncmp(colData->data[row],expectedStrValues[row],
     1109                            strlen(expectedStrValues[row])) != 0) {
     1110                    psError(PS_ERR_UNKNOWN, false,
     1111                            "psFitsReadTableColumn returned unexpected values ('%s' vs '%s') for col=%d",
     1112                            (char*)colData->data[row], expectedStrValues[row], col);
     1113                    return 5;
     1114                }
     1115            }
     1116        }
     1117
    10861118        psFree(colData);
    10871119    }
Note: See TracChangeset for help on using the changeset viewer.