IPP Software Navigation Tools IPP Links Communication Pan-STARRS Links

Ignore:
Timestamp:
Oct 23, 2006, 3:15:47 PM (20 years ago)
Author:
drobbin
Message:

Edited psMetadataCopy and relevant tests. Removed the psFree(out)'s as requested. Minor doxygen changes to the psMetadataConfig's.

File:
1 edited

Legend:

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

    r8995 r9720  
    2323int main(void)
    2424{
    25     plan_tests(35);
     25    plan_tests(34);
    2626
    2727    diag("psMetadataCopy and psMetadataItemCopy tests");
     
    4242    psMetadataItem *outItem = NULL;
    4343    psMetadataItem *inItem = NULL;
     44    psMetadata *outTest = NULL;
    4445
    4546    //Return NULL for NULL psMetadata input
    4647    {
    47         ok( psMetadataCopy(out, NULL) == NULL,
     48        outTest = psMetadataCopy(out, NULL);
     49        ok( outTest == NULL,
    4850            "psMetadataCopy:  return NULL for NULL input metadata.");
    4951    }
    50     //Return NULL for NULL psMetadata input (with allocated out)
     52    //Return allocated out for NULL psMetadata input (with allocated out)
    5153    {
    5254        out = psMetadataAlloc();
    53         out = psMetadataCopy(out, NULL);
    54         ok( out == NULL,
    55             "psMetadataCopy:  return NULL for NULL input metadata.");
     55        outTest = psMetadataCopy(out, NULL);
     56        ok( outTest == NULL,
     57            "psMetadataCopy:  return out for NULL input metadata.");
     58        psFree(out);
     59        out = NULL;
    5660    }
    5761    //Return NULL for attempt to copy item of unsupported data type
     
    6064        psMetadataAddS32(in, PS_LIST_HEAD, "S32", 0, "", 1);
    6165        psMetadataItem *notype = psMetadataGet(in, PS_LIST_HEAD);
    62         notype->type = PS_DATA_METADATA_MULTI + 1000;
    63         out = psMetadataCopy(out, in);
    64         ok( out == NULL,
     66        //        notype->type = PS_DATA_METADATA_MULTI + 1000;
     67        notype->type = -1;
     68        psFree(outTest);
     69        outTest = NULL;
     70        outTest = psMetadataCopy(out, in);
     71        ok( outTest == NULL,
    6572            "psMetadataCopy:  return NULL for metadata with item of bad type.");
    6673        notype->type = PS_DATA_S32;
    6774        psFree(in);
    6875        in = NULL;
    69         if (out != NULL)
    70         {
    71             psFree(out);
    72             out = NULL;
    73         }
     76        psFree(out);
     77        out = NULL;
    7478    }
    7579
     
    8185    }
    8286    {
    83         ok( psMetadataCopy(out, in) == NULL,
     87        outTest = psMetadataCopy(out, in);
     88        ok( outTest == NULL,
    8489            "psMetadataCopy:  return NULL for NULL metadata input->list.");
    8590    }
    86     //Return NULL for NULL psMetadata input->list (with allocated out)
    87     {
    88         out = psMetadataAlloc();
    89         out = psMetadataCopy(out, in);
    90         ok( out == NULL,
    91             "psMetadataCopy:  return NULL for NULL metadata input->list.");
    92     }
     91    /*    //Return NULL for NULL psMetadata input->list (with allocated out)
     92        {
     93            out = psMetadataAlloc();
     94            out = psMetadataCopy(out, in);
     95            ok( out == NULL,
     96                "psMetadataCopy:  return NULL for NULL metadata input->list.");
     97        }
     98    */
    9399    //Return valid (but empty) metadata for NULL out input and empty input metadata.
    94100    in->list = psListAlloc(NULL);
    95101    psFree(in);
    96102    in = psMetadataAlloc();
    97     out = psMetadataCopy(out, in);
     103    if (out != NULL) {
     104        psFree(out);
     105        out = NULL;
     106    }
     107    outTest = psMetadataCopy(out, in);
    98108    tempItem = psMetadataGet(in, PS_LIST_HEAD);
    99109    {
    100         ok( out != NULL && tempItem == NULL,
     110        ok( outTest != NULL && tempItem == NULL,
    101111            "psMetadataCopy:  return empty copy with no items for empty input metadata.");
     112        psFree(out);
     113        psFree(outTest);
     114        out = NULL;
     115        outTest = NULL;
    102116    }
    103117
     
    105119    psMetadataAddS32(in, PS_LIST_HEAD, "S32", 0, "", 1);
    106120    psMetadataAddS32(in, PS_LIST_TAIL, "S32", PS_META_DUPLICATE_OK, "", 1);
    107     out = psMetadataCopy(out, in);
    108     tempItem = psMetadataGet(out, PS_LIST_HEAD);
     121    outTest = psMetadataCopy(out, in);
     122    tempItem = psMetadataGet(outTest, PS_LIST_HEAD);
    109123    {
    110124        ok( tempItem->type == PS_DATA_S32 && tempItem->data.S32 == 1,
    111125            "psMetadataCopy:  return valid copy for a PS_DATA_METADATA_MULTI entry.");
     126        psFree(outTest);
     127        outTest = NULL;
    112128    }
    113129
     
    121137    in = psMetadataAlloc();
    122138    psMetadataAddS32(in, PS_LIST_HEAD, "S32", 0, "", 666);
    123     out = psMetadataCopy(out, in);
    124     outItem = psMetadataGet(out, PS_LIST_HEAD);
     139    outTest = psMetadataCopy(out, in);
     140    outItem = psMetadataGet(outTest, PS_LIST_HEAD);
    125141    inItem = psMetadataGet(in, PS_LIST_HEAD);
    126142    {
     
    129145            "psMetadataCopy:  return valid copy of metadata with 1 S32 entry.");
    130146    }
     147    psFree(outTest);
    131148    //Check for Memory Leaks
    132149    {
Note: See TracChangeset for help on using the changeset viewer.