From aaebfde960946ee21beb32e65ce9b780964ef300 Mon Sep 17 00:00:00 2001 From: konn Date: Tue, 29 Apr 2008 18:58:27 +0000 Subject: [PATCH] * Added test code of relative size specification for CHTML2.0 converter. git-svn-id: svn+ssh://svn.sourceforge.jp/svnroot/modchxj/mod_chxj/branches/RELEASE_0_12_0@2570 1a406e8e-add9-4483-a2c8-d8cac5b7c224 --- include/chxj_chtml20.h | 1 + src/chxj_chtml20.c | 20 +++++++++++------ test/chxj_chtml20/test_chxj_chtml20.c | 42 ++++++++++++++++++++++++++++++----- 3 files changed, 50 insertions(+), 13 deletions(-) diff --git a/include/chxj_chtml20.h b/include/chxj_chtml20.h index 1c8144b8..0e6c51f8 100644 --- a/include/chxj_chtml20.h +++ b/include/chxj_chtml20.h @@ -33,6 +33,7 @@ struct ctml20_t { int out_len; int pre_flag; int textarea_flag; + int font_flag; device_table *spec; mod_chxj_config *conf; diff --git a/src/chxj_chtml20.c b/src/chxj_chtml20.c index fe94442a..81569b05 100644 --- a/src/chxj_chtml20.c +++ b/src/chxj_chtml20.c @@ -1348,18 +1348,18 @@ s_chtml20_start_font_tag(void *pdoc, Node *node) Doc *doc; request_rec *r; Attr *attr; + char *color = NULL; chtml20 = GET_CHTML20(pdoc); doc = chtml20->doc; r = doc->r; - W_L("buf.pool, value); } break; @@ -1387,7 +1385,12 @@ s_chtml20_start_font_tag(void *pdoc, Node *node) break; } } - W_L(">"); + if (color) { + W_L(""); + chtml20->font_flag++; + } return chtml20->out; } @@ -1411,7 +1414,10 @@ s_chtml20_end_font_tag(void *pdoc, Node *UNUSED(child)) doc = chtml20->doc; r = doc->r; - W_L(""); + if (chtml20->font_flag) { + W_L(""); + chtml20->font_flag--; + } return chtml20->out; } diff --git a/test/chxj_chtml20/test_chxj_chtml20.c b/test/chxj_chtml20/test_chxj_chtml20.c index 52c8a373..e2629f2d 100644 --- a/test/chxj_chtml20/test_chxj_chtml20.c +++ b/test/chxj_chtml20/test_chxj_chtml20.c @@ -474,6 +474,7 @@ void test_chtml20_font_tag_004(); void test_chtml20_font_tag_005(); void test_chtml20_font_tag_006(); void test_chtml20_font_tag_007(); +void test_chtml20_font_tag_008(); /* pend */ int @@ -914,6 +915,7 @@ main() CU_add_test(chtml20_suite, "test 5." , test_chtml20_font_tag_005); CU_add_test(chtml20_suite, "test 6." , test_chtml20_font_tag_006); CU_add_test(chtml20_suite, "test 7." , test_chtml20_font_tag_007); + CU_add_test(chtml20_suite, "test 8." , test_chtml20_font_tag_008); /* aend */ CU_basic_run_tests(); @@ -12045,7 +12047,7 @@ void test_chtml20_param_tag_001() void test_chtml20_font_tag_001() { #define TEST_STRING "aaa" -#define RESULT_STRING "aaa" +#define RESULT_STRING "aaa" char *ret; char *tmp; device_table spec; @@ -12101,7 +12103,7 @@ void test_chtml20_font_tag_002() void test_chtml20_font_tag_003() { #define TEST_STRING "aaa" -#define RESULT_STRING "aaa" +#define RESULT_STRING "aaa" char *ret; char *tmp; device_table spec; @@ -12129,7 +12131,7 @@ void test_chtml20_font_tag_003() void test_chtml20_font_tag_004() { #define TEST_STRING "aaa" -#define RESULT_STRING "aaa" +#define RESULT_STRING "aaa" char *ret; char *tmp; device_table spec; @@ -12157,7 +12159,7 @@ void test_chtml20_font_tag_004() void test_chtml20_font_tag_005() { #define TEST_STRING "aaa" -#define RESULT_STRING "aaa" +#define RESULT_STRING "aaa" char *ret; char *tmp; device_table spec; @@ -12185,7 +12187,7 @@ void test_chtml20_font_tag_005() void test_chtml20_font_tag_006() { #define TEST_STRING "aaa" -#define RESULT_STRING "aaa" +#define RESULT_STRING "aaa" char *ret; char *tmp; device_table spec; @@ -12213,7 +12215,35 @@ void test_chtml20_font_tag_006() void test_chtml20_font_tag_007() { #define TEST_STRING "aaa" -#define RESULT_STRING "aaa" +#define RESULT_STRING "aaa" + char *ret; + char *tmp; + device_table spec; + chxjconvrule_entry entry; + cookie_t cookie; + apr_size_t destlen; + APR_INIT; + + COOKIE_INIT(cookie); + + SPEC_INIT(spec); + destlen = sizeof(TEST_STRING)-1; + + tmp = chxj_encoding(&r, TEST_STRING, &destlen); + ret = chxj_convert_chtml20(&r, &spec, tmp, destlen, &destlen, &entry, &cookie); + ret = chxj_rencoding(&r, ret, &destlen); + CU_ASSERT(ret != NULL); + CU_ASSERT(strcmp(RESULT_STRING, ret) == 0); + CU_ASSERT(destlen == sizeof(RESULT_STRING)-1); + + APR_TERM; +#undef TEST_STRING +#undef RESULT_STRING +} +void test_chtml20_font_tag_008() +{ +#define TEST_STRING "aaa" +#define RESULT_STRING "aaa" char *ret; char *tmp; device_table spec; -- 2.11.0