IPP Software Navigation Tools IPP Links Communication Pan-STARRS Links

Changeset 4855


Ignore:
Timestamp:
Aug 22, 2005, 4:39:29 PM (21 years ago)
Author:
drobbin
Message:

Created tests for psMetadataIterator functions (ie. Set, Get, Alloc)

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/psLib/test/types/tst_psMetadata_07.c

    r4790 r4855  
    11/** @file  tst_psMetadata_07.c
    22*
    3 *  @brief Test driver for psMetadataIO functions
     3*  @brief Test driver for psMetadataIterator functions
    44*
    55*  This test driver contains the following tests for psMetadata:
    6 *     Test A - Read an XML config file
    7 *     Test B - Free data
     6*     Test A - Allocate a psMetadataIterator
     7*     Test B - Set a psMetadataIterator
     8*     Test C - Get and Increment a psMetadataIterator
     9*     Test D - Get and Decrement a psMetadataIterator
    810*
    9 *  @author  Ross Harman, MHPCC
     11*  @author  David Robbins, MHPCC
    1012*
    11 *  @version $Revision: 1.2 $  $Name: not supported by cvs2svn $
    12 *  @date  $Date: 2005-08-16 21:11:08 $
     13*  @version $Revision: 1.3 $  $Name: not supported by cvs2svn $
     14*  @date  $Date: 2005-08-23 02:39:29 $
    1315*
    1416*  Copyright 2004-2005 Maui High Performance Computing Center, University of Hawaii
     
    1820#include "pslib_strict.h"
    1921#include "psTest.h"
     22#include "psMetadata.h"
     23
     24static psS32 testMetaIter00(void);
     25
     26testDescription tests[] = {
     27                              {testMetaIter00, 0, "Test psMetadataIterator fxns", 0, false},
     28                              {NULL}
     29                          };
     30
     31static psMetadata *setupMeta(void);
     32
     33static psMetadata *setupMeta(void)
     34{
     35    psMetadata *md = NULL;
     36    md = psMetadataAlloc();
     37
     38    psMetadataAddBool(md, PS_LIST_TAIL, "item1", "I am a boolean", true);
     39    psMetadataAddS32(md, PS_LIST_TAIL, "item2", "I am a integer", 55);
     40    psMetadataAddF32(md, PS_LIST_TAIL, "item3", "I am a float", 3.14);
     41    psMetadataAddF64(md, PS_LIST_TAIL, "item4", "I am a double", 6.28);
     42    psMetadataAddStr(md, PS_LIST_TAIL, "item5", "I am a string", "GNIRTS");
     43
     44    return md;
     45}
    2046
    2147int main(int argc, char* argv[])
    2248{
     49
     50    psLogSetLevel( PS_LOG_INFO );
     51
     52    if( !runTestSuite(stderr,"psMetadata_07",tests,argc,argv)) {
     53        return 1;
     54    }
     55
     56
    2357    // Test A - Read an XML config file
    24     printPositiveTestHeader(stdout, "psMetadata", "Test A - Read an XML config file");
     58    //    printPositiveTestHeader(stdout, "psMetadata", "Test A - Read an XML config file");
    2559    /*
    2660        int res = 0;
     
    3165            printf("psMetadataConfigParseXml returned error %d\n", res);
    3266        }
    33      
     67
    3468        psFree(md);
    3569    */
    36     printFooter(stdout, "psMetadata", "Test A - Read an XML config file", true);
     70    //    printFooter(stdout, "psMetadata", "Test A - Read an XML config file", true);
    3771    /*
    3872        // Test B - Free data
     
    4781    return 0;
    4882}
     83
     84//Set a psMetadataIterator //
     85static psS32 testMetaIter00(void)
     86{
     87    psMetadata *metadata = NULL;
     88    metadata = setupMeta();
     89    psMetadataIterator *iter = NULL;
     90    psMetadataItem *item1 = NULL;
     91    psMetadataItem *item2 = NULL;
     92    psMetadataItem *item3 = NULL;
     93    iter = psMetadataIteratorAlloc(metadata, PS_LIST_HEAD, NULL);
     94    if (iter == NULL) {
     95        fprintf(stderr, "Failed test point - Allocate a psMetadataIterator.  Iterator NULL. \n");
     96    }
     97    psMetadataIteratorSet(iter, 2);
     98    item1 = psMetadataGetAndIncrement(iter);
     99    if ( !strncmp(item1->name, "item2", 20) ) {
     100        fprintf(stderr, "Failed test point - IteratorSet - Item names don't match. \n");
     101    }
     102    item2 = psMetadataGetAndDecrement(iter);
     103    if ( !strncmp(item2->name, "item3", 20) ) {
     104        fprintf(stderr, "Failed test point - GetAndIncrement - Item names don't match. \n");
     105    }
     106    item3 = psMetadataGetAndDecrement(iter);
     107    if ( !strncmp(item3->name, "item2", 20) ) {
     108        fprintf(stderr, "Failed test point - GetAndDecrement - Item names don't match. \n");
     109    }
     110    //    psFree(item1);
     111    //    psFree(item2);
     112    //    psFree(item3);
     113    psFree(iter);
     114    psFree(metadata);
     115    return 0;
     116}
Note: See TracChangeset for help on using the changeset viewer.