#ifndef pet_TEST #define pet_TEST // the following is to include only the main from the first c file #ifndef TEST_MAIN #define TEST_MAIN #define pet_MAIN #endif // TEST_MAIN #include #include #include #include #include "../external/cJSON.h" #include "../model/pet.h" pet_t* instantiate_pet(int include_optional); #include "test_category.c" pet_t* instantiate_pet(int include_optional) { pet_t* pet = NULL; if (include_optional) { pet = pet_create( 56, // false, not to have infinite recursion instantiate_category(0), "doggie", list_createList(), list_createList(), openapi_petstore_pet_STATUS_available ); } else { pet = pet_create( 56, NULL, "doggie", list_createList(), list_createList(), openapi_petstore_pet_STATUS_available ); } return pet; } #ifdef pet_MAIN void test_pet(int include_optional) { pet_t* pet_1 = instantiate_pet(include_optional); cJSON* jsonpet_1 = pet_convertToJSON(pet_1); printf("pet :\n%s\n", cJSON_Print(jsonpet_1)); pet_t* pet_2 = pet_parseFromJSON(jsonpet_1); cJSON* jsonpet_2 = pet_convertToJSON(pet_2); printf("repeating pet:\n%s\n", cJSON_Print(jsonpet_2)); } int main() { test_pet(1); test_pet(0); printf("Hello world \n"); return 0; } #endif // pet_MAIN #endif // pet_TEST