#include #include #include "test.h" START_TEST(test_attribute) { int count = 0;; int c = 0; guththila_attribute_t *att; red = guththila_reader_create_for_file(env, "resources/om/evaluate.xml"); parser = guththila_create(env, red); guththila_read(env, parser); c = guththila_next(env, parser); while (!count) { c = guththila_next(env, parser); count = guththila_get_attribute_count(env, parser); if (count) att = guththila_get_attribute(env, parser); } fail_if(count == 0, "guththila attribute count failed"); fail_unless(!strcmp (guththila_get_attribute_name(env, parser, att), "color"), "guththila attribute name failed"); fail_unless(!strcmp (guththila_get_attribute_value(env, parser, att), "brown"), "guththila attribute value failed"); } END_TEST START_TEST( test_attribute_prefix) { int count = 0; ; int c = 0; guththila_attribute_t *att; red = guththila_reader_create_for_file(env, "resources/soap/soapmessage.xml"); parser = guththila_create(env, red); guththila_read(env, parser); c = guththila_next(env, parser); while(!count) { c = guththila_next(env, parser); count = guththila_get_attribute_count(env, parser); if(count) att = guththila_get_attribute(env, parser); } fail_if(count == 0, "guththila attribute count failed"); fail_unless(!strcmp(guththila_get_attribute_prefix(env, parser, att), "soapenv"), "guththila attribute count failed"); fail_unless(!strcmp(guththila_get_attribute_name(env, parser, att), "mustUnderstand"), "guththila attribute count failed"); fail_unless(!strcmp(guththila_get_attribute_value(env, parser, att), "0"), "guththila attribute count failed"); count = 0; while(!count) { c = guththila_next(env, parser); count = guththila_get_attribute_count(env, parser); if(count) att = guththila_get_attribute(env, parser); } fail_unless(!strcmp(guththila_get_attribute_prefix(env, parser, att), "soapenv"), "guththila attribute count failed"); fail_unless(!strcmp(guththila_get_attribute_name(env, parser, att), "mustUnderstand"), "guththila attribute count failed"); fail_if(!strcmp(guththila_get_attribute_value(env, parser, att), "1"), "guththila attribute count failed"); } END_TEST Suite * guththila_attribute_suite( void) { Suite *s = suite_create("Guththila_attribute"); /* Core test case */ TCase *tc_core = tcase_create("attribute"); tcase_add_checked_fixture(tc_core, setup, teardown); tcase_add_test(tc_core, test_attribute); tcase_add_test(tc_core, test_attribute_prefix); suite_add_tcase(s, tc_core); return s; }