+/*===========================================================================*/
+/* qs_new_attr() */
+/*===========================================================================*/
+#if 0
+Attr *
+qs_new_attr(Doc *doc)
+{
+ Attr *attr;
+
+ if (!doc) {
+ QX_LOGGER_FATAL("runtime exception: qs_new_attr(): doc is null");
+ return NULL;
+ }
+ if (!doc->pool) {
+ QX_LOGGER_FATAL("runtime exception: qs_new_attr(): doc->pool is null");
+ return NULL;
+ }
+
+ attr = (Attr *)apr_palloc(doc->pool,sizeof(Attr));
+ if (attr == NULL) {
+ QX_LOGGER_FATAL("Out Of Memory");
+ return NULL;
+ }
+
+ attr->next = NULL;
+ attr->parent = NULL;
+ attr->name = NULL;
+ attr->value = NULL;
+
+ return attr;
+}
+#endif
+void test_qs_new_attr_001()
+{
+ Attr *ret;
+ APR_INIT;
+
+ ret = qs_new_attr(&doc);
+ CU_ASSERT(ret != NULL);
+ CU_ASSERT(ret->parent == NULL);
+ CU_ASSERT(ret->next == NULL);
+ CU_ASSERT(ret->name == NULL);
+ CU_ASSERT(ret->value == NULL);
+
+ APR_TERM;
+}
+void test_qs_new_attr_002()
+{
+ Attr *ret;
+ APR_INIT;
+
+ doc.pool = NULL;
+ ret = qs_new_attr(&doc);
+ CU_ASSERT(ret == NULL);
+ APR_TERM;
+}
+void test_qs_new_attr_003()
+{
+ Attr *ret;
+ APR_INIT;
+
+ ret = qs_new_attr(NULL);
+ CU_ASSERT(ret == NULL);
+ APR_TERM;
+}