OSDN Git Service

* Added test code of the <li> tag for SoftBank HTML converter.
authorkonn <konn@1a406e8e-add9-4483-a2c8-d8cac5b7c224>
Fri, 18 Apr 2008 10:51:20 +0000 (10:51 +0000)
committerkonn <konn@1a406e8e-add9-4483-a2c8-d8cac5b7c224>
Fri, 18 Apr 2008 10:51:20 +0000 (10:51 +0000)
git-svn-id: svn+ssh://svn.sourceforge.jp/svnroot/modchxj/mod_chxj/branches/RELEASE_0_11_0@2374 1a406e8e-add9-4483-a2c8-d8cac5b7c224

src/chxj_jhtml.c
test/chxj_jhtml/test_chxj_jhtml.c

index 9b7efcc..52ff70a 100644 (file)
@@ -21,6 +21,7 @@
 #include "chxj_qr_code.h"
 #include "chxj_encoding.h"
 #include "chxj_url_encode.h"
+#include "chxj_str_util.h"
 
 
 #define GET_JHTML(X) ((jhtml_t *)(X))
@@ -1596,17 +1597,38 @@ s_jhtml_end_center_tag(void *pdoc, Node *UNUSED(child))
  * @return The conversion result is returned.
  */
 static char *
-s_jhtml_start_li_tag(void *pdoc, Node *UNUSED(node)) 
+s_jhtml_start_li_tag(void *pdoc, Node *node)
 {
   jhtml_t       *jhtml;
   Doc           *doc;
   request_rec   *r;
+  Attr          *attr;
 
   jhtml = GET_JHTML(pdoc);
   doc   = jhtml->doc;
   r     = doc->r;
 
-  W_L("<li>");
+  W_L("<li");
+  /*--------------------------------------------------------------------------*/
+  /* Get Attributes                                                           */
+  /*--------------------------------------------------------------------------*/
+  for (attr = qs_get_attr(doc,node);
+       attr;
+       attr = qs_get_next_attr(doc,attr)) {
+    char *name = qs_get_attr_name(doc,attr);
+    char *value = qs_get_attr_value(doc,attr);
+    if (STRCASEEQ('t','T',"type",name) && value && (*value == '1' || *value == 'a' || *value == 'A')) {
+      W_L(" type=\"");
+      W_V(value);
+      W_L("\"");
+    }
+    else if (STRCASEEQ('v','V',"value", name) && value && *value) {
+      W_L(" value=\"");
+      W_V(value);
+      W_L("\"");
+    }
+  }
+  W_L(">");
   return jhtml->out;
 }
 
index 24370cf..a8ef16b 100644 (file)
@@ -8154,14 +8154,13 @@ void test_jhtml_input_tag_047()
 #undef TEST_STRING
 #undef RESULT_STRING
 }
-/* KONNO */
 /*============================================================================*/
 /* <LI>                                                                       */
 /*============================================================================*/
 void test_jhtml_li_tag_001() 
 {
 #define  TEST_STRING "<li></li>"
-#define  RESULT_STRING "<li>"
+#define  RESULT_STRING "<li></li>"
   char  *ret;
   char  *tmp;
   device_table spec;
@@ -8178,6 +8177,8 @@ void test_jhtml_li_tag_001()
   tmp = chxj_encoding(&r, TEST_STRING, &destlen);
   ret = chxj_exchange_jhtml(&r, &spec, tmp, destlen, &destlen, &entry, &cookie);
   ret = chxj_rencoding(&r, ret, &destlen);
+  fprintf(stderr, "actual:[%s]\n", ret);
+  fprintf(stderr, "expect:[%s]\n", RESULT_STRING);
   CU_ASSERT(ret != NULL);
   CU_ASSERT(strcmp(RESULT_STRING, ret) == 0);
   CU_ASSERT(destlen == sizeof(RESULT_STRING)-1);
@@ -8189,7 +8190,7 @@ void test_jhtml_li_tag_001()
 void test_jhtml_li_tag_002() 
 {
 #define  TEST_STRING "<li>abc</li>"
-#define  RESULT_STRING "<li>abc"
+#define  RESULT_STRING "<li>abc</li>"
   char  *ret;
   char  *tmp;
   device_table spec;
@@ -8206,6 +8207,8 @@ void test_jhtml_li_tag_002()
   tmp = chxj_encoding(&r, TEST_STRING, &destlen);
   ret = chxj_exchange_jhtml(&r, &spec, tmp, destlen, &destlen, &entry, &cookie);
   ret = chxj_rencoding(&r, ret, &destlen);
+  fprintf(stderr, "actual:[%s]\n", ret);
+  fprintf(stderr, "expect:[%s]\n", RESULT_STRING);
   CU_ASSERT(ret != NULL);
   CU_ASSERT(strcmp(RESULT_STRING, ret) == 0);
   CU_ASSERT(destlen == sizeof(RESULT_STRING)-1);
@@ -8217,7 +8220,7 @@ void test_jhtml_li_tag_002()
 void test_jhtml_li_tag_003() 
 {
 #define  TEST_STRING "<li>あいうえお</li>"
-#define  RESULT_STRING "<li>あいうえお"
+#define  RESULT_STRING "<li>あいうえお</li>"
   char  *ret;
   char  *tmp;
   device_table spec;
@@ -8234,6 +8237,8 @@ void test_jhtml_li_tag_003()
   tmp = chxj_encoding(&r, TEST_STRING, &destlen);
   ret = chxj_exchange_jhtml(&r, &spec, tmp, destlen, &destlen, &entry, &cookie);
   ret = chxj_rencoding(&r, ret, &destlen);
+  fprintf(stderr, "actual:[%s]\n", ret);
+  fprintf(stderr, "expect:[%s]\n", RESULT_STRING);
   CU_ASSERT(ret != NULL);
   CU_ASSERT(strcmp(RESULT_STRING, ret) == 0);
   CU_ASSERT(destlen == sizeof(RESULT_STRING)-1);
@@ -8245,7 +8250,7 @@ void test_jhtml_li_tag_003()
 void test_jhtml_li_tag_004() 
 {
 #define  TEST_STRING "<li>ハンカク</li>"
-#define  RESULT_STRING "<li>ハンカク"
+#define  RESULT_STRING "<li>ハンカク</li>"
   char  *ret;
   char  *tmp;
   device_table spec;
@@ -8262,6 +8267,8 @@ void test_jhtml_li_tag_004()
   tmp = chxj_encoding(&r, TEST_STRING, &destlen);
   ret = chxj_exchange_jhtml(&r, &spec, tmp, destlen, &destlen, &entry, &cookie);
   ret = chxj_rencoding(&r, ret, &destlen);
+  fprintf(stderr, "actual:[%s]\n", ret);
+  fprintf(stderr, "expect:[%s]\n", RESULT_STRING);
   CU_ASSERT(ret != NULL);
   CU_ASSERT(strcmp(RESULT_STRING, ret) == 0);
   CU_ASSERT(destlen == sizeof(RESULT_STRING)-1);
@@ -8273,7 +8280,7 @@ void test_jhtml_li_tag_004()
 void test_jhtml_li_tag_005() 
 {
 #define  TEST_STRING "<li type>ハンカク</li>"
-#define  RESULT_STRING "<li>ハンカク"
+#define  RESULT_STRING "<li>ハンカク</li>"
   char  *ret;
   char  *tmp;
   device_table spec;
@@ -8290,6 +8297,8 @@ void test_jhtml_li_tag_005()
   tmp = chxj_encoding(&r, TEST_STRING, &destlen);
   ret = chxj_exchange_jhtml(&r, &spec, tmp, destlen, &destlen, &entry, &cookie);
   ret = chxj_rencoding(&r, ret, &destlen);
+  fprintf(stderr, "actual:[%s]\n", ret);
+  fprintf(stderr, "expect:[%s]\n", RESULT_STRING);
   CU_ASSERT(ret != NULL);
   CU_ASSERT(strcmp(RESULT_STRING, ret) == 0);
   CU_ASSERT(destlen == sizeof(RESULT_STRING)-1);
@@ -8301,7 +8310,7 @@ void test_jhtml_li_tag_005()
 void test_jhtml_li_tag_006() 
 {
 #define  TEST_STRING "<li type=\"\">ハンカク</li>"
-#define  RESULT_STRING "<li>ハンカク"
+#define  RESULT_STRING "<li>ハンカク</li>"
   char  *ret;
   char  *tmp;
   device_table spec;
@@ -8318,6 +8327,8 @@ void test_jhtml_li_tag_006()
   tmp = chxj_encoding(&r, TEST_STRING, &destlen);
   ret = chxj_exchange_jhtml(&r, &spec, tmp, destlen, &destlen, &entry, &cookie);
   ret = chxj_rencoding(&r, ret, &destlen);
+  fprintf(stderr, "actual:[%s]\n", ret);
+  fprintf(stderr, "expect:[%s]\n", RESULT_STRING);
   CU_ASSERT(ret != NULL);
   CU_ASSERT(strcmp(RESULT_STRING, ret) == 0);
   CU_ASSERT(destlen == sizeof(RESULT_STRING)-1);
@@ -8329,7 +8340,7 @@ void test_jhtml_li_tag_006()
 void test_jhtml_li_tag_007() 
 {
 #define  TEST_STRING "<li type=\"\">ハンカク</li>"
-#define  RESULT_STRING "<li>ハンカク"
+#define  RESULT_STRING "<li>ハンカク</li>"
   char  *ret;
   char  *tmp;
   device_table spec;
@@ -8346,6 +8357,8 @@ void test_jhtml_li_tag_007()
   tmp = chxj_encoding(&r, TEST_STRING, &destlen);
   ret = chxj_exchange_jhtml(&r, &spec, tmp, destlen, &destlen, &entry, &cookie);
   ret = chxj_rencoding(&r, ret, &destlen);
+  fprintf(stderr, "actual:[%s]\n", ret);
+  fprintf(stderr, "expect:[%s]\n", RESULT_STRING);
   CU_ASSERT(ret != NULL);
   CU_ASSERT(strcmp(RESULT_STRING, ret) == 0);
   CU_ASSERT(destlen == sizeof(RESULT_STRING)-1);
@@ -8357,7 +8370,7 @@ void test_jhtml_li_tag_007()
 void test_jhtml_li_tag_008() 
 {
 #define  TEST_STRING "<li type=\"1\">ハンカク</li>"
-#define  RESULT_STRING "<li type=\"1\">ハンカク"
+#define  RESULT_STRING "<li type=\"1\">ハンカク</li>"
   char  *ret;
   char  *tmp;
   device_table spec;
@@ -8374,6 +8387,8 @@ void test_jhtml_li_tag_008()
   tmp = chxj_encoding(&r, TEST_STRING, &destlen);
   ret = chxj_exchange_jhtml(&r, &spec, tmp, destlen, &destlen, &entry, &cookie);
   ret = chxj_rencoding(&r, ret, &destlen);
+  fprintf(stderr, "actual:[%s]\n", ret);
+  fprintf(stderr, "expect:[%s]\n", RESULT_STRING);
   CU_ASSERT(ret != NULL);
   CU_ASSERT(strcmp(RESULT_STRING, ret) == 0);
   CU_ASSERT(destlen == sizeof(RESULT_STRING)-1);
@@ -8385,7 +8400,7 @@ void test_jhtml_li_tag_008()
 void test_jhtml_li_tag_009() 
 {
 #define  TEST_STRING "<li type=\"a\">ハンカク</li>"
-#define  RESULT_STRING "<li type=\"a\">ハンカク"
+#define  RESULT_STRING "<li type=\"a\">ハンカク</li>"
   char  *ret;
   char  *tmp;
   device_table spec;
@@ -8402,6 +8417,8 @@ void test_jhtml_li_tag_009()
   tmp = chxj_encoding(&r, TEST_STRING, &destlen);
   ret = chxj_exchange_jhtml(&r, &spec, tmp, destlen, &destlen, &entry, &cookie);
   ret = chxj_rencoding(&r, ret, &destlen);
+  fprintf(stderr, "actual:[%s]\n", ret);
+  fprintf(stderr, "expect:[%s]\n", RESULT_STRING);
   CU_ASSERT(ret != NULL);
   CU_ASSERT(strcmp(RESULT_STRING, ret) == 0);
   CU_ASSERT(destlen == sizeof(RESULT_STRING)-1);
@@ -8413,7 +8430,7 @@ void test_jhtml_li_tag_009()
 void test_jhtml_li_tag_010() 
 {
 #define  TEST_STRING "<li type=\"A\">ハンカク</li>"
-#define  RESULT_STRING "<li type=\"A\">ハンカク"
+#define  RESULT_STRING "<li type=\"A\">ハンカク</li>"
   char  *ret;
   char  *tmp;
   device_table spec;
@@ -8430,6 +8447,8 @@ void test_jhtml_li_tag_010()
   tmp = chxj_encoding(&r, TEST_STRING, &destlen);
   ret = chxj_exchange_jhtml(&r, &spec, tmp, destlen, &destlen, &entry, &cookie);
   ret = chxj_rencoding(&r, ret, &destlen);
+  fprintf(stderr, "actual:[%s]\n", ret);
+  fprintf(stderr, "expect:[%s]\n", RESULT_STRING);
   CU_ASSERT(ret != NULL);
   CU_ASSERT(strcmp(RESULT_STRING, ret) == 0);
   CU_ASSERT(destlen == sizeof(RESULT_STRING)-1);
@@ -8441,7 +8460,7 @@ void test_jhtml_li_tag_010()
 void test_jhtml_li_tag_011() 
 {
 #define  TEST_STRING "<li value>ハンカク</li>"
-#define  RESULT_STRING "<li>ハンカク"
+#define  RESULT_STRING "<li>ハンカク</li>"
   char  *ret;
   char  *tmp;
   device_table spec;
@@ -8458,6 +8477,8 @@ void test_jhtml_li_tag_011()
   tmp = chxj_encoding(&r, TEST_STRING, &destlen);
   ret = chxj_exchange_jhtml(&r, &spec, tmp, destlen, &destlen, &entry, &cookie);
   ret = chxj_rencoding(&r, ret, &destlen);
+  fprintf(stderr, "actual:[%s]\n", ret);
+  fprintf(stderr, "expect:[%s]\n", RESULT_STRING);
   CU_ASSERT(ret != NULL);
   CU_ASSERT(strcmp(RESULT_STRING, ret) == 0);
   CU_ASSERT(destlen == sizeof(RESULT_STRING)-1);
@@ -8469,7 +8490,7 @@ void test_jhtml_li_tag_011()
 void test_jhtml_li_tag_012() 
 {
 #define  TEST_STRING "<li value=\"\">ハンカク</li>"
-#define  RESULT_STRING "<li>ハンカク"
+#define  RESULT_STRING "<li>ハンカク</li>"
   char  *ret;
   char  *tmp;
   device_table spec;
@@ -8486,6 +8507,8 @@ void test_jhtml_li_tag_012()
   tmp = chxj_encoding(&r, TEST_STRING, &destlen);
   ret = chxj_exchange_jhtml(&r, &spec, tmp, destlen, &destlen, &entry, &cookie);
   ret = chxj_rencoding(&r, ret, &destlen);
+  fprintf(stderr, "actual:[%s]\n", ret);
+  fprintf(stderr, "expect:[%s]\n", RESULT_STRING);
   CU_ASSERT(ret != NULL);
   CU_ASSERT(strcmp(RESULT_STRING, ret) == 0);
   CU_ASSERT(destlen == sizeof(RESULT_STRING)-1);
@@ -8497,7 +8520,7 @@ void test_jhtml_li_tag_012()
 void test_jhtml_li_tag_013() 
 {
 #define  TEST_STRING "<li value=\"1\">ハンカク</li>"
-#define  RESULT_STRING "<li value=\"1\">ハンカク"
+#define  RESULT_STRING "<li value=\"1\">ハンカク</li>"
   char  *ret;
   char  *tmp;
   device_table spec;
@@ -8514,6 +8537,8 @@ void test_jhtml_li_tag_013()
   tmp = chxj_encoding(&r, TEST_STRING, &destlen);
   ret = chxj_exchange_jhtml(&r, &spec, tmp, destlen, &destlen, &entry, &cookie);
   ret = chxj_rencoding(&r, ret, &destlen);
+  fprintf(stderr, "actual:[%s]\n", ret);
+  fprintf(stderr, "expect:[%s]\n", RESULT_STRING);
   CU_ASSERT(ret != NULL);
   CU_ASSERT(strcmp(RESULT_STRING, ret) == 0);
   CU_ASSERT(destlen == sizeof(RESULT_STRING)-1);
@@ -8522,6 +8547,7 @@ void test_jhtml_li_tag_013()
 #undef TEST_STRING
 #undef RESULT_STRING
 }
+/* KONNO */
 /*============================================================================*/
 /* <MENU>                                                                     */
 /*============================================================================*/