Ignore:
Timestamp:
Nov 7, 2007, 8:05:41 PM (18 years ago)
Author:
cinc
Message:

Added test for instance vars in subclass

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/tests/c/test-nom.c

    r315 r322  
    5252#include "nomtk.h"
    5353#include "nomgc.h"
     54
    5455#include "aclass.h"
    55 
    56 #define ULONG_TESTVALUE_1  0xffeeddcc
    57 #define ULONG_TESTVALUE_2  0x55aa1122
     56#include "bclass.h"
     57
     58#define ULONG_TESTVALUE_1         0xffeeddcc
     59#define ULONG_TESTVALUE_2         0x55aa1122
     60#define ULONG_TESTVALUE_BCLASS_1  0x50403020
     61#define ULONG_TESTVALUE_BCLASS_2  0xf0e0d0c0
    5862
    5963AClass*  createAClassObject()
     
    7074}
    7175
     76AClass*  createBClassObject()
     77{
     78  BClass*  bClass;
     79 
     80  bClass=BClassNew();
     81 
     82  if(nomIsObj(bClass))
     83    g_message("BClass creation\t\t\t\tOK\n");
     84  else
     85    g_message("BClass creation\t\t\t\t\tFAILED\n");
     86  return bClass;
     87}
     88
     89void tstAClassInstanceVarInitValues(AClass * aObject)
     90{
     91  ULONG ulRC;
     92
     93  g_message("================================================================");
     94  g_message("===== Testing init values of instance variables. Must be 0 =====");
     95  g_message("================================================================");
     96 
     97  ulRC=_tstQueryUlongVar1(aObject, NULLHANDLE);
     98  g_message("Calling tstQueryUlongVar1():\t%ld\t\t%s", ulRC, (0!=ulRC ? "FAILED" : "OK"));
     99  g_assert(0==ulRC);
     100 
     101  ulRC=_tstQueryUlongVar2(aObject, NULLHANDLE);
     102  g_message("Calling tstQueryUlongVar2():\t%ld\t\t%s\n", ulRC, (0!=ulRC ? "FAILED" : "OK"));
     103  g_assert(0==ulRC);
     104}
     105
     106
     107void tstBClassInstanceVarInitValues(BClass * aObject)
     108{
     109  ULONG ulRC;
     110
     111  g_message("================================================================");
     112  g_message("===== Testing init values of instance variables. Must be 0 =====");
     113  g_message("================================================================");
     114 
     115  ulRC=_tstQueryBClassUlongVar1(aObject, NULLHANDLE);
     116  g_message("Calling tstQueryBClassUlongVar1():\t%ld\t\t%s", ulRC, (0!=ulRC ? "FAILED" : "OK"));
     117  g_assert(0==ulRC);
     118 
     119  ulRC=_tstQueryBClassUlongVar2(aObject, NULLHANDLE);
     120  g_message("Calling tstQueryBClassUlongVar2():\t%ld\t\t%s\n", ulRC, (0!=ulRC ? "FAILED" : "OK"));
     121  g_assert(0==ulRC);
     122}
     123
     124
     125void tstSetAClassInstanceVar(AClass * aObject)
     126{
     127  ULONG ulRC;
     128
     129  g_message("========================================================");
     130  g_message("===== Testing setting of AClass instance variables =====");
     131  g_message("========================================================");
     132  /* Set 1. value */
     133  _tstSetUlongVar1(aObject, ULONG_TESTVALUE_1, NULLHANDLE);
     134  ulRC=_tstQueryUlongVar1(aObject, NULLHANDLE);
     135  g_message("Calling tstQueryUlongVar1():\t0x%lx\t\t%s", ulRC, (ULONG_TESTVALUE_1!=ulRC ? "FAILED" : "OK"));
     136  g_assert(ULONG_TESTVALUE_1==ulRC);
     137
     138  ulRC=_tstQueryUlongVar2(aObject, NULLHANDLE);
     139  g_message("Calling tstQueryUlongVar2():\t0x%lx\t\t\t%s\n", ulRC, (0!=ulRC ? "FAILED" : "OK"));
     140  g_assert(0==ulRC);
     141
     142  /* Set 2. value */
     143  _tstSetUlongVar2(aObject, ULONG_TESTVALUE_2, NULLHANDLE);
     144  ulRC=_tstQueryUlongVar1(aObject, NULLHANDLE);
     145  g_message("Calling tstQueryUlongVar1():\t0x%lx\t\t%s", ulRC, (ULONG_TESTVALUE_1!=ulRC ? "FAILED" : "OK"));
     146  g_assert(ULONG_TESTVALUE_1==ulRC);
     147
     148  ulRC=_tstQueryUlongVar2(aObject, NULLHANDLE);
     149  g_message("Calling tstQueryUlongVar2():\t0x%lx\t\t%s\n\n", ulRC, (ULONG_TESTVALUE_2!=ulRC ? "FAILED" : "OK"));
     150  g_assert(ULONG_TESTVALUE_2==ulRC);
     151}
     152
     153void tstSetBClassInstanceVar(BClass * aObject)
     154{
     155  ULONG ulRC;
     156
     157  g_message("========================================================");
     158  g_message("===== Testing setting of BClass instance variables =====");
     159  g_message("========================================================");
     160  /* Set 1. value */
     161  _tstSetBClassUlongVar1(aObject, ULONG_TESTVALUE_BCLASS_1, NULLHANDLE);
     162  ulRC=_tstQueryBClassUlongVar1(aObject, NULLHANDLE);
     163  g_message("Calling tstQueryBClassUlongVar1():\t0x%lx\t\t%s", ulRC, (ULONG_TESTVALUE_BCLASS_1!=ulRC ? "FAILED" : "OK"));
     164  g_assert(ULONG_TESTVALUE_BCLASS_1==ulRC);
     165
     166  ulRC=_tstQueryBClassUlongVar2(aObject, NULLHANDLE);
     167  g_message("Calling tstQueryBClassUlongVar2():\t0x%lx\t\t\t%s\n", ulRC, (0!=ulRC ? "FAILED" : "OK"));
     168  g_assert(0==ulRC);
     169
     170  /* Set 2. value */
     171  _tstSetBClassUlongVar2(aObject, ULONG_TESTVALUE_BCLASS_2, NULLHANDLE);
     172  ulRC=_tstQueryBClassUlongVar1(aObject, NULLHANDLE);
     173  g_message("Calling tstQueryBClassUlongVar1():\t0x%lx\t\t%s", ulRC, (ULONG_TESTVALUE_BCLASS_1!=ulRC ? "FAILED" : "OK"));
     174  g_assert(ULONG_TESTVALUE_BCLASS_1==ulRC);
     175
     176  ulRC=_tstQueryBClassUlongVar2(aObject, NULLHANDLE);
     177  g_message("Calling tstQueryBClassUlongVar2():\t0x%lx\t\t%s\n\n", ulRC, (ULONG_TESTVALUE_BCLASS_2!=ulRC ? "FAILED" : "OK"));
     178  g_assert(ULONG_TESTVALUE_BCLASS_2==ulRC);
     179}
     180
     181
    72182/**
    73183   Main entry point for the idl compiler.
     
    78188  HREGDLL hReg=NULLHANDLE;
    79189  AClass*  aObject;
    80   ULONG ulRC;
     190  BClass*  bObject;
    81191
    82192#if 0
     
    114224  NOMClassMgrObject=nomEnvironmentNew();
    115225
    116   /* Try to create an object */
     226  g_message("\n");
     227  g_message("================================================================");
     228  g_message("=====          Testing AClass, child of NOMObject          =====");
     229  g_message("================================================================");
     230  /* Try to create an AClass object */
    117231  aObject=createAClassObject();
    118232  g_assert(aObject);
    119233
    120234  /* -- Call methods on the object --- */
    121   g_message("================================================================");
    122   g_message("===== Testing init values of instance variables. Must be 0 =====");
    123   g_message("================================================================");
    124 
    125   ulRC=_tstQueryUlongVar1(aObject, NULLHANDLE);
    126   g_message("Calling tstQueryUlongVar1():\t%ld\t\t%s", ulRC, (0!=ulRC ? "FAILED" : "OK"));
    127   g_assert(0==ulRC);
    128 
    129   ulRC=_tstQueryUlongVar2(aObject, NULLHANDLE);
    130   g_message("Calling tstQueryUlongVar2():\t%ld\t\t%s\n", ulRC, (0!=ulRC ? "FAILED" : "OK"));
    131   g_assert(0==ulRC);
    132 
    133   g_message("=================================================");
    134   g_message("===== Testing setting of instance variables =====");
    135   g_message("=================================================");
    136   _tstSetUlongVar1(aObject, ULONG_TESTVALUE_1, NULLHANDLE);
    137   ulRC=_tstQueryUlongVar1(aObject, NULLHANDLE);
    138   g_message("Calling tstQueryUlongVar1():\t0x%lx\t\t%s", ulRC, (ULONG_TESTVALUE_1!=ulRC ? "FAILED" : "OK"));
    139   g_assert(ULONG_TESTVALUE_1==ulRC);
    140 
    141   ulRC=_tstQueryUlongVar2(aObject, NULLHANDLE);
    142   g_message("Calling tstQueryUlongVar2():\t0x%lx\t\t%s\n", ulRC, (0!=ulRC ? "FAILED" : "OK"));
    143   g_assert(0==ulRC);
    144 
    145   _tstSetUlongVar2(aObject, ULONG_TESTVALUE_2, NULLHANDLE);
    146   ulRC=_tstQueryUlongVar1(aObject, NULLHANDLE);
    147   g_message("Calling tstQueryUlongVar1():\t0x%lx\t\t%s", ulRC, (ULONG_TESTVALUE_1!=ulRC ? "FAILED" : "OK"));
    148   g_assert(ULONG_TESTVALUE_1==ulRC);
    149 
    150   ulRC=_tstQueryUlongVar2(aObject, NULLHANDLE);
    151   g_message("Calling tstQueryUlongVar2():\t0x%lx\t\t%s\n", ulRC, (ULONG_TESTVALUE_2!=ulRC ? "FAILED" : "OK"));
    152   g_assert(ULONG_TESTVALUE_2==ulRC);
     235  tstAClassInstanceVarInitValues(aObject);
     236  tstSetAClassInstanceVar(aObject);
     237
     238  g_message("================================================================");
     239  g_message("=====          Testing BClass, child of AClass             =====");
     240  g_message("================================================================");
     241  /* Try to create an AClass object */
     242  bObject=createBClassObject();
     243  g_assert(bObject);
     244
     245  tstAClassInstanceVarInitValues(bObject);
     246  tstBClassInstanceVarInitValues(bObject);
     247
     248  tstSetAClassInstanceVar(bObject);
     249  tstSetBClassInstanceVar(bObject);
    153250
    154251  return 0;
Note: See TracChangeset for help on using the changeset viewer.