Gitweb links:
...log
http://git.netsurf-browser.org/libdom.git/shortlog/f3afb7359334b2e188c029...
...commit
http://git.netsurf-browser.org/libdom.git/commit/f3afb7359334b2e188c029e4...
...tree
http://git.netsurf-browser.org/libdom.git/tree/f3afb7359334b2e188c029e4d0...
The branch, rupindersingh/libdom has been updated
discards 36ad8c8d82d066c52ca38bcd1325470f9c824b3c (commit)
discards 4a373b5330d9111dec851fa4c72e6bc1f779168f (commit)
discards 5b7066201cc3b1150b1f8ae2772e6f38b3762492 (commit)
discards d1ca3ce434f91036c56cb4d4e7a2875e8d6ecd7b (commit)
discards 2c08402e7bfaf19cbeab15ee09090337b0b33a82 (commit)
discards f7cf179f19eb8efb8712102bdf89934b26483662 (commit)
discards ba04867b2d6170ae3811ef688e905daf14916e56 (commit)
discards aa2d6fa27e96a42a3f8acf354001fa447fd1aa8e (commit)
discards e8b4ffd6c593e776b48b572be60f523d30c660e4 (commit)
discards fb1f749d5e4b8afd458ae22880794450337eedef (commit)
discards 5adac2463a6abdc27b269188e195260b11e91296 (commit)
discards bcba417a4149fe2fe573864415d3c7b51e530fef (commit)
discards 808ef503295febc5b8df12b2a13aff86ecb3050f (commit)
discards 76b1188d36e590bda3b46f3234f9fa2b461127a3 (commit)
discards d8ba24aa14c30a81b2d20a2e16a81bbfb444d5a0 (commit)
discards 32b2afc7ee43fcd98b17f67df42c942463e74d01 (commit)
discards a7f4973861ff6dd59abb22e0579f3c1a7fc25f6e (commit)
discards 3b11c9acbc443ed2dc76c8b83b4f280679dabe37 (commit)
discards 4c89f6beea5c3cc2d4becc6b5e0bcb52f69b5d19 (commit)
discards 3bf73efac44e57324d2d806576e0f17b9ee9ad45 (commit)
discards 6a190359867769b9364ef65124ae47816ce6d2c9 (commit)
discards 03fb7e42bb023447d10c27ed0080cd14a5ea56d2 (commit)
discards be1f8ead442d1fb04bb8ffe27a76fd9eede625fd (commit)
discards 8bc8634021da36343e3649ba8ff30c58d35601e4 (commit)
discards 5e87c9774bea4b4bb1eaba0cc1e590186c1dfdc4 (commit)
discards f4befc0e5d97b9967c5de654c590f4541f611bf6 (commit)
discards 8e51d87bff765e41358240f86245515099bc53aa (commit)
discards 95397f650dd2b781171aa7e87e3fff33956824c6 (commit)
discards e13c9e82fdbed1efd11d4d63c93ece8b0304ac0a (commit)
discards 6b1a6aebc0bd79e1538ccb0819d5aef30acc97ac (commit)
discards 86b5007204ed6b4f22fb96856b927fc52b70e37b (commit)
discards b8ef2f4e63539a91d1f3b99585263e732f305f66 (commit)
discards 6af080d5a96b50d09b9c3cbb835d3bd102ad4da5 (commit)
discards 9f204b8b2c0e9006111679d0f16655d4b79ef85f (commit)
discards 26503f60bfffbd78821db09c7d4e027a3612a2a2 (commit)
discards a18d2849ff0b214ee84b17ab1df1a2a224c604c8 (commit)
discards f360fd62777cc585427fde6ab0b07e63e7aaafbc (commit)
discards aae8dd42d91dedeb1677d5555d6125d43f24faf2 (commit)
discards c0422cf4236bbe3647d4fbaee1f3a6c06fbb1bb3 (commit)
discards ac0690084cf6bc7edbbd5216bff075c82282e796 (commit)
discards 9c7b507db72008460e115907711248f3894f9fd2 (commit)
discards d0a0b0ccd1795051b6990dc265d10ab0650ce1a6 (commit)
discards 5ed8e8b4dcb1eb77b9b799e0e95c261997320f83 (commit)
discards b3b25286e1dadd89147cc8098eb88e5a8bb51891 (commit)
discards 1e9f7ceac5fa6ebada38f9d5668f351f2e61cbfa (commit)
discards dc8f63be5a4b03b2d7c0d23b6425676ba11bbf76 (commit)
discards 9189149b1655dbd9061cafdaf822c25fb95f73a2 (commit)
via f3afb7359334b2e188c029e4d0d0616c6cda2c57 (commit)
via 8c2ec664f8f69a9be52441652f88440379058acc (commit)
via d9460145f23f3879c04374d8bf11594ed33fd42c (commit)
via 79e858c21e54e30fa4702bb297a4972a681be85c (commit)
via e31da066b0376247d08e5899f233a94eb09291af (commit)
via c093880b3fcc5d7488fafe78f1e5f8f486fa1313 (commit)
via 35cde09375f39a1bad05728fc97f206733113633 (commit)
via c7f3d0def9dc71deb135b5afedcddac1c92b9c3e (commit)
via eb735d3cd022b9fc8284b2e86570a8db5854d56a (commit)
via 26610a3b631ecf53356c95fa72ba822b0cb12d86 (commit)
via bf6aa2739d4b65c43986b29a2b2c4bbbab061cf5 (commit)
via 939ec2c2cd709a5ee9cbb4237e77553450543a57 (commit)
via 862b8be1defce10068f3876aaaa8de8edf65b4ed (commit)
via ac0a6be4a62b2fa9830184def0652a499df1398b (commit)
via 5c0d74591877de6bcced0a6ba5836b4a2df1c5a7 (commit)
via 47847ac9ba3d26771e8007761e5da50e61daf734 (commit)
via cd055419fb5e2c046046d8e132105909c9f7c874 (commit)
via f0a3c95cfc4a5595f930cd5dd14d6cbbf1f85312 (commit)
via ca30ba7de4c3b0b17a61e1f07032575a01f2cd25 (commit)
via 16ceb174a3eca4e93f9ecc72296332b1d6ceba60 (commit)
via bb1f7872c8dd7721b2bde9f0924b8284b5f7c3f0 (commit)
via 913ca00c2745f342146fd62494ad85baacf2b008 (commit)
via 1dd1c7617aae1a4bd285d83a3c73d5d2f53761d7 (commit)
via 3c9d9494222d81c207cc09a7686cca50db109c0b (commit)
via 2c4fcd2e416c51dc95af1e9054df1dc1fa28ff25 (commit)
via efec9dd5e88f563242a645e0a1f1904f5c262093 (commit)
via f1107bdb33dd760151d1b7311b09fb099c05d8c9 (commit)
via 644e93ff924466c41e55bad14fb7a42c468a4f7c (commit)
via adea85fad0882b49e70087c03c173fae6bf8d121 (commit)
via 5a31bfe0233d501ca162848631a1e6ff5c87a275 (commit)
via 559ca5e250bc1b902bd2764e05dd8767d1d7ffe6 (commit)
via 501852e21d843601d2501cfe9cb31a13f259cf50 (commit)
via 72de0d1c1b36201c72ac4881faa0b57b920aac63 (commit)
via 7bf86def02f275eac1c1f0c634461e9aed545a14 (commit)
via 8e45e8ddbec0eb239f780254d5658160ecb0387c (commit)
via 76fa6b3589c3ee19db20201ab072d6907e84390b (commit)
via f43e09e669a5e52a75219c94d835dafb3a286516 (commit)
via 82c8ae1c92a31e2395334b58bc2f6a3702cf06b7 (commit)
via 4c706c539f2ae7f390c3463013e4e41428993c6c (commit)
via 2a64fa6be386afa4944361a593dd535529c129ce (commit)
via ce28e10c6c8018380b0609b715f59f8fd1550a21 (commit)
via ba80007cad36fa89c490d2cbdb4321d7e11a8236 (commit)
via 271efd52662ef01f2514a948d44b1cf2af1949f8 (commit)
via 6e95420b74d8e9da135c7ba6f2c80a1f7bdc6dba (commit)
via dfedb7c691be7ae1c44eaa5e83590697b3ba3385 (commit)
via 753e0130c0b53f1322af6e2ba46ff080b63f3ed1 (commit)
via 1eebcb51641843ea6acf773c02a0e8ea53b0b066 (commit)
via 1e595d6e27a62568241afd4db558d2947f92bf43 (commit)
This update added new revisions after undoing existing revisions. That is
to say, the old revision is not a strict subset of the new revision. This
situation occurs when you --force push a change and generate a repository
containing something like this:
* -- * -- B -- O -- O -- O (36ad8c8d82d066c52ca38bcd1325470f9c824b3c)
\
N -- N -- N (f3afb7359334b2e188c029e4d0d0616c6cda2c57)
When this happens we assume that you've already had alert emails for all
of the O revisions, and so we here report only the revisions in the N
branch from the common base, B.
Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.
- Log -----------------------------------------------------------------
commitdiff
http://git.netsurf-browser.org/libdom.git/commit/?id=f3afb7359334b2e188c0...
commit f3afb7359334b2e188c029e4d0d0616c6cda2c57
Author: Rupinder Singh Khokhar <rsk1coder99(a)gmail.com>
Commit: Rupinder Singh Khokhar <rsk1coder99(a)gmail.com>
This tag gave me a headache for a day or two :P. The problem is that the parser isnt
handling the isindex element properly. Most probably
diff --git a/Makefile b/Makefile
index 569e554..bcbc27b 100644
--- a/Makefile
+++ b/Makefile
@@ -134,6 +134,7 @@ INSTALL_ITEMS := $(INSTALL_ITEMS) $(I):$(Is)/html_style_element.h
INSTALL_ITEMS := $(INSTALL_ITEMS) $(I):$(Is)/html_frameset_element.h
INSTALL_ITEMS := $(INSTALL_ITEMS) $(I):$(Is)/html_frame_element.h
INSTALL_ITEMS := $(INSTALL_ITEMS) $(I):$(Is)/html_iframe_element.h
+INSTALL_ITEMS := $(INSTALL_ITEMS) $(I):$(Is)/html_isindex_element.h
INSTALL_ITEMS := $(INSTALL_ITEMS) /$(LIBDIR)/pkgconfig:lib$(COMPONENT).pc.in
INSTALL_ITEMS := $(INSTALL_ITEMS) /$(LIBDIR):$(OUTPUT)
diff --git a/include/dom/dom.h b/include/dom/dom.h
index 1392ee0..0dba25d 100644
--- a/include/dom/dom.h
+++ b/include/dom/dom.h
@@ -93,6 +93,7 @@
#include <dom/html/html_frameset_element.h>
#include <dom/html/html_frame_element.h>
#include <dom/html/html_iframe_element.h>
+#include <dom/html/html_isindex_element.h>
/* DOM Events header */
#include <dom/events/events.h>
diff --git a/include/dom/html/html_isindex_element.h
b/include/dom/html/html_isindex_element.h
index 966b2d2..d41a149 100644
--- a/include/dom/html/html_isindex_element.h
+++ b/include/dom/html/html_isindex_element.h
@@ -9,6 +9,7 @@
#define dom_html_isindex_element_h_
#include <dom/core/exceptions.h>
+#include <dom/core/string.h>
struct dom_html_form_element;
diff --git a/src/html/Makefile b/src/html/Makefile
index 95550ab..c98ce9a 100644
--- a/src/html/Makefile
+++ b/src/html/Makefile
@@ -18,9 +18,8 @@ DIR_SOURCES := \
html_map_element.c html_script_element.c html_tablecaption_element.c \
html_tablecell_element.c html_tablecol_element.c html_tablesection_element.c \
html_table_element.c html_tablerow_element.c html_frameset_element.c \
- html_frame_element.c html_iframe_element.c
+ html_frame_element.c html_iframe_element.c html_isindex_element.c \
UNINMPLEMENTED_SOURCES := \
- html_isindex_element.c \
include $(NSBUILD)/Makefile.subdir
diff --git a/src/html/html_document.c b/src/html/html_document.c
index 0eca66d..62433d5 100644
--- a/src/html/html_document.c
+++ b/src/html/html_document.c
@@ -60,6 +60,7 @@
#include "html/html_frameset_element.h"
#include "html/html_frame_element.h"
#include "html/html_iframe_element.h"
+#include "html/html_isindex_element.h"
#include "core/attr.h"
#include "core/string.h"
@@ -378,6 +379,9 @@ _dom_html_document_create_element_internal(dom_html_document *html,
} else if (dom_string_caseless_isequal(tag_name, html->memoised[hds_IFRAME])) {
exc = _dom_html_iframe_element_create(html, namespace, prefix,
(dom_html_iframe_element **) result);
+ } else if (dom_string_caseless_isequal(tag_name, html->memoised[hds_ISINDEX])) {
+ exc = _dom_html_isindex_element_create(html, namespace, prefix,
+ (dom_html_isindex_element **) result);
} else {
exc = _dom_html_element_create(html, tag_name, namespace,
prefix, result);
diff --git a/src/html/html_isindex_element.c b/src/html/html_isindex_element.c
index 6dc96b9..dd5ab3b 100644
--- a/src/html/html_isindex_element.c
+++ b/src/html/html_isindex_element.c
@@ -7,9 +7,13 @@
#include <stdlib.h>
+#include <dom/html/html_isindex_element.h>
+
+#include "html/html_document.h"
#include "html/html_isindex_element.h"
#include "core/node.h"
+#include "core/attr.h"
#include "utils/utils.h"
static struct dom_element_protected_vtable _protect_vtable = {
@@ -22,55 +26,43 @@ static struct dom_element_protected_vtable _protect_vtable = {
/**
* Create a dom_html_isindex_element object
*
- * \param doc The document object
- * \param form The form element which contains this element
- * \param ele The returned element object
+ * \param doc The document object
+ * \param ele The returned element object
* \return DOM_NO_ERR on success, appropriate dom_exception on failure.
*/
+#include<stdio.h>
dom_exception _dom_html_isindex_element_create(struct dom_html_document *doc,
- struct dom_html_form_element *form,
+ dom_string *namespace, dom_string *prefix,
struct dom_html_isindex_element **ele)
{
struct dom_node_internal *node;
-
+ fprintf(stderr,"isindex created\n");
*ele = malloc(sizeof(dom_html_isindex_element));
if (*ele == NULL)
return DOM_NO_MEM_ERR;
-
+
/* Set up vtables */
node = (struct dom_node_internal *) *ele;
node->base.vtable = &_dom_html_element_vtable;
node->vtable = &_protect_vtable;
- return _dom_html_isindex_element_initialise(doc, form, *ele);
+ return _dom_html_isindex_element_initialise(doc, namespace, prefix, *ele);
}
/**
* Initialise a dom_html_isindex_element object
*
- * \param doc The document object
- * \param form The form element which contains this element
- * \param ele The dom_html_isindex_element object
+ * \param doc The document object
+ * \param ele The dom_html_isindex_element object
* \return DOM_NO_ERR on success, appropriate dom_exception on failure.
*/
dom_exception _dom_html_isindex_element_initialise(struct dom_html_document *doc,
- struct dom_html_form_element *form,
+ dom_string *namespace, dom_string *prefix,
struct dom_html_isindex_element *ele)
{
- dom_string *name = NULL;
- dom_exception err;
-
- UNUSED(form);
-
- err = dom_string_create((const uint8_t *) "ISINDEX",
SLEN("ISINDEX"),
- &name);
- if (err != DOM_NO_ERR)
- return err;
-
- err = _dom_html_element_initialise(doc, &ele->base, name, NULL, NULL);
- dom_string_unref(name);
-
- return err;
+ return _dom_html_element_initialise(doc, &ele->base,
+ doc->memoised[hds_ISINDEX],
+ namespace, prefix);
}
/**
@@ -125,7 +117,46 @@ dom_exception _dom_html_isindex_element_copy(dom_node_internal *old,
return _dom_html_element_copy(old, copy);
}
-
+/*-----------------------------------------------------------------------*/
+/* API functions */
+
+#define SIMPLE_GET(attr) \
+ dom_exception dom_html_isindex_element_get_##attr( \
+ dom_html_isindex_element *element, \
+ dom_string **attr) \
+ { \
+ dom_exception ret; \
+ dom_string *_memo_##attr; \
+ \
+ _memo_##attr = \
+ ((struct dom_html_document *) \
+ ((struct dom_node_internal *)element)->owner)->\
+ memoised[hds_##attr]; \
+ \
+ ret = dom_element_get_attribute(element, _memo_##attr, attr); \
+ \
+ return ret; \
+ }
+#define SIMPLE_SET(attr) \
+dom_exception dom_html_isindex_element_set_##attr( \
+ dom_html_isindex_element *element, \
+ dom_string *attr) \
+ { \
+ dom_exception ret; \
+ dom_string *_memo_##attr; \
+ \
+ _memo_##attr = \
+ ((struct dom_html_document *) \
+ ((struct dom_node_internal *)element)->owner)->\
+ memoised[hds_##attr]; \
+ \
+ ret = dom_element_set_attribute(element, _memo_##attr, attr); \
+ \
+ return ret; \
+ }
+
+#define SIMPLE_GET_SET(attr) SIMPLE_GET(attr) SIMPLE_SET(attr)
+SIMPLE_GET_SET(prompt);
/*-----------------------------------------------------------------------*/
/* Public APIs */
diff --git a/src/html/html_isindex_element.h b/src/html/html_isindex_element.h
index 12ad26e..a39170b 100644
--- a/src/html/html_isindex_element.h
+++ b/src/html/html_isindex_element.h
@@ -19,12 +19,12 @@ struct dom_html_isindex_element {
/* Create a dom_html_isindex_element object */
dom_exception _dom_html_isindex_element_create(struct dom_html_document *doc,
- struct dom_html_form_element *form,
+ dom_string *namespace, dom_string *prefix,
struct dom_html_isindex_element **ele);
/* Initialise a dom_html_isindex_element object */
dom_exception _dom_html_isindex_element_initialise(struct dom_html_document *doc,
- struct dom_html_form_element *form,
+ dom_string *namespace, dom_string *prefix,
struct dom_html_isindex_element *ele);
/* Finalise a dom_html_isindex_element object */
commitdiff
http://git.netsurf-browser.org/libdom.git/commit/?id=8c2ec664f8f69a9be524...
commit 8c2ec664f8f69a9be52441652f88440379058acc
Author: Rupinder Singh Khokhar <rsk1coder99(a)gmail.com>
Commit: Rupinder Singh Khokhar <rsk1coder99(a)gmail.com>
Input Element checked on clicking fix and also fixed bubbling and cancelability
diff --git a/src/html/TODO b/src/html/TODO
index 83ff515..b55a6d7 100644
--- a/src/html/TODO
+++ b/src/html/TODO
@@ -15,9 +15,9 @@ HTMLFormElement html_form_element DONE
HTMLSelectElement html_select_element DONE
HTMLOptGroupElement html_optgroup_element DONE
HTMLOptionElement html_option_element DONE
-HTMLInputElement html_input_element MISSING
+HTMLInputElement html_input_element DONE
HTMLTextAreaElement html_textarea_element DONE
-HTMLButtonElement html_button_element MISSING
+HTMLButtonElement html_button_element DONE
HTMLLabelElement html_label_element DONE
HTMLFieldSetElement html_fieldset_element DONE
HTMLLegendElement html_legend_element DONE
diff --git a/src/html/html_input_element.c b/src/html/html_input_element.c
index c4cfc05..84079f7 100644
--- a/src/html/html_input_element.c
+++ b/src/html/html_input_element.c
@@ -65,6 +65,8 @@ dom_exception _dom_html_input_element_initialise(struct
dom_html_document *doc,
ele->default_checked_set = false;
ele->default_value = NULL;
ele->default_value_set = false;
+ ele->checked = false;
+ ele->checked_set = false;
return _dom_html_element_initialise(doc, &ele->base,
doc->memoised[hds_INPUT],
@@ -166,6 +168,11 @@ dom_exception
dom_html_input_element_set_read_only(dom_html_input_element *ele,
dom_exception dom_html_input_element_get_checked(dom_html_input_element *ele,
bool *checked)
{
+ if(ele->checked_set) {
+ *checked = ele->checked;
+ return DOM_NO_ERR;
+ }
+
return dom_html_element_get_bool_property(&ele->base, "checked",
SLEN("checked"), checked);
}
@@ -447,11 +454,11 @@ dom_exception dom_html_input_element_focus(dom_html_input_element
*ele)
bool success = false;
assert(doc != NULL);
- /** \todo Is this event (a) default (b) bubbling and (c) cancelable? */
+ /** \this event doesnt bubble and is non-cancelable src:wikipedia*/
return _dom_dispatch_generic_event((dom_document *)doc,
(dom_event_target *) ele,
- doc->memoised[hds_focus], true,
- true, &success);
+ doc->memoised[hds_focus], false,
+ false, &success);
}
/**
@@ -467,11 +474,11 @@ dom_exception dom_html_input_element_select(dom_html_input_element
*ele)
bool success = false;
assert(doc != NULL);
- /** \todo Is this event (a) default (b) bubbling and (c) cancelable? */
+ /** \this event bubbles and non-cancelable src:wikipedia*/
return _dom_dispatch_generic_event((dom_document *)doc,
(dom_event_target *) ele,
doc->memoised[hds_select], true,
- true, &success);
+ false, &success);
}
/**
@@ -485,13 +492,21 @@ dom_exception dom_html_input_element_click(dom_html_input_element
*ele)
struct dom_html_document *doc =
(dom_html_document *) dom_node_get_owner(ele);
bool success = false;
+ dom_exception err;
assert(doc != NULL);
- /** \todo Is this is meant to check/uncheck boxes, radios etc */
- /** \todo Is this event (a) default (b) bubbling and (c) cancelable? */
- return _dom_dispatch_generic_event((dom_document *)doc,
+
+ /** \This event bubbles & is cancelable src:Wikipedia*/
+ err = _dom_dispatch_generic_event((dom_document *)doc,
(dom_event_target *) ele,
doc->memoised[hds_click], true,
true, &success);
+ if(err != DOM_NO_ERR)
+ return err;
+
+ ele->checked = true;
+ ele->checked_set = true;
+
+ return DOM_NO_ERR;
}
diff --git a/src/html/html_input_element.h b/src/html/html_input_element.h
index 72c7d51..b818b2e 100644
--- a/src/html/html_input_element.h
+++ b/src/html/html_input_element.h
@@ -21,6 +21,8 @@ struct dom_html_input_element {
bool default_checked_set; /**< Whether default_checked has been set */
dom_string *default_value; /**< Initial value */
bool default_value_set; /**< Whether default_value has been set */
+ bool checked; /**< Whether the element has been checked by a click */
+ bool checked_set;
};
/* Create a dom_html_input_element object */
diff --git a/test/testcases/tests/level1/html/HTMLInputElement21.xml
b/test/testcases/tests/level1/html/HTMLInputElement21.xml
new file mode 100644
index 0000000..57fbc76
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLInputElement21.xml
@@ -0,0 +1,42 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, Institut National de
+Recherche en Informatique et en Automatique, Keio University). All
+Rights Reserved. This program is distributed under the W3C's Software
+Intellectual Property License. This program is distributed in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
+PURPOSE.
+
+See W3C License
http://www.w3.org/Consortium/Legal/ for more details.
+
+-->
+<!DOCTYPE test SYSTEM "dom1.dtd">
+<test
xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1"
name="HTMLInputElement21">
+<metadata>
+<title>HTMLInputElement21</title>
+<creator>Curt Arnold</creator>
+<description>
+HTMLInputElement.click should change the state of checked on a radio button.
+</description>
+<date qualifier="created">2004-03-18</date>
+<subject
resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-o...
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="doc" type="Document"/>
+<var name="checked" type="boolean"/>
+<load var="doc" href="input" willBeModified="true"/>
+<getElementsByTagName interface="Document" obj="doc"
var="nodeList" tagname='"input"'/>
+<assertSize collection="nodeList" size="9"
id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode"
index="1"/>
+<checked var="checked" obj="testNode"/>
+<assertFalse actual="checked" id="notCheckedBeforeClick"/>
+<click interface="HTMLInputElement" obj="testNode"/>
+<checked var="checked" obj="testNode"/>
+<assertTrue actual="checked" id="checkedAfterClick"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLInputElement21.xml.kfail
b/test/testcases/tests/level1/html/HTMLInputElement21.xml.kfail
deleted file mode 100644
index 57fbc76..0000000
--- a/test/testcases/tests/level1/html/HTMLInputElement21.xml.kfail
+++ /dev/null
@@ -1,42 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
-
-<!--
-
-Copyright (c) 2004 World Wide Web Consortium,
-(Massachusetts Institute of Technology, Institut National de
-Recherche en Informatique et en Automatique, Keio University). All
-Rights Reserved. This program is distributed under the W3C's Software
-Intellectual Property License. This program is distributed in the
-hope that it will be useful, but WITHOUT ANY WARRANTY; without even
-the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
-PURPOSE.
-
-See W3C License
http://www.w3.org/Consortium/Legal/ for more details.
-
--->
-<!DOCTYPE test SYSTEM "dom1.dtd">
-<test
xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1"
name="HTMLInputElement21">
-<metadata>
-<title>HTMLInputElement21</title>
-<creator>Curt Arnold</creator>
-<description>
-HTMLInputElement.click should change the state of checked on a radio button.
-</description>
-<date qualifier="created">2004-03-18</date>
-<subject
resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-o...
-</metadata>
-<var name="nodeList" type="NodeList"/>
-<var name="testNode" type="Node"/>
-<var name="doc" type="Document"/>
-<var name="checked" type="boolean"/>
-<load var="doc" href="input" willBeModified="true"/>
-<getElementsByTagName interface="Document" obj="doc"
var="nodeList" tagname='"input"'/>
-<assertSize collection="nodeList" size="9"
id="Asize"/>
-<item interface="NodeList" obj="nodeList" var="testNode"
index="1"/>
-<checked var="checked" obj="testNode"/>
-<assertFalse actual="checked" id="notCheckedBeforeClick"/>
-<click interface="HTMLInputElement" obj="testNode"/>
-<checked var="checked" obj="testNode"/>
-<assertTrue actual="checked" id="checkedAfterClick"/>
-</test>
commitdiff
http://git.netsurf-browser.org/libdom.git/commit/?id=d9460145f23f3879c043...
commit d9460145f23f3879c04374d8bf11594ed33fd42c
Author: Rupinder Singh Khokhar <rsk1coder99(a)gmail.com>
Commit: Rupinder Singh Khokhar <rsk1coder99(a)gmail.com>
Slight change in interface file & copying a few test files
diff --git a/src/html/TODO b/src/html/TODO
index 183f10d..83ff515 100644
--- a/src/html/TODO
+++ b/src/html/TODO
@@ -10,7 +10,7 @@ HTMLMetaElement html_meta_element DONE
HTMLBaseElement html_base_element DONE
HTMLIsIndexElement html_isindex_element MISSING
HTMLStyleElement html_style_element DONE
-HTMLBodyElement html_body_element MISSING
+HTMLBodyElement html_body_element DONE
HTMLFormElement html_form_element DONE
HTMLSelectElement html_select_element DONE
HTMLOptGroupElement html_optgroup_element DONE
diff --git a/test/dom1-interfaces.xml b/test/dom1-interfaces.xml
index 240f2b9..a0d11c7 100644
--- a/test/dom1-interfaces.xml
+++ b/test/dom1-interfaces.xml
@@ -720,7 +720,31 @@ See W3C License
http://www.w3.org/Consortium/Legal/ for more
details.
</returns>
<raises/>
</method>
+<method name="isSupported" id="notknown">
+<descr>
+<p/>
+</descr>
+<parameters>
+<param name="feature" type="DOMString" attr="in">
+<descr>
+<p/>
+</descr>
+</param>
+<param name="version" type="DOMString" attr="in">
+<descr>
+<p/>
+</descr>
+</param>
+</parameters>
+<returns type="bool">
+<descr>
+<p/>
+</descr>
+</returns>
+<raises/>
+</method>
</interface>
+
<interface name="NodeList" id="ID-536297177">
<descr>
<p>The<code>NodeList</code>interface provides the abstraction of an
ordered collection of nodes, without defining or constraining how this collection is
implemented.</p>
diff --git a/test/testcases/tests/level2/html/files/document.html
b/test/testcases/tests/level2/html/files/document.html
new file mode 100644
index 0000000..9cd9c8a
--- /dev/null
+++ b/test/testcases/tests/level2/html/files/document.html
@@ -0,0 +1,36 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html;
CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - DOCUMENT</TITLE>
+</HEAD>
+<BODY onload="parent.loadComplete()" ID="TEST-BODY">
+<FORM ID="form1" ACCEPT-CHARSET="US-ASCII"
ACTION="./files/getData.pl"
ENCTYPE="application/x-www-form-urlencoded" METHOD="post">
+<P>
+<TEXTAREA NAME="text1" COLS="20"
ROWS="7"></TEXTAREA>
+<INPUT TYPE="submit" NAME="submit" VALUE="Submit" />
+<INPUT TYPE="reset" NAME="reset" VALUE="Reset" />
+</P>
+</FORM>
+<P>
+<MAP NAME="mapid" ID="mapid">
+<AREA TABINDEX="10" ACCESSKEY="a" SHAPE="rect"
ALT="Domain" COORDS="0,2,45,45" HREF="./files/dletter.html"
TITLE="Domain1">
+<AREA TABINDEX="10" ACCESSKEY="a" SHAPE="rect"
ALT="Domain" COORDS="0,2,45,45" HREF="./files/dletter.html"
TITLE="Domain2">
+</MAP>
+</P>
+<P>
+<IMG ID="IMAGE-1" NAME="IMAGE-1" SRC="./pix/dts.gif"
ALT="DTS IMAGE LOGO" LONGDESC="./files/desc.html"
USEMAP="#DTS-MAP" WIDTH="115"/>
+</P>
+<P>
+<OBJECT DATA="./pix/line.gif" CODETYPE="image/gif"
HEIGHT="10">
+<APPLET ALT="Applet Number 1"
CODE="applet1.class"></APPLET>
+</OBJECT>
+<OBJECT DATA="./pix/logo.gif" type="image/gif">
+<APPLET ALT="Applet Number 2"
CODE="applet2.class"></APPLET>
+</OBJECT>
+</P>
+<P>
+<A ID="Anchor" DIR="LTR" HREF="./pix/submit.gif"
ACCESSKEY="g" TYPE="image/gif" COORDS="0,0,100,100"
SHAPE="rect" REL="GLOSSARY" REV="STYLESHEET"
HREFLANG="en" CHARSET="US-ASCII" TABINDEX="22"
NAME="Anchor">View Submit Button</A>
+</P>
+</BODY>
+</HTML>
diff --git a/test/testcases/tests/level2/html/files/document.xhtml
b/test/testcases/tests/level2/html/files/document.xhtml
new file mode 100644
index 0000000..3cc6ccf
--- /dev/null
+++ b/test/testcases/tests/level2/html/files/document.xhtml
@@ -0,0 +1,39 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE html
+ PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
+ "xhtml1-transitional.dtd">
+<html
xmlns='http://www.w3.org/1999/xhtml'>
+<head>
+<title>NIST DOM HTML Test - DOCUMENT</title>
+</head>
+<body onload="parent.loadComplete()" id="TEST-BODY">
+<form id="form1" accept-charset="US-ASCII"
action="./files/getData.pl"
enctype="application/x-www-form-urlencoded" method="post">
+<p>
+<textarea name="text1" cols="20"
rows="7"></textarea>
+<input type="submit" name="submit1" value="Submit"
/>
+<input type="reset" name="submit2" value="Reset" />
+</p>
+</form>
+<p>
+<map name="mapid" id="mapid">
+<area tabindex="10" accesskey="a" shape="rect"
alt="Domain" coords="0,2,45,45" href="./files/dletter.html"
title="Domain1" />
+<area tabindex="10" accesskey="a" shape="rect"
alt="Domain" coords="0,2,45,45" href="./files/dletter.html"
title="Domain2" />
+</map>
+</p>
+<p>
+<img id="IMAGE-1" src="./pix/dts.gif" alt="DTS IMAGE
LOGO" longdesc="./files/desc.html" usemap="#DTS-MAP"
width="115"/>
+</p>
+<p>
+<object data="./pix/line.gif" codetype="image/gif"
height="10">
+<applet alt="Applet Number 1" code="applet1.class"
width="10" height="10"></applet>
+</object>
+<object data="./pix/logo.gif" type="image/gif">
+<applet alt="Applet Number 2" code="applet2.class"
width="10" height="10"></applet>
+</object>
+</p>
+<p>
+<a id="Anchor" dir="ltr" href="./pix/submit.gif"
accesskey="g" type="image/gif" coords="0,0,100,100"
shape="rect" rel="GLOSSARY" rev="STYLESHEET"
hreflang="en" charset="US-ASCII" tabindex="22"
name="Anchor">View Submit Button</a>
+</p>
+</body>
+</html>
+
diff --git a/test/testcases/tests/level2/html/files/document.xml
b/test/testcases/tests/level2/html/files/document.xml
new file mode 100644
index 0000000..3cc6ccf
--- /dev/null
+++ b/test/testcases/tests/level2/html/files/document.xml
@@ -0,0 +1,39 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE html
+ PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
+ "xhtml1-transitional.dtd">
+<html
xmlns='http://www.w3.org/1999/xhtml'>
+<head>
+<title>NIST DOM HTML Test - DOCUMENT</title>
+</head>
+<body onload="parent.loadComplete()" id="TEST-BODY">
+<form id="form1" accept-charset="US-ASCII"
action="./files/getData.pl"
enctype="application/x-www-form-urlencoded" method="post">
+<p>
+<textarea name="text1" cols="20"
rows="7"></textarea>
+<input type="submit" name="submit1" value="Submit"
/>
+<input type="reset" name="submit2" value="Reset" />
+</p>
+</form>
+<p>
+<map name="mapid" id="mapid">
+<area tabindex="10" accesskey="a" shape="rect"
alt="Domain" coords="0,2,45,45" href="./files/dletter.html"
title="Domain1" />
+<area tabindex="10" accesskey="a" shape="rect"
alt="Domain" coords="0,2,45,45" href="./files/dletter.html"
title="Domain2" />
+</map>
+</p>
+<p>
+<img id="IMAGE-1" src="./pix/dts.gif" alt="DTS IMAGE
LOGO" longdesc="./files/desc.html" usemap="#DTS-MAP"
width="115"/>
+</p>
+<p>
+<object data="./pix/line.gif" codetype="image/gif"
height="10">
+<applet alt="Applet Number 1" code="applet1.class"
width="10" height="10"></applet>
+</object>
+<object data="./pix/logo.gif" type="image/gif">
+<applet alt="Applet Number 2" code="applet2.class"
width="10" height="10"></applet>
+</object>
+</p>
+<p>
+<a id="Anchor" dir="ltr" href="./pix/submit.gif"
accesskey="g" type="image/gif" coords="0,0,100,100"
shape="rect" rel="GLOSSARY" rev="STYLESHEET"
hreflang="en" charset="US-ASCII" tabindex="22"
name="Anchor">View Submit Button</a>
+</p>
+</body>
+</html>
+
commitdiff
http://git.netsurf-browser.org/libdom.git/commit/?id=79e858c21e54e30fa470...
commit 79e858c21e54e30fa4702bb297a4972a681be85c
Author: Rupinder Singh Khokhar <rsk1coder99(a)gmail.com>
Commit: Rupinder Singh Khokhar <rsk1coder99(a)gmail.com>
[HTMLCollection && DOMTSHandler && dtd interface] fixes
diff --git a/src/html/html_options_collection.c b/src/html/html_options_collection.c
index 85001ad..3e06915 100644
--- a/src/html/html_options_collection.c
+++ b/src/html/html_options_collection.c
@@ -190,13 +190,13 @@ dom_exception
dom_html_options_collection_named_item(dom_html_options_collection
/* No children and siblings */
struct dom_node_internal *parent = n->parent;
- while (parent != col->base.root &&
+ while (n != col->base.root &&
n == parent->last_child) {
n = parent;
parent = parent->parent;
}
- if (parent == col->base.root)
+ if (n == col->base.root)
n = NULL;
else
n = n->next;
diff --git a/test/DOMTSHandler.pm b/test/DOMTSHandler.pm
index fa71365..fec9bcb 100644
--- a/test/DOMTSHandler.pm
+++ b/test/DOMTSHandler.pm
@@ -48,6 +48,7 @@ our %special_type = (
HTMLTableSectionElement => "dom_html_table_section_element *",
HTMLTableElement => "dom_html_table_element *",
HTMLTableRowElement => "dom_html_table_row_element *",
+ HTMLOptionsCollection => "dom_html_options_collection *",
);
our %special_prefix = (
DOMString => "dom_string",
@@ -1491,7 +1492,7 @@ sub to_get_attribute_cast {
sub get_get_attribute_prefix {
my $type = shift;
my $interface = shift;
- if ((($interface eq "HTMLCollection") or ($interface eq
"HTMLSelectElement")) and ($type eq "length")) {
+ if ($type eq "length") {
$prefix = "uint32_t ";
} elsif (exists $special_prefix{$type}) {
$prefix = $special_prefix{$type};
diff --git a/test/dom1-interfaces.xml b/test/dom1-interfaces.xml
index fc88b80..240f2b9 100644
--- a/test/dom1-interfaces.xml
+++ b/test/dom1-interfaces.xml
@@ -3674,4 +3674,51 @@ See W3C License
http://www.w3.org/Consortium/Legal/ for more
details.
</attribute>
</interface>
+<interface name="HTMLOptionsCollection" id="ID-75708506">
+<descr>
+<p>An<code>HTMLOptionsCollection</code>is a list of nodes. An
individual node may be accessed by either ordinal index or the
node's<code>name</code>or<code>id</code>attributes.<emph>Note:</emph>Collections
in the HTML DOM are assumed to be<emph>live</emph>meaning that they are
automatically updated when the underlying document is changed.</p>
+</descr>
+<attribute readonly="yes" type="unsigned long"
name="length" id="ID-40057551">
+<descr>
+<p>This attribute specifies the length or<emph>size</emph>of the
list.</p>
+</descr>
+</attribute>
+<method name="item" id="ID-33262535">
+<descr>
+<p>This method retrieves a node specified by ordinal index. Nodes are numbered in
tree order (depth-first traversal order).</p>
+</descr>
+<parameters>
+<param id="ID-3496656" name="index" type="unsigned long"
attr="in">
+<descr>
+<p>The index of the node to be fetched. The index origin is 0.</p>
+</descr>
+</param>
+</parameters>
+<returns type="Node">
+<descr>
+<p>The<code>Node</code>at the corresponding position upon success. A
value of<code>null</code>is returned if the index is out of range.</p>
+</descr>
+</returns>
+<raises/>
+</method>
+<method name="namedItem" id="ID-21069976">
+<descr>
+<p>This method retrieves a<code>Node</code>using a name. It first
searches for a<code>Node</code>with a
matching<code>id</code>attribute. If it doesn't find one, it then searches
for a<code>Node</code>with a matching<code>name</code>attribute,
but only on those elements that are allowed a name attribute.</p>
+</descr>
+<parameters>
+<param id="ID-76682631" name="name" type="DOMString"
attr="in">
+<descr>
+<p>The name of the<code>Node</code>to be fetched.</p>
+</descr>
+</param>
+</parameters>
+<returns type="Node">
+<descr>
+<p>The<code>Node</code>with
a<code>name</code>or<code>id</code>attribute whose value
corresponds to the specified string. Upon failure (e.g., no node with this name exists),
returns<code>null</code>.</p>
+</descr>
+</returns>
+<raises/>
+</method>
+</interface>
+
</library>
diff --git a/test/testcases/tests/level2/html/HTMLOptionsCollection01.xml
b/test/testcases/tests/level2/html/HTMLOptionsCollection01.xml
new file mode 100644
index 0000000..80df1a3
--- /dev/null
+++ b/test/testcases/tests/level2/html/HTMLOptionsCollection01.xml
@@ -0,0 +1,46 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<!--
+
+Copyright (c) 2001 World Wide Web Consortium,
+(Massachusetts Institute of Technology, Institut National de
+Recherche en Informatique et en Automatique, Keio University). All
+Rights Reserved. This program is distributed under the W3C's Software
+Intellectual Property License. This program is distributed in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
+PURPOSE.
+
+See W3C License
http://www.w3.org/Consortium/Legal/ for more details.
+
+-->
+<!DOCTYPE test SYSTEM "dom2.dtd">
+<test
xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-2"
name="HTMLOptionsCollection01">
+<metadata>
+<title>HTMLOptionsCollection01</title>
+<creator>NIST</creator>
+<description>
+ An HTMLOptionsCollection is a list of nodes representing HTML option
+ element.
+ The length attribute specifies the length or size of the list.
+
+ Retrieve the first SELECT element and create a HTMLOptionsCollection
+ of the OPTION elements. Check the size of the length of OPTION elements.
+</description>
+<contributor>Rick Rivello</contributor>
+<date qualifier="created">2002-08-01</date>
+<subject
resource="http://www.w3.org/TR/DOM-Level-2-HTML/html#HTMLOptionsColl...
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="optionsList" type="HTMLOptionsCollection"/>
+<var name="vlength" type="int"/>
+<var name="doc" type="Document"/>
+<load var="doc" href="optionscollection"
willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc"
var="nodeList" tagname='"select"'/>
+<assertSize collection="nodeList" size="2"
id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode"
index="0"/>
+<options interface="HTMLSelectElement" obj="testNode"
var="optionsList"/>
+<length interface="HTMLOptionsCollection" obj="optionsList"
var="vlength"/>
+<assertEquals actual="vlength" expected="5"
id="lengthLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level2/html/HTMLOptionsCollection01.xml.kfail
b/test/testcases/tests/level2/html/HTMLOptionsCollection01.xml.kfail
deleted file mode 100644
index 80df1a3..0000000
--- a/test/testcases/tests/level2/html/HTMLOptionsCollection01.xml.kfail
+++ /dev/null
@@ -1,46 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-
-<!--
-
-Copyright (c) 2001 World Wide Web Consortium,
-(Massachusetts Institute of Technology, Institut National de
-Recherche en Informatique et en Automatique, Keio University). All
-Rights Reserved. This program is distributed under the W3C's Software
-Intellectual Property License. This program is distributed in the
-hope that it will be useful, but WITHOUT ANY WARRANTY; without even
-the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
-PURPOSE.
-
-See W3C License
http://www.w3.org/Consortium/Legal/ for more details.
-
--->
-<!DOCTYPE test SYSTEM "dom2.dtd">
-<test
xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-2"
name="HTMLOptionsCollection01">
-<metadata>
-<title>HTMLOptionsCollection01</title>
-<creator>NIST</creator>
-<description>
- An HTMLOptionsCollection is a list of nodes representing HTML option
- element.
- The length attribute specifies the length or size of the list.
-
- Retrieve the first SELECT element and create a HTMLOptionsCollection
- of the OPTION elements. Check the size of the length of OPTION elements.
-</description>
-<contributor>Rick Rivello</contributor>
-<date qualifier="created">2002-08-01</date>
-<subject
resource="http://www.w3.org/TR/DOM-Level-2-HTML/html#HTMLOptionsColl...
-</metadata>
-<var name="nodeList" type="NodeList"/>
-<var name="testNode" type="Node"/>
-<var name="optionsList" type="HTMLOptionsCollection"/>
-<var name="vlength" type="int"/>
-<var name="doc" type="Document"/>
-<load var="doc" href="optionscollection"
willBeModified="false"/>
-<getElementsByTagName interface="Document" obj="doc"
var="nodeList" tagname='"select"'/>
-<assertSize collection="nodeList" size="2"
id="Asize"/>
-<item interface="NodeList" obj="nodeList" var="testNode"
index="0"/>
-<options interface="HTMLSelectElement" obj="testNode"
var="optionsList"/>
-<length interface="HTMLOptionsCollection" obj="optionsList"
var="vlength"/>
-<assertEquals actual="vlength" expected="5"
id="lengthLink" ignoreCase="false"/>
-</test>
diff --git a/test/testcases/tests/level2/html/HTMLOptionsCollection02.xml
b/test/testcases/tests/level2/html/HTMLOptionsCollection02.xml
new file mode 100644
index 0000000..44b5431
--- /dev/null
+++ b/test/testcases/tests/level2/html/HTMLOptionsCollection02.xml
@@ -0,0 +1,54 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<!--
+
+Copyright (c) 2001 World Wide Web Consortium,
+(Massachusetts Institute of Technology, Institut National de
+Recherche en Informatique et en Automatique, Keio University). All
+Rights Reserved. This program is distributed under the W3C's Software
+Intellectual Property License. This program is distributed in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
+PURPOSE.
+
+See W3C License
http://www.w3.org/Consortium/Legal/ for more details.
+
+-->
+<!DOCTYPE test SYSTEM "dom2.dtd">
+<test
xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-2"
name="HTMLOptionsCollection02">
+<metadata>
+<title>HTMLOptionsCollection02</title>
+<creator>NIST</creator>
+<description>
+ An HTMLOptionsCollection is a list of nodes representing HTML option
+ element.
+ An individual node may be accessed by either ordinal index, the node's
+ name or id attributes. (Test ordinal index=3).
+ The item() method retrieves a node specified by ordinal index.
+ Nodes are numbered in tree order. The index origin is 0.
+
+ Retrieve the first SELECT element. Create a HTMLOptionsCollection.
+ Retrieve the fourth item in the list and examine its firstChild's
+ nodeValue.
+</description>
+<contributor>Rick Rivello</contributor>
+<date qualifier="created">2002-08-01</date>
+<subject
resource="http://www.w3.org/TR/DOM-Level-2-HTML/html#HTMLOptionsColl...
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="optionsNode" type="Node"/>
+<var name="optionsValueNode" type="Node"/>
+<var name="optionsList" type="HTMLOptionsCollection"/>
+<var name="vvalue" type="DOMString"/>
+<var name="doc" type="Document"/>
+<load var="doc" href="optionscollection"
willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc"
var="nodeList" tagname='"select"'/>
+<assertSize collection="nodeList" size="2"
id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode"
index="0"/>
+<options interface="HTMLSelectElement" obj="testNode"
var="optionsList"/>
+<item interface="HTMLOptionsCollection" obj="optionsList"
var="optionsNode" index="3"/>
+<firstChild interface="Node" obj="optionsNode"
var="optionsValueNode"/>
+<nodeValue obj="optionsValueNode" var="vvalue"/>
+<assertEquals actual="vvalue" expected='"EMP10004"'
id="valueIndexLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level2/html/HTMLOptionsCollection02.xml.kfail
b/test/testcases/tests/level2/html/HTMLOptionsCollection02.xml.kfail
deleted file mode 100644
index 44b5431..0000000
--- a/test/testcases/tests/level2/html/HTMLOptionsCollection02.xml.kfail
+++ /dev/null
@@ -1,54 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-
-<!--
-
-Copyright (c) 2001 World Wide Web Consortium,
-(Massachusetts Institute of Technology, Institut National de
-Recherche en Informatique et en Automatique, Keio University). All
-Rights Reserved. This program is distributed under the W3C's Software
-Intellectual Property License. This program is distributed in the
-hope that it will be useful, but WITHOUT ANY WARRANTY; without even
-the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
-PURPOSE.
-
-See W3C License
http://www.w3.org/Consortium/Legal/ for more details.
-
--->
-<!DOCTYPE test SYSTEM "dom2.dtd">
-<test
xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-2"
name="HTMLOptionsCollection02">
-<metadata>
-<title>HTMLOptionsCollection02</title>
-<creator>NIST</creator>
-<description>
- An HTMLOptionsCollection is a list of nodes representing HTML option
- element.
- An individual node may be accessed by either ordinal index, the node's
- name or id attributes. (Test ordinal index=3).
- The item() method retrieves a node specified by ordinal index.
- Nodes are numbered in tree order. The index origin is 0.
-
- Retrieve the first SELECT element. Create a HTMLOptionsCollection.
- Retrieve the fourth item in the list and examine its firstChild's
- nodeValue.
-</description>
-<contributor>Rick Rivello</contributor>
-<date qualifier="created">2002-08-01</date>
-<subject
resource="http://www.w3.org/TR/DOM-Level-2-HTML/html#HTMLOptionsColl...
-</metadata>
-<var name="nodeList" type="NodeList"/>
-<var name="testNode" type="Node"/>
-<var name="optionsNode" type="Node"/>
-<var name="optionsValueNode" type="Node"/>
-<var name="optionsList" type="HTMLOptionsCollection"/>
-<var name="vvalue" type="DOMString"/>
-<var name="doc" type="Document"/>
-<load var="doc" href="optionscollection"
willBeModified="false"/>
-<getElementsByTagName interface="Document" obj="doc"
var="nodeList" tagname='"select"'/>
-<assertSize collection="nodeList" size="2"
id="Asize"/>
-<item interface="NodeList" obj="nodeList" var="testNode"
index="0"/>
-<options interface="HTMLSelectElement" obj="testNode"
var="optionsList"/>
-<item interface="HTMLOptionsCollection" obj="optionsList"
var="optionsNode" index="3"/>
-<firstChild interface="Node" obj="optionsNode"
var="optionsValueNode"/>
-<nodeValue obj="optionsValueNode" var="vvalue"/>
-<assertEquals actual="vvalue" expected='"EMP10004"'
id="valueIndexLink" ignoreCase="false"/>
-</test>
diff --git a/test/testcases/tests/level2/html/HTMLOptionsCollection03.xml
b/test/testcases/tests/level2/html/HTMLOptionsCollection03.xml
new file mode 100644
index 0000000..280b2bf
--- /dev/null
+++ b/test/testcases/tests/level2/html/HTMLOptionsCollection03.xml
@@ -0,0 +1,54 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<!--
+
+Copyright (c) 2001 World Wide Web Consortium,
+(Massachusetts Institute of Technology, Institut National de
+Recherche en Informatique et en Automatique, Keio University). All
+Rights Reserved. This program is distributed under the W3C's Software
+Intellectual Property License. This program is distributed in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
+PURPOSE.
+
+See W3C License
http://www.w3.org/Consortium/Legal/ for more details.
+
+-->
+<!DOCTYPE test SYSTEM "dom2.dtd">
+<test
xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-2"
name="HTMLOptionsCollection03">
+<metadata>
+<title>HTMLOptionsCollection03</title>
+<creator>NIST</creator>
+<description>
+ An HTMLOptionsCollection is a list of nodes representing HTML option
+ element.
+ An individual node may be accessed by either ordinal index, the node's
+ name or id attributes. (Test node name).
+ The namedItem method retrieves a Node using a name. It first searches
+ for a node with a matching id attribute. If it doesn't find one, it
+ then searches for a Node with a matching name attribute, but only
+ those elements that are allowed a name attribute.
+
+ Retrieve the first FORM element. Create a HTMLCollection of the elements.
+ Search for an element that has select1 as the value for the name attribute.
+ Get the nodeName of that element.
+</description>
+<contributor>Rick Rivello</contributor>
+<date qualifier="created">2002-08-01</date>
+<subject
resource="http://www.w3.org/TR/DOM-Level-2-HTML/html#HTMLOptionsColl...
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="optionsNode" type="Node"/>
+<var name="formsnodeList" type="HTMLCollection"/>
+<var name="vname" type="DOMString"/>
+<var name="doc" type="Document"/>
+<load var="doc" href="optionscollection"
willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc"
var="nodeList" tagname='"form"'/>
+<assertSize collection="nodeList" size="1"
id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode"
index="0"/>
+<elements interface="HTMLFormElement" obj="testNode"
var="formsnodeList"/>
+<namedItem interface="HTMLOptionsCollection" obj="formsnodeList"
var="optionsNode" name='"select1"'/>
+<nodeName obj="optionsNode" var="vname"/>
+<assertEquals actual="vname" expected='"select"'
id="nameIndexLink" ignoreCase="auto"/>
+</test>
diff --git a/test/testcases/tests/level2/html/HTMLOptionsCollection03.xml.kfail
b/test/testcases/tests/level2/html/HTMLOptionsCollection03.xml.kfail
deleted file mode 100644
index 280b2bf..0000000
--- a/test/testcases/tests/level2/html/HTMLOptionsCollection03.xml.kfail
+++ /dev/null
@@ -1,54 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-
-<!--
-
-Copyright (c) 2001 World Wide Web Consortium,
-(Massachusetts Institute of Technology, Institut National de
-Recherche en Informatique et en Automatique, Keio University). All
-Rights Reserved. This program is distributed under the W3C's Software
-Intellectual Property License. This program is distributed in the
-hope that it will be useful, but WITHOUT ANY WARRANTY; without even
-the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
-PURPOSE.
-
-See W3C License
http://www.w3.org/Consortium/Legal/ for more details.
-
--->
-<!DOCTYPE test SYSTEM "dom2.dtd">
-<test
xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-2"
name="HTMLOptionsCollection03">
-<metadata>
-<title>HTMLOptionsCollection03</title>
-<creator>NIST</creator>
-<description>
- An HTMLOptionsCollection is a list of nodes representing HTML option
- element.
- An individual node may be accessed by either ordinal index, the node's
- name or id attributes. (Test node name).
- The namedItem method retrieves a Node using a name. It first searches
- for a node with a matching id attribute. If it doesn't find one, it
- then searches for a Node with a matching name attribute, but only
- those elements that are allowed a name attribute.
-
- Retrieve the first FORM element. Create a HTMLCollection of the elements.
- Search for an element that has select1 as the value for the name attribute.
- Get the nodeName of that element.
-</description>
-<contributor>Rick Rivello</contributor>
-<date qualifier="created">2002-08-01</date>
-<subject
resource="http://www.w3.org/TR/DOM-Level-2-HTML/html#HTMLOptionsColl...
-</metadata>
-<var name="nodeList" type="NodeList"/>
-<var name="testNode" type="Node"/>
-<var name="optionsNode" type="Node"/>
-<var name="formsnodeList" type="HTMLCollection"/>
-<var name="vname" type="DOMString"/>
-<var name="doc" type="Document"/>
-<load var="doc" href="optionscollection"
willBeModified="false"/>
-<getElementsByTagName interface="Document" obj="doc"
var="nodeList" tagname='"form"'/>
-<assertSize collection="nodeList" size="1"
id="Asize"/>
-<item interface="NodeList" obj="nodeList" var="testNode"
index="0"/>
-<elements interface="HTMLFormElement" obj="testNode"
var="formsnodeList"/>
-<namedItem interface="HTMLOptionsCollection" obj="formsnodeList"
var="optionsNode" name='"select1"'/>
-<nodeName obj="optionsNode" var="vname"/>
-<assertEquals actual="vname" expected='"select"'
id="nameIndexLink" ignoreCase="auto"/>
-</test>
diff --git a/test/testcases/tests/level2/html/HTMLOptionsCollection04.xml
b/test/testcases/tests/level2/html/HTMLOptionsCollection04.xml
new file mode 100644
index 0000000..83e59d3
--- /dev/null
+++ b/test/testcases/tests/level2/html/HTMLOptionsCollection04.xml
@@ -0,0 +1,54 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<!--
+
+Copyright (c) 2001 World Wide Web Consortium,
+(Massachusetts Institute of Technology, Institut National de
+Recherche en Informatique et en Automatique, Keio University). All
+Rights Reserved. This program is distributed under the W3C's Software
+Intellectual Property License. This program is distributed in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
+PURPOSE.
+
+See W3C License
http://www.w3.org/Consortium/Legal/ for more details.
+
+-->
+<!DOCTYPE test SYSTEM "dom2.dtd">
+<test
xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-2"
name="HTMLOptionsCollection04">
+<metadata>
+<title>HTMLOptionsCollection04</title>
+<creator>NIST</creator>
+<description>
+ An HTMLOptionsCollection is a list of nodes representing HTML option
+ element.
+ An individual node may be accessed by either ordinal index, the node's
+ name or id attributes. (Test node name).
+ The namedItem method retrieves a Node using a name. It first searches
+ for a node with a matching id attribute. If it doesn't find one, it
+ then searches for a Node with a matching name attribute, but only
+ those elements that are allowed a name attribute.
+
+ Retrieve the first FORM element. Create a HTMLCollection of the elements.
+ Search for an element that has selectId as the value for the id attribute.
+ Get the nodeName of that element.
+</description>
+<contributor>Rick Rivello</contributor>
+<date qualifier="created">2002-08-01</date>
+<subject
resource="http://www.w3.org/TR/DOM-Level-2-HTML/html#HTMLOptionsColl...
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="optionsNode" type="Node"/>
+<var name="formsnodeList" type="HTMLCollection"/>
+<var name="vname" type="DOMString"/>
+<var name="doc" type="Document"/>
+<load var="doc" href="optionscollection"
willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc"
var="nodeList" tagname='"form"'/>
+<assertSize collection="nodeList" size="1"
id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode"
index="0"/>
+<elements interface="HTMLFormElement" obj="testNode"
var="formsnodeList"/>
+<namedItem interface="HTMLOptionsCollection" obj="formsnodeList"
var="optionsNode" name='"selectId"'/>
+<nodeName obj="optionsNode" var="vname"/>
+<assertEquals actual="vname" expected='"select"'
id="nameIndexLink" ignoreCase="auto"/>
+</test>
diff --git a/test/testcases/tests/level2/html/HTMLOptionsCollection04.xml.kfail
b/test/testcases/tests/level2/html/HTMLOptionsCollection04.xml.kfail
deleted file mode 100644
index 83e59d3..0000000
--- a/test/testcases/tests/level2/html/HTMLOptionsCollection04.xml.kfail
+++ /dev/null
@@ -1,54 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-
-<!--
-
-Copyright (c) 2001 World Wide Web Consortium,
-(Massachusetts Institute of Technology, Institut National de
-Recherche en Informatique et en Automatique, Keio University). All
-Rights Reserved. This program is distributed under the W3C's Software
-Intellectual Property License. This program is distributed in the
-hope that it will be useful, but WITHOUT ANY WARRANTY; without even
-the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
-PURPOSE.
-
-See W3C License
http://www.w3.org/Consortium/Legal/ for more details.
-
--->
-<!DOCTYPE test SYSTEM "dom2.dtd">
-<test
xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-2"
name="HTMLOptionsCollection04">
-<metadata>
-<title>HTMLOptionsCollection04</title>
-<creator>NIST</creator>
-<description>
- An HTMLOptionsCollection is a list of nodes representing HTML option
- element.
- An individual node may be accessed by either ordinal index, the node's
- name or id attributes. (Test node name).
- The namedItem method retrieves a Node using a name. It first searches
- for a node with a matching id attribute. If it doesn't find one, it
- then searches for a Node with a matching name attribute, but only
- those elements that are allowed a name attribute.
-
- Retrieve the first FORM element. Create a HTMLCollection of the elements.
- Search for an element that has selectId as the value for the id attribute.
- Get the nodeName of that element.
-</description>
-<contributor>Rick Rivello</contributor>
-<date qualifier="created">2002-08-01</date>
-<subject
resource="http://www.w3.org/TR/DOM-Level-2-HTML/html#HTMLOptionsColl...
-</metadata>
-<var name="nodeList" type="NodeList"/>
-<var name="testNode" type="Node"/>
-<var name="optionsNode" type="Node"/>
-<var name="formsnodeList" type="HTMLCollection"/>
-<var name="vname" type="DOMString"/>
-<var name="doc" type="Document"/>
-<load var="doc" href="optionscollection"
willBeModified="false"/>
-<getElementsByTagName interface="Document" obj="doc"
var="nodeList" tagname='"form"'/>
-<assertSize collection="nodeList" size="1"
id="Asize"/>
-<item interface="NodeList" obj="nodeList" var="testNode"
index="0"/>
-<elements interface="HTMLFormElement" obj="testNode"
var="formsnodeList"/>
-<namedItem interface="HTMLOptionsCollection" obj="formsnodeList"
var="optionsNode" name='"selectId"'/>
-<nodeName obj="optionsNode" var="vname"/>
-<assertEquals actual="vname" expected='"select"'
id="nameIndexLink" ignoreCase="auto"/>
-</test>
diff --git a/test/testcases/tests/level2/html/HTMLOptionsCollection05.xml
b/test/testcases/tests/level2/html/HTMLOptionsCollection05.xml
new file mode 100644
index 0000000..d2f44d7
--- /dev/null
+++ b/test/testcases/tests/level2/html/HTMLOptionsCollection05.xml
@@ -0,0 +1,55 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<!--
+
+Copyright (c) 2001 World Wide Web Consortium,
+(Massachusetts Institute of Technology, Institut National de
+Recherche en Informatique et en Automatique, Keio University). All
+Rights Reserved. This program is distributed under the W3C's Software
+Intellectual Property License. This program is distributed in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
+PURPOSE.
+
+See W3C License
http://www.w3.org/Consortium/Legal/ for more details.
+
+-->
+<!DOCTYPE test SYSTEM "dom2.dtd">
+<test
xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-2"
name="HTMLOptionsCollection05">
+<metadata>
+<title>HTMLOptionsCollection05</title>
+<creator>NIST</creator>
+<description>
+ An HTMLOptionsCollection is a list of nodes representing HTML option
+ element.
+ An individual node may be accessed by either ordinal index, the node's
+ name or id attributes. (Test node name).
+ The namedItem method retrieves a Node using a name. It first searches
+ for a node with a matching id attribute. If it doesn't find one, it
+ then searches for a Node with a matching name attribute, but only
+ those elements that are allowed a name attribute. Upon failure(e.q., no
+ node with this name exists), returns null.
+
+ Retrieve the first FORM element. Create a HTMLCollection of the elements.
+ Search for an element that has select9 as the value for the name attribute.
+ Null should be returned since there is not any name or id attribute with
+ select9 as a value.
+</description>
+<contributor>Rick Rivello</contributor>
+<date qualifier="created">2002-08-01</date>
+<subject
resource="http://www.w3.org/TR/DOM-Level-2-HTML/html#HTMLOptionsColl...
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="optionsNode" type="Node"/>
+<var name="formsnodeList" type="HTMLCollection"/>
+<var name="vname" type="DOMString"/>
+<var name="doc" type="Document"/>
+<load var="doc" href="optionscollection"
willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc"
var="nodeList" tagname='"form"'/>
+<assertSize collection="nodeList" size="1"
id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode"
index="0"/>
+<elements interface="HTMLFormElement" obj="testNode"
var="formsnodeList"/>
+<namedItem interface="HTMLOptionsCollection" obj="formsnodeList"
var="optionsNode" name='"select9"'/>
+<assertNull actual="optionsNode" id="nameIndexLink"/>
+</test>
diff --git a/test/testcases/tests/level2/html/HTMLOptionsCollection05.xml.kfail
b/test/testcases/tests/level2/html/HTMLOptionsCollection05.xml.kfail
deleted file mode 100644
index d2f44d7..0000000
--- a/test/testcases/tests/level2/html/HTMLOptionsCollection05.xml.kfail
+++ /dev/null
@@ -1,55 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-
-<!--
-
-Copyright (c) 2001 World Wide Web Consortium,
-(Massachusetts Institute of Technology, Institut National de
-Recherche en Informatique et en Automatique, Keio University). All
-Rights Reserved. This program is distributed under the W3C's Software
-Intellectual Property License. This program is distributed in the
-hope that it will be useful, but WITHOUT ANY WARRANTY; without even
-the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
-PURPOSE.
-
-See W3C License
http://www.w3.org/Consortium/Legal/ for more details.
-
--->
-<!DOCTYPE test SYSTEM "dom2.dtd">
-<test
xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-2"
name="HTMLOptionsCollection05">
-<metadata>
-<title>HTMLOptionsCollection05</title>
-<creator>NIST</creator>
-<description>
- An HTMLOptionsCollection is a list of nodes representing HTML option
- element.
- An individual node may be accessed by either ordinal index, the node's
- name or id attributes. (Test node name).
- The namedItem method retrieves a Node using a name. It first searches
- for a node with a matching id attribute. If it doesn't find one, it
- then searches for a Node with a matching name attribute, but only
- those elements that are allowed a name attribute. Upon failure(e.q., no
- node with this name exists), returns null.
-
- Retrieve the first FORM element. Create a HTMLCollection of the elements.
- Search for an element that has select9 as the value for the name attribute.
- Null should be returned since there is not any name or id attribute with
- select9 as a value.
-</description>
-<contributor>Rick Rivello</contributor>
-<date qualifier="created">2002-08-01</date>
-<subject
resource="http://www.w3.org/TR/DOM-Level-2-HTML/html#HTMLOptionsColl...
-</metadata>
-<var name="nodeList" type="NodeList"/>
-<var name="testNode" type="Node"/>
-<var name="optionsNode" type="Node"/>
-<var name="formsnodeList" type="HTMLCollection"/>
-<var name="vname" type="DOMString"/>
-<var name="doc" type="Document"/>
-<load var="doc" href="optionscollection"
willBeModified="false"/>
-<getElementsByTagName interface="Document" obj="doc"
var="nodeList" tagname='"form"'/>
-<assertSize collection="nodeList" size="1"
id="Asize"/>
-<item interface="NodeList" obj="nodeList" var="testNode"
index="0"/>
-<elements interface="HTMLFormElement" obj="testNode"
var="formsnodeList"/>
-<namedItem interface="HTMLOptionsCollection" obj="formsnodeList"
var="optionsNode" name='"select9"'/>
-<assertNull actual="optionsNode" id="nameIndexLink"/>
-</test>
diff --git a/test/testcases/tests/level2/html/HTMLOptionsCollection06.xml
b/test/testcases/tests/level2/html/HTMLOptionsCollection06.xml
new file mode 100644
index 0000000..fbde429
--- /dev/null
+++ b/test/testcases/tests/level2/html/HTMLOptionsCollection06.xml
@@ -0,0 +1,52 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<!--
+
+Copyright (c) 2001 World Wide Web Consortium,
+(Massachusetts Institute of Technology, Institut National de
+Recherche en Informatique et en Automatique, Keio University). All
+Rights Reserved. This program is distributed under the W3C's Software
+Intellectual Property License. This program is distributed in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
+PURPOSE.
+
+See W3C License
http://www.w3.org/Consortium/Legal/ for more details.
+
+-->
+<!DOCTYPE test SYSTEM "dom2.dtd">
+<test
xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-2"
name="HTMLOptionsCollection06">
+<metadata>
+<title>HTMLOptionsCollection06</title>
+<creator>NIST</creator>
+<description>
+ An HTMLOptionsCollection is a list of nodes representing HTML option
+ element.
+ An individual node may be accessed by either ordinal index, the node's
+ name or id attributes. (Test ordinal index).
+ The item() method retrieves a node specified by ordinal index.
+ A value of null is returned if the index is out of range.
+
+ Retrieve the first SELECT element. Create a HTMLOptionsCollection.
+ Retrieve the tenth item in the list - null should be returned since
+ there are not 10 items in the list.
+</description>
+<contributor>Rick Rivello</contributor>
+<date qualifier="created">2002-08-01</date>
+<subject
resource="http://www.w3.org/TR/DOM-Level-2-HTML/html#HTMLOptionsColl...
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="optionsNode" type="Node"/>
+<var name="optionsValueNode" type="Node"/>
+<var name="optionsList" type="HTMLOptionsCollection"/>
+<var name="vvalue" type="DOMString"/>
+<var name="doc" type="Document"/>
+<load var="doc" href="optionscollection"
willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc"
var="nodeList" tagname='"select"'/>
+<assertSize collection="nodeList" size="2"
id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode"
index="0"/>
+<options interface="HTMLSelectElement" obj="testNode"
var="optionsList"/>
+<item interface="HTMLOptionsCollection" obj="optionsList"
var="optionsNode" index="10"/>
+<assertNull actual="optionsNode" id="optionsIndexLink"/>
+</test>
diff --git a/test/testcases/tests/level2/html/HTMLOptionsCollection06.xml.kfail
b/test/testcases/tests/level2/html/HTMLOptionsCollection06.xml.kfail
deleted file mode 100644
index fbde429..0000000
--- a/test/testcases/tests/level2/html/HTMLOptionsCollection06.xml.kfail
+++ /dev/null
@@ -1,52 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-
-<!--
-
-Copyright (c) 2001 World Wide Web Consortium,
-(Massachusetts Institute of Technology, Institut National de
-Recherche en Informatique et en Automatique, Keio University). All
-Rights Reserved. This program is distributed under the W3C's Software
-Intellectual Property License. This program is distributed in the
-hope that it will be useful, but WITHOUT ANY WARRANTY; without even
-the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
-PURPOSE.
-
-See W3C License
http://www.w3.org/Consortium/Legal/ for more details.
-
--->
-<!DOCTYPE test SYSTEM "dom2.dtd">
-<test
xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-2"
name="HTMLOptionsCollection06">
-<metadata>
-<title>HTMLOptionsCollection06</title>
-<creator>NIST</creator>
-<description>
- An HTMLOptionsCollection is a list of nodes representing HTML option
- element.
- An individual node may be accessed by either ordinal index, the node's
- name or id attributes. (Test ordinal index).
- The item() method retrieves a node specified by ordinal index.
- A value of null is returned if the index is out of range.
-
- Retrieve the first SELECT element. Create a HTMLOptionsCollection.
- Retrieve the tenth item in the list - null should be returned since
- there are not 10 items in the list.
-</description>
-<contributor>Rick Rivello</contributor>
-<date qualifier="created">2002-08-01</date>
-<subject
resource="http://www.w3.org/TR/DOM-Level-2-HTML/html#HTMLOptionsColl...
-</metadata>
-<var name="nodeList" type="NodeList"/>
-<var name="testNode" type="Node"/>
-<var name="optionsNode" type="Node"/>
-<var name="optionsValueNode" type="Node"/>
-<var name="optionsList" type="HTMLOptionsCollection"/>
-<var name="vvalue" type="DOMString"/>
-<var name="doc" type="Document"/>
-<load var="doc" href="optionscollection"
willBeModified="false"/>
-<getElementsByTagName interface="Document" obj="doc"
var="nodeList" tagname='"select"'/>
-<assertSize collection="nodeList" size="2"
id="Asize"/>
-<item interface="NodeList" obj="nodeList" var="testNode"
index="0"/>
-<options interface="HTMLSelectElement" obj="testNode"
var="optionsList"/>
-<item interface="HTMLOptionsCollection" obj="optionsList"
var="optionsNode" index="10"/>
-<assertNull actual="optionsNode" id="optionsIndexLink"/>
-</test>
diff --git a/test/testcases/tests/level2/html/HTMLOptionsCollection07.xml
b/test/testcases/tests/level2/html/HTMLOptionsCollection07.xml
new file mode 100644
index 0000000..a2731e5
--- /dev/null
+++ b/test/testcases/tests/level2/html/HTMLOptionsCollection07.xml
@@ -0,0 +1,54 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<!--
+
+Copyright (c) 2001 World Wide Web Consortium,
+(Massachusetts Institute of Technology, Institut National de
+Recherche en Informatique et en Automatique, Keio University). All
+Rights Reserved. This program is distributed under the W3C's Software
+Intellectual Property License. This program is distributed in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
+PURPOSE.
+
+See W3C License
http://www.w3.org/Consortium/Legal/ for more details.
+
+-->
+<!DOCTYPE test SYSTEM "dom2.dtd">
+<test
xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-2"
name="HTMLOptionsCollection07">
+<metadata>
+<title>HTMLOptionsCollection07</title>
+<creator>NIST</creator>
+<description>
+ An HTMLOptionsCollection is a list of nodes representing HTML option
+ element.
+ An individual node may be accessed by either ordinal index, the node's
+ name or id attributes. (Test ordinal index=0).
+ The item() method retrieves a node specified by ordinal index. Nodes
+ are numbered in tree order. The index origin is 0.
+
+ Retrieve the first SELECT element. Create a HTMLOptionsCollection.
+ Retrieve the first item in the list and examine its firstChild's
+ nodeValue.
+</description>
+<contributor>Rick Rivello</contributor>
+<date qualifier="created">2002-08-01</date>
+<subject
resource="http://www.w3.org/TR/DOM-Level-2-HTML/html#HTMLOptionsColl...
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="optionsNode" type="Node"/>
+<var name="optionsValueNode" type="Node"/>
+<var name="optionsList" type="HTMLOptionsCollection"/>
+<var name="vvalue" type="DOMString"/>
+<var name="doc" type="Document"/>
+<load var="doc" href="optionscollection"
willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc"
var="nodeList" tagname='"select"'/>
+<assertSize collection="nodeList" size="2"
id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode"
index="0"/>
+<options interface="HTMLSelectElement" obj="testNode"
var="optionsList"/>
+<item interface="HTMLOptionsCollection" obj="optionsList"
var="optionsNode" index="0"/>
+<firstChild interface="Node" obj="optionsNode"
var="optionsValueNode"/>
+<nodeValue obj="optionsValueNode" var="vvalue"/>
+<assertEquals actual="vvalue" expected='"EMP10001"'
id="valueIndexLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level2/html/HTMLOptionsCollection07.xml.kfail
b/test/testcases/tests/level2/html/HTMLOptionsCollection07.xml.kfail
deleted file mode 100644
index a2731e5..0000000
--- a/test/testcases/tests/level2/html/HTMLOptionsCollection07.xml.kfail
+++ /dev/null
@@ -1,54 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-
-<!--
-
-Copyright (c) 2001 World Wide Web Consortium,
-(Massachusetts Institute of Technology, Institut National de
-Recherche en Informatique et en Automatique, Keio University). All
-Rights Reserved. This program is distributed under the W3C's Software
-Intellectual Property License. This program is distributed in the
-hope that it will be useful, but WITHOUT ANY WARRANTY; without even
-the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
-PURPOSE.
-
-See W3C License
http://www.w3.org/Consortium/Legal/ for more details.
-
--->
-<!DOCTYPE test SYSTEM "dom2.dtd">
-<test
xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-2"
name="HTMLOptionsCollection07">
-<metadata>
-<title>HTMLOptionsCollection07</title>
-<creator>NIST</creator>
-<description>
- An HTMLOptionsCollection is a list of nodes representing HTML option
- element.
- An individual node may be accessed by either ordinal index, the node's
- name or id attributes. (Test ordinal index=0).
- The item() method retrieves a node specified by ordinal index. Nodes
- are numbered in tree order. The index origin is 0.
-
- Retrieve the first SELECT element. Create a HTMLOptionsCollection.
- Retrieve the first item in the list and examine its firstChild's
- nodeValue.
-</description>
-<contributor>Rick Rivello</contributor>
-<date qualifier="created">2002-08-01</date>
-<subject
resource="http://www.w3.org/TR/DOM-Level-2-HTML/html#HTMLOptionsColl...
-</metadata>
-<var name="nodeList" type="NodeList"/>
-<var name="testNode" type="Node"/>
-<var name="optionsNode" type="Node"/>
-<var name="optionsValueNode" type="Node"/>
-<var name="optionsList" type="HTMLOptionsCollection"/>
-<var name="vvalue" type="DOMString"/>
-<var name="doc" type="Document"/>
-<load var="doc" href="optionscollection"
willBeModified="false"/>
-<getElementsByTagName interface="Document" obj="doc"
var="nodeList" tagname='"select"'/>
-<assertSize collection="nodeList" size="2"
id="Asize"/>
-<item interface="NodeList" obj="nodeList" var="testNode"
index="0"/>
-<options interface="HTMLSelectElement" obj="testNode"
var="optionsList"/>
-<item interface="HTMLOptionsCollection" obj="optionsList"
var="optionsNode" index="0"/>
-<firstChild interface="Node" obj="optionsNode"
var="optionsValueNode"/>
-<nodeValue obj="optionsValueNode" var="vvalue"/>
-<assertEquals actual="vvalue" expected='"EMP10001"'
id="valueIndexLink" ignoreCase="false"/>
-</test>
commitdiff
http://git.netsurf-browser.org/libdom.git/commit/?id=e31da066b0376247d08e...
commit e31da066b0376247d08e5899f233a94eb09291af
Author: Rupinder Singh Khokhar <rsk1coder99(a)gmail.com>
Commit: Rupinder Singh Khokhar <rsk1coder99(a)gmail.com>
HTMLCollection
diff --git a/src/html/html_collection.c b/src/html/html_collection.c
index 2b4d8aa..43a26c5 100644
--- a/src/html/html_collection.c
+++ b/src/html/html_collection.c
@@ -11,6 +11,7 @@
#include <libwapcaplet/libwapcaplet.h>
#include "html/html_collection.h"
+#include "html/html_document.h"
#include "core/node.h"
#include "core/element.h"
@@ -182,7 +183,7 @@ dom_exception dom_html_collection_item(dom_html_collection *col,
/* No children and siblings */
struct dom_node_internal *parent = n->parent;
- while (parent != col->root &&
+ while (n != col->root &&
n == parent->last_child) {
n = parent;
parent = parent->parent;
@@ -212,8 +213,8 @@ dom_exception dom_html_collection_named_item(dom_html_collection
*col,
dom_string *name, struct dom_node **node)
{
struct dom_node_internal *n = col->root;
+ dom_html_document *doc = (dom_html_document *)dom_node_get_owner(n);
dom_exception err;
-
while (n != NULL) {
if (n->type == DOM_ELEMENT_NODE &&
col->ic(n, col->ctx) == true) {
@@ -235,6 +236,22 @@ dom_exception dom_html_collection_named_item(dom_html_collection
*col,
if (id != NULL)
dom_string_unref(id);
+
+ /* Check for Name attr if id not matched/found */
+ dom_string *id_name = NULL;
+ err = _dom_element_get_attribute((dom_element *)n,
+ doc->memoised[hds_name], &id_name);
+ if(err != DOM_NO_ERR) {
+ return err;
+ }
+ if (id_name != NULL && dom_string_isequal(name, id_name)) {
+ *node = (struct dom_node *) n;
+ dom_node_ref(n);
+ dom_string_unref(id_name);
+
+ return DOM_NO_ERR;
+ }
+
}
/* Depth first iterating */
@@ -246,13 +263,13 @@ dom_exception dom_html_collection_named_item(dom_html_collection
*col,
/* No children and siblings */
struct dom_node_internal *parent = n->parent;
- while (parent != col->root &&
+ while (n != col->root &&
n == parent->last_child) {
n = parent;
parent = parent->parent;
}
- if (parent == col->root)
+ if (n == col->root)
n = NULL;
else
n = n->next;
diff --git a/src/html/html_document.c b/src/html/html_document.c
index ee16ac4..0eca66d 100644
--- a/src/html/html_document.c
+++ b/src/html/html_document.c
@@ -907,6 +907,7 @@ dom_exception _dom_html_document_set_cookie(dom_html_document *doc,
{
UNUSED(doc);
UNUSED(cookie);
+
/*todo implement this after updating client interface */
return DOM_NOT_SUPPORTED_ERR;
}
diff --git a/test/testcases/tests/level1/html/HTMLCollection04.xml
b/test/testcases/tests/level1/html/HTMLCollection04.xml
new file mode 100644
index 0000000..5d78405
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLCollection04.xml
@@ -0,0 +1,59 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xml" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 World Wide Web Consortium,
+(Massachusetts Institute of Technology, Institut National de
+Recherche en Informatique et en Automatique, Keio University). All
+Rights Reserved. This program is distributed under the W3C's Software
+Intellectual Property License. This program is distributed in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
+PURPOSE.
+
+See W3C License
http://www.w3.org/Consortium/Legal/ for more details.
+
+-->
+<!DOCTYPE test SYSTEM "dom1.dtd">
+<test
xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1"
name="HTMLCollection04">
+<metadata>
+<title>HTMLCollection04</title>
+<creator>NIST</creator>
+<description>
+ HTMLCollections are live, they are automatically updated when the
+ underlying document is changed.
+
+ Create a HTMLCollection object by invoking the rows attribute of the
+ first TABLE element and examine its length, then add a new row and
+ re-examine the length.
+</description>
+<contributor>Rick Rivello</contributor>
+<date qualifier="created">2002-05-01</date>
+<subject
resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-o...
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="rowLength1" type="int"/>
+<var name="rowLength2" type="int"/>
+<var name="rowsnodeList" type="HTMLCollection"/>
+<var name="newRow" type="HTMLElement"/>
+<var name="vrowindex" type="int" />
+<var name="doc" type="Document"/>
+<var name="result" type="List"/>
+<var name="expectedResult" type="List">
+<member>4</member>
+<member>5</member>
+</var>
+<load var="doc" href="collection"
willBeModified="true"/>
+<getElementsByTagName interface="Document" obj="doc"
var="nodeList" tagname='"table"'/>
+<assertSize collection="nodeList" size="1"
id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode"
index="0"/>
+<rows interface="HTMLTableElement" obj="testNode"
var="rowsnodeList"/>
+<length interface="HTMLCollection" obj="rowsnodeList"
var="rowLength1"/>
+<append collection="result" item="rowLength1"/>
+<insertRow interface="HTMLTableElement" obj="testNode"
var="newRow" index="4"/>
+<length interface="HTMLCollection" obj="rowsnodeList"
var="rowLength2"/>
+<append collection="result" item="rowLength2"/>
+<assertEquals actual="result" expected="expectedResult"
id="rowIndexLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLCollection04.xml.kfail
b/test/testcases/tests/level1/html/HTMLCollection04.xml.kfail
deleted file mode 100644
index 5d78405..0000000
--- a/test/testcases/tests/level1/html/HTMLCollection04.xml.kfail
+++ /dev/null
@@ -1,59 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<?xml-stylesheet href="test-to-html.xml" type="text/xml"?>
-
-<!--
-
-Copyright (c) 2001 World Wide Web Consortium,
-(Massachusetts Institute of Technology, Institut National de
-Recherche en Informatique et en Automatique, Keio University). All
-Rights Reserved. This program is distributed under the W3C's Software
-Intellectual Property License. This program is distributed in the
-hope that it will be useful, but WITHOUT ANY WARRANTY; without even
-the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
-PURPOSE.
-
-See W3C License
http://www.w3.org/Consortium/Legal/ for more details.
-
--->
-<!DOCTYPE test SYSTEM "dom1.dtd">
-<test
xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1"
name="HTMLCollection04">
-<metadata>
-<title>HTMLCollection04</title>
-<creator>NIST</creator>
-<description>
- HTMLCollections are live, they are automatically updated when the
- underlying document is changed.
-
- Create a HTMLCollection object by invoking the rows attribute of the
- first TABLE element and examine its length, then add a new row and
- re-examine the length.
-</description>
-<contributor>Rick Rivello</contributor>
-<date qualifier="created">2002-05-01</date>
-<subject
resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-o...
-</metadata>
-<var name="nodeList" type="NodeList"/>
-<var name="testNode" type="Node"/>
-<var name="rowLength1" type="int"/>
-<var name="rowLength2" type="int"/>
-<var name="rowsnodeList" type="HTMLCollection"/>
-<var name="newRow" type="HTMLElement"/>
-<var name="vrowindex" type="int" />
-<var name="doc" type="Document"/>
-<var name="result" type="List"/>
-<var name="expectedResult" type="List">
-<member>4</member>
-<member>5</member>
-</var>
-<load var="doc" href="collection"
willBeModified="true"/>
-<getElementsByTagName interface="Document" obj="doc"
var="nodeList" tagname='"table"'/>
-<assertSize collection="nodeList" size="1"
id="Asize"/>
-<item interface="NodeList" obj="nodeList" var="testNode"
index="0"/>
-<rows interface="HTMLTableElement" obj="testNode"
var="rowsnodeList"/>
-<length interface="HTMLCollection" obj="rowsnodeList"
var="rowLength1"/>
-<append collection="result" item="rowLength1"/>
-<insertRow interface="HTMLTableElement" obj="testNode"
var="newRow" index="4"/>
-<length interface="HTMLCollection" obj="rowsnodeList"
var="rowLength2"/>
-<append collection="result" item="rowLength2"/>
-<assertEquals actual="result" expected="expectedResult"
id="rowIndexLink" ignoreCase="false"/>
-</test>
diff --git a/test/testcases/tests/level1/html/HTMLCollection04.xml.notimpl
b/test/testcases/tests/level1/html/HTMLCollection04.xml.notimpl
deleted file mode 100644
index 5d78405..0000000
--- a/test/testcases/tests/level1/html/HTMLCollection04.xml.notimpl
+++ /dev/null
@@ -1,59 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<?xml-stylesheet href="test-to-html.xml" type="text/xml"?>
-
-<!--
-
-Copyright (c) 2001 World Wide Web Consortium,
-(Massachusetts Institute of Technology, Institut National de
-Recherche en Informatique et en Automatique, Keio University). All
-Rights Reserved. This program is distributed under the W3C's Software
-Intellectual Property License. This program is distributed in the
-hope that it will be useful, but WITHOUT ANY WARRANTY; without even
-the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
-PURPOSE.
-
-See W3C License
http://www.w3.org/Consortium/Legal/ for more details.
-
--->
-<!DOCTYPE test SYSTEM "dom1.dtd">
-<test
xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1"
name="HTMLCollection04">
-<metadata>
-<title>HTMLCollection04</title>
-<creator>NIST</creator>
-<description>
- HTMLCollections are live, they are automatically updated when the
- underlying document is changed.
-
- Create a HTMLCollection object by invoking the rows attribute of the
- first TABLE element and examine its length, then add a new row and
- re-examine the length.
-</description>
-<contributor>Rick Rivello</contributor>
-<date qualifier="created">2002-05-01</date>
-<subject
resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-o...
-</metadata>
-<var name="nodeList" type="NodeList"/>
-<var name="testNode" type="Node"/>
-<var name="rowLength1" type="int"/>
-<var name="rowLength2" type="int"/>
-<var name="rowsnodeList" type="HTMLCollection"/>
-<var name="newRow" type="HTMLElement"/>
-<var name="vrowindex" type="int" />
-<var name="doc" type="Document"/>
-<var name="result" type="List"/>
-<var name="expectedResult" type="List">
-<member>4</member>
-<member>5</member>
-</var>
-<load var="doc" href="collection"
willBeModified="true"/>
-<getElementsByTagName interface="Document" obj="doc"
var="nodeList" tagname='"table"'/>
-<assertSize collection="nodeList" size="1"
id="Asize"/>
-<item interface="NodeList" obj="nodeList" var="testNode"
index="0"/>
-<rows interface="HTMLTableElement" obj="testNode"
var="rowsnodeList"/>
-<length interface="HTMLCollection" obj="rowsnodeList"
var="rowLength1"/>
-<append collection="result" item="rowLength1"/>
-<insertRow interface="HTMLTableElement" obj="testNode"
var="newRow" index="4"/>
-<length interface="HTMLCollection" obj="rowsnodeList"
var="rowLength2"/>
-<append collection="result" item="rowLength2"/>
-<assertEquals actual="result" expected="expectedResult"
id="rowIndexLink" ignoreCase="false"/>
-</test>
diff --git a/test/testcases/tests/level1/html/HTMLCollection05.xml
b/test/testcases/tests/level1/html/HTMLCollection05.xml
new file mode 100644
index 0000000..ffb7d13
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLCollection05.xml
@@ -0,0 +1,46 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xml" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 World Wide Web Consortium,
+(Massachusetts Institute of Technology, Institut National de
+Recherche en Informatique et en Automatique, Keio University). All
+Rights Reserved. This program is distributed under the W3C's Software
+Intellectual Property License. This program is distributed in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
+PURPOSE.
+
+See W3C License
http://www.w3.org/Consortium/Legal/ for more details.
+
+-->
+<!DOCTYPE test SYSTEM "dom1.dtd">
+<test
xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1"
name="HTMLCollection05">
+<metadata>
+<title>HTMLCollection05</title>
+<creator>NIST</creator>
+<description>
+ The length attribute specifies the length or size of the list.
+
+ Retrieve the first TABLE element and create a HTMLCollection by invoking
+ the "rows" attribute. Retrieve the length attribute of the HTMLCollection
+ object.
+</description>
+<contributor>Rick Rivello</contributor>
+<date qualifier="created">2002-05-01</date>
+<subject
resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-o...
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="rowsnodeList" type="HTMLCollection"/>
+<var name="rowLength" type="int" />
+<var name="doc" type="Document"/>
+<load var="doc" href="collection"
willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc"
var="nodeList" tagname='"table"'/>
+<assertSize collection="nodeList" size="1"
id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode"
index="0"/>
+<rows interface="HTMLTableElement" obj="testNode"
var="rowsnodeList"/>
+<length interface="HTMLCollection" obj="rowsnodeList"
var="rowLength"/>
+<assertEquals actual="rowLength" expected="4"
id="rowIndexLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLCollection05.xml.kfail
b/test/testcases/tests/level1/html/HTMLCollection05.xml.kfail
deleted file mode 100644
index ffb7d13..0000000
--- a/test/testcases/tests/level1/html/HTMLCollection05.xml.kfail
+++ /dev/null
@@ -1,46 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<?xml-stylesheet href="test-to-html.xml" type="text/xml"?>
-
-<!--
-
-Copyright (c) 2001 World Wide Web Consortium,
-(Massachusetts Institute of Technology, Institut National de
-Recherche en Informatique et en Automatique, Keio University). All
-Rights Reserved. This program is distributed under the W3C's Software
-Intellectual Property License. This program is distributed in the
-hope that it will be useful, but WITHOUT ANY WARRANTY; without even
-the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
-PURPOSE.
-
-See W3C License
http://www.w3.org/Consortium/Legal/ for more details.
-
--->
-<!DOCTYPE test SYSTEM "dom1.dtd">
-<test
xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1"
name="HTMLCollection05">
-<metadata>
-<title>HTMLCollection05</title>
-<creator>NIST</creator>
-<description>
- The length attribute specifies the length or size of the list.
-
- Retrieve the first TABLE element and create a HTMLCollection by invoking
- the "rows" attribute. Retrieve the length attribute of the HTMLCollection
- object.
-</description>
-<contributor>Rick Rivello</contributor>
-<date qualifier="created">2002-05-01</date>
-<subject
resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-o...
-</metadata>
-<var name="nodeList" type="NodeList"/>
-<var name="testNode" type="Node"/>
-<var name="rowsnodeList" type="HTMLCollection"/>
-<var name="rowLength" type="int" />
-<var name="doc" type="Document"/>
-<load var="doc" href="collection"
willBeModified="false"/>
-<getElementsByTagName interface="Document" obj="doc"
var="nodeList" tagname='"table"'/>
-<assertSize collection="nodeList" size="1"
id="Asize"/>
-<item interface="NodeList" obj="nodeList" var="testNode"
index="0"/>
-<rows interface="HTMLTableElement" obj="testNode"
var="rowsnodeList"/>
-<length interface="HTMLCollection" obj="rowsnodeList"
var="rowLength"/>
-<assertEquals actual="rowLength" expected="4"
id="rowIndexLink" ignoreCase="false"/>
-</test>
diff --git a/test/testcases/tests/level1/html/HTMLCollection05.xml.notimpl
b/test/testcases/tests/level1/html/HTMLCollection05.xml.notimpl
deleted file mode 100644
index ffb7d13..0000000
--- a/test/testcases/tests/level1/html/HTMLCollection05.xml.notimpl
+++ /dev/null
@@ -1,46 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<?xml-stylesheet href="test-to-html.xml" type="text/xml"?>
-
-<!--
-
-Copyright (c) 2001 World Wide Web Consortium,
-(Massachusetts Institute of Technology, Institut National de
-Recherche en Informatique et en Automatique, Keio University). All
-Rights Reserved. This program is distributed under the W3C's Software
-Intellectual Property License. This program is distributed in the
-hope that it will be useful, but WITHOUT ANY WARRANTY; without even
-the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
-PURPOSE.
-
-See W3C License
http://www.w3.org/Consortium/Legal/ for more details.
-
--->
-<!DOCTYPE test SYSTEM "dom1.dtd">
-<test
xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1"
name="HTMLCollection05">
-<metadata>
-<title>HTMLCollection05</title>
-<creator>NIST</creator>
-<description>
- The length attribute specifies the length or size of the list.
-
- Retrieve the first TABLE element and create a HTMLCollection by invoking
- the "rows" attribute. Retrieve the length attribute of the HTMLCollection
- object.
-</description>
-<contributor>Rick Rivello</contributor>
-<date qualifier="created">2002-05-01</date>
-<subject
resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-o...
-</metadata>
-<var name="nodeList" type="NodeList"/>
-<var name="testNode" type="Node"/>
-<var name="rowsnodeList" type="HTMLCollection"/>
-<var name="rowLength" type="int" />
-<var name="doc" type="Document"/>
-<load var="doc" href="collection"
willBeModified="false"/>
-<getElementsByTagName interface="Document" obj="doc"
var="nodeList" tagname='"table"'/>
-<assertSize collection="nodeList" size="1"
id="Asize"/>
-<item interface="NodeList" obj="nodeList" var="testNode"
index="0"/>
-<rows interface="HTMLTableElement" obj="testNode"
var="rowsnodeList"/>
-<length interface="HTMLCollection" obj="rowsnodeList"
var="rowLength"/>
-<assertEquals actual="rowLength" expected="4"
id="rowIndexLink" ignoreCase="false"/>
-</test>
diff --git a/test/testcases/tests/level1/html/HTMLCollection06.xml
b/test/testcases/tests/level1/html/HTMLCollection06.xml
new file mode 100644
index 0000000..1026310
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLCollection06.xml
@@ -0,0 +1,50 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xml" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 World Wide Web Consortium,
+(Massachusetts Institute of Technology, Institut National de
+Recherche en Informatique et en Automatique, Keio University). All
+Rights Reserved. This program is distributed under the W3C's Software
+Intellectual Property License. This program is distributed in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
+PURPOSE.
+
+See W3C License
http://www.w3.org/Consortium/Legal/ for more details.
+
+-->
+<!DOCTYPE test SYSTEM "dom1.dtd">
+<test
xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1"
name="HTMLCollection06">
+<metadata>
+<title>HTMLCollection06</title>
+<creator>NIST</creator>
+<description>
+ An item(index) method retrieves an item specified by ordinal index
+ (Test for index=0).
+
+ Retrieve the first TABLE element and create a HTMLCollection by invoking
+ the "rows" attribute. The item located at ordinal index 0 is further
+ retrieved and its "rowIndex" attribute is examined.
+</description>
+<contributor>Rick Rivello</contributor>
+<date qualifier="created">2002-05-01</date>
+<subject
resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-o...
+<subject
resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-o...
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="rowNode" type="Node"/>
+<var name="rowsnodeList" type="HTMLCollection"/>
+<var name="vrowindex" type="int" />
+<var name="doc" type="Document"/>
+<load var="doc" href="collection"
willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc"
var="nodeList" tagname='"table"'/>
+<assertSize collection="nodeList" size="1"
id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode"
index="0"/>
+<rows interface="HTMLTableElement" obj="testNode"
var="rowsnodeList"/>
+<item interface="HTMLCollection" obj="rowsnodeList"
var="rowNode" index="0"/>
+<rowIndex interface="HTMLTableRowElement" obj="rowNode"
var="vrowindex"/>
+<assertEquals actual="vrowindex" expected="0"
id="rowIndexLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLCollection06.xml.notimpl
b/test/testcases/tests/level1/html/HTMLCollection06.xml.notimpl
deleted file mode 100644
index 1026310..0000000
--- a/test/testcases/tests/level1/html/HTMLCollection06.xml.notimpl
+++ /dev/null
@@ -1,50 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<?xml-stylesheet href="test-to-html.xml" type="text/xml"?>
-
-<!--
-
-Copyright (c) 2001 World Wide Web Consortium,
-(Massachusetts Institute of Technology, Institut National de
-Recherche en Informatique et en Automatique, Keio University). All
-Rights Reserved. This program is distributed under the W3C's Software
-Intellectual Property License. This program is distributed in the
-hope that it will be useful, but WITHOUT ANY WARRANTY; without even
-the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
-PURPOSE.
-
-See W3C License
http://www.w3.org/Consortium/Legal/ for more details.
-
--->
-<!DOCTYPE test SYSTEM "dom1.dtd">
-<test
xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1"
name="HTMLCollection06">
-<metadata>
-<title>HTMLCollection06</title>
-<creator>NIST</creator>
-<description>
- An item(index) method retrieves an item specified by ordinal index
- (Test for index=0).
-
- Retrieve the first TABLE element and create a HTMLCollection by invoking
- the "rows" attribute. The item located at ordinal index 0 is further
- retrieved and its "rowIndex" attribute is examined.
-</description>
-<contributor>Rick Rivello</contributor>
-<date qualifier="created">2002-05-01</date>
-<subject
resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-o...
-<subject
resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-o...
-</metadata>
-<var name="nodeList" type="NodeList"/>
-<var name="testNode" type="Node"/>
-<var name="rowNode" type="Node"/>
-<var name="rowsnodeList" type="HTMLCollection"/>
-<var name="vrowindex" type="int" />
-<var name="doc" type="Document"/>
-<load var="doc" href="collection"
willBeModified="false"/>
-<getElementsByTagName interface="Document" obj="doc"
var="nodeList" tagname='"table"'/>
-<assertSize collection="nodeList" size="1"
id="Asize"/>
-<item interface="NodeList" obj="nodeList" var="testNode"
index="0"/>
-<rows interface="HTMLTableElement" obj="testNode"
var="rowsnodeList"/>
-<item interface="HTMLCollection" obj="rowsnodeList"
var="rowNode" index="0"/>
-<rowIndex interface="HTMLTableRowElement" obj="rowNode"
var="vrowindex"/>
-<assertEquals actual="vrowindex" expected="0"
id="rowIndexLink" ignoreCase="false"/>
-</test>
diff --git a/test/testcases/tests/level1/html/HTMLCollection07.xml
b/test/testcases/tests/level1/html/HTMLCollection07.xml
new file mode 100644
index 0000000..55e392f
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLCollection07.xml
@@ -0,0 +1,49 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xml" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 World Wide Web Consortium,
+(Massachusetts Institute of Technology, Institut National de
+Recherche en Informatique et en Automatique, Keio University). All
+Rights Reserved. This program is distributed under the W3C's Software
+Intellectual Property License. This program is distributed in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
+PURPOSE.
+
+See W3C License
http://www.w3.org/Consortium/Legal/ for more details.
+
+-->
+<!DOCTYPE test SYSTEM "dom1.dtd">
+<test
xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1"
name="HTMLCollection07">
+<metadata>
+<title>HTMLCollection07</title>
+<creator>NIST</creator>
+<description>
+ An item(index) method retrieves an item specified by ordinal index
+ (Test for index=3).
+
+ Retrieve the first TABLE element and create a HTMLCollection by invoking
+ the "rows" attribute. The item located at ordinal index 3 is further
+ retrieved and its "rowIndex" attribute is examined.
+</description>
+<contributor>Rick Rivello</contributor>
+<date qualifier="created">2002-05-01</date>
+<subject
resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-o...
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="rowNode" type="Node"/>
+<var name="rowsnodeList" type="HTMLCollection"/>
+<var name="vrowindex" type="int" />
+<var name="doc" type="Document"/>
+<load var="doc" href="collection"
willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc"
var="nodeList" tagname='"table"'/>
+<assertSize collection="nodeList" size="1"
id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode"
index="0"/>
+<rows interface="HTMLTableElement" obj="testNode"
var="rowsnodeList"/>
+<item interface="HTMLCollection" obj="rowsnodeList"
var="rowNode" index="3"/>
+<rowIndex interface="HTMLTableRowElement" obj="rowNode"
var="vrowindex"/>
+<assertEquals actual="vrowindex" expected="2"
id="rowIndexLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLCollection07.xml.notimpl
b/test/testcases/tests/level1/html/HTMLCollection07.xml.notimpl
deleted file mode 100644
index e0a21a2..0000000
--- a/test/testcases/tests/level1/html/HTMLCollection07.xml.notimpl
+++ /dev/null
@@ -1,49 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<?xml-stylesheet href="test-to-html.xml" type="text/xml"?>
-
-<!--
-
-Copyright (c) 2001 World Wide Web Consortium,
-(Massachusetts Institute of Technology, Institut National de
-Recherche en Informatique et en Automatique, Keio University). All
-Rights Reserved. This program is distributed under the W3C's Software
-Intellectual Property License. This program is distributed in the
-hope that it will be useful, but WITHOUT ANY WARRANTY; without even
-the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
-PURPOSE.
-
-See W3C License
http://www.w3.org/Consortium/Legal/ for more details.
-
--->
-<!DOCTYPE test SYSTEM "dom1.dtd">
-<test
xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1"
name="HTMLCollection07">
-<metadata>
-<title>HTMLCollection07</title>
-<creator>NIST</creator>
-<description>
- An item(index) method retrieves an item specified by ordinal index
- (Test for index=3).
-
- Retrieve the first TABLE element and create a HTMLCollection by invoking
- the "rows" attribute. The item located at ordinal index 3 is further
- retrieved and its "rowIndex" attribute is examined.
-</description>
-<contributor>Rick Rivello</contributor>
-<date qualifier="created">2002-05-01</date>
-<subject
resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-o...
-</metadata>
-<var name="nodeList" type="NodeList"/>
-<var name="testNode" type="Node"/>
-<var name="rowNode" type="Node"/>
-<var name="rowsnodeList" type="HTMLCollection"/>
-<var name="vrowindex" type="int" />
-<var name="doc" type="Document"/>
-<load var="doc" href="collection"
willBeModified="false"/>
-<getElementsByTagName interface="Document" obj="doc"
var="nodeList" tagname='"table"'/>
-<assertSize collection="nodeList" size="1"
id="Asize"/>
-<item interface="NodeList" obj="nodeList" var="testNode"
index="0"/>
-<rows interface="HTMLTableElement" obj="testNode"
var="rowsnodeList"/>
-<item interface="HTMLCollection" obj="rowsnodeList"
var="rowNode" index="3"/>
-<rowIndex interface="HTMLTableRowElement" obj="rowNode"
var="vrowindex"/>
-<assertEquals actual="vrowindex" expected="3"
id="rowIndexLink" ignoreCase="false"/>
-</test>
diff --git a/test/testcases/tests/level1/html/HTMLCollection08.xml
b/test/testcases/tests/level1/html/HTMLCollection08.xml
new file mode 100644
index 0000000..8f7f138
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLCollection08.xml
@@ -0,0 +1,49 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xml" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 World Wide Web Consortium,
+(Massachusetts Institute of Technology, Institut National de
+Recherche en Informatique et en Automatique, Keio University). All
+Rights Reserved. This program is distributed under the W3C's Software
+Intellectual Property License. This program is distributed in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
+PURPOSE.
+
+See W3C License
http://www.w3.org/Consortium/Legal/ for more details.
+
+-->
+<!DOCTYPE test SYSTEM "dom1.dtd">
+<test
xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1"
name="HTMLCollection08">
+<metadata>
+<title>HTMLCollection08</title>
+<creator>NIST</creator>
+<description>
+ Nodes in a HTMLCollection object are numbered in tree order.
+ (Depth-first traversal order).
+
+ Retrieve the first TABLE element and create a HTMLCollection by invoking
+ the "rows" attribute. Access the item in the third ordinal index. The
+ resulting rowIndex attribute is examined and should be two.
+</description>
+<contributor>Rick Rivello</contributor>
+<date qualifier="created">2002-05-01</date>
+<subject
resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-o...
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="rowNode" type="Node"/>
+<var name="rowsnodeList" type="HTMLCollection"/>
+<var name="vrowindex" type="int" />
+<var name="doc" type="Document"/>
+<load var="doc" href="collection"
willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc"
var="nodeList" tagname='"table"'/>
+<assertSize collection="nodeList" size="1"
id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode"
index="0"/>
+<rows interface="HTMLTableElement" obj="testNode"
var="rowsnodeList"/>
+<item interface="HTMLCollection" obj="rowsnodeList"
var="rowNode" index="3"/>
+<rowIndex interface="HTMLTableRowElement" obj="rowNode"
var="vrowindex"/>
+<assertEquals actual="vrowindex" expected="2"
id="rowIndexLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLCollection08.xml.notimpl
b/test/testcases/tests/level1/html/HTMLCollection08.xml.notimpl
deleted file mode 100644
index dfc2e10..0000000
--- a/test/testcases/tests/level1/html/HTMLCollection08.xml.notimpl
+++ /dev/null
@@ -1,49 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<?xml-stylesheet href="test-to-html.xml" type="text/xml"?>
-
-<!--
-
-Copyright (c) 2001 World Wide Web Consortium,
-(Massachusetts Institute of Technology, Institut National de
-Recherche en Informatique et en Automatique, Keio University). All
-Rights Reserved. This program is distributed under the W3C's Software
-Intellectual Property License. This program is distributed in the
-hope that it will be useful, but WITHOUT ANY WARRANTY; without even
-the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
-PURPOSE.
-
-See W3C License
http://www.w3.org/Consortium/Legal/ for more details.
-
--->
-<!DOCTYPE test SYSTEM "dom1.dtd">
-<test
xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1"
name="HTMLCollection08">
-<metadata>
-<title>HTMLCollection08</title>
-<creator>NIST</creator>
-<description>
- Nodes in a HTMLCollection object are numbered in tree order.
- (Depth-first traversal order).
-
- Retrieve the first TABLE element and create a HTMLCollection by invoking
- the "rows" attribute. Access the item in the third ordinal index. The
- resulting rowIndex attribute is examined and should be two.
-</description>
-<contributor>Rick Rivello</contributor>
-<date qualifier="created">2002-05-01</date>
-<subject
resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-o...
-</metadata>
-<var name="nodeList" type="NodeList"/>
-<var name="testNode" type="Node"/>
-<var name="rowNode" type="Node"/>
-<var name="rowsnodeList" type="HTMLCollection"/>
-<var name="vrowindex" type="int" />
-<var name="doc" type="Document"/>
-<load var="doc" href="collection"
willBeModified="false"/>
-<getElementsByTagName interface="Document" obj="doc"
var="nodeList" tagname='"table"'/>
-<assertSize collection="nodeList" size="1"
id="Asize"/>
-<item interface="NodeList" obj="nodeList" var="testNode"
index="0"/>
-<rows interface="HTMLTableElement" obj="testNode"
var="rowsnodeList"/>
-<item interface="HTMLCollection" obj="rowsnodeList"
var="rowNode" index="2"/>
-<rowIndex interface="HTMLTableRowElement" obj="rowNode"
var="vrowindex"/>
-<assertEquals actual="vrowindex" expected="2"
id="rowIndexLink" ignoreCase="false"/>
-</test>
diff --git a/test/testcases/tests/level1/html/HTMLCollection09.xml
b/test/testcases/tests/level1/html/HTMLCollection09.xml
new file mode 100644
index 0000000..f81e7af
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLCollection09.xml
@@ -0,0 +1,47 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xml" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 World Wide Web Consortium,
+(Massachusetts Institute of Technology, Institut National de
+Recherche en Informatique et en Automatique, Keio University). All
+Rights Reserved. This program is distributed under the W3C's Software
+Intellectual Property License. This program is distributed in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
+PURPOSE.
+
+See W3C License
http://www.w3.org/Consortium/Legal/ for more details.
+
+-->
+<!DOCTYPE test SYSTEM "dom1.dtd">
+<test
xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1"
name="HTMLCollection09">
+<metadata>
+<title>HTMLCollection09</title>
+<creator>NIST</creator>
+<description>
+ The item(index) method returns null if the index is out of range.
+
+ Retrieve the first TABLE element and create a HTMLCollection by invoking
+ the "rows" attribute. Invoke the item(index) method with an index
+ of 5. This index is out of range and should return null.
+</description>
+<contributor>Rick Rivello</contributor>
+<date qualifier="created">2002-05-01</date>
+<subject
resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-o...
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="rowNode" type="Node"/>
+<var name="rowsnodeList" type="HTMLCollection"/>
+<var name="vrowindex" type="int" />
+<var name="doc" type="Document"/>
+<load var="doc" href="collection"
willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc"
var="nodeList" tagname='"table"'/>
+<assertSize collection="nodeList" size="1"
id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode"
index="0"/>
+<rows interface="HTMLTableElement" obj="testNode"
var="rowsnodeList"/>
+<item interface="HTMLCollection" obj="rowsnodeList"
var="rowNode" index="5"/>
+<assertNull actual="rowNode" id="rowIndexLink"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLCollection09.xml.kfail
b/test/testcases/tests/level1/html/HTMLCollection09.xml.kfail
deleted file mode 100644
index f81e7af..0000000
--- a/test/testcases/tests/level1/html/HTMLCollection09.xml.kfail
+++ /dev/null
@@ -1,47 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<?xml-stylesheet href="test-to-html.xml" type="text/xml"?>
-
-<!--
-
-Copyright (c) 2001 World Wide Web Consortium,
-(Massachusetts Institute of Technology, Institut National de
-Recherche en Informatique et en Automatique, Keio University). All
-Rights Reserved. This program is distributed under the W3C's Software
-Intellectual Property License. This program is distributed in the
-hope that it will be useful, but WITHOUT ANY WARRANTY; without even
-the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
-PURPOSE.
-
-See W3C License
http://www.w3.org/Consortium/Legal/ for more details.
-
--->
-<!DOCTYPE test SYSTEM "dom1.dtd">
-<test
xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1"
name="HTMLCollection09">
-<metadata>
-<title>HTMLCollection09</title>
-<creator>NIST</creator>
-<description>
- The item(index) method returns null if the index is out of range.
-
- Retrieve the first TABLE element and create a HTMLCollection by invoking
- the "rows" attribute. Invoke the item(index) method with an index
- of 5. This index is out of range and should return null.
-</description>
-<contributor>Rick Rivello</contributor>
-<date qualifier="created">2002-05-01</date>
-<subject
resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-o...
-</metadata>
-<var name="nodeList" type="NodeList"/>
-<var name="testNode" type="Node"/>
-<var name="rowNode" type="Node"/>
-<var name="rowsnodeList" type="HTMLCollection"/>
-<var name="vrowindex" type="int" />
-<var name="doc" type="Document"/>
-<load var="doc" href="collection"
willBeModified="false"/>
-<getElementsByTagName interface="Document" obj="doc"
var="nodeList" tagname='"table"'/>
-<assertSize collection="nodeList" size="1"
id="Asize"/>
-<item interface="NodeList" obj="nodeList" var="testNode"
index="0"/>
-<rows interface="HTMLTableElement" obj="testNode"
var="rowsnodeList"/>
-<item interface="HTMLCollection" obj="rowsnodeList"
var="rowNode" index="5"/>
-<assertNull actual="rowNode" id="rowIndexLink"/>
-</test>
diff --git a/test/testcases/tests/level1/html/HTMLCollection09.xml.notimpl
b/test/testcases/tests/level1/html/HTMLCollection09.xml.notimpl
deleted file mode 100644
index f81e7af..0000000
--- a/test/testcases/tests/level1/html/HTMLCollection09.xml.notimpl
+++ /dev/null
@@ -1,47 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<?xml-stylesheet href="test-to-html.xml" type="text/xml"?>
-
-<!--
-
-Copyright (c) 2001 World Wide Web Consortium,
-(Massachusetts Institute of Technology, Institut National de
-Recherche en Informatique et en Automatique, Keio University). All
-Rights Reserved. This program is distributed under the W3C's Software
-Intellectual Property License. This program is distributed in the
-hope that it will be useful, but WITHOUT ANY WARRANTY; without even
-the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
-PURPOSE.
-
-See W3C License
http://www.w3.org/Consortium/Legal/ for more details.
-
--->
-<!DOCTYPE test SYSTEM "dom1.dtd">
-<test
xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1"
name="HTMLCollection09">
-<metadata>
-<title>HTMLCollection09</title>
-<creator>NIST</creator>
-<description>
- The item(index) method returns null if the index is out of range.
-
- Retrieve the first TABLE element and create a HTMLCollection by invoking
- the "rows" attribute. Invoke the item(index) method with an index
- of 5. This index is out of range and should return null.
-</description>
-<contributor>Rick Rivello</contributor>
-<date qualifier="created">2002-05-01</date>
-<subject
resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-o...
-</metadata>
-<var name="nodeList" type="NodeList"/>
-<var name="testNode" type="Node"/>
-<var name="rowNode" type="Node"/>
-<var name="rowsnodeList" type="HTMLCollection"/>
-<var name="vrowindex" type="int" />
-<var name="doc" type="Document"/>
-<load var="doc" href="collection"
willBeModified="false"/>
-<getElementsByTagName interface="Document" obj="doc"
var="nodeList" tagname='"table"'/>
-<assertSize collection="nodeList" size="1"
id="Asize"/>
-<item interface="NodeList" obj="nodeList" var="testNode"
index="0"/>
-<rows interface="HTMLTableElement" obj="testNode"
var="rowsnodeList"/>
-<item interface="HTMLCollection" obj="rowsnodeList"
var="rowNode" index="5"/>
-<assertNull actual="rowNode" id="rowIndexLink"/>
-</test>
diff --git a/test/testcases/tests/level1/html/HTMLCollection10.xml
b/test/testcases/tests/level1/html/HTMLCollection10.xml
new file mode 100644
index 0000000..78f4c9a
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLCollection10.xml
@@ -0,0 +1,51 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xml" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 World Wide Web Consortium,
+(Massachusetts Institute of Technology, Institut National de
+Recherche en Informatique et en Automatique, Keio University). All
+Rights Reserved. This program is distributed under the W3C's Software
+Intellectual Property License. This program is distributed in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
+PURPOSE.
+
+See W3C License
http://www.w3.org/Consortium/Legal/ for more details.
+
+-->
+<!DOCTYPE test SYSTEM "dom1.dtd">
+<test
xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1"
name="HTMLCollection10">
+<metadata>
+<title>HTMLCollection10</title>
+<creator>NIST</creator>
+<description>
+ The namedItem(name) method retrieves a node using a name. It first
+ searches for a node with a matching id attribute. If it doesn't find
+ one, it then searches for a Node with a matching name attribute, but only
+ on those elements that are allowed a name attribute.
+
+ Retrieve the first FORM element and create a HTMLCollection by invoking
+ the elements attribute. The first SELECT element is further retrieved
+ using the elements name attribute since the id attribute doesn't match.
+</description>
+<contributor>Rick Rivello</contributor>
+<date qualifier="created">2002-05-01</date>
+<subject
resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-o...
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="formNode" type="Node"/>
+<var name="formsnodeList" type="HTMLCollection"/>
+<var name="vname" type="DOMString" />
+<var name="doc" type="Document"/>
+<load var="doc" href="collection"
willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc"
var="nodeList" tagname='"form"'/>
+<assertSize collection="nodeList" size="1"
id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode"
index="0"/>
+<elements interface="HTMLFormElement" obj="testNode"
var="formsnodeList"/>
+<namedItem obj="formsnodeList" var="formNode"
name='"select1"'/>
+<nodeName obj="formNode" var="vname"/>
+<assertEquals actual="vname" expected='"SELECT"'
id="nameIndexLink" ignoreCase="auto"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLCollection10.xml.kfail
b/test/testcases/tests/level1/html/HTMLCollection10.xml.kfail
deleted file mode 100644
index 78f4c9a..0000000
--- a/test/testcases/tests/level1/html/HTMLCollection10.xml.kfail
+++ /dev/null
@@ -1,51 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<?xml-stylesheet href="test-to-html.xml" type="text/xml"?>
-
-<!--
-
-Copyright (c) 2001 World Wide Web Consortium,
-(Massachusetts Institute of Technology, Institut National de
-Recherche en Informatique et en Automatique, Keio University). All
-Rights Reserved. This program is distributed under the W3C's Software
-Intellectual Property License. This program is distributed in the
-hope that it will be useful, but WITHOUT ANY WARRANTY; without even
-the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
-PURPOSE.
-
-See W3C License
http://www.w3.org/Consortium/Legal/ for more details.
-
--->
-<!DOCTYPE test SYSTEM "dom1.dtd">
-<test
xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1"
name="HTMLCollection10">
-<metadata>
-<title>HTMLCollection10</title>
-<creator>NIST</creator>
-<description>
- The namedItem(name) method retrieves a node using a name. It first
- searches for a node with a matching id attribute. If it doesn't find
- one, it then searches for a Node with a matching name attribute, but only
- on those elements that are allowed a name attribute.
-
- Retrieve the first FORM element and create a HTMLCollection by invoking
- the elements attribute. The first SELECT element is further retrieved
- using the elements name attribute since the id attribute doesn't match.
-</description>
-<contributor>Rick Rivello</contributor>
-<date qualifier="created">2002-05-01</date>
-<subject
resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-o...
-</metadata>
-<var name="nodeList" type="NodeList"/>
-<var name="testNode" type="Node"/>
-<var name="formNode" type="Node"/>
-<var name="formsnodeList" type="HTMLCollection"/>
-<var name="vname" type="DOMString" />
-<var name="doc" type="Document"/>
-<load var="doc" href="collection"
willBeModified="false"/>
-<getElementsByTagName interface="Document" obj="doc"
var="nodeList" tagname='"form"'/>
-<assertSize collection="nodeList" size="1"
id="Asize"/>
-<item interface="NodeList" obj="nodeList" var="testNode"
index="0"/>
-<elements interface="HTMLFormElement" obj="testNode"
var="formsnodeList"/>
-<namedItem obj="formsnodeList" var="formNode"
name='"select1"'/>
-<nodeName obj="formNode" var="vname"/>
-<assertEquals actual="vname" expected='"SELECT"'
id="nameIndexLink" ignoreCase="auto"/>
-</test>
diff --git a/test/testcases/tests/level1/html/HTMLCollection11.xml
b/test/testcases/tests/level1/html/HTMLCollection11.xml
new file mode 100644
index 0000000..ebf217f
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLCollection11.xml
@@ -0,0 +1,51 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xml" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 World Wide Web Consortium,
+(Massachusetts Institute of Technology, Institut National de
+Recherche en Informatique et en Automatique, Keio University). All
+Rights Reserved. This program is distributed under the W3C's Software
+Intellectual Property License. This program is distributed in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
+PURPOSE.
+
+See W3C License
http://www.w3.org/Consortium/Legal/ for more details.
+
+-->
+<!DOCTYPE test SYSTEM "dom1.dtd">
+<test
xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1"
name="HTMLCollection11">
+<metadata>
+<title>HTMLCollection11</title>
+<creator>NIST</creator>
+<description>
+ The namedItem(name) method retrieves a node using a name. It first
+ searches for a node with a matching id attribute. If it doesn't find
+ one, it then searches for a Node with a matching name attribute, but only
+ on those elements that are allowed a name attribute.
+
+ Retrieve the first FORM element and create a HTMLCollection by invoking
+ the elements attribute. The first SELECT element is further retrieved
+ using the elements id attribute.
+</description>
+<contributor>Rick Rivello</contributor>
+<date qualifier="created">2002-05-01</date>
+<subject
resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-o...
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="formNode" type="Node"/>
+<var name="formsnodeList" type="HTMLCollection"/>
+<var name="vname" type="DOMString" />
+<var name="doc" type="Document"/>
+<load var="doc" href="collection"
willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc"
var="nodeList" tagname='"form"'/>
+<assertSize collection="nodeList" size="1"
id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode"
index="0"/>
+<elements interface="HTMLFormElement" obj="testNode"
var="formsnodeList"/>
+<namedItem obj="formsnodeList" var="formNode"
name='"selectId"'/>
+<nodeName obj="formNode" var="vname"/>
+<assertEquals actual="vname" expected='"select"'
id="nameIndexLink" ignoreCase="auto"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLCollection11.xml.kfail
b/test/testcases/tests/level1/html/HTMLCollection11.xml.kfail
deleted file mode 100644
index ebf217f..0000000
--- a/test/testcases/tests/level1/html/HTMLCollection11.xml.kfail
+++ /dev/null
@@ -1,51 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<?xml-stylesheet href="test-to-html.xml" type="text/xml"?>
-
-<!--
-
-Copyright (c) 2001 World Wide Web Consortium,
-(Massachusetts Institute of Technology, Institut National de
-Recherche en Informatique et en Automatique, Keio University). All
-Rights Reserved. This program is distributed under the W3C's Software
-Intellectual Property License. This program is distributed in the
-hope that it will be useful, but WITHOUT ANY WARRANTY; without even
-the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
-PURPOSE.
-
-See W3C License
http://www.w3.org/Consortium/Legal/ for more details.
-
--->
-<!DOCTYPE test SYSTEM "dom1.dtd">
-<test
xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1"
name="HTMLCollection11">
-<metadata>
-<title>HTMLCollection11</title>
-<creator>NIST</creator>
-<description>
- The namedItem(name) method retrieves a node using a name. It first
- searches for a node with a matching id attribute. If it doesn't find
- one, it then searches for a Node with a matching name attribute, but only
- on those elements that are allowed a name attribute.
-
- Retrieve the first FORM element and create a HTMLCollection by invoking
- the elements attribute. The first SELECT element is further retrieved
- using the elements id attribute.
-</description>
-<contributor>Rick Rivello</contributor>
-<date qualifier="created">2002-05-01</date>
-<subject
resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-o...
-</metadata>
-<var name="nodeList" type="NodeList"/>
-<var name="testNode" type="Node"/>
-<var name="formNode" type="Node"/>
-<var name="formsnodeList" type="HTMLCollection"/>
-<var name="vname" type="DOMString" />
-<var name="doc" type="Document"/>
-<load var="doc" href="collection"
willBeModified="false"/>
-<getElementsByTagName interface="Document" obj="doc"
var="nodeList" tagname='"form"'/>
-<assertSize collection="nodeList" size="1"
id="Asize"/>
-<item interface="NodeList" obj="nodeList" var="testNode"
index="0"/>
-<elements interface="HTMLFormElement" obj="testNode"
var="formsnodeList"/>
-<namedItem obj="formsnodeList" var="formNode"
name='"selectId"'/>
-<nodeName obj="formNode" var="vname"/>
-<assertEquals actual="vname" expected='"select"'
id="nameIndexLink" ignoreCase="auto"/>
-</test>
diff --git a/test/testcases/tests/level1/html/HTMLCollection12.xml.kfail
b/test/testcases/tests/level1/html/HTMLCollection12.xml.kfail
deleted file mode 100644
index d7feb3d..0000000
--- a/test/testcases/tests/level1/html/HTMLCollection12.xml.kfail
+++ /dev/null
@@ -1,50 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<?xml-stylesheet href="test-to-html.xml" type="text/xml"?>
-
-<!--
-
-Copyright (c) 2001 World Wide Web Consortium,
-(Massachusetts Institute of Technology, Institut National de
-Recherche en Informatique et en Automatique, Keio University). All
-Rights Reserved. This program is distributed under the W3C's Software
-Intellectual Property License. This program is distributed in the
-hope that it will be useful, but WITHOUT ANY WARRANTY; without even
-the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
-PURPOSE.
-
-See W3C License
http://www.w3.org/Consortium/Legal/ for more details.
-
--->
-<!DOCTYPE test SYSTEM "dom1.dtd">
-<test
xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1"
name="HTMLCollection12">
-<metadata>
-<title>HTMLCollection12</title>
-<creator>NIST</creator>
-<description>
- The namedItem(name) method retrieves a node using a name. It first
- searches for a node with a matching id attribute. If it doesn't find
- one, it then searches for a Node with a matching name attribute, but only
- on those elements that are allowed a name attribute. If there isn't
- a matching node the method returns null.
-
- Retrieve the first FORM element and create a HTMLCollection by invoking
- the elements attribute. The method returns null since there is not a
- match of the name or id attribute.
-</description>
-<contributor>Rick Rivello</contributor>
-<date qualifier="created">2002-05-01</date>
-<subject
resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-o...
-</metadata>
-<var name="nodeList" type="NodeList"/>
-<var name="testNode" type="Node"/>
-<var name="formNode" type="Node"/>
-<var name="formsnodeList" type="HTMLCollection"/>
-<var name="doc" type="Document"/>
-<load var="doc" href="collection"
willBeModified="false"/>
-<getElementsByTagName interface="Document" obj="doc"
var="nodeList" tagname='"form"'/>
-<assertSize collection="nodeList" size="1"
id="Asize"/>
-<item interface="NodeList" obj="nodeList" var="testNode"
index="0"/>
-<elements interface="HTMLFormElement" obj="testNode"
var="formsnodeList"/>
-<namedItem obj="formsnodeList" var="formNode"
name='"select9"'/>
-<assertNull actual="formNode" id="nameIndexLink" />
-</test>
commitdiff
http://git.netsurf-browser.org/libdom.git/commit/?id=c093880b3fcc5d7488fa...
commit c093880b3fcc5d7488fafe78f1e5f8f486fa1313
Author: Rupinder Singh Khokhar <rsk1coder99(a)gmail.com>
Commit: Rupinder Singh Khokhar <rsk1coder99(a)gmail.com>
HTMLDocument Element incomplete & test generator minor fix
diff --git a/include/dom/html/html_document.h b/include/dom/html/html_document.h
index 1f868a5..936ea69 100644
--- a/include/dom/html/html_document.h
+++ b/include/dom/html/html_document.h
@@ -114,7 +114,7 @@ static inline dom_exception
dom_html_document_get_body(dom_html_document *doc,
get_body(doc, body);
}
#define dom_html_document_get_body(d, b) \
- dom_html_document_get_title((dom_html_document *) (d), \
+ dom_html_document_get_body((dom_html_document *) (d), \
(struct dom_html_element **) (b))
static inline dom_exception dom_html_document_set_body(dom_html_document *doc,
@@ -174,7 +174,7 @@ static inline dom_exception
dom_html_document_get_anchors(dom_html_document *doc
get_anchors(doc, col);
}
#define dom_html_document_get_anchors(d, c) \
- dom_html_document_get_title((dom_html_document *) (d), \
+ dom_html_document_get_anchors((dom_html_document *) (d), \
(struct dom_html_collection **) (c))
static inline dom_exception dom_html_document_get_cookie(dom_html_document *doc,
@@ -184,7 +184,7 @@ static inline dom_exception
dom_html_document_get_cookie(dom_html_document *doc,
get_cookie(doc, cookie);
}
#define dom_html_document_get_cookie(d, c) \
- dom_html_document_get_title((dom_html_document *) (d), (c))
+ dom_html_document_get_cookie((dom_html_document *) (d), (c))
static inline dom_exception dom_html_document_set_cookie(dom_html_document *doc,
dom_string *cookie)
@@ -237,8 +237,8 @@ static inline dom_exception
dom_html_document_get_elements_by_name(dom_html_docu
return ((dom_html_document_vtable *) ((dom_node *) doc)->vtable)->
get_elements_by_name(doc, name, list);
}
-#define dom_html_document_get_elements_by_name(d, n, l) \
- dom_html_document_get_element_by_name((dom_html_document *) (d), \
+#define dom_html_document_get_element_by_name(d, n, l) \
+ dom_html_document_get_elements_by_name((dom_html_document *) (d), \
(n), (struct dom_nodelist **) (l))
#endif
diff --git a/src/html/html_document.c b/src/html/html_document.c
index 5d68d51..ee16ac4 100644
--- a/src/html/html_document.c
+++ b/src/html/html_document.c
@@ -126,16 +126,17 @@ dom_exception _dom_html_document_initialise(dom_html_document *doc,
doc->domain = NULL;
doc->url = NULL;
doc->cookie = NULL;
-
+ doc->body = NULL;
+
doc->memoised = calloc(sizeof(dom_string *), hds_COUNT);
if (doc->memoised == NULL) {
error = DOM_NO_MEM_ERR;
goto out;
}
-
+
#define HTML_DOCUMENT_STRINGS_ACTION(attr,str) \
error = dom_string_create_interned((const uint8_t *) #str, \
- SLEN(#str), &doc->memoised[hds_##attr]); \
+ SLEN(#str), &doc->memoised[hds_##attr]); \
if (error != DOM_NO_ERR) { \
goto out; \
}
@@ -639,57 +640,193 @@ dom_exception _dom_html_document_get_url(dom_html_document *doc,
dom_exception _dom_html_document_get_body(dom_html_document *doc,
struct dom_html_element **body)
{
- UNUSED(doc);
- UNUSED(body);
+ dom_exception exc = DOM_NO_ERR;
- return DOM_NOT_SUPPORTED_ERR;
+ if (doc->body != NULL) {
+ *body = doc->body;
+ } else {
+ dom_element *node;
+ dom_nodelist *nodes;
+ uint32_t len;
+
+ exc = dom_document_get_elements_by_tag_name(doc,
+ doc->memoised[hds_BODY],
+ &nodes);
+ if (exc != DOM_NO_ERR) {
+ return exc;
+ }
+
+ exc = dom_nodelist_get_length(nodes, &len);
+ if (exc != DOM_NO_ERR) {
+ dom_nodelist_unref(nodes);
+ return exc;
+ }
+
+ if (len == 0) {
+ exc = dom_document_get_elements_by_tag_name(doc,
+ doc->memoised[hds_FRAMESET],
+ &nodes);
+ if (exc != DOM_NO_ERR) {
+ return exc;
+ }
+ exc = dom_nodelist_get_length(nodes, &len);
+ if (exc != DOM_NO_ERR) {
+ dom_nodelist_unref(nodes);
+ return exc;
+ }
+ if(len == 0) {
+ dom_nodelist_unref(nodes);
+ return DOM_NO_ERR;
+ }
+ }
+
+ exc = dom_nodelist_item(nodes, 0, (void *) &node);
+ dom_nodelist_unref(nodes);
+ if (exc != DOM_NO_ERR) {
+ return exc;
+ }
+
+ *body = (dom_html_element *)node;
+ dom_node_unref(node);
+ }
+
+ return exc;
}
dom_exception _dom_html_document_set_body(dom_html_document *doc,
struct dom_html_element *body)
{
- UNUSED(doc);
- UNUSED(body);
+ doc->body = body;
+ return DOM_NO_ERR;
+}
- return DOM_NOT_SUPPORTED_ERR;
+/**
+ * Callback for creating the images collection
+ *
+ * \param node The dom_node_internal object
+ * \param ctx The dom_html_document object (void *)
+ * \return DOM_NO_ERR on success, appropriate dom_exception on failure.
+ */
+bool images_callback(struct dom_node_internal *node, void *ctx)
+{
+ if(node->type == DOM_ELEMENT_NODE &&
+ dom_string_caseless_isequal(node->name,
+ ((dom_html_document *)ctx)->memoised[hds_IMG])) {
+ return true;
+ }
+ return false;
}
dom_exception _dom_html_document_get_images(dom_html_document *doc,
struct dom_html_collection **col)
{
- UNUSED(doc);
- UNUSED(col);
+ dom_html_document *root;
+ dom_exception err;
+ err = dom_document_get_document_element(doc, &root);
+ if (err != DOM_NO_ERR)
+ return err;
- return DOM_NOT_SUPPORTED_ERR;
+ return _dom_html_collection_create(doc, (dom_node_internal *) root,
+ images_callback, doc, col);
+}
+
+bool applet_callback(struct dom_node_internal * node, void *ctx)
+{
+ if(node->type == DOM_ELEMENT_NODE &&
+ dom_string_caseless_isequal(node->name,
+ ((dom_html_document *)ctx)->memoised[hds_APPLET])) {
+ return true;
+ }
+ return false;
+}
+/**
+ * Callback for creating the applets collection
+ *
+ * \param node The dom_node_internal object
+ * \param ctx The dom_html_document object (void *)
+ * \return DOM_NO_ERR on success, appropriate dom_exception on failure.
+ */
+bool applets_callback(struct dom_node_internal *node, void *ctx)
+{
+ if(node->type == DOM_ELEMENT_NODE &&
+ dom_string_caseless_isequal(node->name,
+ ((dom_html_document *)ctx)->memoised[hds_OBJECT])) {
+ uint32_t len = 0;
+ dom_html_collection *applets;
+ _dom_html_collection_create(ctx, node,
+ applet_callback, ctx, &applets);
+
+ dom_html_collection_get_length(applets, &len);
+ if(len != 0)
+ return true;
+ }
+ return false;
}
dom_exception _dom_html_document_get_applets(dom_html_document *doc,
struct dom_html_collection **col)
{
- UNUSED(doc);
- UNUSED(col);
+ dom_html_document *root;
+ dom_exception err;
+ err = dom_document_get_document_element(doc, &root);
+ if (err != DOM_NO_ERR)
+ return err;
- return DOM_NOT_SUPPORTED_ERR;
+ return _dom_html_collection_create(doc, (dom_node_internal *) root,
+ applets_callback, doc, col);
+}
+
+/**
+ * Callback for creating the links collection
+ *
+ * \param node The dom_node_internal object
+ * \param ctx The dom_html_document object (void *)
+ * \return DOM_NO_ERR on success, appropriate dom_exception on failure.
+ */
+bool links_callback(struct dom_node_internal *node, void *ctx)
+{
+ if(node->type == DOM_ELEMENT_NODE &&
+ (dom_string_caseless_isequal(node->name,
+ ((dom_html_document *)ctx)->memoised[hds_A]) ||
+ dom_string_caseless_isequal(node->name,
+ ((dom_html_document *)ctx)->memoised[hds_AREA]))
+ ) {
+ bool has_value = false;
+ dom_exception err;
+
+ err = dom_element_has_attribute(node,
+ ((dom_html_document *)ctx)->memoised[hds_href], &has_value);
+ if(err !=DOM_NO_ERR)
+ return err;
+
+ if(has_value)
+ return true;
+ }
+ return false;
}
dom_exception _dom_html_document_get_links(dom_html_document *doc,
struct dom_html_collection **col)
{
- UNUSED(doc);
- UNUSED(col);
+ dom_html_document *root;
+ dom_exception err;
+ err = dom_document_get_document_element(doc, &root);
+ if (err != DOM_NO_ERR)
+ return err;
- return DOM_NOT_SUPPORTED_ERR;
+ return _dom_html_collection_create(doc, (dom_node_internal *) root,
+ links_callback, doc, col);
}
static bool __dom_html_document_node_is_form(dom_node_internal *node,
- void *ctx)
+ void *ctx)
{
dom_html_document *doc = (dom_html_document *)node->owner;
-
+
UNUSED(ctx);
-
+
return dom_string_caseless_isequal(node->name,
- doc->memoised[hds_FORM]);
+ doc->memoised[hds_FORM]);
}
dom_exception _dom_html_document_get_forms(dom_html_document *doc,
@@ -717,13 +854,43 @@ dom_exception _dom_html_document_get_forms(dom_html_document *doc,
return DOM_NO_ERR;
}
+/**
+ * Callback for creating the anchors collection
+ *
+ * \param node The dom_node_internal object
+ * \param ctx The dom_html_document object (void *)
+ * \return DOM_NO_ERR on success, appropriate dom_exception on failure.
+ */
+bool anchors_callback(struct dom_node_internal *node, void *ctx)
+{
+ if(node->type == DOM_ELEMENT_NODE &&
+ dom_string_caseless_isequal(node->name,
+ ((dom_html_document *)ctx)->memoised[hds_A])) {
+ bool has_value = false;
+ dom_exception err;
+
+ err = dom_element_has_attribute(node,
+ ((dom_html_document *)ctx)->memoised[hds_name], &has_value);
+ if(err !=DOM_NO_ERR)
+ return err;
+
+ if(has_value)
+ return true;
+ }
+ return false;
+}
+
dom_exception _dom_html_document_get_anchors(dom_html_document *doc,
struct dom_html_collection **col)
{
- UNUSED(doc);
- UNUSED(col);
+ dom_html_document *root;
+ dom_exception err;
+ err = dom_document_get_document_element(doc, &root);
+ if (err != DOM_NO_ERR)
+ return err;
- return DOM_NOT_SUPPORTED_ERR;
+ return _dom_html_collection_create(doc, (dom_node_internal *) root,
+ anchors_callback, doc, col);
}
dom_exception _dom_html_document_get_cookie(dom_html_document *doc,
@@ -731,7 +898,7 @@ dom_exception _dom_html_document_get_cookie(dom_html_document *doc,
{
UNUSED(doc);
UNUSED(cookie);
-
+ /*todo implement this after updating client interface */
return DOM_NOT_SUPPORTED_ERR;
}
@@ -740,7 +907,7 @@ dom_exception _dom_html_document_set_cookie(dom_html_document *doc,
{
UNUSED(doc);
UNUSED(cookie);
-
+ /*todo implement this after updating client interface */
return DOM_NOT_SUPPORTED_ERR;
}
@@ -748,13 +915,14 @@ dom_exception _dom_html_document_open(dom_html_document *doc)
{
UNUSED(doc);
+ /*todo implement this after updating client interface */
return DOM_NOT_SUPPORTED_ERR;
}
dom_exception _dom_html_document_close(dom_html_document *doc)
{
UNUSED(doc);
-
+ /*todo implement this after updating client interface */
return DOM_NOT_SUPPORTED_ERR;
}
@@ -782,7 +950,7 @@ dom_exception
_dom_html_document_get_elements_by_name(dom_html_document *doc,
UNUSED(doc);
UNUSED(name);
UNUSED(list);
-
+ /*todo implement after updating core nodelist interface */
return DOM_NOT_SUPPORTED_ERR;
}
diff --git a/src/html/html_document.h b/src/html/html_document.h
index 67250f5..c00529b 100644
--- a/src/html/html_document.h
+++ b/src/html/html_document.h
@@ -9,6 +9,7 @@
#define dom_internal_html_document_h_
#include <dom/html/html_document.h>
+#include <dom/html/html_element.h>
#include "core/document.h"
@@ -23,6 +24,7 @@ struct dom_html_document {
dom_string *domain; /**< HTML document domain */
dom_string *url; /**< HTML document URL */
dom_string *cookie; /**< HTML document cookie */
+ dom_html_element *body; /**< HTML BodyElement */
/** Cached strings for html objects to use */
dom_string **memoised;
@@ -126,6 +128,11 @@ dom_exception _dom_html_document_create_attribute(dom_document *doc,
dom_exception _dom_html_document_create_attribute_ns(dom_document *doc,
dom_string *namespace, dom_string *qname,
dom_attr **result);
+bool images_callback(struct dom_node_internal *node, void *ctx);
+bool applets_callback(struct dom_node_internal *node, void *ctx);
+bool applet_callback(struct dom_node_internal *node, void *ctx);
+bool links_callback(struct dom_node_internal *node, void *ctx);
+bool anchors_callback(struct dom_node_internal *node, void *ctx);
#define DOM_DOCUMENT_VTABLE_HTML \
_dom_document_get_doctype, \
diff --git a/test/DOMTSHandler.pm b/test/DOMTSHandler.pm
index 304ac29..fa71365 100644
--- a/test/DOMTSHandler.pm
+++ b/test/DOMTSHandler.pm
@@ -91,6 +91,7 @@ our %special_method = (
our %special_attribute = (
namespaceURI => "namespace",
+ URL => "url",
);
our %no_unref = (
@@ -1210,7 +1211,7 @@ sub generate_assertion {
$fragment = $ats->{fragment};
}
if (exists $ats->{isAbsolute}) {
- $isAbsolute = $ats->{isAbsolute};
+ $isAbsolute = "\"$ats->{isAbsolute}\"";
}
print "is_uri_equals($scheme, $path, $host, $file, $name, $query, $fragment,
$isAbsolute, $actual)"
diff --git a/test/testcases/tests/level1/html/HTMLDocument02.xml
b/test/testcases/tests/level1/html/HTMLDocument02.xml
deleted file mode 100644
index 24bd58f..0000000
--- a/test/testcases/tests/level1/html/HTMLDocument02.xml
+++ /dev/null
@@ -1,40 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<?xml-stylesheet href="test-to-html.xml" type="text/xml"?>
-
-<!--
-
-Copyright (c) 2001 World Wide Web Consortium,
-(Massachusetts Institute of Technology, Institut National de
-Recherche en Informatique et en Automatique, Keio University). All
-Rights Reserved. This program is distributed under the W3C's Software
-Intellectual Property License. This program is distributed in the
-hope that it will be useful, but WITHOUT ANY WARRANTY; without even
-the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
-PURPOSE.
-
-See W3C License
http://www.w3.org/Consortium/Legal/ for more details.
-
--->
-<!DOCTYPE test SYSTEM "dom1.dtd">
-<test
xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1"
name="HTMLDocument02">
-<metadata>
-<title>HTMLDocument02</title>
-<creator>NIST</creator>
-<description>
- The referrer attribute returns the URI of the page that linked to this
- page.
-
- Retrieve the referrer attribute and examine its value.
-</description>
-<contributor>Mary Brady</contributor>
-<date qualifier="created">2002-01-18</date>
-<subject
resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-o...
-</metadata>
-<var name="nodeList" type="NodeList"/>
-<var name="testNode" type="Node"/>
-<var name="vreferrer" type="DOMString" />
-<var name="doc" type="Document"/>
-<load var="doc" href="document"
willBeModified="false"/>
-<referrer interface="HTMLDocument" obj="doc"
var="vreferrer"/>
-<assertEquals actual="vreferrer" expected='""'
id="referrerLink" ignoreCase="false"/>
-</test>
diff --git a/test/testcases/tests/level1/html/HTMLDocument02.xml.kfail
b/test/testcases/tests/level1/html/HTMLDocument02.xml.kfail
new file mode 100644
index 0000000..24bd58f
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLDocument02.xml.kfail
@@ -0,0 +1,40 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xml" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 World Wide Web Consortium,
+(Massachusetts Institute of Technology, Institut National de
+Recherche en Informatique et en Automatique, Keio University). All
+Rights Reserved. This program is distributed under the W3C's Software
+Intellectual Property License. This program is distributed in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
+PURPOSE.
+
+See W3C License
http://www.w3.org/Consortium/Legal/ for more details.
+
+-->
+<!DOCTYPE test SYSTEM "dom1.dtd">
+<test
xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1"
name="HTMLDocument02">
+<metadata>
+<title>HTMLDocument02</title>
+<creator>NIST</creator>
+<description>
+ The referrer attribute returns the URI of the page that linked to this
+ page.
+
+ Retrieve the referrer attribute and examine its value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-01-18</date>
+<subject
resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-o...
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vreferrer" type="DOMString" />
+<var name="doc" type="Document"/>
+<load var="doc" href="document"
willBeModified="false"/>
+<referrer interface="HTMLDocument" obj="doc"
var="vreferrer"/>
+<assertEquals actual="vreferrer" expected='""'
id="referrerLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLDocument03.xml
b/test/testcases/tests/level1/html/HTMLDocument03.xml
deleted file mode 100644
index 97e291d..0000000
--- a/test/testcases/tests/level1/html/HTMLDocument03.xml
+++ /dev/null
@@ -1,40 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<?xml-stylesheet href="test-to-html.xml" type="text/xml"?>
-
-<!--
-
-Copyright (c) 2001 World Wide Web Consortium,
-(Massachusetts Institute of Technology, Institut National de
-Recherche en Informatique et en Automatique, Keio University). All
-Rights Reserved. This program is distributed under the W3C's Software
-Intellectual Property License. This program is distributed in the
-hope that it will be useful, but WITHOUT ANY WARRANTY; without even
-the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
-PURPOSE.
-
-See W3C License
http://www.w3.org/Consortium/Legal/ for more details.
-
--->
-<!DOCTYPE test SYSTEM "dom1.dtd">
-<test
xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1"
name="HTMLDocument03">
-<metadata>
-<title>HTMLDocument03</title>
-<creator>NIST</creator>
-<description>
- The domain attribute specifies the domain name of the server that served
- the document, or null if the server cannot be identified by a domain name.
-
- Retrieve the domain attribute and examine its value.
-</description>
-<contributor>Mary Brady</contributor>
-<date qualifier="created">2002-01-18</date>
-<subject
resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-o...
-</metadata>
-<var name="nodeList" type="NodeList"/>
-<var name="testNode" type="Node"/>
-<var name="vdomain" type="DOMString" />
-<var name="doc" type="Document"/>
-<load var="doc" href="document"
willBeModified="false"/>
-<domain interface="HTMLDocument" obj="doc"
var="vdomain"/>
-<assertEquals actual="vdomain" expected='""'
id="domainLink" ignoreCase="false"/>
-</test>
diff --git a/test/testcases/tests/level1/html/HTMLDocument03.xml.kfail
b/test/testcases/tests/level1/html/HTMLDocument03.xml.kfail
new file mode 100644
index 0000000..97e291d
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLDocument03.xml.kfail
@@ -0,0 +1,40 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xml" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 World Wide Web Consortium,
+(Massachusetts Institute of Technology, Institut National de
+Recherche en Informatique et en Automatique, Keio University). All
+Rights Reserved. This program is distributed under the W3C's Software
+Intellectual Property License. This program is distributed in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
+PURPOSE.
+
+See W3C License
http://www.w3.org/Consortium/Legal/ for more details.
+
+-->
+<!DOCTYPE test SYSTEM "dom1.dtd">
+<test
xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1"
name="HTMLDocument03">
+<metadata>
+<title>HTMLDocument03</title>
+<creator>NIST</creator>
+<description>
+ The domain attribute specifies the domain name of the server that served
+ the document, or null if the server cannot be identified by a domain name.
+
+ Retrieve the domain attribute and examine its value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-01-18</date>
+<subject
resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-o...
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vdomain" type="DOMString" />
+<var name="doc" type="Document"/>
+<load var="doc" href="document"
willBeModified="false"/>
+<domain interface="HTMLDocument" obj="doc"
var="vdomain"/>
+<assertEquals actual="vdomain" expected='""'
id="domainLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLDocument04.xml.kfail
b/test/testcases/tests/level1/html/HTMLDocument04.xml.kfail
new file mode 100644
index 0000000..223d426
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLDocument04.xml.kfail
@@ -0,0 +1,39 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xml" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 World Wide Web Consortium,
+(Massachusetts Institute of Technology, Institut National de
+Recherche en Informatique et en Automatique, Keio University). All
+Rights Reserved. This program is distributed under the W3C's Software
+Intellectual Property License. This program is distributed in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
+PURPOSE.
+
+See W3C License
http://www.w3.org/Consortium/Legal/ for more details.
+
+-->
+<!DOCTYPE test SYSTEM "dom1.dtd">
+<test
xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1"
name="HTMLDocument04">
+<metadata>
+<title>HTMLDocument04</title>
+<creator>NIST</creator>
+<description>
+ The URL attribute specifies the absolute URI of the document.
+
+ Retrieve the URL attribute and examine its value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-01-18</date>
+<subject
resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-o...
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vurl" type="DOMString" />
+<var name="doc" type="Document"/>
+<load var="doc" href="document"
willBeModified="false"/>
+<URL interface="HTMLDocument" obj="doc" var="vurl"/>
+<assertURIEquals actual="vurl" name='"document"'
id="URLLink" isAbsolute="true"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLDocument04.xml.notimpl
b/test/testcases/tests/level1/html/HTMLDocument04.xml.notimpl
deleted file mode 100644
index 223d426..0000000
--- a/test/testcases/tests/level1/html/HTMLDocument04.xml.notimpl
+++ /dev/null
@@ -1,39 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<?xml-stylesheet href="test-to-html.xml" type="text/xml"?>
-
-<!--
-
-Copyright (c) 2001 World Wide Web Consortium,
-(Massachusetts Institute of Technology, Institut National de
-Recherche en Informatique et en Automatique, Keio University). All
-Rights Reserved. This program is distributed under the W3C's Software
-Intellectual Property License. This program is distributed in the
-hope that it will be useful, but WITHOUT ANY WARRANTY; without even
-the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
-PURPOSE.
-
-See W3C License
http://www.w3.org/Consortium/Legal/ for more details.
-
--->
-<!DOCTYPE test SYSTEM "dom1.dtd">
-<test
xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1"
name="HTMLDocument04">
-<metadata>
-<title>HTMLDocument04</title>
-<creator>NIST</creator>
-<description>
- The URL attribute specifies the absolute URI of the document.
-
- Retrieve the URL attribute and examine its value.
-</description>
-<contributor>Mary Brady</contributor>
-<date qualifier="created">2002-01-18</date>
-<subject
resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-o...
-</metadata>
-<var name="nodeList" type="NodeList"/>
-<var name="testNode" type="Node"/>
-<var name="vurl" type="DOMString" />
-<var name="doc" type="Document"/>
-<load var="doc" href="document"
willBeModified="false"/>
-<URL interface="HTMLDocument" obj="doc" var="vurl"/>
-<assertURIEquals actual="vurl" name='"document"'
id="URLLink" isAbsolute="true"/>
-</test>
diff --git a/test/testcases/tests/level1/html/HTMLDocument05.xml
b/test/testcases/tests/level1/html/HTMLDocument05.xml
new file mode 100644
index 0000000..a764b35
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLDocument05.xml
@@ -0,0 +1,42 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xml" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 World Wide Web Consortium,
+(Massachusetts Institute of Technology, Institut National de
+Recherche en Informatique et en Automatique, Keio University). All
+Rights Reserved. This program is distributed under the W3C's Software
+Intellectual Property License. This program is distributed in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
+PURPOSE.
+
+See W3C License
http://www.w3.org/Consortium/Legal/ for more details.
+
+-->
+<!DOCTYPE test SYSTEM "dom1.dtd">
+<test
xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1"
name="HTMLDocument05">
+<metadata>
+<title>HTMLDocument05</title>
+<creator>NIST</creator>
+<description>
+ The body attribute is the element that contains the content for the
+ document.
+
+ Retrieve the body attribute and examine its value for the id attribute.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-01-18</date>
+<subject
resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-o...
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vbody" type="HTMLElement" />
+<var name="vid" type="DOMString" />
+<var name="doc" type="Document"/>
+<load var="doc" href="document"
willBeModified="false"/>
+<body interface="HTMLDocument" obj="doc"
var="vbody"/>
+<id interface="HTMLElement" obj="vbody" var="vid"/>
+<assertEquals actual="vid" expected='"TEST-BODY"'
id="idLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLDocument05.xml.notimpl
b/test/testcases/tests/level1/html/HTMLDocument05.xml.notimpl
deleted file mode 100644
index a764b35..0000000
--- a/test/testcases/tests/level1/html/HTMLDocument05.xml.notimpl
+++ /dev/null
@@ -1,42 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<?xml-stylesheet href="test-to-html.xml" type="text/xml"?>
-
-<!--
-
-Copyright (c) 2001 World Wide Web Consortium,
-(Massachusetts Institute of Technology, Institut National de
-Recherche en Informatique et en Automatique, Keio University). All
-Rights Reserved. This program is distributed under the W3C's Software
-Intellectual Property License. This program is distributed in the
-hope that it will be useful, but WITHOUT ANY WARRANTY; without even
-the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
-PURPOSE.
-
-See W3C License
http://www.w3.org/Consortium/Legal/ for more details.
-
--->
-<!DOCTYPE test SYSTEM "dom1.dtd">
-<test
xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1"
name="HTMLDocument05">
-<metadata>
-<title>HTMLDocument05</title>
-<creator>NIST</creator>
-<description>
- The body attribute is the element that contains the content for the
- document.
-
- Retrieve the body attribute and examine its value for the id attribute.
-</description>
-<contributor>Mary Brady</contributor>
-<date qualifier="created">2002-01-18</date>
-<subject
resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-o...
-</metadata>
-<var name="nodeList" type="NodeList"/>
-<var name="testNode" type="Node"/>
-<var name="vbody" type="HTMLElement" />
-<var name="vid" type="DOMString" />
-<var name="doc" type="Document"/>
-<load var="doc" href="document"
willBeModified="false"/>
-<body interface="HTMLDocument" obj="doc"
var="vbody"/>
-<id interface="HTMLElement" obj="vbody" var="vid"/>
-<assertEquals actual="vid" expected='"TEST-BODY"'
id="idLink" ignoreCase="false"/>
-</test>
diff --git a/test/testcases/tests/level1/html/HTMLDocument07.xml
b/test/testcases/tests/level1/html/HTMLDocument07.xml
new file mode 100644
index 0000000..a08972f
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLDocument07.xml
@@ -0,0 +1,41 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xml" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 World Wide Web Consortium,
+(Massachusetts Institute of Technology, Institut National de
+Recherche en Informatique et en Automatique, Keio University). All
+Rights Reserved. This program is distributed under the W3C's Software
+Intellectual Property License. This program is distributed in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
+PURPOSE.
+
+See W3C License
http://www.w3.org/Consortium/Legal/ for more details.
+
+-->
+<!DOCTYPE test SYSTEM "dom1.dtd">
+<test
xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1"
name="HTMLDocument07">
+<metadata>
+<title>HTMLDocument07</title>
+<creator>NIST</creator>
+<description>
+ The images attribute returns a collection of all IMG elements in a document.
+
+ Retrieve the images attribute from the document and examine its value.
+</description>
+<contributor>Rick Rivello</contributor>
+<date qualifier="created">2002-04-30</date>
+<subject
resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-o...
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vimages" type="HTMLCollection" />
+<var name="vlength" type="int" />
+<var name="doc" type="Document"/>
+<load var="doc" href="document"
willBeModified="false"/>
+<images interface="HTMLDocument" obj="doc" var="vimages"
/>
+<length interface="HTMLCollection" obj="vimages"
var="vlength" />
+<assertEquals actual="vlength" expected='1'
id="lengthLink" ignoreCase="false" />
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLDocument07.xml.notimpl
b/test/testcases/tests/level1/html/HTMLDocument07.xml.notimpl
deleted file mode 100644
index a08972f..0000000
--- a/test/testcases/tests/level1/html/HTMLDocument07.xml.notimpl
+++ /dev/null
@@ -1,41 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<?xml-stylesheet href="test-to-html.xml" type="text/xml"?>
-
-<!--
-
-Copyright (c) 2001 World Wide Web Consortium,
-(Massachusetts Institute of Technology, Institut National de
-Recherche en Informatique et en Automatique, Keio University). All
-Rights Reserved. This program is distributed under the W3C's Software
-Intellectual Property License. This program is distributed in the
-hope that it will be useful, but WITHOUT ANY WARRANTY; without even
-the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
-PURPOSE.
-
-See W3C License
http://www.w3.org/Consortium/Legal/ for more details.
-
--->
-<!DOCTYPE test SYSTEM "dom1.dtd">
-<test
xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1"
name="HTMLDocument07">
-<metadata>
-<title>HTMLDocument07</title>
-<creator>NIST</creator>
-<description>
- The images attribute returns a collection of all IMG elements in a document.
-
- Retrieve the images attribute from the document and examine its value.
-</description>
-<contributor>Rick Rivello</contributor>
-<date qualifier="created">2002-04-30</date>
-<subject
resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-o...
-</metadata>
-<var name="nodeList" type="NodeList"/>
-<var name="testNode" type="Node"/>
-<var name="vimages" type="HTMLCollection" />
-<var name="vlength" type="int" />
-<var name="doc" type="Document"/>
-<load var="doc" href="document"
willBeModified="false"/>
-<images interface="HTMLDocument" obj="doc" var="vimages"
/>
-<length interface="HTMLCollection" obj="vimages"
var="vlength" />
-<assertEquals actual="vlength" expected='1'
id="lengthLink" ignoreCase="false" />
-</test>
diff --git a/test/testcases/tests/level1/html/HTMLDocument08.xml.kfail
b/test/testcases/tests/level1/html/HTMLDocument08.xml.kfail
new file mode 100644
index 0000000..f4b3e3d
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLDocument08.xml.kfail
@@ -0,0 +1,43 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xml" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 World Wide Web Consortium,
+(Massachusetts Institute of Technology, Institut National de
+Recherche en Informatique et en Automatique, Keio University). All
+Rights Reserved. This program is distributed under the W3C's Software
+Intellectual Property License. This program is distributed in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
+PURPOSE.
+
+See W3C License
http://www.w3.org/Consortium/Legal/ for more details.
+
+-->
+<!DOCTYPE test SYSTEM "dom1.dtd">
+<test
xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1"
name="HTMLDocument08">
+<metadata>
+<title>HTMLDocument08</title>
+<creator>NIST</creator>
+<description>
+ The applets attribute returns a collection of all OBJECT elements that
+ include applets abd APPLET elements in a document.
+
+ Retrieve the applets attribute from the document and examine its value.
+</description>
+<contributor>Rick Rivello</contributor>
+<date qualifier="created">2002-04-30</date>
+<subject
resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-o...
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vapplets" type="HTMLCollection" />
+<var name="vlength" type="int" />
+<var name="doc" type="Document"/>
+<load var="doc" href="document"
willBeModified="false"/>
+<applets interface="HTMLDocument" obj="doc"
var="vapplets" />
+<length interface="HTMLCollection" obj="vapplets"
var="vlength" />
+<!-- The following assertion appears to be false. There appear to be 2 object elements
containing applet type elements in the test file. Mentor approval is neccessary--!>
+<assertEquals actual="vlength" expected='4' id="length"
ignoreCase="false" />
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLDocument08.xml.notimpl
b/test/testcases/tests/level1/html/HTMLDocument08.xml.notimpl
deleted file mode 100644
index fcc8147..0000000
--- a/test/testcases/tests/level1/html/HTMLDocument08.xml.notimpl
+++ /dev/null
@@ -1,42 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<?xml-stylesheet href="test-to-html.xml" type="text/xml"?>
-
-<!--
-
-Copyright (c) 2001 World Wide Web Consortium,
-(Massachusetts Institute of Technology, Institut National de
-Recherche en Informatique et en Automatique, Keio University). All
-Rights Reserved. This program is distributed under the W3C's Software
-Intellectual Property License. This program is distributed in the
-hope that it will be useful, but WITHOUT ANY WARRANTY; without even
-the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
-PURPOSE.
-
-See W3C License
http://www.w3.org/Consortium/Legal/ for more details.
-
--->
-<!DOCTYPE test SYSTEM "dom1.dtd">
-<test
xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1"
name="HTMLDocument08">
-<metadata>
-<title>HTMLDocument08</title>
-<creator>NIST</creator>
-<description>
- The applets attribute returns a collection of all OBJECT elements that
- include applets abd APPLET elements in a document.
-
- Retrieve the applets attribute from the document and examine its value.
-</description>
-<contributor>Rick Rivello</contributor>
-<date qualifier="created">2002-04-30</date>
-<subject
resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-o...
-</metadata>
-<var name="nodeList" type="NodeList"/>
-<var name="testNode" type="Node"/>
-<var name="vapplets" type="HTMLCollection" />
-<var name="vlength" type="int" />
-<var name="doc" type="Document"/>
-<load var="doc" href="document"
willBeModified="false"/>
-<applets interface="HTMLDocument" obj="doc"
var="vapplets" />
-<length interface="HTMLCollection" obj="vapplets"
var="vlength" />
-<assertEquals actual="vlength" expected='4' id="length"
ignoreCase="false" />
-</test>
diff --git a/test/testcases/tests/level1/html/HTMLDocument09.xml
b/test/testcases/tests/level1/html/HTMLDocument09.xml
new file mode 100644
index 0000000..037811f
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLDocument09.xml
@@ -0,0 +1,42 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xml" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 World Wide Web Consortium,
+(Massachusetts Institute of Technology, Institut National de
+Recherche en Informatique et en Automatique, Keio University). All
+Rights Reserved. This program is distributed under the W3C's Software
+Intellectual Property License. This program is distributed in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
+PURPOSE.
+
+See W3C License
http://www.w3.org/Consortium/Legal/ for more details.
+
+-->
+<!DOCTYPE test SYSTEM "dom1.dtd">
+<test
xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1"
name="HTMLDocument09">
+<metadata>
+<title>HTMLDocument09</title>
+<creator>NIST</creator>
+<description>
+ The links attribute returns a collection of all AREA and A elements
+ in a document with a value for the href attribute.
+
+ Retrieve the links attribute from the document and examine its value.
+</description>
+<contributor>Rick Rivello</contributor>
+<date qualifier="created">2002-04-30</date>
+<subject
resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-o...
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vlinks" type="HTMLCollection"/>
+<var name="vlength" type="int" />
+<var name="doc" type="Document"/>
+<load var="doc" href="document"
willBeModified="false"/>
+<links interface="HTMLDocument" obj="doc" var="vlinks"
/>
+<length interface="HTMLCollection" obj="vlinks"
var="vlength" />
+<assertEquals actual="vlength" expected='3'
id="lengthLink" ignoreCase="false" />
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLDocument09.xml.notimpl
b/test/testcases/tests/level1/html/HTMLDocument09.xml.notimpl
deleted file mode 100644
index 037811f..0000000
--- a/test/testcases/tests/level1/html/HTMLDocument09.xml.notimpl
+++ /dev/null
@@ -1,42 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<?xml-stylesheet href="test-to-html.xml" type="text/xml"?>
-
-<!--
-
-Copyright (c) 2001 World Wide Web Consortium,
-(Massachusetts Institute of Technology, Institut National de
-Recherche en Informatique et en Automatique, Keio University). All
-Rights Reserved. This program is distributed under the W3C's Software
-Intellectual Property License. This program is distributed in the
-hope that it will be useful, but WITHOUT ANY WARRANTY; without even
-the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
-PURPOSE.
-
-See W3C License
http://www.w3.org/Consortium/Legal/ for more details.
-
--->
-<!DOCTYPE test SYSTEM "dom1.dtd">
-<test
xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1"
name="HTMLDocument09">
-<metadata>
-<title>HTMLDocument09</title>
-<creator>NIST</creator>
-<description>
- The links attribute returns a collection of all AREA and A elements
- in a document with a value for the href attribute.
-
- Retrieve the links attribute from the document and examine its value.
-</description>
-<contributor>Rick Rivello</contributor>
-<date qualifier="created">2002-04-30</date>
-<subject
resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-o...
-</metadata>
-<var name="nodeList" type="NodeList"/>
-<var name="testNode" type="Node"/>
-<var name="vlinks" type="HTMLCollection"/>
-<var name="vlength" type="int" />
-<var name="doc" type="Document"/>
-<load var="doc" href="document"
willBeModified="false"/>
-<links interface="HTMLDocument" obj="doc" var="vlinks"
/>
-<length interface="HTMLCollection" obj="vlinks"
var="vlength" />
-<assertEquals actual="vlength" expected='3'
id="lengthLink" ignoreCase="false" />
-</test>
diff --git a/test/testcases/tests/level1/html/HTMLDocument10.xml
b/test/testcases/tests/level1/html/HTMLDocument10.xml
new file mode 100644
index 0000000..700cebd
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLDocument10.xml
@@ -0,0 +1,41 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xml" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 World Wide Web Consortium,
+(Massachusetts Institute of Technology, Institut National de
+Recherche en Informatique et en Automatique, Keio University). All
+Rights Reserved. This program is distributed under the W3C's Software
+Intellectual Property License. This program is distributed in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
+PURPOSE.
+
+See W3C License
http://www.w3.org/Consortium/Legal/ for more details.
+
+-->
+<!DOCTYPE test SYSTEM "dom1.dtd">
+<test
xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1"
name="HTMLDocument10">
+<metadata>
+<title>HTMLDocument10</title>
+<creator>NIST</creator>
+<description>
+ The forms attribute returns a collection of all the forms in a document.
+
+ Retrieve the forms attribute from the document and examine its value.
+</description>
+<contributor>Rick Rivello</contributor>
+<date qualifier="created">2002-04-30</date>
+<subject
resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-o...
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vforms" type="HTMLCollection"/>
+<var name="vlength" type="int" />
+<var name="doc" type="Document"/>
+<load var="doc" href="document"
willBeModified="false"/>
+<forms interface="HTMLDocument" obj="doc" var="vforms"
/>
+<length interface="HTMLCollection" obj="vforms"
var="vlength" />
+<assertEquals actual="vlength" expected='1'
id="lengthLink" ignoreCase="false" />
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLDocument10.xml.notimpl
b/test/testcases/tests/level1/html/HTMLDocument10.xml.notimpl
deleted file mode 100644
index 700cebd..0000000
--- a/test/testcases/tests/level1/html/HTMLDocument10.xml.notimpl
+++ /dev/null
@@ -1,41 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<?xml-stylesheet href="test-to-html.xml" type="text/xml"?>
-
-<!--
-
-Copyright (c) 2001 World Wide Web Consortium,
-(Massachusetts Institute of Technology, Institut National de
-Recherche en Informatique et en Automatique, Keio University). All
-Rights Reserved. This program is distributed under the W3C's Software
-Intellectual Property License. This program is distributed in the
-hope that it will be useful, but WITHOUT ANY WARRANTY; without even
-the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
-PURPOSE.
-
-See W3C License
http://www.w3.org/Consortium/Legal/ for more details.
-
--->
-<!DOCTYPE test SYSTEM "dom1.dtd">
-<test
xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1"
name="HTMLDocument10">
-<metadata>
-<title>HTMLDocument10</title>
-<creator>NIST</creator>
-<description>
- The forms attribute returns a collection of all the forms in a document.
-
- Retrieve the forms attribute from the document and examine its value.
-</description>
-<contributor>Rick Rivello</contributor>
-<date qualifier="created">2002-04-30</date>
-<subject
resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-o...
-</metadata>
-<var name="nodeList" type="NodeList"/>
-<var name="testNode" type="Node"/>
-<var name="vforms" type="HTMLCollection"/>
-<var name="vlength" type="int" />
-<var name="doc" type="Document"/>
-<load var="doc" href="document"
willBeModified="false"/>
-<forms interface="HTMLDocument" obj="doc" var="vforms"
/>
-<length interface="HTMLCollection" obj="vforms"
var="vlength" />
-<assertEquals actual="vlength" expected='1'
id="lengthLink" ignoreCase="false" />
-</test>
diff --git a/test/testcases/tests/level1/html/HTMLDocument11.xml
b/test/testcases/tests/level1/html/HTMLDocument11.xml
new file mode 100644
index 0000000..308131f
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLDocument11.xml
@@ -0,0 +1,42 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xml" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 World Wide Web Consortium,
+(Massachusetts Institute of Technology, Institut National de
+Recherche en Informatique et en Automatique, Keio University). All
+Rights Reserved. This program is distributed under the W3C's Software
+Intellectual Property License. This program is distributed in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
+PURPOSE.
+
+See W3C License
http://www.w3.org/Consortium/Legal/ for more details.
+
+-->
+<!DOCTYPE test SYSTEM "dom1.dtd">
+<test
xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1"
name="HTMLDocument11">
+<metadata>
+<title>HTMLDocument11</title>
+<creator>NIST</creator>
+<description>
+ The anchors attribute returns a collection of all A elements with values
+ for the name attribute.
+
+ Retrieve the anchors attribute from the document and examine its value.
+</description>
+<contributor>Rick Rivello</contributor>
+<date qualifier="created">2002-04-30</date>
+<subject
resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-o...
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vanchors" type="HTMLCollection"/>
+<var name="vlength" type="int" />
+<var name="doc" type="Document"/>
+<load var="doc" href="document"
willBeModified="false"/>
+<anchors interface="HTMLDocument" obj="doc"
var="vanchors" />
+<length interface="HTMLCollection" obj="vanchors"
var="vlength" />
+<assertEquals actual="vlength" expected='1'
id="lengthLink" ignoreCase="false" />
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLDocument11.xml.notimpl
b/test/testcases/tests/level1/html/HTMLDocument11.xml.notimpl
deleted file mode 100644
index 308131f..0000000
--- a/test/testcases/tests/level1/html/HTMLDocument11.xml.notimpl
+++ /dev/null
@@ -1,42 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<?xml-stylesheet href="test-to-html.xml" type="text/xml"?>
-
-<!--
-
-Copyright (c) 2001 World Wide Web Consortium,
-(Massachusetts Institute of Technology, Institut National de
-Recherche en Informatique et en Automatique, Keio University). All
-Rights Reserved. This program is distributed under the W3C's Software
-Intellectual Property License. This program is distributed in the
-hope that it will be useful, but WITHOUT ANY WARRANTY; without even
-the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
-PURPOSE.
-
-See W3C License
http://www.w3.org/Consortium/Legal/ for more details.
-
--->
-<!DOCTYPE test SYSTEM "dom1.dtd">
-<test
xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1"
name="HTMLDocument11">
-<metadata>
-<title>HTMLDocument11</title>
-<creator>NIST</creator>
-<description>
- The anchors attribute returns a collection of all A elements with values
- for the name attribute.
-
- Retrieve the anchors attribute from the document and examine its value.
-</description>
-<contributor>Rick Rivello</contributor>
-<date qualifier="created">2002-04-30</date>
-<subject
resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-o...
-</metadata>
-<var name="nodeList" type="NodeList"/>
-<var name="testNode" type="Node"/>
-<var name="vanchors" type="HTMLCollection"/>
-<var name="vlength" type="int" />
-<var name="doc" type="Document"/>
-<load var="doc" href="document"
willBeModified="false"/>
-<anchors interface="HTMLDocument" obj="doc"
var="vanchors" />
-<length interface="HTMLCollection" obj="vanchors"
var="vlength" />
-<assertEquals actual="vlength" expected='1'
id="lengthLink" ignoreCase="false" />
-</test>
diff --git a/test/testcases/tests/level1/html/HTMLDocument12.xml.kfail
b/test/testcases/tests/level1/html/HTMLDocument12.xml.kfail
new file mode 100644
index 0000000..964e70c
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLDocument12.xml.kfail
@@ -0,0 +1,38 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xml" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 World Wide Web Consortium,
+(Massachusetts Institute of Technology, Institut National de
+Recherche en Informatique et en Automatique, Keio University). All
+Rights Reserved. This program is distributed under the W3C's Software
+Intellectual Property License. This program is distributed in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
+PURPOSE.
+
+See W3C License
http://www.w3.org/Consortium/Legal/ for more details.
+
+-->
+<!DOCTYPE test SYSTEM "dom1.dtd">
+<test
xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1"
name="HTMLDocument12">
+<metadata>
+<title>HTMLDocument02</title>
+<creator>NIST</creator>
+<description>
+ The cookie attribute returns the cookies associated with this document.
+
+ Retrieve the cookie attribute and examine its value.
+</description>
+<contributor>Rick Rivello</contributor>
+<date qualifier="created">2002-04-30</date>
+<subject
resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-o...
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="vcookie" type="DOMString" />
+<var name="doc" type="Document"/>
+<load var="doc" href="document"
willBeModified="false"/>
+<cookie interface="HTMLDocument" obj="doc"
var="vcookie"/>
+<assertEquals actual="vcookie" expected='""'
id="cookieLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLDocument12.xml.notimpl
b/test/testcases/tests/level1/html/HTMLDocument12.xml.notimpl
deleted file mode 100644
index 964e70c..0000000
--- a/test/testcases/tests/level1/html/HTMLDocument12.xml.notimpl
+++ /dev/null
@@ -1,38 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<?xml-stylesheet href="test-to-html.xml" type="text/xml"?>
-
-<!--
-
-Copyright (c) 2001 World Wide Web Consortium,
-(Massachusetts Institute of Technology, Institut National de
-Recherche en Informatique et en Automatique, Keio University). All
-Rights Reserved. This program is distributed under the W3C's Software
-Intellectual Property License. This program is distributed in the
-hope that it will be useful, but WITHOUT ANY WARRANTY; without even
-the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
-PURPOSE.
-
-See W3C License
http://www.w3.org/Consortium/Legal/ for more details.
-
--->
-<!DOCTYPE test SYSTEM "dom1.dtd">
-<test
xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1"
name="HTMLDocument12">
-<metadata>
-<title>HTMLDocument02</title>
-<creator>NIST</creator>
-<description>
- The cookie attribute returns the cookies associated with this document.
-
- Retrieve the cookie attribute and examine its value.
-</description>
-<contributor>Rick Rivello</contributor>
-<date qualifier="created">2002-04-30</date>
-<subject
resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-o...
-</metadata>
-<var name="nodeList" type="NodeList"/>
-<var name="vcookie" type="DOMString" />
-<var name="doc" type="Document"/>
-<load var="doc" href="document"
willBeModified="false"/>
-<cookie interface="HTMLDocument" obj="doc"
var="vcookie"/>
-<assertEquals actual="vcookie" expected='""'
id="cookieLink" ignoreCase="false"/>
-</test>
diff --git a/test/testcases/tests/level1/html/HTMLDocument13.xml.kfail
b/test/testcases/tests/level1/html/HTMLDocument13.xml.kfail
new file mode 100644
index 0000000..fc7244b
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLDocument13.xml.kfail
@@ -0,0 +1,39 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xml" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 World Wide Web Consortium,
+(Massachusetts Institute of Technology, Institut National de
+Recherche en Informatique et en Automatique, Keio University). All
+Rights Reserved. This program is distributed under the W3C's Software
+Intellectual Property License. This program is distributed in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
+PURPOSE.
+
+See W3C License
http://www.w3.org/Consortium/Legal/ for more details.
+
+-->
+<!DOCTYPE test SYSTEM "dom1.dtd">
+<test
xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1"
name="HTMLDocument13">
+<metadata>
+<title>HTMLDocument13</title>
+<creator>NIST</creator>
+<description>
+ The getElementsByName method returns the (possibly empty) collection
+ of elements whose name value is given by the elementName.
+
+ Retrieve all the elements whose name attribute is "mapid".
+ Check the length of the nodelist. It should be 1.
+</description>
+<contributor>Rick Rivello</contributor>
+<date qualifier="created">2002-07-15</date>
+<subject
resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-o...
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="doc" type="Document"/>
+<load var="doc" href="document"
willBeModified="false"/>
+<getElementsByName interface="HTMLDocument" var="nodeList"
obj="doc" elementName='"mapid"'
id="getElementsNameId"/>
+<assertSize collection="nodeList" size="1"
id="Asize"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLDocument13.xml.notimpl
b/test/testcases/tests/level1/html/HTMLDocument13.xml.notimpl
deleted file mode 100644
index fc7244b..0000000
--- a/test/testcases/tests/level1/html/HTMLDocument13.xml.notimpl
+++ /dev/null
@@ -1,39 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<?xml-stylesheet href="test-to-html.xml" type="text/xml"?>
-
-<!--
-
-Copyright (c) 2001 World Wide Web Consortium,
-(Massachusetts Institute of Technology, Institut National de
-Recherche en Informatique et en Automatique, Keio University). All
-Rights Reserved. This program is distributed under the W3C's Software
-Intellectual Property License. This program is distributed in the
-hope that it will be useful, but WITHOUT ANY WARRANTY; without even
-the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
-PURPOSE.
-
-See W3C License
http://www.w3.org/Consortium/Legal/ for more details.
-
--->
-<!DOCTYPE test SYSTEM "dom1.dtd">
-<test
xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1"
name="HTMLDocument13">
-<metadata>
-<title>HTMLDocument13</title>
-<creator>NIST</creator>
-<description>
- The getElementsByName method returns the (possibly empty) collection
- of elements whose name value is given by the elementName.
-
- Retrieve all the elements whose name attribute is "mapid".
- Check the length of the nodelist. It should be 1.
-</description>
-<contributor>Rick Rivello</contributor>
-<date qualifier="created">2002-07-15</date>
-<subject
resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-o...
-</metadata>
-<var name="nodeList" type="NodeList"/>
-<var name="doc" type="Document"/>
-<load var="doc" href="document"
willBeModified="false"/>
-<getElementsByName interface="HTMLDocument" var="nodeList"
obj="doc" elementName='"mapid"'
id="getElementsNameId"/>
-<assertSize collection="nodeList" size="1"
id="Asize"/>
-</test>
diff --git a/test/testcases/tests/level1/html/HTMLDocument14.xml.kfail
b/test/testcases/tests/level1/html/HTMLDocument14.xml.kfail
new file mode 100644
index 0000000..c41fe14
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLDocument14.xml.kfail
@@ -0,0 +1,40 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xml" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 World Wide Web Consortium,
+(Massachusetts Institute of Technology, Institut National de
+Recherche en Informatique et en Automatique, Keio University). All
+Rights Reserved. This program is distributed under the W3C's Software
+Intellectual Property License. This program is distributed in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
+PURPOSE.
+
+See W3C License
http://www.w3.org/Consortium/Legal/ for more details.
+
+-->
+<!DOCTYPE test SYSTEM "dom1.dtd">
+<test
xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1"
name="HTMLDocument14">
+<metadata>
+<title>HTMLDocument14</title>
+<creator>NIST</creator>
+<description>
+ The getElementsByName method returns the (possibly empty) collection
+ of elements whose name value is given by the elementName.
+
+ Retrieve all the elements whose name attribute is "noid".
+ Check the length of the nodelist. It should be 0 since
+ the id "noid" does not exist.
+</description>
+<contributor>Rick Rivello</contributor>
+<date qualifier="created">2002-07-15</date>
+<subject
resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-o...
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="doc" type="Document"/>
+<load var="doc" href="document"
willBeModified="false"/>
+<getElementsByName interface="HTMLDocument" var="nodeList"
obj="doc" elementName='"noid"'
id="getElementsNameId"/>
+<assertSize collection="nodeList" size="0"
id="Asize"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLDocument14.xml.notimpl
b/test/testcases/tests/level1/html/HTMLDocument14.xml.notimpl
deleted file mode 100644
index c41fe14..0000000
--- a/test/testcases/tests/level1/html/HTMLDocument14.xml.notimpl
+++ /dev/null
@@ -1,40 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<?xml-stylesheet href="test-to-html.xml" type="text/xml"?>
-
-<!--
-
-Copyright (c) 2001 World Wide Web Consortium,
-(Massachusetts Institute of Technology, Institut National de
-Recherche en Informatique et en Automatique, Keio University). All
-Rights Reserved. This program is distributed under the W3C's Software
-Intellectual Property License. This program is distributed in the
-hope that it will be useful, but WITHOUT ANY WARRANTY; without even
-the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
-PURPOSE.
-
-See W3C License
http://www.w3.org/Consortium/Legal/ for more details.
-
--->
-<!DOCTYPE test SYSTEM "dom1.dtd">
-<test
xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1"
name="HTMLDocument14">
-<metadata>
-<title>HTMLDocument14</title>
-<creator>NIST</creator>
-<description>
- The getElementsByName method returns the (possibly empty) collection
- of elements whose name value is given by the elementName.
-
- Retrieve all the elements whose name attribute is "noid".
- Check the length of the nodelist. It should be 0 since
- the id "noid" does not exist.
-</description>
-<contributor>Rick Rivello</contributor>
-<date qualifier="created">2002-07-15</date>
-<subject
resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-o...
-</metadata>
-<var name="nodeList" type="NodeList"/>
-<var name="doc" type="Document"/>
-<load var="doc" href="document"
willBeModified="false"/>
-<getElementsByName interface="HTMLDocument" var="nodeList"
obj="doc" elementName='"noid"'
id="getElementsNameId"/>
-<assertSize collection="nodeList" size="0"
id="Asize"/>
-</test>
diff --git a/test/testcases/tests/level1/html/HTMLDocument15.xml
b/test/testcases/tests/level1/html/HTMLDocument15.xml
new file mode 100644
index 0000000..e01d4ca
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLDocument15.xml
@@ -0,0 +1,44 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xml" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 World Wide Web Consortium,
+(Massachusetts Institute of Technology, Institut National de
+Recherche en Informatique et en Automatique, Keio University). All
+Rights Reserved. This program is distributed under the W3C's Software
+Intellectual Property License. This program is distributed in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
+PURPOSE.
+
+See W3C License
http://www.w3.org/Consortium/Legal/ for more details.
+
+-->
+<!DOCTYPE test SYSTEM "dom1.dtd">
+<test
xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1"
name="HTMLDocument15">
+<metadata>
+<title>HTMLDocument15</title>
+<creator>NIST</creator>
+<description>
+ The getElementById method returns the Element whose id is given by
+ elementId. If no such element exists, returns null.
+
+ Retrieve the element whose id is "mapid".
+ Check the value of the element.
+
+</description>
+<contributor>Rick Rivello</contributor>
+<date qualifier="created">2002-07-15</date>
+<subject
resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-o...
+<subject
resource="http://www.w3.org/TR/DOM-Level-2-HTML/html#ID-26809268&quo...
+<subject
resource="http://www.w3.org/TR/DOM-Level-2-Core/core#ID-getElBId&quo...
+</metadata>
+<var name="elementNode" type="Element"/>
+<var name="elementValue" type="DOMString"/>
+<var name="doc" type="Document"/>
+<load var="doc" href="document"
willBeModified="false"/>
+<getElementById var="elementNode" obj="doc"
elementId='"mapid"' id="getElementsId"/>
+<nodeName obj="elementNode" var="elementValue"/>
+<assertEquals actual="elementValue" expected='"map"'
id="elementId" ignoreCase="auto"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLDocument15.xml.notimpl
b/test/testcases/tests/level1/html/HTMLDocument15.xml.notimpl
deleted file mode 100644
index e01d4ca..0000000
--- a/test/testcases/tests/level1/html/HTMLDocument15.xml.notimpl
+++ /dev/null
@@ -1,44 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<?xml-stylesheet href="test-to-html.xml" type="text/xml"?>
-
-<!--
-
-Copyright (c) 2001 World Wide Web Consortium,
-(Massachusetts Institute of Technology, Institut National de
-Recherche en Informatique et en Automatique, Keio University). All
-Rights Reserved. This program is distributed under the W3C's Software
-Intellectual Property License. This program is distributed in the
-hope that it will be useful, but WITHOUT ANY WARRANTY; without even
-the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
-PURPOSE.
-
-See W3C License
http://www.w3.org/Consortium/Legal/ for more details.
-
--->
-<!DOCTYPE test SYSTEM "dom1.dtd">
-<test
xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1"
name="HTMLDocument15">
-<metadata>
-<title>HTMLDocument15</title>
-<creator>NIST</creator>
-<description>
- The getElementById method returns the Element whose id is given by
- elementId. If no such element exists, returns null.
-
- Retrieve the element whose id is "mapid".
- Check the value of the element.
-
-</description>
-<contributor>Rick Rivello</contributor>
-<date qualifier="created">2002-07-15</date>
-<subject
resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-o...
-<subject
resource="http://www.w3.org/TR/DOM-Level-2-HTML/html#ID-26809268&quo...
-<subject
resource="http://www.w3.org/TR/DOM-Level-2-Core/core#ID-getElBId&quo...
-</metadata>
-<var name="elementNode" type="Element"/>
-<var name="elementValue" type="DOMString"/>
-<var name="doc" type="Document"/>
-<load var="doc" href="document"
willBeModified="false"/>
-<getElementById var="elementNode" obj="doc"
elementId='"mapid"' id="getElementsId"/>
-<nodeName obj="elementNode" var="elementValue"/>
-<assertEquals actual="elementValue" expected='"map"'
id="elementId" ignoreCase="auto"/>
-</test>
diff --git a/test/testcases/tests/level1/html/HTMLDocument16.xml
b/test/testcases/tests/level1/html/HTMLDocument16.xml
new file mode 100644
index 0000000..1bb1fa7
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLDocument16.xml
@@ -0,0 +1,44 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xml" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 World Wide Web Consortium,
+(Massachusetts Institute of Technology, Institut National de
+Recherche en Informatique et en Automatique, Keio University). All
+Rights Reserved. This program is distributed under the W3C's Software
+Intellectual Property License. This program is distributed in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
+PURPOSE.
+
+See W3C License
http://www.w3.org/Consortium/Legal/ for more details.
+
+-->
+<!DOCTYPE test SYSTEM "dom1.dtd">
+<test
xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1"
name="HTMLDocument16">
+<metadata>
+<title>HTMLDocument16</title>
+<creator>NIST</creator>
+<description>
+ The getElementById method returns the Element whose id is given by
+ elementId. If no such element exists, returns null.
+
+ Retrieve the element whose id is "noid".
+ The value returned should be null since there are not any elements with
+ an id of "noid".
+
+</description>
+<contributor>Rick Rivello</contributor>
+<date qualifier="created">2002-07-15</date>
+<subject
resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-o...
+<subject
resource="http://www.w3.org/TR/DOM-Level-2-HTML/html#ID-26809268&quo...
+<subject
resource="http://www.w3.org/TR/DOM-Level-2-Core/core#ID-getElBId&quo...
+</metadata>
+<var name="elementNode" type="Element"/>
+<var name="elementValue" type="DOMString"/>
+<var name="doc" type="Document"/>
+<load var="doc" href="document"
willBeModified="false"/>
+<getElementById var="elementNode" obj="doc"
elementId='"noid"' id="getElementsId"/>
+<assertNull actual="elementNode" id="elementId"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLDocument16.xml.notimpl
b/test/testcases/tests/level1/html/HTMLDocument16.xml.notimpl
deleted file mode 100644
index 1bb1fa7..0000000
--- a/test/testcases/tests/level1/html/HTMLDocument16.xml.notimpl
+++ /dev/null
@@ -1,44 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<?xml-stylesheet href="test-to-html.xml" type="text/xml"?>
-
-<!--
-
-Copyright (c) 2001 World Wide Web Consortium,
-(Massachusetts Institute of Technology, Institut National de
-Recherche en Informatique et en Automatique, Keio University). All
-Rights Reserved. This program is distributed under the W3C's Software
-Intellectual Property License. This program is distributed in the
-hope that it will be useful, but WITHOUT ANY WARRANTY; without even
-the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
-PURPOSE.
-
-See W3C License
http://www.w3.org/Consortium/Legal/ for more details.
-
--->
-<!DOCTYPE test SYSTEM "dom1.dtd">
-<test
xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1"
name="HTMLDocument16">
-<metadata>
-<title>HTMLDocument16</title>
-<creator>NIST</creator>
-<description>
- The getElementById method returns the Element whose id is given by
- elementId. If no such element exists, returns null.
-
- Retrieve the element whose id is "noid".
- The value returned should be null since there are not any elements with
- an id of "noid".
-
-</description>
-<contributor>Rick Rivello</contributor>
-<date qualifier="created">2002-07-15</date>
-<subject
resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-o...
-<subject
resource="http://www.w3.org/TR/DOM-Level-2-HTML/html#ID-26809268&quo...
-<subject
resource="http://www.w3.org/TR/DOM-Level-2-Core/core#ID-getElBId&quo...
-</metadata>
-<var name="elementNode" type="Element"/>
-<var name="elementValue" type="DOMString"/>
-<var name="doc" type="Document"/>
-<load var="doc" href="document"
willBeModified="false"/>
-<getElementById var="elementNode" obj="doc"
elementId='"noid"' id="getElementsId"/>
-<assertNull actual="elementNode" id="elementId"/>
-</test>
diff --git a/test/testcases/tests/level1/html/HTMLDocument17.xml.kfail
b/test/testcases/tests/level1/html/HTMLDocument17.xml.kfail
new file mode 100644
index 0000000..6c89504
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLDocument17.xml.kfail
@@ -0,0 +1,41 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xml" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, Institut National de
+Recherche en Informatique et en Automatique, Keio University). All
+Rights Reserved. This program is distributed under the W3C's Software
+Intellectual Property License. This program is distributed in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
+PURPOSE.
+
+See W3C License
http://www.w3.org/Consortium/Legal/ for more details.
+
+-->
+<!DOCTYPE test SYSTEM "dom1.dtd">
+<test
xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1"
name="HTMLDocument17">
+<metadata>
+<title>HTMLDocument17</title>
+<creator>Curt Arnold</creator>
+<description>
+Clears the current document using HTMLDocument.open immediately followed by close.
+</description>
+<date qualifier="created">2002-03-18</date>
+<subject
resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-o...
+<subject
resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-o...
+</metadata>
+<var name="doc" type="Document"/>
+<var name="bodyElem" type="Element"/>
+<var name="bodyChild" type="Node"/>
+<load var="doc" href="document"
willBeModified="true"/>
+<open obj="doc"/>
+<close obj="doc"/>
+<body var="bodyElem" obj="doc"/>
+<if><notNull obj="bodyElem"/>
+ <firstChild interface="Node" var="bodyChild"
obj="bodyElem"/>
+ <assertNull actual="bodyChild" id="bodyContainsChildren"/>
+</if>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLDocument17.xml.notimpl
b/test/testcases/tests/level1/html/HTMLDocument17.xml.notimpl
deleted file mode 100644
index 6c89504..0000000
--- a/test/testcases/tests/level1/html/HTMLDocument17.xml.notimpl
+++ /dev/null
@@ -1,41 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<?xml-stylesheet href="test-to-html.xml" type="text/xml"?>
-
-<!--
-
-Copyright (c) 2004 World Wide Web Consortium,
-(Massachusetts Institute of Technology, Institut National de
-Recherche en Informatique et en Automatique, Keio University). All
-Rights Reserved. This program is distributed under the W3C's Software
-Intellectual Property License. This program is distributed in the
-hope that it will be useful, but WITHOUT ANY WARRANTY; without even
-the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
-PURPOSE.
-
-See W3C License
http://www.w3.org/Consortium/Legal/ for more details.
-
--->
-<!DOCTYPE test SYSTEM "dom1.dtd">
-<test
xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1"
name="HTMLDocument17">
-<metadata>
-<title>HTMLDocument17</title>
-<creator>Curt Arnold</creator>
-<description>
-Clears the current document using HTMLDocument.open immediately followed by close.
-</description>
-<date qualifier="created">2002-03-18</date>
-<subject
resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-o...
-<subject
resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-o...
-</metadata>
-<var name="doc" type="Document"/>
-<var name="bodyElem" type="Element"/>
-<var name="bodyChild" type="Node"/>
-<load var="doc" href="document"
willBeModified="true"/>
-<open obj="doc"/>
-<close obj="doc"/>
-<body var="bodyElem" obj="doc"/>
-<if><notNull obj="bodyElem"/>
- <firstChild interface="Node" var="bodyChild"
obj="bodyElem"/>
- <assertNull actual="bodyChild" id="bodyContainsChildren"/>
-</if>
-</test>
diff --git a/test/testcases/tests/level1/html/HTMLDocument18.xml.kfail
b/test/testcases/tests/level1/html/HTMLDocument18.xml.kfail
new file mode 100644
index 0000000..7454a15
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLDocument18.xml.kfail
@@ -0,0 +1,32 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xml" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, Institut National de
+Recherche en Informatique et en Automatique, Keio University). All
+Rights Reserved. This program is distributed under the W3C's Software
+Intellectual Property License. This program is distributed in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
+PURPOSE.
+
+See W3C License
http://www.w3.org/Consortium/Legal/ for more details.
+
+-->
+<!DOCTYPE test SYSTEM "dom1.dtd">
+<test
xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1"
name="HTMLDocument18">
+<metadata>
+<title>HTMLDocument18</title>
+<creator>Curt Arnold</creator>
+<description>
+Calls HTMLDocument.close on a document that has not been opened for modification.
+</description>
+<date qualifier="created">2002-03-18</date>
+<subject
resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-o...
+</metadata>
+<var name="doc" type="Document"/>
+<load var="doc" href="document"
willBeModified="true"/>
+<close obj="doc"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLDocument18.xml.notimpl
b/test/testcases/tests/level1/html/HTMLDocument18.xml.notimpl
deleted file mode 100644
index 7454a15..0000000
--- a/test/testcases/tests/level1/html/HTMLDocument18.xml.notimpl
+++ /dev/null
@@ -1,32 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<?xml-stylesheet href="test-to-html.xml" type="text/xml"?>
-
-<!--
-
-Copyright (c) 2004 World Wide Web Consortium,
-(Massachusetts Institute of Technology, Institut National de
-Recherche en Informatique et en Automatique, Keio University). All
-Rights Reserved. This program is distributed under the W3C's Software
-Intellectual Property License. This program is distributed in the
-hope that it will be useful, but WITHOUT ANY WARRANTY; without even
-the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
-PURPOSE.
-
-See W3C License
http://www.w3.org/Consortium/Legal/ for more details.
-
--->
-<!DOCTYPE test SYSTEM "dom1.dtd">
-<test
xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1"
name="HTMLDocument18">
-<metadata>
-<title>HTMLDocument18</title>
-<creator>Curt Arnold</creator>
-<description>
-Calls HTMLDocument.close on a document that has not been opened for modification.
-</description>
-<date qualifier="created">2002-03-18</date>
-<subject
resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-o...
-</metadata>
-<var name="doc" type="Document"/>
-<load var="doc" href="document"
willBeModified="true"/>
-<close obj="doc"/>
-</test>
diff --git a/test/testcases/tests/level1/html/HTMLDocument19.xml.kfail
b/test/testcases/tests/level1/html/HTMLDocument19.xml.kfail
new file mode 100644
index 0000000..3fa1a81
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLDocument19.xml.kfail
@@ -0,0 +1,51 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xml" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, Institut National de
+Recherche en Informatique et en Automatique, Keio University). All
+Rights Reserved. This program is distributed under the W3C's Software
+Intellectual Property License. This program is distributed in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
+PURPOSE.
+
+See W3C License
http://www.w3.org/Consortium/Legal/ for more details.
+
+-->
+<!DOCTYPE test SYSTEM "dom1.dtd">
+<test
xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1"
name="HTMLDocument19">
+<metadata>
+<title>HTMLDocument19</title>
+<creator>Curt Arnold</creator>
+<description>
+Replaces the current document with a valid HTML document using HTMLDocument.open, write
and close.
+</description>
+<date qualifier="created">2002-03-18</date>
+<subject
resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-o...
+<subject
resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-o...
+<subject
resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-o...
+</metadata>
+<var name="doc" type="Document"/>
+<var name="docElem" type="Element"/>
+<var name="title" type="DOMString"/>
+<load var="doc" href="document"
willBeModified="true"/>
+<open obj="doc"/>
+<if><contentType type="text/html"/>
+ <write obj="doc" text='"<html>"'/>
+ <else>
+ <write obj="doc" text='"<html
xmlns='http://www.w3.org/1999/xhtml'>"'...
+ </else>
+</if>
+<write obj="doc" text='"<body>"'/>
+<write obj="doc"
text='"<title>Replacement</title>"'/>
+<write obj="doc" text='"</body>"'/>
+<write obj="doc" text='"<p>"'/>
+<write obj="doc" text='"Hello, World."'/>
+<write obj="doc" text='"</p>"'/>
+<write obj="doc" text='"</body>"'/>
+<write obj="doc" text='"</html>"'/>
+<close obj="doc"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLDocument19.xml.notimpl
b/test/testcases/tests/level1/html/HTMLDocument19.xml.notimpl
deleted file mode 100644
index 3fa1a81..0000000
--- a/test/testcases/tests/level1/html/HTMLDocument19.xml.notimpl
+++ /dev/null
@@ -1,51 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<?xml-stylesheet href="test-to-html.xml" type="text/xml"?>
-
-<!--
-
-Copyright (c) 2004 World Wide Web Consortium,
-(Massachusetts Institute of Technology, Institut National de
-Recherche en Informatique et en Automatique, Keio University). All
-Rights Reserved. This program is distributed under the W3C's Software
-Intellectual Property License. This program is distributed in the
-hope that it will be useful, but WITHOUT ANY WARRANTY; without even
-the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
-PURPOSE.
-
-See W3C License
http://www.w3.org/Consortium/Legal/ for more details.
-
--->
-<!DOCTYPE test SYSTEM "dom1.dtd">
-<test
xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1"
name="HTMLDocument19">
-<metadata>
-<title>HTMLDocument19</title>
-<creator>Curt Arnold</creator>
-<description>
-Replaces the current document with a valid HTML document using HTMLDocument.open, write
and close.
-</description>
-<date qualifier="created">2002-03-18</date>
-<subject
resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-o...
-<subject
resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-o...
-<subject
resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-o...
-</metadata>
-<var name="doc" type="Document"/>
-<var name="docElem" type="Element"/>
-<var name="title" type="DOMString"/>
-<load var="doc" href="document"
willBeModified="true"/>
-<open obj="doc"/>
-<if><contentType type="text/html"/>
- <write obj="doc" text='"<html>"'/>
- <else>
- <write obj="doc" text='"<html
xmlns='http://www.w3.org/1999/xhtml'>"'...
- </else>
-</if>
-<write obj="doc" text='"<body>"'/>
-<write obj="doc"
text='"<title>Replacement</title>"'/>
-<write obj="doc" text='"</body>"'/>
-<write obj="doc" text='"<p>"'/>
-<write obj="doc" text='"Hello, World."'/>
-<write obj="doc" text='"</p>"'/>
-<write obj="doc" text='"</body>"'/>
-<write obj="doc" text='"</html>"'/>
-<close obj="doc"/>
-</test>
diff --git a/test/testcases/tests/level1/html/HTMLDocument20.xml.kfail
b/test/testcases/tests/level1/html/HTMLDocument20.xml.kfail
new file mode 100644
index 0000000..0b03356
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLDocument20.xml.kfail
@@ -0,0 +1,51 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xml" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, Institut National de
+Recherche en Informatique et en Automatique, Keio University). All
+Rights Reserved. This program is distributed under the W3C's Software
+Intellectual Property License. This program is distributed in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
+PURPOSE.
+
+See W3C License
http://www.w3.org/Consortium/Legal/ for more details.
+
+-->
+<!DOCTYPE test SYSTEM "dom1.dtd">
+<test
xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1"
name="HTMLDocument20">
+<metadata>
+<title>HTMLDocument20</title>
+<creator>Curt Arnold</creator>
+<description>
+Replaces the current document with a valid HTML document using HTMLDocument.open, writeln
and close.
+</description>
+<date qualifier="created">2002-03-18</date>
+<subject
resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-o...
+<subject
resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-o...
+<subject
resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-o...
+</metadata>
+<var name="doc" type="Document"/>
+<var name="docElem" type="Element"/>
+<var name="title" type="DOMString"/>
+<load var="doc" href="document"
willBeModified="true"/>
+<open obj="doc"/>
+<if><contentType type="text/html"/>
+ <writeln obj="doc" text='"<html>"'/>
+ <else>
+ <writeln obj="doc" text='"<html
xmlns='http://www.w3.org/1999/xhtml'>"'...
+ </else>
+</if>
+<writeln obj="doc" text='"<body>"'/>
+<writeln obj="doc"
text='"<title>Replacement</title>"'/>
+<writeln obj="doc" text='"</body>"'/>
+<writeln obj="doc" text='"<p>"'/>
+<writeln obj="doc" text='"Hello, World."'/>
+<writeln obj="doc" text='"</p>"'/>
+<writeln obj="doc" text='"</body>"'/>
+<writeln obj="doc" text='"</html>"'/>
+<close obj="doc"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLDocument20.xml.notimpl
b/test/testcases/tests/level1/html/HTMLDocument20.xml.notimpl
deleted file mode 100644
index 0b03356..0000000
--- a/test/testcases/tests/level1/html/HTMLDocument20.xml.notimpl
+++ /dev/null
@@ -1,51 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<?xml-stylesheet href="test-to-html.xml" type="text/xml"?>
-
-<!--
-
-Copyright (c) 2004 World Wide Web Consortium,
-(Massachusetts Institute of Technology, Institut National de
-Recherche en Informatique et en Automatique, Keio University). All
-Rights Reserved. This program is distributed under the W3C's Software
-Intellectual Property License. This program is distributed in the
-hope that it will be useful, but WITHOUT ANY WARRANTY; without even
-the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
-PURPOSE.
-
-See W3C License
http://www.w3.org/Consortium/Legal/ for more details.
-
--->
-<!DOCTYPE test SYSTEM "dom1.dtd">
-<test
xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1"
name="HTMLDocument20">
-<metadata>
-<title>HTMLDocument20</title>
-<creator>Curt Arnold</creator>
-<description>
-Replaces the current document with a valid HTML document using HTMLDocument.open, writeln
and close.
-</description>
-<date qualifier="created">2002-03-18</date>
-<subject
resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-o...
-<subject
resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-o...
-<subject
resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-o...
-</metadata>
-<var name="doc" type="Document"/>
-<var name="docElem" type="Element"/>
-<var name="title" type="DOMString"/>
-<load var="doc" href="document"
willBeModified="true"/>
-<open obj="doc"/>
-<if><contentType type="text/html"/>
- <writeln obj="doc" text='"<html>"'/>
- <else>
- <writeln obj="doc" text='"<html
xmlns='http://www.w3.org/1999/xhtml'>"'...
- </else>
-</if>
-<writeln obj="doc" text='"<body>"'/>
-<writeln obj="doc"
text='"<title>Replacement</title>"'/>
-<writeln obj="doc" text='"</body>"'/>
-<writeln obj="doc" text='"<p>"'/>
-<writeln obj="doc" text='"Hello, World."'/>
-<writeln obj="doc" text='"</p>"'/>
-<writeln obj="doc" text='"</body>"'/>
-<writeln obj="doc" text='"</html>"'/>
-<close obj="doc"/>
-</test>
diff --git a/test/testcases/tests/level1/html/HTMLDocument21.xml.kfail
b/test/testcases/tests/level1/html/HTMLDocument21.xml.kfail
new file mode 100644
index 0000000..4942f45
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLDocument21.xml.kfail
@@ -0,0 +1,60 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xml" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, Institut National de
+Recherche en Informatique et en Automatique, Keio University). All
+Rights Reserved. This program is distributed under the W3C's Software
+Intellectual Property License. This program is distributed in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
+PURPOSE.
+
+See W3C License
http://www.w3.org/Consortium/Legal/ for more details.
+
+-->
+<!DOCTYPE test SYSTEM "dom1.dtd">
+<test
xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1"
name="HTMLDocument21">
+<metadata>
+<title>HTMLDocument21</title>
+<creator>Curt Arnold</creator>
+<description>
+Replaces the current document checks that writeln adds a new line.
+</description>
+<date qualifier="created">2002-03-18</date>
+<subject
resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-o...
+<subject
resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-o...
+<subject
resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-o...
+<subject
resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-o...
+</metadata>
+<var name="doc" type="Document"/>
+<var name="docElem" type="Element"/>
+<var name="preElems" type="NodeList"/>
+<var name="preElem" type="Element"/>
+<var name="preText" type="Text"/>
+<var name="preValue" type="DOMString"/>
+<load var="doc" href="document"
willBeModified="true"/>
+<open obj="doc"/>
+<if><contentType type="text/html"/>
+ <writeln obj="doc" text='"<html>"'/>
+ <else>
+ <writeln obj="doc" text='"<html
xmlns='http://www.w3.org/1999/xhtml'>"'...
+ </else>
+</if>
+<writeln obj="doc" text='"<body>"'/>
+<writeln obj="doc"
text='"<title>Replacement</title>"'/>
+<writeln obj="doc" text='"</body>"'/>
+<write obj="doc" text='"<pre>"'/>
+<writeln obj="doc" text='"Hello, World."'/>
+<writeln obj="doc" text='"Hello, World."'/>
+<writeln obj="doc" text='"</pre>"'/>
+<write obj="doc" text='"<pre>"'/>
+<write obj="doc" text='"Hello, World."'/>
+<write obj="doc" text='"Hello, World."'/>
+<writeln obj="doc" text='"</pre>"'/>
+<writeln obj="doc" text='"</body>"'/>
+<writeln obj="doc" text='"</html>"'/>
+<close obj="doc"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLDocument21.xml.notimpl
b/test/testcases/tests/level1/html/HTMLDocument21.xml.notimpl
deleted file mode 100644
index 4942f45..0000000
--- a/test/testcases/tests/level1/html/HTMLDocument21.xml.notimpl
+++ /dev/null
@@ -1,60 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<?xml-stylesheet href="test-to-html.xml" type="text/xml"?>
-
-<!--
-
-Copyright (c) 2004 World Wide Web Consortium,
-(Massachusetts Institute of Technology, Institut National de
-Recherche en Informatique et en Automatique, Keio University). All
-Rights Reserved. This program is distributed under the W3C's Software
-Intellectual Property License. This program is distributed in the
-hope that it will be useful, but WITHOUT ANY WARRANTY; without even
-the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
-PURPOSE.
-
-See W3C License
http://www.w3.org/Consortium/Legal/ for more details.
-
--->
-<!DOCTYPE test SYSTEM "dom1.dtd">
-<test
xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1"
name="HTMLDocument21">
-<metadata>
-<title>HTMLDocument21</title>
-<creator>Curt Arnold</creator>
-<description>
-Replaces the current document checks that writeln adds a new line.
-</description>
-<date qualifier="created">2002-03-18</date>
-<subject
resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-o...
-<subject
resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-o...
-<subject
resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-o...
-<subject
resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-o...
-</metadata>
-<var name="doc" type="Document"/>
-<var name="docElem" type="Element"/>
-<var name="preElems" type="NodeList"/>
-<var name="preElem" type="Element"/>
-<var name="preText" type="Text"/>
-<var name="preValue" type="DOMString"/>
-<load var="doc" href="document"
willBeModified="true"/>
-<open obj="doc"/>
-<if><contentType type="text/html"/>
- <writeln obj="doc" text='"<html>"'/>
- <else>
- <writeln obj="doc" text='"<html
xmlns='http://www.w3.org/1999/xhtml'>"'...
- </else>
-</if>
-<writeln obj="doc" text='"<body>"'/>
-<writeln obj="doc"
text='"<title>Replacement</title>"'/>
-<writeln obj="doc" text='"</body>"'/>
-<write obj="doc" text='"<pre>"'/>
-<writeln obj="doc" text='"Hello, World."'/>
-<writeln obj="doc" text='"Hello, World."'/>
-<writeln obj="doc" text='"</pre>"'/>
-<write obj="doc" text='"<pre>"'/>
-<write obj="doc" text='"Hello, World."'/>
-<write obj="doc" text='"Hello, World."'/>
-<writeln obj="doc" text='"</pre>"'/>
-<writeln obj="doc" text='"</body>"'/>
-<writeln obj="doc" text='"</html>"'/>
-<close obj="doc"/>
-</test>
commitdiff
http://git.netsurf-browser.org/libdom.git/commit/?id=35cde09375f39a1bad05...
commit 35cde09375f39a1bad05728fc97f206733113633
Author: rsk1994 <rsk1coder99(a)gmail.com>
Commit: Rupinder Singh Khokhar <rsk1coder99(a)gmail.com>
Enabling some missed tests. How come were they missed ?! :o
diff --git a/test/testcases/tests/level1/html/HTMLTableElement28.xml
b/test/testcases/tests/level1/html/HTMLTableElement28.xml
new file mode 100644
index 0000000..95f300c
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLTableElement28.xml
@@ -0,0 +1,57 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xml" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 World Wide Web Consortium,
+(Massachusetts Institute of Technology, Institut National de
+Recherche en Informatique et en Automatique, Keio University). All
+Rights Reserved. This program is distributed under the W3C's Software
+Intellectual Property License. This program is distributed in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
+PURPOSE.
+
+See W3C License
http://www.w3.org/Consortium/Legal/ for more details.
+
+-->
+<!DOCTYPE test SYSTEM "dom1.dtd">
+<test
xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1"
name="HTMLTableElement28">
+<metadata>
+<title>HTMLTableElement28</title>
+<creator>NIST</creator>
+<description>
+ The insertRow() method inserts a new empty table row.
+
+ Retrieve the second TABLE element and invoke the insertRow() method
+ with an index of 0. Currently the zero indexed row is in the THEAD
+ section of the TABLE. The number of rows in the THEAD section before
+ insertion of the new row is one. After the new row is inserted the number
+ of rows in the THEAD section is two.
+</description>
+<contributor>Rick Rivello</contributor>
+<date qualifier="created">2002-05-02</date>
+<subject
resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-o...
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="newRow" type="HTMLElement"/>
+<var name="rowsnodeList" type="HTMLCollection"/>
+<var name="vsection1" type="HTMLTableSectionElement"/>
+<var name="vsection2" type="HTMLTableSectionElement"/>
+<var name="vrows" type="int" />
+<var name="doc" type="Document"/>
+<load var="doc" href="table" willBeModified="true"/>
+<getElementsByTagName interface="Document" obj="doc"
var="nodeList" tagname='"table"'/>
+<assertSize collection="nodeList" size="3"
id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode"
index="1"/>
+<tHead interface="HTMLTableElement" obj="testNode"
var="vsection1"/>
+<rows interface="HTMLTableSectionElement" obj="vsection1"
var="rowsnodeList"/>
+<length interface="HTMLCollection" obj="rowsnodeList"
var="vrows"/>
+<assertEquals actual="vrows" expected="1" id="rowsLink1"
ignoreCase="false"/>
+<insertRow interface="HTMLTableElement" obj="testNode"
var="newRow" index="0"/>
+<tHead interface="HTMLTableElement" obj="testNode"
var="vsection2"/>
+<rows interface="HTMLTableSectionElement" obj="vsection2"
var="rowsnodeList"/>
+<length interface="HTMLCollection" obj="rowsnodeList"
var="vrows"/>
+<assertEquals actual="vrows" expected="2" id="rowsLink2"
ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLTableElement28.xml.kfail
b/test/testcases/tests/level1/html/HTMLTableElement28.xml.kfail
deleted file mode 100644
index 95f300c..0000000
--- a/test/testcases/tests/level1/html/HTMLTableElement28.xml.kfail
+++ /dev/null
@@ -1,57 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<?xml-stylesheet href="test-to-html.xml" type="text/xml"?>
-
-<!--
-
-Copyright (c) 2001 World Wide Web Consortium,
-(Massachusetts Institute of Technology, Institut National de
-Recherche en Informatique et en Automatique, Keio University). All
-Rights Reserved. This program is distributed under the W3C's Software
-Intellectual Property License. This program is distributed in the
-hope that it will be useful, but WITHOUT ANY WARRANTY; without even
-the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
-PURPOSE.
-
-See W3C License
http://www.w3.org/Consortium/Legal/ for more details.
-
--->
-<!DOCTYPE test SYSTEM "dom1.dtd">
-<test
xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1"
name="HTMLTableElement28">
-<metadata>
-<title>HTMLTableElement28</title>
-<creator>NIST</creator>
-<description>
- The insertRow() method inserts a new empty table row.
-
- Retrieve the second TABLE element and invoke the insertRow() method
- with an index of 0. Currently the zero indexed row is in the THEAD
- section of the TABLE. The number of rows in the THEAD section before
- insertion of the new row is one. After the new row is inserted the number
- of rows in the THEAD section is two.
-</description>
-<contributor>Rick Rivello</contributor>
-<date qualifier="created">2002-05-02</date>
-<subject
resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-o...
-</metadata>
-<var name="nodeList" type="NodeList"/>
-<var name="testNode" type="Node"/>
-<var name="newRow" type="HTMLElement"/>
-<var name="rowsnodeList" type="HTMLCollection"/>
-<var name="vsection1" type="HTMLTableSectionElement"/>
-<var name="vsection2" type="HTMLTableSectionElement"/>
-<var name="vrows" type="int" />
-<var name="doc" type="Document"/>
-<load var="doc" href="table" willBeModified="true"/>
-<getElementsByTagName interface="Document" obj="doc"
var="nodeList" tagname='"table"'/>
-<assertSize collection="nodeList" size="3"
id="Asize"/>
-<item interface="NodeList" obj="nodeList" var="testNode"
index="1"/>
-<tHead interface="HTMLTableElement" obj="testNode"
var="vsection1"/>
-<rows interface="HTMLTableSectionElement" obj="vsection1"
var="rowsnodeList"/>
-<length interface="HTMLCollection" obj="rowsnodeList"
var="vrows"/>
-<assertEquals actual="vrows" expected="1" id="rowsLink1"
ignoreCase="false"/>
-<insertRow interface="HTMLTableElement" obj="testNode"
var="newRow" index="0"/>
-<tHead interface="HTMLTableElement" obj="testNode"
var="vsection2"/>
-<rows interface="HTMLTableSectionElement" obj="vsection2"
var="rowsnodeList"/>
-<length interface="HTMLCollection" obj="rowsnodeList"
var="vrows"/>
-<assertEquals actual="vrows" expected="2" id="rowsLink2"
ignoreCase="false"/>
-</test>
diff --git a/test/testcases/tests/level1/html/HTMLTableElement29.xml
b/test/testcases/tests/level1/html/HTMLTableElement29.xml
new file mode 100644
index 0000000..ba62848
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLTableElement29.xml
@@ -0,0 +1,61 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xml" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 World Wide Web Consortium,
+(Massachusetts Institute of Technology, Institut National de
+Recherche en Informatique et en Automatique, Keio University). All
+Rights Reserved. This program is distributed under the W3C's Software
+Intellectual Property License. This program is distributed in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
+PURPOSE.
+
+See W3C License
http://www.w3.org/Consortium/Legal/ for more details.
+
+-->
+<!DOCTYPE test SYSTEM "dom1.dtd">
+<test
xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1"
name="HTMLTableElement29">
+<metadata>
+<title>HTMLTableElement29</title>
+<creator>NIST</creator>
+<description>
+ The insertRow() method inserts a new empty table row.
+
+ Retrieve the second TABLE element and invoke the insertRow() method
+ with an index of two. Currently the 2nd indexed row is in the TBODY
+ section of the TABLE. The number of rows in the TBODY section before
+ insertion of the new row is two. After the new row is inserted the number
+ of rows in the TBODY section is three.
+</description>
+<contributor>Rick Rivello</contributor>
+<date qualifier="created">2002-05-02</date>
+<subject
resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-o...
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="tbodiesnodeList" type="HTMLCollection"/>
+<var name="testNode" type="Node"/>
+<var name="bodyNode" type="Node"/>
+<var name="newRow" type="HTMLElement"/>
+<var name="rowsnodeList" type="HTMLCollection"/>
+<var name="vsection1" type="HTMLTableSectionElement"/>
+<var name="vsection2" type="HTMLTableSectionElement"/>
+<var name="vrows" type="int" />
+<var name="doc" type="Document"/>
+<load var="doc" href="table" willBeModified="true"/>
+<getElementsByTagName interface="Document" obj="doc"
var="nodeList" tagname='"table"'/>
+<assertSize collection="nodeList" size="3"
id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode"
index="1"/>
+<tBodies interface="HTMLTableElement" obj="testNode"
var="tbodiesnodeList"/>
+<item interface="HTMLCollection" obj="tbodiesnodeList"
var="bodyNode" index="0"/>
+<rows interface="HTMLTableSectionElement" obj="bodyNode"
var="rowsnodeList"/>
+<length interface="HTMLCollection" obj="rowsnodeList"
var="vrows"/>
+<assertEquals actual="vrows" expected="2" id="rowsLink1"
ignoreCase="false"/>
+<insertRow interface="HTMLTableElement" obj="testNode"
var="newRow" index="2"/>
+<tBodies interface="HTMLTableElement" obj="testNode"
var="tbodiesnodeList"/>
+<item interface="HTMLCollection" obj="tbodiesnodeList"
var="bodyNode" index="0"/>
+<rows interface="HTMLTableSectionElement" obj="bodyNode"
var="rowsnodeList"/>
+<length interface="HTMLCollection" obj="rowsnodeList"
var="vrows"/>
+<assertEquals actual="vrows" expected="3" id="rowsLink2"
ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLTableElement29.xml.kfail
b/test/testcases/tests/level1/html/HTMLTableElement29.xml.kfail
deleted file mode 100644
index ba62848..0000000
--- a/test/testcases/tests/level1/html/HTMLTableElement29.xml.kfail
+++ /dev/null
@@ -1,61 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<?xml-stylesheet href="test-to-html.xml" type="text/xml"?>
-
-<!--
-
-Copyright (c) 2001 World Wide Web Consortium,
-(Massachusetts Institute of Technology, Institut National de
-Recherche en Informatique et en Automatique, Keio University). All
-Rights Reserved. This program is distributed under the W3C's Software
-Intellectual Property License. This program is distributed in the
-hope that it will be useful, but WITHOUT ANY WARRANTY; without even
-the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
-PURPOSE.
-
-See W3C License
http://www.w3.org/Consortium/Legal/ for more details.
-
--->
-<!DOCTYPE test SYSTEM "dom1.dtd">
-<test
xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1"
name="HTMLTableElement29">
-<metadata>
-<title>HTMLTableElement29</title>
-<creator>NIST</creator>
-<description>
- The insertRow() method inserts a new empty table row.
-
- Retrieve the second TABLE element and invoke the insertRow() method
- with an index of two. Currently the 2nd indexed row is in the TBODY
- section of the TABLE. The number of rows in the TBODY section before
- insertion of the new row is two. After the new row is inserted the number
- of rows in the TBODY section is three.
-</description>
-<contributor>Rick Rivello</contributor>
-<date qualifier="created">2002-05-02</date>
-<subject
resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-o...
-</metadata>
-<var name="nodeList" type="NodeList"/>
-<var name="tbodiesnodeList" type="HTMLCollection"/>
-<var name="testNode" type="Node"/>
-<var name="bodyNode" type="Node"/>
-<var name="newRow" type="HTMLElement"/>
-<var name="rowsnodeList" type="HTMLCollection"/>
-<var name="vsection1" type="HTMLTableSectionElement"/>
-<var name="vsection2" type="HTMLTableSectionElement"/>
-<var name="vrows" type="int" />
-<var name="doc" type="Document"/>
-<load var="doc" href="table" willBeModified="true"/>
-<getElementsByTagName interface="Document" obj="doc"
var="nodeList" tagname='"table"'/>
-<assertSize collection="nodeList" size="3"
id="Asize"/>
-<item interface="NodeList" obj="nodeList" var="testNode"
index="1"/>
-<tBodies interface="HTMLTableElement" obj="testNode"
var="tbodiesnodeList"/>
-<item interface="HTMLCollection" obj="tbodiesnodeList"
var="bodyNode" index="0"/>
-<rows interface="HTMLTableSectionElement" obj="bodyNode"
var="rowsnodeList"/>
-<length interface="HTMLCollection" obj="rowsnodeList"
var="vrows"/>
-<assertEquals actual="vrows" expected="2" id="rowsLink1"
ignoreCase="false"/>
-<insertRow interface="HTMLTableElement" obj="testNode"
var="newRow" index="2"/>
-<tBodies interface="HTMLTableElement" obj="testNode"
var="tbodiesnodeList"/>
-<item interface="HTMLCollection" obj="tbodiesnodeList"
var="bodyNode" index="0"/>
-<rows interface="HTMLTableSectionElement" obj="bodyNode"
var="rowsnodeList"/>
-<length interface="HTMLCollection" obj="rowsnodeList"
var="vrows"/>
-<assertEquals actual="vrows" expected="3" id="rowsLink2"
ignoreCase="false"/>
-</test>
diff --git a/test/testcases/tests/level1/html/HTMLTableElement30.xml
b/test/testcases/tests/level1/html/HTMLTableElement30.xml
new file mode 100644
index 0000000..e45cf68
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLTableElement30.xml
@@ -0,0 +1,64 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xml" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 World Wide Web Consortium,
+(Massachusetts Institute of Technology, Institut National de
+Recherche en Informatique et en Automatique, Keio University). All
+Rights Reserved. This program is distributed under the W3C's Software
+Intellectual Property License. This program is distributed in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
+PURPOSE.
+
+See W3C License
http://www.w3.org/Consortium/Legal/ for more details.
+
+-->
+<!DOCTYPE test SYSTEM "dom1.dtd">
+<test
xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1"
name="HTMLTableElement30">
+<metadata>
+<title>HTMLTableElement30</title>
+<creator>NIST</creator>
+<description>
+ The insertRow() method inserts a new empty table row.
+
+ Retrieve the second TABLE element and invoke the insertRow() method
+ with an index of four. After the new row is inserted the number of rows
+ in the table should be five.
+ Also the number of rows in the TFOOT section before
+ insertion of the new row is one. After the new row is inserted the number
+ of rows in the TFOOT section is two.
+</description>
+<contributor>Rick Rivello</contributor>
+<date qualifier="created">2002-05-02</date>
+<subject
resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-o...
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="tbodiesnodeList" type="HTMLCollection"/>
+<var name="testNode" type="Node"/>
+<var name="newRow" type="HTMLElement"/>
+<var name="rowsnodeList" type="HTMLCollection"/>
+<var name="vsection1" type="HTMLTableSectionElement"/>
+<var name="vrows" type="int" />
+<var name="doc" type="Document"/>
+<load var="doc" href="table" willBeModified="true"/>
+<getElementsByTagName interface="Document" obj="doc"
var="nodeList" tagname='"table"'/>
+<assertSize collection="nodeList" size="3"
id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode"
index="1"/>
+<rows interface="HTMLTableSectionElement" obj="testNode"
var="rowsnodeList"/>
+<length interface="HTMLCollection" obj="rowsnodeList"
var="vrows"/>
+<assertEquals actual="vrows" expected="4" id="rowsLink1"
ignoreCase="false"/>
+<tFoot interface="HTMLTableElement" obj="testNode"
var="vsection1"/>
+<rows interface="HTMLTableSectionElement" obj="vsection1"
var="rowsnodeList"/>
+<length interface="HTMLCollection" obj="rowsnodeList"
var="vrows"/>
+<assertEquals actual="vrows" expected="1" id="rowsLink"
ignoreCase="false"/>
+<insertRow interface="HTMLTableElement" obj="testNode"
var="newRow" index="4"/>
+<rows interface="HTMLTableSectionElement" obj="testNode"
var="rowsnodeList"/>
+<length interface="HTMLCollection" obj="rowsnodeList"
var="vrows"/>
+<assertEquals actual="vrows" expected="5" id="rowsLink2"
ignoreCase="false"/>
+<tFoot interface="HTMLTableElement" obj="testNode"
var="vsection1"/>
+<rows interface="HTMLTableSectionElement" obj="vsection1"
var="rowsnodeList"/>
+<length interface="HTMLCollection" obj="rowsnodeList"
var="vrows"/>
+<assertEquals actual="vrows" expected="2" id="rowsLink3"
ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLTableElement30.xml.kfail
b/test/testcases/tests/level1/html/HTMLTableElement30.xml.kfail
deleted file mode 100644
index e45cf68..0000000
--- a/test/testcases/tests/level1/html/HTMLTableElement30.xml.kfail
+++ /dev/null
@@ -1,64 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<?xml-stylesheet href="test-to-html.xml" type="text/xml"?>
-
-<!--
-
-Copyright (c) 2001 World Wide Web Consortium,
-(Massachusetts Institute of Technology, Institut National de
-Recherche en Informatique et en Automatique, Keio University). All
-Rights Reserved. This program is distributed under the W3C's Software
-Intellectual Property License. This program is distributed in the
-hope that it will be useful, but WITHOUT ANY WARRANTY; without even
-the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
-PURPOSE.
-
-See W3C License
http://www.w3.org/Consortium/Legal/ for more details.
-
--->
-<!DOCTYPE test SYSTEM "dom1.dtd">
-<test
xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1"
name="HTMLTableElement30">
-<metadata>
-<title>HTMLTableElement30</title>
-<creator>NIST</creator>
-<description>
- The insertRow() method inserts a new empty table row.
-
- Retrieve the second TABLE element and invoke the insertRow() method
- with an index of four. After the new row is inserted the number of rows
- in the table should be five.
- Also the number of rows in the TFOOT section before
- insertion of the new row is one. After the new row is inserted the number
- of rows in the TFOOT section is two.
-</description>
-<contributor>Rick Rivello</contributor>
-<date qualifier="created">2002-05-02</date>
-<subject
resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-o...
-</metadata>
-<var name="nodeList" type="NodeList"/>
-<var name="tbodiesnodeList" type="HTMLCollection"/>
-<var name="testNode" type="Node"/>
-<var name="newRow" type="HTMLElement"/>
-<var name="rowsnodeList" type="HTMLCollection"/>
-<var name="vsection1" type="HTMLTableSectionElement"/>
-<var name="vrows" type="int" />
-<var name="doc" type="Document"/>
-<load var="doc" href="table" willBeModified="true"/>
-<getElementsByTagName interface="Document" obj="doc"
var="nodeList" tagname='"table"'/>
-<assertSize collection="nodeList" size="3"
id="Asize"/>
-<item interface="NodeList" obj="nodeList" var="testNode"
index="1"/>
-<rows interface="HTMLTableSectionElement" obj="testNode"
var="rowsnodeList"/>
-<length interface="HTMLCollection" obj="rowsnodeList"
var="vrows"/>
-<assertEquals actual="vrows" expected="4" id="rowsLink1"
ignoreCase="false"/>
-<tFoot interface="HTMLTableElement" obj="testNode"
var="vsection1"/>
-<rows interface="HTMLTableSectionElement" obj="vsection1"
var="rowsnodeList"/>
-<length interface="HTMLCollection" obj="rowsnodeList"
var="vrows"/>
-<assertEquals actual="vrows" expected="1" id="rowsLink"
ignoreCase="false"/>
-<insertRow interface="HTMLTableElement" obj="testNode"
var="newRow" index="4"/>
-<rows interface="HTMLTableSectionElement" obj="testNode"
var="rowsnodeList"/>
-<length interface="HTMLCollection" obj="rowsnodeList"
var="vrows"/>
-<assertEquals actual="vrows" expected="5" id="rowsLink2"
ignoreCase="false"/>
-<tFoot interface="HTMLTableElement" obj="testNode"
var="vsection1"/>
-<rows interface="HTMLTableSectionElement" obj="vsection1"
var="rowsnodeList"/>
-<length interface="HTMLCollection" obj="rowsnodeList"
var="vrows"/>
-<assertEquals actual="vrows" expected="2" id="rowsLink3"
ignoreCase="false"/>
-</test>
diff --git a/test/testcases/tests/level1/html/HTMLTableElement31.xml
b/test/testcases/tests/level1/html/HTMLTableElement31.xml
new file mode 100644
index 0000000..e5eb32d
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLTableElement31.xml
@@ -0,0 +1,65 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xml" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, Institut National de
+Recherche en Informatique et en Automatique, Keio University). All
+Rights Reserved. This program is distributed under the W3C's Software
+Intellectual Property License. This program is distributed in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
+PURPOSE.
+
+See W3C License
http://www.w3.org/Consortium/Legal/ for more details.
+
+-->
+<!DOCTYPE test SYSTEM "dom1.dtd">
+<test
xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1"
name="HTMLTableElement31">
+<metadata>
+<title>HTMLTableElement31</title>
+<creator>NIST</creator>
+<description>
+ The insertRow() method inserts a new empty table row. In addition, when
+ the table is empty the row is inserted into a TBODY which is created
+ and inserted into the table.
+
+ Load the table1 file which has a non-empty table element.
+ Create an empty TABLE element and append to the document.
+ Check to make sure that the empty TABLE element doesn't
+ have a TBODY element. Insert a new row into the empty
+ TABLE element. Check for existence of the a TBODY element
+ in the table.
+</description>
+<contributor>Rick Rivello</contributor>
+<date qualifier="created">2002-05-02</date>
+<subject
resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-o...
+<!-- comments on the commented out sections -->
+<subject
resource="http://lists.w3.org/Archives/Public/www-dom-ts/2002Aug/001...
+<subject
resource="http://www.w3.org/Bugs/Public/show_bug.cgi?id=502"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="tableNode" type="Node"/>
+<var name="tbodiesnodeList" type="HTMLCollection"/>
+<var name="newRow" type="HTMLElement"/>
+<var name="doc" type="Document"/>
+<var name="table" type="Element"/>
+<var name="tbodiesLength" type="int"/>
+<load var="doc" href="table1"
willBeModified="true"/>
+<getElementsByTagName interface="Document" obj="doc"
var="nodeList" tagname='"body"'/>
+<assertSize collection="nodeList" size="1"
id="tableSize1"/>
+<item interface="NodeList" obj="nodeList" index="0"
var="testNode"/>
+<createElement obj="doc" var="table"
tagName='"table"'/>
+<appendChild obj="testNode" newChild="table"
var="tableNode"/>
+<getElementsByTagName interface="Document" obj="doc"
var="nodeList" tagname='"table"'/>
+<assertSize collection="nodeList" size="2"
id="tableSize2"/>
+<tBodies interface="HTMLTableElement" obj="tableNode"
var="tbodiesnodeList"/>
+<length var="tbodiesLength" obj="tbodiesnodeList"
interface="HTMLCollection"/>
+<assertEquals actual="tbodiesLength" expected="0"
id="Asize3" ignoreCase="false"/>
+<insertRow interface="HTMLTableElement" obj="tableNode"
var="newRow" index="0"/>
+<tBodies interface="HTMLTableElement" obj="tableNode"
var="tbodiesnodeList"/>
+<length var="tbodiesLength" obj="tbodiesnodeList"
interface="HTMLCollection"/>
+<assertEquals actual="tbodiesLength" expected="1"
id="Asize4" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLTableElement31.xml.kfail
b/test/testcases/tests/level1/html/HTMLTableElement31.xml.kfail
deleted file mode 100644
index e5eb32d..0000000
--- a/test/testcases/tests/level1/html/HTMLTableElement31.xml.kfail
+++ /dev/null
@@ -1,65 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<?xml-stylesheet href="test-to-html.xml" type="text/xml"?>
-
-<!--
-
-Copyright (c) 2001-2004 World Wide Web Consortium,
-(Massachusetts Institute of Technology, Institut National de
-Recherche en Informatique et en Automatique, Keio University). All
-Rights Reserved. This program is distributed under the W3C's Software
-Intellectual Property License. This program is distributed in the
-hope that it will be useful, but WITHOUT ANY WARRANTY; without even
-the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
-PURPOSE.
-
-See W3C License
http://www.w3.org/Consortium/Legal/ for more details.
-
--->
-<!DOCTYPE test SYSTEM "dom1.dtd">
-<test
xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1"
name="HTMLTableElement31">
-<metadata>
-<title>HTMLTableElement31</title>
-<creator>NIST</creator>
-<description>
- The insertRow() method inserts a new empty table row. In addition, when
- the table is empty the row is inserted into a TBODY which is created
- and inserted into the table.
-
- Load the table1 file which has a non-empty table element.
- Create an empty TABLE element and append to the document.
- Check to make sure that the empty TABLE element doesn't
- have a TBODY element. Insert a new row into the empty
- TABLE element. Check for existence of the a TBODY element
- in the table.
-</description>
-<contributor>Rick Rivello</contributor>
-<date qualifier="created">2002-05-02</date>
-<subject
resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-o...
-<!-- comments on the commented out sections -->
-<subject
resource="http://lists.w3.org/Archives/Public/www-dom-ts/2002Aug/001...
-<subject
resource="http://www.w3.org/Bugs/Public/show_bug.cgi?id=502"/>
-</metadata>
-<var name="nodeList" type="NodeList"/>
-<var name="testNode" type="Node"/>
-<var name="tableNode" type="Node"/>
-<var name="tbodiesnodeList" type="HTMLCollection"/>
-<var name="newRow" type="HTMLElement"/>
-<var name="doc" type="Document"/>
-<var name="table" type="Element"/>
-<var name="tbodiesLength" type="int"/>
-<load var="doc" href="table1"
willBeModified="true"/>
-<getElementsByTagName interface="Document" obj="doc"
var="nodeList" tagname='"body"'/>
-<assertSize collection="nodeList" size="1"
id="tableSize1"/>
-<item interface="NodeList" obj="nodeList" index="0"
var="testNode"/>
-<createElement obj="doc" var="table"
tagName='"table"'/>
-<appendChild obj="testNode" newChild="table"
var="tableNode"/>
-<getElementsByTagName interface="Document" obj="doc"
var="nodeList" tagname='"table"'/>
-<assertSize collection="nodeList" size="2"
id="tableSize2"/>
-<tBodies interface="HTMLTableElement" obj="tableNode"
var="tbodiesnodeList"/>
-<length var="tbodiesLength" obj="tbodiesnodeList"
interface="HTMLCollection"/>
-<assertEquals actual="tbodiesLength" expected="0"
id="Asize3" ignoreCase="false"/>
-<insertRow interface="HTMLTableElement" obj="tableNode"
var="newRow" index="0"/>
-<tBodies interface="HTMLTableElement" obj="tableNode"
var="tbodiesnodeList"/>
-<length var="tbodiesLength" obj="tbodiesnodeList"
interface="HTMLCollection"/>
-<assertEquals actual="tbodiesLength" expected="1"
id="Asize4" ignoreCase="false"/>
-</test>
diff --git a/test/testcases/tests/level1/html/HTMLTableElement32.xml
b/test/testcases/tests/level1/html/HTMLTableElement32.xml
new file mode 100644
index 0000000..a6529b0
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLTableElement32.xml
@@ -0,0 +1,51 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xml" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 World Wide Web Consortium,
+(Massachusetts Institute of Technology, Institut National de
+Recherche en Informatique et en Automatique, Keio University). All
+Rights Reserved. This program is distributed under the W3C's Software
+Intellectual Property License. This program is distributed in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
+PURPOSE.
+
+See W3C License
http://www.w3.org/Consortium/Legal/ for more details.
+
+-->
+<!DOCTYPE test SYSTEM "dom1.dtd">
+<test
xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1"
name="HTMLTableElement32">
+<metadata>
+<title>HTMLTableElement32</title>
+<creator>NIST</creator>
+<description>
+ The deleteRow() method deletes a table row.
+
+ Retrieve the second TABLE element and invoke the deleteRow() method
+ with an index of 0(first row). Currently there are four rows in the
+ table. After the deleteRow() method is called there should be
+ three rows in the table.
+</description>
+<contributor>Rick Rivello</contributor>
+<date qualifier="created">2002-05-02</date>
+<subject
resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-o...
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="rowsnodeList" type="HTMLCollection"/>
+<var name="vrows" type="int" />
+<var name="doc" type="Document"/>
+<load var="doc" href="table" willBeModified="true"/>
+<getElementsByTagName interface="Document" obj="doc"
var="nodeList" tagname='"table"'/>
+<assertSize collection="nodeList" size="3"
id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode"
index="1"/>
+<rows interface="HTMLTableSectionElement" obj="testNode"
var="rowsnodeList"/>
+<length interface="HTMLCollection" obj="rowsnodeList"
var="vrows"/>
+<assertEquals actual="vrows" expected="4" id="rowsLink1"
ignoreCase="false"/>
+<deleteRow interface="HTMLTableElement" obj="testNode"
index="0"/>
+<rows interface="HTMLTableSectionElement" obj="testNode"
var="rowsnodeList"/>
+<length interface="HTMLCollection" obj="rowsnodeList"
var="vrows"/>
+<assertEquals actual="vrows" expected="3" id="rowsLink2"
ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLTableElement32.xml.kfail
b/test/testcases/tests/level1/html/HTMLTableElement32.xml.kfail
deleted file mode 100644
index a6529b0..0000000
--- a/test/testcases/tests/level1/html/HTMLTableElement32.xml.kfail
+++ /dev/null
@@ -1,51 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<?xml-stylesheet href="test-to-html.xml" type="text/xml"?>
-
-<!--
-
-Copyright (c) 2001 World Wide Web Consortium,
-(Massachusetts Institute of Technology, Institut National de
-Recherche en Informatique et en Automatique, Keio University). All
-Rights Reserved. This program is distributed under the W3C's Software
-Intellectual Property License. This program is distributed in the
-hope that it will be useful, but WITHOUT ANY WARRANTY; without even
-the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
-PURPOSE.
-
-See W3C License
http://www.w3.org/Consortium/Legal/ for more details.
-
--->
-<!DOCTYPE test SYSTEM "dom1.dtd">
-<test
xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1"
name="HTMLTableElement32">
-<metadata>
-<title>HTMLTableElement32</title>
-<creator>NIST</creator>
-<description>
- The deleteRow() method deletes a table row.
-
- Retrieve the second TABLE element and invoke the deleteRow() method
- with an index of 0(first row). Currently there are four rows in the
- table. After the deleteRow() method is called there should be
- three rows in the table.
-</description>
-<contributor>Rick Rivello</contributor>
-<date qualifier="created">2002-05-02</date>
-<subject
resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-o...
-</metadata>
-<var name="nodeList" type="NodeList"/>
-<var name="testNode" type="Node"/>
-<var name="rowsnodeList" type="HTMLCollection"/>
-<var name="vrows" type="int" />
-<var name="doc" type="Document"/>
-<load var="doc" href="table" willBeModified="true"/>
-<getElementsByTagName interface="Document" obj="doc"
var="nodeList" tagname='"table"'/>
-<assertSize collection="nodeList" size="3"
id="Asize"/>
-<item interface="NodeList" obj="nodeList" var="testNode"
index="1"/>
-<rows interface="HTMLTableSectionElement" obj="testNode"
var="rowsnodeList"/>
-<length interface="HTMLCollection" obj="rowsnodeList"
var="vrows"/>
-<assertEquals actual="vrows" expected="4" id="rowsLink1"
ignoreCase="false"/>
-<deleteRow interface="HTMLTableElement" obj="testNode"
index="0"/>
-<rows interface="HTMLTableSectionElement" obj="testNode"
var="rowsnodeList"/>
-<length interface="HTMLCollection" obj="rowsnodeList"
var="vrows"/>
-<assertEquals actual="vrows" expected="3" id="rowsLink2"
ignoreCase="false"/>
-</test>
diff --git a/test/testcases/tests/level1/html/HTMLTableElement33.xml
b/test/testcases/tests/level1/html/HTMLTableElement33.xml
new file mode 100644
index 0000000..1ae507a
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLTableElement33.xml
@@ -0,0 +1,50 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xml" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 World Wide Web Consortium,
+(Massachusetts Institute of Technology, Institut National de
+Recherche en Informatique et en Automatique, Keio University). All
+Rights Reserved. This program is distributed under the W3C's Software
+Intellectual Property License. This program is distributed in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
+PURPOSE.
+
+See W3C License
http://www.w3.org/Consortium/Legal/ for more details.
+
+-->
+<!DOCTYPE test SYSTEM "dom1.dtd">
+<test
xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1"
name="HTMLTableElement33">
+<metadata>
+<title>HTMLTableElement33</title>
+<creator>NIST</creator>
+<description>
+ The deleteRow() method deletes a table row.
+
+ Retrieve the second TABLE element and invoke the deleteRow() method
+ with an index of 3(last row). Currently there are four rows in the
+ table. The deleteRow() method is called and now there should be three.
+</description>
+<contributor>Rick Rivello</contributor>
+<date qualifier="created">2002-05-02</date>
+<subject
resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-o...
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="rowsnodeList" type="HTMLCollection"/>
+<var name="vrows" type="int" />
+<var name="doc" type="Document"/>
+<load var="doc" href="table" willBeModified="true"/>
+<getElementsByTagName interface="Document" obj="doc"
var="nodeList" tagname='"table"'/>
+<assertSize collection="nodeList" size="3"
id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode"
index="1"/>
+<rows interface="HTMLTableSectionElement" obj="testNode"
var="rowsnodeList"/>
+<length interface="HTMLCollection" obj="rowsnodeList"
var="vrows"/>
+<assertEquals actual="vrows" expected="4" id="rowsLink1"
ignoreCase="false"/>
+<deleteRow interface="HTMLTableElement" obj="testNode"
index="3"/>
+<rows interface="HTMLTableSectionElement" obj="testNode"
var="rowsnodeList"/>
+<length interface="HTMLCollection" obj="rowsnodeList"
var="vrows"/>
+<assertEquals actual="vrows" expected="3" id="rowsLink2"
ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLTableElement33.xml.kfail
b/test/testcases/tests/level1/html/HTMLTableElement33.xml.kfail
deleted file mode 100644
index 1ae507a..0000000
--- a/test/testcases/tests/level1/html/HTMLTableElement33.xml.kfail
+++ /dev/null
@@ -1,50 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<?xml-stylesheet href="test-to-html.xml" type="text/xml"?>
-
-<!--
-
-Copyright (c) 2001 World Wide Web Consortium,
-(Massachusetts Institute of Technology, Institut National de
-Recherche en Informatique et en Automatique, Keio University). All
-Rights Reserved. This program is distributed under the W3C's Software
-Intellectual Property License. This program is distributed in the
-hope that it will be useful, but WITHOUT ANY WARRANTY; without even
-the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
-PURPOSE.
-
-See W3C License
http://www.w3.org/Consortium/Legal/ for more details.
-
--->
-<!DOCTYPE test SYSTEM "dom1.dtd">
-<test
xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1"
name="HTMLTableElement33">
-<metadata>
-<title>HTMLTableElement33</title>
-<creator>NIST</creator>
-<description>
- The deleteRow() method deletes a table row.
-
- Retrieve the second TABLE element and invoke the deleteRow() method
- with an index of 3(last row). Currently there are four rows in the
- table. The deleteRow() method is called and now there should be three.
-</description>
-<contributor>Rick Rivello</contributor>
-<date qualifier="created">2002-05-02</date>
-<subject
resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-o...
-</metadata>
-<var name="nodeList" type="NodeList"/>
-<var name="testNode" type="Node"/>
-<var name="rowsnodeList" type="HTMLCollection"/>
-<var name="vrows" type="int" />
-<var name="doc" type="Document"/>
-<load var="doc" href="table" willBeModified="true"/>
-<getElementsByTagName interface="Document" obj="doc"
var="nodeList" tagname='"table"'/>
-<assertSize collection="nodeList" size="3"
id="Asize"/>
-<item interface="NodeList" obj="nodeList" var="testNode"
index="1"/>
-<rows interface="HTMLTableSectionElement" obj="testNode"
var="rowsnodeList"/>
-<length interface="HTMLCollection" obj="rowsnodeList"
var="vrows"/>
-<assertEquals actual="vrows" expected="4" id="rowsLink1"
ignoreCase="false"/>
-<deleteRow interface="HTMLTableElement" obj="testNode"
index="3"/>
-<rows interface="HTMLTableSectionElement" obj="testNode"
var="rowsnodeList"/>
-<length interface="HTMLCollection" obj="rowsnodeList"
var="vrows"/>
-<assertEquals actual="vrows" expected="3" id="rowsLink2"
ignoreCase="false"/>
-</test>
diff --git a/test/testcases/tests/level1/html/HTMLTableRowElement05.xml
b/test/testcases/tests/level1/html/HTMLTableRowElement05.xml
new file mode 100644
index 0000000..638126b
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLTableRowElement05.xml
@@ -0,0 +1,45 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 World Wide Web Consortium,
+(Massachusetts Institute of Technology, Institut National de
+Recherche en Informatique et en Automatique, Keio University). All
+Rights Reserved. This program is distributed under the W3C's Software
+Intellectual Property License. This program is distributed in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
+PURPOSE.
+
+See W3C License
http://www.w3.org/Consortium/Legal/ for more details.
+
+-->
+<!DOCTYPE test SYSTEM "dom1.dtd">
+<test
xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1"
name="HTMLTableRowElement05">
+<metadata>
+<title>HTMLTableRowElement05</title>
+<creator>NIST</creator>
+<description>
+ The cells attribute specifies the collection of cells in this row.
+
+ Retrieve the fourth TR element and examine the value of
+ the cells length attribute.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject
resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-o...
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="cellsnodeList" type="HTMLCollection"/>
+<var name="testNode" type="Node"/>
+<var name="vcells" type="int" />
+<var name="doc" type="Document"/>
+<load var="doc" href="tablerow"
willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc"
var="nodeList" tagname='"tr"'/>
+<assertSize collection="nodeList" size="5"
id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode"
index="3"/>
+<cells interface="HTMLTableRowElement" obj="testNode"
var="cellsnodeList"/>
+<length interface="HTMLCollection" obj="cellsnodeList"
var="vcells"/>
+<assertEquals actual="vcells" expected="6"
id="cellsLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLTableRowElement05.xml.kfail
b/test/testcases/tests/level1/html/HTMLTableRowElement05.xml.kfail
deleted file mode 100644
index 638126b..0000000
--- a/test/testcases/tests/level1/html/HTMLTableRowElement05.xml.kfail
+++ /dev/null
@@ -1,45 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
-
-<!--
-
-Copyright (c) 2001 World Wide Web Consortium,
-(Massachusetts Institute of Technology, Institut National de
-Recherche en Informatique et en Automatique, Keio University). All
-Rights Reserved. This program is distributed under the W3C's Software
-Intellectual Property License. This program is distributed in the
-hope that it will be useful, but WITHOUT ANY WARRANTY; without even
-the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
-PURPOSE.
-
-See W3C License
http://www.w3.org/Consortium/Legal/ for more details.
-
--->
-<!DOCTYPE test SYSTEM "dom1.dtd">
-<test
xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1"
name="HTMLTableRowElement05">
-<metadata>
-<title>HTMLTableRowElement05</title>
-<creator>NIST</creator>
-<description>
- The cells attribute specifies the collection of cells in this row.
-
- Retrieve the fourth TR element and examine the value of
- the cells length attribute.
-</description>
-<contributor>Mary Brady</contributor>
-<date qualifier="created">2002-02-22</date>
-<subject
resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-o...
-</metadata>
-<var name="nodeList" type="NodeList"/>
-<var name="cellsnodeList" type="HTMLCollection"/>
-<var name="testNode" type="Node"/>
-<var name="vcells" type="int" />
-<var name="doc" type="Document"/>
-<load var="doc" href="tablerow"
willBeModified="false"/>
-<getElementsByTagName interface="Document" obj="doc"
var="nodeList" tagname='"tr"'/>
-<assertSize collection="nodeList" size="5"
id="Asize"/>
-<item interface="NodeList" obj="nodeList" var="testNode"
index="3"/>
-<cells interface="HTMLTableRowElement" obj="testNode"
var="cellsnodeList"/>
-<length interface="HTMLCollection" obj="cellsnodeList"
var="vcells"/>
-<assertEquals actual="vcells" expected="6"
id="cellsLink" ignoreCase="false"/>
-</test>
diff --git a/test/testcases/tests/level1/html/area01.xml
b/test/testcases/tests/level1/html/area01.xml
new file mode 100644
index 0000000..34ebdb2
--- /dev/null
+++ b/test/testcases/tests/level1/html/area01.xml
@@ -0,0 +1,39 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<!--
+
+Copyright (c) 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, Institut National de
+Recherche en Informatique et en Automatique, Keio University). All
+Rights Reserved. This program is distributed under the W3C's Software
+Intellectual Property License. This program is distributed in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
+PURPOSE.
+
+See W3C License
http://www.w3.org/Consortium/Legal/ for more details.
+
+-->
+<!DOCTYPE test SYSTEM "dom1.dtd">
+<test
xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1"
name="area01">
+<metadata>
+<title>area01</title>
+<creator>Netscape</creator>
+<description>
+
+</description>
+<contributor>Sivakiran Tummala</contributor>
+<date qualifier="created">2002-02-08</date>
+<subject
resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-o...
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vcoords" type="DOMString" />
+<var name="doc" type="Node"/>
+<load var="doc" href="area" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc"
var="nodeList" tagname='"area"'/>
+<assertSize collection="nodeList" size="1"
id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode"
index="0"/>
+<coords interface="HTMLAreaElement" obj="testNode"
var="vcoords"/>
+<assertEquals actual="vcoords" expected='"0,2,45,45"'
id="coordsLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/area01.xml.notimpl
b/test/testcases/tests/level1/html/area01.xml.notimpl
deleted file mode 100644
index 34ebdb2..0000000
--- a/test/testcases/tests/level1/html/area01.xml.notimpl
+++ /dev/null
@@ -1,39 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-
-<!--
-
-Copyright (c) 2001-2004 World Wide Web Consortium,
-(Massachusetts Institute of Technology, Institut National de
-Recherche en Informatique et en Automatique, Keio University). All
-Rights Reserved. This program is distributed under the W3C's Software
-Intellectual Property License. This program is distributed in the
-hope that it will be useful, but WITHOUT ANY WARRANTY; without even
-the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
-PURPOSE.
-
-See W3C License
http://www.w3.org/Consortium/Legal/ for more details.
-
--->
-<!DOCTYPE test SYSTEM "dom1.dtd">
-<test
xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1"
name="area01">
-<metadata>
-<title>area01</title>
-<creator>Netscape</creator>
-<description>
-
-</description>
-<contributor>Sivakiran Tummala</contributor>
-<date qualifier="created">2002-02-08</date>
-<subject
resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-o...
-</metadata>
-<var name="nodeList" type="NodeList"/>
-<var name="testNode" type="Node"/>
-<var name="vcoords" type="DOMString" />
-<var name="doc" type="Node"/>
-<load var="doc" href="area" willBeModified="false"/>
-<getElementsByTagName interface="Document" obj="doc"
var="nodeList" tagname='"area"'/>
-<assertSize collection="nodeList" size="1"
id="Asize"/>
-<item interface="NodeList" obj="nodeList" var="testNode"
index="0"/>
-<coords interface="HTMLAreaElement" obj="testNode"
var="vcoords"/>
-<assertEquals actual="vcoords" expected='"0,2,45,45"'
id="coordsLink" ignoreCase="false"/>
-</test>
diff --git a/test/testcases/tests/level1/html/area02.xml
b/test/testcases/tests/level1/html/area02.xml
new file mode 100644
index 0000000..8f85598
--- /dev/null
+++ b/test/testcases/tests/level1/html/area02.xml
@@ -0,0 +1,39 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<!--
+
+Copyright (c) 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, Institut National de
+Recherche en Informatique et en Automatique, Keio University). All
+Rights Reserved. This program is distributed under the W3C's Software
+Intellectual Property License. This program is distributed in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
+PURPOSE.
+
+See W3C License
http://www.w3.org/Consortium/Legal/ for more details.
+
+-->
+<!DOCTYPE test SYSTEM "dom1.dtd">
+<test
xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1"
name="area02">
+<metadata>
+<title>area02</title>
+<creator>Netscape</creator>
+<description>
+
+</description>
+<contributor>Sivakiran Tummala</contributor>
+<date qualifier="created">2002-02-08</date>
+<subject
resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-o...
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vnohref" type="boolean" />
+<var name="doc" type="Node"/>
+<load var="doc" href="area" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc"
var="nodeList" tagname='"area"'/>
+<assertSize collection="nodeList" size="1"
id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode"
index="0"/>
+<noHref interface="HTMLAreaElement" obj="testNode"
var="vnohref"/>
+<assertFalse actual="vnohref" id="noHrefLink"/>
+</test>
diff --git a/test/testcases/tests/level1/html/area02.xml.notimpl
b/test/testcases/tests/level1/html/area02.xml.notimpl
deleted file mode 100644
index 8f85598..0000000
--- a/test/testcases/tests/level1/html/area02.xml.notimpl
+++ /dev/null
@@ -1,39 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-
-<!--
-
-Copyright (c) 2001-2004 World Wide Web Consortium,
-(Massachusetts Institute of Technology, Institut National de
-Recherche en Informatique et en Automatique, Keio University). All
-Rights Reserved. This program is distributed under the W3C's Software
-Intellectual Property License. This program is distributed in the
-hope that it will be useful, but WITHOUT ANY WARRANTY; without even
-the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
-PURPOSE.
-
-See W3C License
http://www.w3.org/Consortium/Legal/ for more details.
-
--->
-<!DOCTYPE test SYSTEM "dom1.dtd">
-<test
xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1"
name="area02">
-<metadata>
-<title>area02</title>
-<creator>Netscape</creator>
-<description>
-
-</description>
-<contributor>Sivakiran Tummala</contributor>
-<date qualifier="created">2002-02-08</date>
-<subject
resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-o...
-</metadata>
-<var name="nodeList" type="NodeList"/>
-<var name="testNode" type="Node"/>
-<var name="vnohref" type="boolean" />
-<var name="doc" type="Node"/>
-<load var="doc" href="area" willBeModified="false"/>
-<getElementsByTagName interface="Document" obj="doc"
var="nodeList" tagname='"area"'/>
-<assertSize collection="nodeList" size="1"
id="Asize"/>
-<item interface="NodeList" obj="nodeList" var="testNode"
index="0"/>
-<noHref interface="HTMLAreaElement" obj="testNode"
var="vnohref"/>
-<assertFalse actual="vnohref" id="noHrefLink"/>
-</test>
diff --git a/test/testcases/tests/level1/html/area03.xml
b/test/testcases/tests/level1/html/area03.xml
new file mode 100644
index 0000000..577e711
--- /dev/null
+++ b/test/testcases/tests/level1/html/area03.xml
@@ -0,0 +1,39 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<!--
+
+Copyright (c) 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, Institut National de
+Recherche en Informatique et en Automatique, Keio University). All
+Rights Reserved. This program is distributed under the W3C's Software
+Intellectual Property License. This program is distributed in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
+PURPOSE.
+
+See W3C License
http://www.w3.org/Consortium/Legal/ for more details.
+
+-->
+<!DOCTYPE test SYSTEM "dom1.dtd">
+<test
xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1"
name="area03">
+<metadata>
+<title>area03</title>
+<creator>Netscape</creator>
+<description>
+
+</description>
+<contributor>Sivakiran Tummala</contributor>
+<date qualifier="created">2002-02-08</date>
+<subject
resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-o...
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vtabindex" type="int" />
+<var name="doc" type="Node"/>
+<load var="doc" href="area" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc"
var="nodeList" tagname='"area"'/>
+<assertSize collection="nodeList" size="1"
id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode"
index="0"/>
+<tabIndex interface="HTMLAreaElement" obj="testNode"
var="vtabindex"/>
+<assertEquals actual="vtabindex" expected="10"
id="tabIndexLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/area03.xml.notimpl
b/test/testcases/tests/level1/html/area03.xml.notimpl
deleted file mode 100644
index 577e711..0000000
--- a/test/testcases/tests/level1/html/area03.xml.notimpl
+++ /dev/null
@@ -1,39 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-
-<!--
-
-Copyright (c) 2001-2004 World Wide Web Consortium,
-(Massachusetts Institute of Technology, Institut National de
-Recherche en Informatique et en Automatique, Keio University). All
-Rights Reserved. This program is distributed under the W3C's Software
-Intellectual Property License. This program is distributed in the
-hope that it will be useful, but WITHOUT ANY WARRANTY; without even
-the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
-PURPOSE.
-
-See W3C License
http://www.w3.org/Consortium/Legal/ for more details.
-
--->
-<!DOCTYPE test SYSTEM "dom1.dtd">
-<test
xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1"
name="area03">
-<metadata>
-<title>area03</title>
-<creator>Netscape</creator>
-<description>
-
-</description>
-<contributor>Sivakiran Tummala</contributor>
-<date qualifier="created">2002-02-08</date>
-<subject
resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-o...
-</metadata>
-<var name="nodeList" type="NodeList"/>
-<var name="testNode" type="Node"/>
-<var name="vtabindex" type="int" />
-<var name="doc" type="Node"/>
-<load var="doc" href="area" willBeModified="false"/>
-<getElementsByTagName interface="Document" obj="doc"
var="nodeList" tagname='"area"'/>
-<assertSize collection="nodeList" size="1"
id="Asize"/>
-<item interface="NodeList" obj="nodeList" var="testNode"
index="0"/>
-<tabIndex interface="HTMLAreaElement" obj="testNode"
var="vtabindex"/>
-<assertEquals actual="vtabindex" expected="10"
id="tabIndexLink" ignoreCase="false"/>
-</test>
diff --git a/test/testcases/tests/level1/html/area04.xml
b/test/testcases/tests/level1/html/area04.xml
new file mode 100644
index 0000000..f964a57
--- /dev/null
+++ b/test/testcases/tests/level1/html/area04.xml
@@ -0,0 +1,39 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<!--
+
+Copyright (c) 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, Institut National de
+Recherche en Informatique et en Automatique, Keio University). All
+Rights Reserved. This program is distributed under the W3C's Software
+Intellectual Property License. This program is distributed in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
+PURPOSE.
+
+See W3C License
http://www.w3.org/Consortium/Legal/ for more details.
+
+-->
+<!DOCTYPE test SYSTEM "dom1.dtd">
+<test
xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1"
name="area04">
+<metadata>
+<title>area04</title>
+<creator>Netscape</creator>
+<description>
+
+</description>
+<contributor>Sivakiran Tummala</contributor>
+<date qualifier="created">2002-02-08</date>
+<subject
resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-o...
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vaccesskey" type="DOMString" />
+<var name="doc" type="Node"/>
+<load var="doc" href="area" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc"
var="nodeList" tagname='"area"'/>
+<assertSize collection="nodeList" size="1"
id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode"
index="0"/>
+<accessKey interface="HTMLAreaElement" obj="testNode"
var="vaccesskey"/>
+<assertEquals actual="vaccesskey" expected='"a"'
id="accessKeyLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/area04.xml.notimpl
b/test/testcases/tests/level1/html/area04.xml.notimpl
deleted file mode 100644
index f964a57..0000000
--- a/test/testcases/tests/level1/html/area04.xml.notimpl
+++ /dev/null
@@ -1,39 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-
-<!--
-
-Copyright (c) 2001-2004 World Wide Web Consortium,
-(Massachusetts Institute of Technology, Institut National de
-Recherche en Informatique et en Automatique, Keio University). All
-Rights Reserved. This program is distributed under the W3C's Software
-Intellectual Property License. This program is distributed in the
-hope that it will be useful, but WITHOUT ANY WARRANTY; without even
-the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
-PURPOSE.
-
-See W3C License
http://www.w3.org/Consortium/Legal/ for more details.
-
--->
-<!DOCTYPE test SYSTEM "dom1.dtd">
-<test
xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1"
name="area04">
-<metadata>
-<title>area04</title>
-<creator>Netscape</creator>
-<description>
-
-</description>
-<contributor>Sivakiran Tummala</contributor>
-<date qualifier="created">2002-02-08</date>
-<subject
resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-o...
-</metadata>
-<var name="nodeList" type="NodeList"/>
-<var name="testNode" type="Node"/>
-<var name="vaccesskey" type="DOMString" />
-<var name="doc" type="Node"/>
-<load var="doc" href="area" willBeModified="false"/>
-<getElementsByTagName interface="Document" obj="doc"
var="nodeList" tagname='"area"'/>
-<assertSize collection="nodeList" size="1"
id="Asize"/>
-<item interface="NodeList" obj="nodeList" var="testNode"
index="0"/>
-<accessKey interface="HTMLAreaElement" obj="testNode"
var="vaccesskey"/>
-<assertEquals actual="vaccesskey" expected='"a"'
id="accessKeyLink" ignoreCase="false"/>
-</test>
diff --git a/test/testcases/tests/level1/html/basefont01.xml
b/test/testcases/tests/level1/html/basefont01.xml
new file mode 100644
index 0000000..eadfca4
--- /dev/null
+++ b/test/testcases/tests/level1/html/basefont01.xml
@@ -0,0 +1,39 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<!--
+
+Copyright (c) 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, Institut National de
+Recherche en Informatique et en Automatique, Keio University). All
+Rights Reserved. This program is distributed under the W3C's Software
+Intellectual Property License. This program is distributed in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
+PURPOSE.
+
+See W3C License
http://www.w3.org/Consortium/Legal/ for more details.
+
+-->
+<!DOCTYPE test SYSTEM "dom1.dtd">
+<test
xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1"
name="basefont01">
+<metadata>
+<title>basefont01</title>
+<creator>Netscape</creator>
+<description>
+The value of attribute color of the basefont element is read and checked against the
expected value.
+</description>
+<contributor>Sivakiran Tummala</contributor>
+<date qualifier="created">2002-02-08</date>
+<subject
resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-o...
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vcolor" type="DOMString" />
+<var name="doc" type="Node"/>
+<load var="doc" href="basefont"
willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc"
var="nodeList" tagname='"basefont"'/>
+<assertSize collection="nodeList" size="1"
id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode"
index="0"/>
+<color interface="HTMLBaseFontElement" obj="testNode"
var="vcolor"/>
+<assertEquals actual="vcolor" expected='"#000000"'
id="colorLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/basefont01.xml.notimpl
b/test/testcases/tests/level1/html/basefont01.xml.notimpl
deleted file mode 100644
index eadfca4..0000000
--- a/test/testcases/tests/level1/html/basefont01.xml.notimpl
+++ /dev/null
@@ -1,39 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-
-<!--
-
-Copyright (c) 2001-2004 World Wide Web Consortium,
-(Massachusetts Institute of Technology, Institut National de
-Recherche en Informatique et en Automatique, Keio University). All
-Rights Reserved. This program is distributed under the W3C's Software
-Intellectual Property License. This program is distributed in the
-hope that it will be useful, but WITHOUT ANY WARRANTY; without even
-the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
-PURPOSE.
-
-See W3C License
http://www.w3.org/Consortium/Legal/ for more details.
-
--->
-<!DOCTYPE test SYSTEM "dom1.dtd">
-<test
xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1"
name="basefont01">
-<metadata>
-<title>basefont01</title>
-<creator>Netscape</creator>
-<description>
-The value of attribute color of the basefont element is read and checked against the
expected value.
-</description>
-<contributor>Sivakiran Tummala</contributor>
-<date qualifier="created">2002-02-08</date>
-<subject
resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-o...
-</metadata>
-<var name="nodeList" type="NodeList"/>
-<var name="testNode" type="Node"/>
-<var name="vcolor" type="DOMString" />
-<var name="doc" type="Node"/>
-<load var="doc" href="basefont"
willBeModified="false"/>
-<getElementsByTagName interface="Document" obj="doc"
var="nodeList" tagname='"basefont"'/>
-<assertSize collection="nodeList" size="1"
id="Asize"/>
-<item interface="NodeList" obj="nodeList" var="testNode"
index="0"/>
-<color interface="HTMLBaseFontElement" obj="testNode"
var="vcolor"/>
-<assertEquals actual="vcolor" expected='"#000000"'
id="colorLink" ignoreCase="false"/>
-</test>
commitdiff
http://git.netsurf-browser.org/libdom.git/commit/?id=c7f3d0def9dc71deb135...
commit c7f3d0def9dc71deb135b5afedcddac1c92b9c3e
Author: rsk1994 <rsk1coder99(a)gmail.com>
Commit: Rupinder Singh Khokhar <rsk1coder99(a)gmail.com>
IFrame Element
diff --git a/Makefile b/Makefile
index 4dc8af6..569e554 100644
--- a/Makefile
+++ b/Makefile
@@ -133,6 +133,7 @@ INSTALL_ITEMS := $(INSTALL_ITEMS) $(I):$(Is)/html_base_element.h
INSTALL_ITEMS := $(INSTALL_ITEMS) $(I):$(Is)/html_style_element.h
INSTALL_ITEMS := $(INSTALL_ITEMS) $(I):$(Is)/html_frameset_element.h
INSTALL_ITEMS := $(INSTALL_ITEMS) $(I):$(Is)/html_frame_element.h
+INSTALL_ITEMS := $(INSTALL_ITEMS) $(I):$(Is)/html_iframe_element.h
INSTALL_ITEMS := $(INSTALL_ITEMS) /$(LIBDIR)/pkgconfig:lib$(COMPONENT).pc.in
INSTALL_ITEMS := $(INSTALL_ITEMS) /$(LIBDIR):$(OUTPUT)
diff --git a/include/dom/dom.h b/include/dom/dom.h
index d8245ac..1392ee0 100644
--- a/include/dom/dom.h
+++ b/include/dom/dom.h
@@ -92,6 +92,7 @@
#include <dom/html/html_style_element.h>
#include <dom/html/html_frameset_element.h>
#include <dom/html/html_frame_element.h>
+#include <dom/html/html_iframe_element.h>
/* DOM Events header */
#include <dom/events/events.h>
diff --git a/include/dom/html/html_iframe_element.h
b/include/dom/html/html_iframe_element.h
index 2e182d5..f064cfe 100644
--- a/include/dom/html/html_iframe_element.h
+++ b/include/dom/html/html_iframe_element.h
@@ -3,5 +3,80 @@
* Licensed under the MIT License,
*
http://www.opensource.org/licenses/mit-license.php
* Copyright 2009 Bo Yang <struggleyb.nku(a)gmail.com>
+ * Copyright 2014 Rupinder Singh Khokhar <rsk1coder99(a)gmail.com>
*/
+#ifndef dom_html_iframe_element_h_
+#define dom_html_iframe_element_h_
+#include <stdbool.h>
+#include <dom/core/exceptions.h>
+#include <dom/core/string.h>
+
+#include <dom/html/html_document.h>
+typedef struct dom_html_iframe_element dom_html_iframe_element;
+
+dom_exception dom_html_iframe_element_get_frame_border(
+ dom_html_iframe_element *element, dom_string **frame_border);
+
+dom_exception dom_html_iframe_element_set_frame_border(
+ dom_html_iframe_element *element, dom_string *frame_border);
+
+dom_exception dom_html_iframe_element_get_align(
+ dom_html_iframe_element *element, dom_string **align);
+
+dom_exception dom_html_iframe_element_set_align(
+ dom_html_iframe_element *element, dom_string *align);
+
+dom_exception dom_html_iframe_element_set_long_desc(
+ dom_html_iframe_element *ele, dom_string *long_desc);
+
+dom_exception dom_html_iframe_element_get_long_desc(
+ dom_html_iframe_element *ele, dom_string **long_desc);
+
+dom_exception dom_html_iframe_element_get_margin_height(
+ dom_html_iframe_element *element, dom_string **margin_height);
+
+dom_exception dom_html_iframe_element_set_margin_height(
+ dom_html_iframe_element *element, dom_string *margin_height);
+
+dom_exception dom_html_iframe_element_get_margin_width(
+ dom_html_iframe_element *element, dom_string **margin_width);
+
+dom_exception dom_html_iframe_element_set_margin_width(
+ dom_html_iframe_element *element, dom_string *margin_width);
+
+dom_exception dom_html_iframe_element_get_name(
+ dom_html_iframe_element *element, dom_string **name);
+
+dom_exception dom_html_iframe_element_set_name(
+ dom_html_iframe_element *element, dom_string *name);
+
+dom_exception dom_html_iframe_element_get_scrolling(
+ dom_html_iframe_element *element, dom_string **scrolling);
+
+dom_exception dom_html_iframe_element_set_scrolling(
+ dom_html_iframe_element *element, dom_string *scrolling);
+
+dom_exception dom_html_iframe_element_get_src(
+ dom_html_iframe_element *element, dom_string **src);
+
+dom_exception dom_html_iframe_element_set_src(
+ dom_html_iframe_element *element, dom_string *src);
+
+dom_exception dom_html_iframe_element_get_height(
+ dom_html_iframe_element *element, dom_string **height);
+
+dom_exception dom_html_iframe_element_set_height(
+ dom_html_iframe_element *element, dom_string *height);
+
+dom_exception dom_html_iframe_element_get_width(
+ dom_html_iframe_element *element, dom_string **width);
+
+dom_exception dom_html_iframe_element_set_width(
+ dom_html_iframe_element *element, dom_string *width);
+
+dom_exception dom_html_iframe_element_get_content_document(
+ dom_html_iframe_element *ele,
+ dom_document **content_document);
+
+#endif
diff --git a/src/html/Makefile b/src/html/Makefile
index fa707d4..95550ab 100644
--- a/src/html/Makefile
+++ b/src/html/Makefile
@@ -18,10 +18,9 @@ DIR_SOURCES := \
html_map_element.c html_script_element.c html_tablecaption_element.c \
html_tablecell_element.c html_tablecol_element.c html_tablesection_element.c \
html_table_element.c html_tablerow_element.c html_frameset_element.c \
- html_frame_element.c
+ html_frame_element.c html_iframe_element.c
UNINMPLEMENTED_SOURCES := \
html_isindex_element.c \
- html_iframe_element.c
include $(NSBUILD)/Makefile.subdir
diff --git a/src/html/html_document.c b/src/html/html_document.c
index cf8d1aa..5d68d51 100644
--- a/src/html/html_document.c
+++ b/src/html/html_document.c
@@ -59,6 +59,7 @@
#include "html/html_style_element.h"
#include "html/html_frameset_element.h"
#include "html/html_frame_element.h"
+#include "html/html_iframe_element.h"
#include "core/attr.h"
#include "core/string.h"
@@ -373,6 +374,9 @@ _dom_html_document_create_element_internal(dom_html_document *html,
} else if (dom_string_caseless_isequal(tag_name, html->memoised[hds_FRAME])) {
exc = _dom_html_frame_element_create(html, namespace, prefix,
(dom_html_frame_element **) result);
+ } else if (dom_string_caseless_isequal(tag_name, html->memoised[hds_IFRAME])) {
+ exc = _dom_html_iframe_element_create(html, namespace, prefix,
+ (dom_html_iframe_element **) result);
} else {
exc = _dom_html_element_create(html, tag_name, namespace,
prefix, result);
diff --git a/src/html/html_frame_element.h b/src/html/html_frame_element.h
index 77a137b..c313cbc 100644
--- a/src/html/html_frame_element.h
+++ b/src/html/html_frame_element.h
@@ -9,7 +9,7 @@
#ifndef dom_internal_html_frame_element_h_
#define dom_internal_html_frame_element_h_
-#include <dom/html/html_frameset_element.h>
+#include <dom/html/html_frame_element.h>
#include "html/html_element.h"
diff --git a/src/html/html_iframe_element.c b/src/html/html_iframe_element.c
index 2e182d5..6f15b3e 100644
--- a/src/html/html_iframe_element.c
+++ b/src/html/html_iframe_element.c
@@ -3,5 +3,267 @@
* Licensed under the MIT License,
*
http://www.opensource.org/licenses/mit-license.php
* Copyright 2009 Bo Yang <struggleyb.nku(a)gmail.com>
+ * Copyright 2014 Rupinder Singh Khokhar<rsk1coder99(a)gmail.com>
*/
+#include <assert.h>
+#include <stdlib.h>
+
+#include <dom/html/html_iframe_element.h>
+
+#include "html/html_document.h"
+#include "html/html_iframe_element.h"
+
+#include "core/node.h"
+#include "core/attr.h"
+#include "utils/utils.h"
+
+static struct dom_element_protected_vtable _protect_vtable = {
+ {
+ DOM_NODE_PROTECT_VTABLE_HTML_IFRAME_ELEMENT
+ },
+ DOM_HTML_IFRAME_ELEMENT_PROTECT_VTABLE
+};
+
+/**
+ * Create a dom_html_iframe_element object
+ *
+ * \param doc The document object
+ * \param ele The returned element object
+ * \return DOM_NO_ERR on success, appropriate dom_exception on failure.
+ */
+dom_exception _dom_html_iframe_element_create(struct dom_html_document *doc,
+ dom_string *namespace, dom_string *prefix,
+ struct dom_html_iframe_element **ele)
+{
+ struct dom_node_internal *node;
+
+ *ele = malloc(sizeof(dom_html_iframe_element));
+ if (*ele == NULL)
+ return DOM_NO_MEM_ERR;
+
+ /* Set up vtables */
+ node = (struct dom_node_internal *) *ele;
+ node->base.vtable = &_dom_html_element_vtable;
+ node->vtable = &_protect_vtable;
+
+ return _dom_html_iframe_element_initialise(doc, namespace, prefix, *ele);
+}
+
+/**
+ * Initialise a dom_html_iframe_element object
+ *
+ * \param doc The document object
+ * \param ele The dom_html_iframe_element object
+ * \return DOM_NO_ERR on success, appropriate dom_exception on failure.
+ */
+dom_exception _dom_html_iframe_element_initialise(struct dom_html_document *doc,
+ dom_string *namespace, dom_string *prefix,
+ struct dom_html_iframe_element *ele)
+{
+ dom_string *scrolling_default = NULL;
+ dom_exception err;
+ err = dom_string_create((const uint8_t *) "auto",
SLEN("auto"), &scrolling_default);
+ if (err != DOM_NO_ERR)
+ return err;
+
+
+ dom_string *frame_border_default = NULL;
+ err = dom_string_create((const uint8_t *) "1", SLEN("1"),
&frame_border_default);
+ if (err != DOM_NO_ERR)
+ return err;
+
+ err = _dom_html_element_initialise(doc, &ele->base,
+ doc->memoised[hds_IFRAME],
+ namespace, prefix);
+
+ ele->scrolling_default = scrolling_default;
+ ele->frame_border_default = frame_border_default;
+
+ return err;
+}
+
+/**
+ * Finalise a dom_html_iframe_element object
+ *
+ * \param ele The dom_html_iframe_element object
+ */
+void _dom_html_iframe_element_finalise(struct dom_html_iframe_element *ele)
+{
+ _dom_html_element_finalise(&ele->base);
+}
+
+/**
+ * Destroy a dom_html_iframe_element object
+ *
+ * \param ele The dom_html_iframe_element object
+ */
+void _dom_html_iframe_element_destroy(struct dom_html_iframe_element *ele)
+{
+ _dom_html_iframe_element_finalise(ele);
+ free(ele);
+}
+
+/*------------------------------------------------------------------------*/
+/* The protected virtual functions */
+
+/* The virtual function used to parse attribute value, see src/core/element.c
+ * for detail */
+dom_exception _dom_html_iframe_element_parse_attribute(dom_element *ele,
+ dom_string *name, dom_string *value,
+ dom_string **parsed)
+{
+ UNUSED(ele);
+ UNUSED(name);
+
+ dom_string_ref(value);
+ *parsed = value;
+
+ return DOM_NO_ERR;
+}
+
+/* The virtual destroy function, see src/core/node.c for detail */
+void _dom_virtual_html_iframe_element_destroy(dom_node_internal *node)
+{
+ _dom_html_iframe_element_destroy((struct dom_html_iframe_element *) node);
+}
+
+/* The virtual copy function, see src/core/node.c for detail */
+dom_exception _dom_html_iframe_element_copy(dom_node_internal *old,
+ dom_node_internal **copy)
+{
+ return _dom_html_element_copy(old, copy);
+}
+
+/*-----------------------------------------------------------------------*/
+/* API functions */
+
+#define SIMPLE_GET(attr) \
+ dom_exception dom_html_iframe_element_get_##attr( \
+ dom_html_iframe_element *element, \
+ dom_string **attr) \
+ { \
+ dom_exception ret; \
+ dom_string *_memo_##attr; \
+ \
+ _memo_##attr = \
+ ((struct dom_html_document *) \
+ ((struct dom_node_internal *)element)->owner)->\
+ memoised[hds_##attr]; \
+ \
+ ret = dom_element_get_attribute(element, _memo_##attr, attr); \
+ \
+ return ret; \
+ }
+#define SIMPLE_SET(attr) \
+dom_exception dom_html_iframe_element_set_##attr( \
+ dom_html_iframe_element *element, \
+ dom_string *attr) \
+ { \
+ dom_exception ret; \
+ dom_string *_memo_##attr; \
+ \
+ _memo_##attr = \
+ ((struct dom_html_document *) \
+ ((struct dom_node_internal *)element)->owner)->\
+ memoised[hds_##attr]; \
+ \
+ ret = dom_element_set_attribute(element, _memo_##attr, attr); \
+ \
+ return ret; \
+ }
+
+#define SIMPLE_GET_SET(attr) SIMPLE_GET(attr) SIMPLE_SET(attr)
+
+SIMPLE_GET_SET(long_desc);
+SIMPLE_GET_SET(align);
+SIMPLE_GET_SET(name);
+SIMPLE_GET_SET(src);
+SIMPLE_GET_SET(margin_width);
+SIMPLE_GET_SET(margin_height);
+SIMPLE_SET(scrolling);
+SIMPLE_SET(frame_border);
+SIMPLE_GET_SET(width);
+SIMPLE_GET_SET(height);
+
+
+/**
+ * Get the frame_border property
+ *
+ * \param ele The dom_html_iframe_element object
+ * \param iframe_border The returned status
+ * \return DOM_NO_ERR on success, appropriate dom_exception on failure.
+ */
+dom_exception dom_html_iframe_element_get_frame_border(
+ dom_html_iframe_element *ele,
+ dom_string **frame_border)
+{
+ dom_html_document *doc;
+ bool has_value = false;
+ dom_exception err;
+
+ doc = (dom_html_document *) ((dom_node_internal *) ele)->owner;
+
+ err = dom_element_has_attribute(ele,
+ doc->memoised[hds_frame_border], &has_value);
+ if(err !=DOM_NO_ERR)
+ return err;
+
+ if(has_value) {
+ return dom_element_get_attribute(ele,
+ doc->memoised[hds_frame_border], frame_border);
+ }
+
+ *frame_border = ele->frame_border_default;
+ if (*frame_border != NULL)
+ dom_string_ref(*frame_border);
+ return DOM_NO_ERR;
+}
+
+/**
+ * Get the frame_border property
+ *
+ * \param ele The dom_html_iframe_element object
+ * \param scrolling The returned status
+ * \return DOM_NO_ERR on success, appropriate dom_exception on failure.
+ */
+dom_exception dom_html_iframe_element_get_scrolling(
+ dom_html_iframe_element *ele,
+ dom_string **scrolling)
+{
+ dom_html_document *doc;
+ bool has_value = false;
+ dom_exception err;
+
+ doc = (dom_html_document *) ((dom_node_internal *) ele)->owner;
+
+ err = dom_element_has_attribute(ele,
+ doc->memoised[hds_scrolling], &has_value);
+ if(err !=DOM_NO_ERR)
+ return err;
+
+ if(has_value) {
+ return dom_element_get_attribute(ele,
+ doc->memoised[hds_scrolling], scrolling);
+ }
+
+ *scrolling = ele->scrolling_default;
+ if (*scrolling != NULL)
+ dom_string_ref(*scrolling);
+ return DOM_NO_ERR;
+}
+
+/**
+ * Get the frame_border property
+ *
+ * \param ele The dom_html_iframe_element object
+ * \param content_document The returned status
+ * \return DOM_NO_ERR on success, appropriate dom_exception on failure.
+ */
+dom_exception dom_html_iframe_element_get_content_document(
+ dom_html_iframe_element *ele,
+ dom_document **content_document)
+{
+ *content_document = dom_node_get_owner(ele);
+ return DOM_NO_ERR;
+}
diff --git a/src/html/html_iframe_element.h b/src/html/html_iframe_element.h
index 2e182d5..dafc9e1 100644
--- a/src/html/html_iframe_element.h
+++ b/src/html/html_iframe_element.h
@@ -3,5 +3,53 @@
* Licensed under the MIT License,
*
http://www.opensource.org/licenses/mit-license.php
* Copyright 2009 Bo Yang <struggleyb.nku(a)gmail.com>
+ * Copyright 2014 Rupinder Singh Khokhar <rsk1coder99(a)gmail.com>
*/
+#ifndef dom_internal_html_iframe_element_h_
+#define dom_internal_html_iframe_element_h_
+
+#include <dom/html/html_iframe_element.h>
+#include "html/html_element.h"
+
+
+struct dom_html_iframe_element {
+ struct dom_html_element base;
+ /**< The base class */
+ dom_string *scrolling_default;
+ dom_string *frame_border_default;
+};
+
+/* Create a dom_html_iframe_element object */
+dom_exception _dom_html_iframe_element_create(struct dom_html_document *doc,
+ dom_string *namespace, dom_string *prefix,
+ struct dom_html_iframe_element **ele);
+
+/* Initialise a dom_html_iframe_element object */
+dom_exception _dom_html_iframe_element_initialise(struct dom_html_document *doc,
+ dom_string *namespace, dom_string *prefix,
+ struct dom_html_iframe_element *ele);
+
+/* Finalise a dom_html_iframe_element object */
+void _dom_html_iframe_element_finalise(struct dom_html_iframe_element *ele);
+
+/* Destroy a dom_html_iframe_element object */
+void _dom_html_iframe_element_destroy(struct dom_html_iframe_element *ele);
+
+/* The protected virtual functions */
+dom_exception _dom_html_iframe_element_parse_attribute(dom_element *ele,
+ dom_string *name, dom_string *value,
+ dom_string **parsed);
+void _dom_virtual_html_iframe_element_destroy(dom_node_internal *node);
+dom_exception _dom_html_iframe_element_copy(dom_node_internal *old,
+ dom_node_internal **copy);
+
+#define DOM_HTML_IFRAME_ELEMENT_PROTECT_VTABLE \
+ _dom_html_iframe_element_parse_attribute
+
+#define DOM_NODE_PROTECT_VTABLE_HTML_IFRAME_ELEMENT \
+ _dom_virtual_html_iframe_element_destroy, \
+ _dom_html_iframe_element_copy
+
+#endif
+
diff --git a/test/DOMTSHandler.pm b/test/DOMTSHandler.pm
index ee9298c..304ac29 100644
--- a/test/DOMTSHandler.pm
+++ b/test/DOMTSHandler.pm
@@ -64,6 +64,7 @@ our %special_prefix = (
HTMLTableCaptionElement => "dom_html_table_caption_element",
HTMLTableSectionElement => "dom_html_table_section_element",
HTMLIsIndexElement => "dom_html_isindex_element",
+ HTMLIFrameElement => "dom_html_iframe_element",
caption => "dom_html_table_caption_element *",
section => "dom_html_table_section_element *",
createCaption => "dom_html_element *",
diff --git a/test/dom1-interfaces.xml b/test/dom1-interfaces.xml
index 25d29d8..fc88b80 100644
--- a/test/dom1-interfaces.xml
+++ b/test/dom1-interfaces.xml
@@ -3667,5 +3667,11 @@ See W3C License
http://www.w3.org/Consortium/Legal/ for more
details.
<p>Frame width. See the<loc
href="http://www.w3.org/TR/REC-html40/present/frames.html#adef-width...
form="simple" show="embed" actuate="auto">width attribute
definition</loc>in HTML 4.0.</p>
</descr>
</attribute>
+<attribute readonly="yes" type="Document"
name="contentDocument" id="contentDoc">
+<descr>
+<p/>
+</descr>
+</attribute>
+
</interface>
</library>
diff --git a/test/testcases/tests/level1/html/HTMLIFrameElement01.xml
b/test/testcases/tests/level1/html/HTMLIFrameElement01.xml
new file mode 100644
index 0000000..1280955
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLIFrameElement01.xml
@@ -0,0 +1,44 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xml" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 World Wide Web Consortium,
+(Massachusetts Institute of Technology, Institut National de
+Recherche en Informatique et en Automatique, Keio University). All
+Rights Reserved. This program is distributed under the W3C's Software
+Intellectual Property License. This program is distributed in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
+PURPOSE.
+
+See W3C License
http://www.w3.org/Consortium/Legal/ for more details.
+
+-->
+<!DOCTYPE test SYSTEM "dom1.dtd">
+<test
xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1"
name="HTMLIFrameElement01">
+<metadata>
+<title>HTMLIFrameElement01</title>
+<creator>NIST</creator>
+<description>
+ The align attribute aligns this object(vertically or horizontally with
+ respect to its surrounding text.
+
+ Retrieve the align attribute of the first IFRAME element and examine
+ it's value.
+</description>
+<contributor>Rick Rivello</contributor>
+<date qualifier="created">2002-05-08</date>
+<subject
resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-o...
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="valign" type="DOMString" />
+<var name="doc" type="Document"/>
+<load var="doc" href="iframe"
willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc"
var="nodeList" tagname='"iframe"'/>
+<assertSize collection="nodeList" size="1"
id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode"
index="0"/>
+<align interface="HTMLIFrameElement" obj="testNode"
var="valign"/>
+<assertEquals actual="valign" expected='"top"'
id="alignLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLIFrameElement01.xml.kfail
b/test/testcases/tests/level1/html/HTMLIFrameElement01.xml.kfail
deleted file mode 100644
index 1280955..0000000
--- a/test/testcases/tests/level1/html/HTMLIFrameElement01.xml.kfail
+++ /dev/null
@@ -1,44 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<?xml-stylesheet href="test-to-html.xml" type="text/xml"?>
-
-<!--
-
-Copyright (c) 2001 World Wide Web Consortium,
-(Massachusetts Institute of Technology, Institut National de
-Recherche en Informatique et en Automatique, Keio University). All
-Rights Reserved. This program is distributed under the W3C's Software
-Intellectual Property License. This program is distributed in the
-hope that it will be useful, but WITHOUT ANY WARRANTY; without even
-the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
-PURPOSE.
-
-See W3C License
http://www.w3.org/Consortium/Legal/ for more details.
-
--->
-<!DOCTYPE test SYSTEM "dom1.dtd">
-<test
xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1"
name="HTMLIFrameElement01">
-<metadata>
-<title>HTMLIFrameElement01</title>
-<creator>NIST</creator>
-<description>
- The align attribute aligns this object(vertically or horizontally with
- respect to its surrounding text.
-
- Retrieve the align attribute of the first IFRAME element and examine
- it's value.
-</description>
-<contributor>Rick Rivello</contributor>
-<date qualifier="created">2002-05-08</date>
-<subject
resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-o...
-</metadata>
-<var name="nodeList" type="NodeList"/>
-<var name="testNode" type="Node"/>
-<var name="valign" type="DOMString" />
-<var name="doc" type="Document"/>
-<load var="doc" href="iframe"
willBeModified="false"/>
-<getElementsByTagName interface="Document" obj="doc"
var="nodeList" tagname='"iframe"'/>
-<assertSize collection="nodeList" size="1"
id="Asize"/>
-<item interface="NodeList" obj="nodeList" var="testNode"
index="0"/>
-<align interface="HTMLIFrameElement" obj="testNode"
var="valign"/>
-<assertEquals actual="valign" expected='"top"'
id="alignLink" ignoreCase="false"/>
-</test>
diff --git a/test/testcases/tests/level1/html/HTMLIFrameElement02.xml
b/test/testcases/tests/level1/html/HTMLIFrameElement02.xml
new file mode 100644
index 0000000..c815c67
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLIFrameElement02.xml
@@ -0,0 +1,45 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xml" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 World Wide Web Consortium,
+(Massachusetts Institute of Technology, Institut National de
+Recherche en Informatique et en Automatique, Keio University). All
+Rights Reserved. This program is distributed under the W3C's Software
+Intellectual Property License. This program is distributed in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
+PURPOSE.
+
+See W3C License
http://www.w3.org/Consortium/Legal/ for more details.
+
+-->
+<!DOCTYPE test SYSTEM "dom1.dtd">
+<test
xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1"
name="HTMLIFrameElement02">
+<metadata>
+<title>HTMLIFrameElement02</title>
+<creator>NIST</creator>
+<description>
+ The frameBorder attribute specifies the request for frame borders.
+ (frameBorder=1 A border is drawn)
+ (FrameBorder=0 A border is not drawn)
+
+ Retrieve the frameBorder attribute of the first IFRAME element and examine
+ it's value.
+</description>
+<contributor>Rick Rivello</contributor>
+<date qualifier="created">2002-05-08</date>
+<subject
resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-o...
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vframeborder" type="DOMString" />
+<var name="doc" type="Document"/>
+<load var="doc" href="iframe"
willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc"
var="nodeList" tagname='"iframe"'/>
+<assertSize collection="nodeList" size="1"
id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode"
index="0"/>
+<frameBorder interface="HTMLIFrameElement" obj="testNode"
var="vframeborder"/>
+<assertEquals actual="vframeborder" expected='"1"'
id="frameborderLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLIFrameElement02.xml.kfail
b/test/testcases/tests/level1/html/HTMLIFrameElement02.xml.kfail
deleted file mode 100644
index c815c67..0000000
--- a/test/testcases/tests/level1/html/HTMLIFrameElement02.xml.kfail
+++ /dev/null
@@ -1,45 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<?xml-stylesheet href="test-to-html.xml" type="text/xml"?>
-
-<!--
-
-Copyright (c) 2001 World Wide Web Consortium,
-(Massachusetts Institute of Technology, Institut National de
-Recherche en Informatique et en Automatique, Keio University). All
-Rights Reserved. This program is distributed under the W3C's Software
-Intellectual Property License. This program is distributed in the
-hope that it will be useful, but WITHOUT ANY WARRANTY; without even
-the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
-PURPOSE.
-
-See W3C License
http://www.w3.org/Consortium/Legal/ for more details.
-
--->
-<!DOCTYPE test SYSTEM "dom1.dtd">
-<test
xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1"
name="HTMLIFrameElement02">
-<metadata>
-<title>HTMLIFrameElement02</title>
-<creator>NIST</creator>
-<description>
- The frameBorder attribute specifies the request for frame borders.
- (frameBorder=1 A border is drawn)
- (FrameBorder=0 A border is not drawn)
-
- Retrieve the frameBorder attribute of the first IFRAME element and examine
- it's value.
-</description>
-<contributor>Rick Rivello</contributor>
-<date qualifier="created">2002-05-08</date>
-<subject
resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-o...
-</metadata>
-<var name="nodeList" type="NodeList"/>
-<var name="testNode" type="Node"/>
-<var name="vframeborder" type="DOMString" />
-<var name="doc" type="Document"/>
-<load var="doc" href="iframe"
willBeModified="false"/>
-<getElementsByTagName interface="Document" obj="doc"
var="nodeList" tagname='"iframe"'/>
-<assertSize collection="nodeList" size="1"
id="Asize"/>
-<item interface="NodeList" obj="nodeList" var="testNode"
index="0"/>
-<frameBorder interface="HTMLIFrameElement" obj="testNode"
var="vframeborder"/>
-<assertEquals actual="vframeborder" expected='"1"'
id="frameborderLink" ignoreCase="false"/>
-</test>
diff --git a/test/testcases/tests/level1/html/HTMLIFrameElement03.xml
b/test/testcases/tests/level1/html/HTMLIFrameElement03.xml
new file mode 100644
index 0000000..3842aa3
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLIFrameElement03.xml
@@ -0,0 +1,43 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xml" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 World Wide Web Consortium,
+(Massachusetts Institute of Technology, Institut National de
+Recherche en Informatique et en Automatique, Keio University). All
+Rights Reserved. This program is distributed under the W3C's Software
+Intellectual Property License. This program is distributed in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
+PURPOSE.
+
+See W3C License
http://www.w3.org/Consortium/Legal/ for more details.
+
+-->
+<!DOCTYPE test SYSTEM "dom1.dtd">
+<test
xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1"
name="HTMLIFrameElement03">
+<metadata>
+<title>HTMLIFrameElement03</title>
+<creator>NIST</creator>
+<description>
+ The height attribute specifies the frame height.
+
+ Retrieve the height attribute of the first IFRAME element and examine
+ it's value.
+</description>
+<contributor>Rick Rivello</contributor>
+<date qualifier="created">2002-05-08</date>
+<subject
resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-o...
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vheight" type="DOMString" />
+<var name="doc" type="Document"/>
+<load var="doc" href="iframe"
willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc"
var="nodeList" tagname='"iframe"'/>
+<assertSize collection="nodeList" size="1"
id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode"
index="0"/>
+<height interface="HTMLIFrameElement" obj="testNode"
var="vheight"/>
+<assertEquals actual="vheight" expected='"50"'
id="heightLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLIFrameElement03.xml.kfail
b/test/testcases/tests/level1/html/HTMLIFrameElement03.xml.kfail
deleted file mode 100644
index 3842aa3..0000000
--- a/test/testcases/tests/level1/html/HTMLIFrameElement03.xml.kfail
+++ /dev/null
@@ -1,43 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<?xml-stylesheet href="test-to-html.xml" type="text/xml"?>
-
-<!--
-
-Copyright (c) 2001 World Wide Web Consortium,
-(Massachusetts Institute of Technology, Institut National de
-Recherche en Informatique et en Automatique, Keio University). All
-Rights Reserved. This program is distributed under the W3C's Software
-Intellectual Property License. This program is distributed in the
-hope that it will be useful, but WITHOUT ANY WARRANTY; without even
-the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
-PURPOSE.
-
-See W3C License
http://www.w3.org/Consortium/Legal/ for more details.
-
--->
-<!DOCTYPE test SYSTEM "dom1.dtd">
-<test
xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1"
name="HTMLIFrameElement03">
-<metadata>
-<title>HTMLIFrameElement03</title>
-<creator>NIST</creator>
-<description>
- The height attribute specifies the frame height.
-
- Retrieve the height attribute of the first IFRAME element and examine
- it's value.
-</description>
-<contributor>Rick Rivello</contributor>
-<date qualifier="created">2002-05-08</date>
-<subject
resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-o...
-</metadata>
-<var name="nodeList" type="NodeList"/>
-<var name="testNode" type="Node"/>
-<var name="vheight" type="DOMString" />
-<var name="doc" type="Document"/>
-<load var="doc" href="iframe"
willBeModified="false"/>
-<getElementsByTagName interface="Document" obj="doc"
var="nodeList" tagname='"iframe"'/>
-<assertSize collection="nodeList" size="1"
id="Asize"/>
-<item interface="NodeList" obj="nodeList" var="testNode"
index="0"/>
-<height interface="HTMLIFrameElement" obj="testNode"
var="vheight"/>
-<assertEquals actual="vheight" expected='"50"'
id="heightLink" ignoreCase="false"/>
-</test>
diff --git a/test/testcases/tests/level1/html/HTMLIFrameElement04.xml
b/test/testcases/tests/level1/html/HTMLIFrameElement04.xml
new file mode 100644
index 0000000..65535fd
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLIFrameElement04.xml
@@ -0,0 +1,44 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xml" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, Institut National de
+Recherche en Informatique et en Automatique, Keio University). All
+Rights Reserved. This program is distributed under the W3C's Software
+Intellectual Property License. This program is distributed in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
+PURPOSE.
+
+See W3C License
http://www.w3.org/Consortium/Legal/ for more details.
+
+-->
+<!DOCTYPE test SYSTEM "dom1.dtd">
+<test
xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1"
name="HTMLIFrameElement04">
+<metadata>
+<title>HTMLIFrameElement04</title>
+<creator>NIST</creator>
+<description>
+ The longDesc attribute specifies a URI designating a long description
+ of this image or frame.
+
+ Retrieve the longDesc attribute of the first IFRAME element and examine
+ its value.
+</description>
+<contributor>Rick Rivello</contributor>
+<date qualifier="created">2002-05-08</date>
+<subject
resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-o...
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vlongdesc" type="DOMString" />
+<var name="doc" type="Document"/>
+<load var="doc" href="iframe"
willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc"
var="nodeList" tagname='"iframe"'/>
+<assertSize collection="nodeList" size="1"
id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode"
index="0"/>
+<longDesc interface="HTMLIFrameElement" obj="testNode"
var="vlongdesc"/>
+<assertEquals actual="vlongdesc" expected='"about:blank"'
ignoreCase="false" id="longdescLink"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLIFrameElement04.xml.kfail
b/test/testcases/tests/level1/html/HTMLIFrameElement04.xml.kfail
deleted file mode 100644
index 65535fd..0000000
--- a/test/testcases/tests/level1/html/HTMLIFrameElement04.xml.kfail
+++ /dev/null
@@ -1,44 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<?xml-stylesheet href="test-to-html.xml" type="text/xml"?>
-
-<!--
-
-Copyright (c) 2001-2004 World Wide Web Consortium,
-(Massachusetts Institute of Technology, Institut National de
-Recherche en Informatique et en Automatique, Keio University). All
-Rights Reserved. This program is distributed under the W3C's Software
-Intellectual Property License. This program is distributed in the
-hope that it will be useful, but WITHOUT ANY WARRANTY; without even
-the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
-PURPOSE.
-
-See W3C License
http://www.w3.org/Consortium/Legal/ for more details.
-
--->
-<!DOCTYPE test SYSTEM "dom1.dtd">
-<test
xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1"
name="HTMLIFrameElement04">
-<metadata>
-<title>HTMLIFrameElement04</title>
-<creator>NIST</creator>
-<description>
- The longDesc attribute specifies a URI designating a long description
- of this image or frame.
-
- Retrieve the longDesc attribute of the first IFRAME element and examine
- its value.
-</description>
-<contributor>Rick Rivello</contributor>
-<date qualifier="created">2002-05-08</date>
-<subject
resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-o...
-</metadata>
-<var name="nodeList" type="NodeList"/>
-<var name="testNode" type="Node"/>
-<var name="vlongdesc" type="DOMString" />
-<var name="doc" type="Document"/>
-<load var="doc" href="iframe"
willBeModified="false"/>
-<getElementsByTagName interface="Document" obj="doc"
var="nodeList" tagname='"iframe"'/>
-<assertSize collection="nodeList" size="1"
id="Asize"/>
-<item interface="NodeList" obj="nodeList" var="testNode"
index="0"/>
-<longDesc interface="HTMLIFrameElement" obj="testNode"
var="vlongdesc"/>
-<assertEquals actual="vlongdesc" expected='"about:blank"'
ignoreCase="false" id="longdescLink"/>
-</test>
diff --git a/test/testcases/tests/level1/html/HTMLIFrameElement05.xml
b/test/testcases/tests/level1/html/HTMLIFrameElement05.xml
new file mode 100644
index 0000000..5ba9855
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLIFrameElement05.xml
@@ -0,0 +1,43 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xml" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 World Wide Web Consortium,
+(Massachusetts Institute of Technology, Institut National de
+Recherche en Informatique et en Automatique, Keio University). All
+Rights Reserved. This program is distributed under the W3C's Software
+Intellectual Property License. This program is distributed in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
+PURPOSE.
+
+See W3C License
http://www.w3.org/Consortium/Legal/ for more details.
+
+-->
+<!DOCTYPE test SYSTEM "dom1.dtd">
+<test
xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1"
name="HTMLIFrameElement05">
+<metadata>
+<title>HTMLIFrameElement05</title>
+<creator>NIST</creator>
+<description>
+ The marginWidth attribute specifies the frame margin width, in pixels.
+
+ Retrieve the marginWidth attribute of the first FRAME element and examine
+ it's value.
+</description>
+<contributor>Rick Rivello</contributor>
+<date qualifier="created">2002-05-08</date>
+<subject
resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-o...
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vmarginwidth" type="DOMString" />
+<var name="doc" type="Document"/>
+<load var="doc" href="iframe"
willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc"
var="nodeList" tagname='"iframe"'/>
+<assertSize collection="nodeList" size="1"
id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode"
index="0"/>
+<marginWidth interface="HTMLIFrameElement" obj="testNode"
var="vmarginwidth"/>
+<assertEquals actual="vmarginwidth" expected='"5"'
id="marginwidthLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLIFrameElement05.xml.kfail
b/test/testcases/tests/level1/html/HTMLIFrameElement05.xml.kfail
deleted file mode 100644
index 5ba9855..0000000
--- a/test/testcases/tests/level1/html/HTMLIFrameElement05.xml.kfail
+++ /dev/null
@@ -1,43 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<?xml-stylesheet href="test-to-html.xml" type="text/xml"?>
-
-<!--
-
-Copyright (c) 2001 World Wide Web Consortium,
-(Massachusetts Institute of Technology, Institut National de
-Recherche en Informatique et en Automatique, Keio University). All
-Rights Reserved. This program is distributed under the W3C's Software
-Intellectual Property License. This program is distributed in the
-hope that it will be useful, but WITHOUT ANY WARRANTY; without even
-the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
-PURPOSE.
-
-See W3C License
http://www.w3.org/Consortium/Legal/ for more details.
-
--->
-<!DOCTYPE test SYSTEM "dom1.dtd">
-<test
xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1"
name="HTMLIFrameElement05">
-<metadata>
-<title>HTMLIFrameElement05</title>
-<creator>NIST</creator>
-<description>
- The marginWidth attribute specifies the frame margin width, in pixels.
-
- Retrieve the marginWidth attribute of the first FRAME element and examine
- it's value.
-</description>
-<contributor>Rick Rivello</contributor>
-<date qualifier="created">2002-05-08</date>
-<subject
resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-o...
-</metadata>
-<var name="nodeList" type="NodeList"/>
-<var name="testNode" type="Node"/>
-<var name="vmarginwidth" type="DOMString" />
-<var name="doc" type="Document"/>
-<load var="doc" href="iframe"
willBeModified="false"/>
-<getElementsByTagName interface="Document" obj="doc"
var="nodeList" tagname='"iframe"'/>
-<assertSize collection="nodeList" size="1"
id="Asize"/>
-<item interface="NodeList" obj="nodeList" var="testNode"
index="0"/>
-<marginWidth interface="HTMLIFrameElement" obj="testNode"
var="vmarginwidth"/>
-<assertEquals actual="vmarginwidth" expected='"5"'
id="marginwidthLink" ignoreCase="false"/>
-</test>
diff --git a/test/testcases/tests/level1/html/HTMLIFrameElement06.xml
b/test/testcases/tests/level1/html/HTMLIFrameElement06.xml
new file mode 100644
index 0000000..85654d7
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLIFrameElement06.xml
@@ -0,0 +1,43 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xml" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 World Wide Web Consortium,
+(Massachusetts Institute of Technology, Institut National de
+Recherche en Informatique et en Automatique, Keio University). All
+Rights Reserved. This program is distributed under the W3C's Software
+Intellectual Property License. This program is distributed in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
+PURPOSE.
+
+See W3C License
http://www.w3.org/Consortium/Legal/ for more details.
+
+-->
+<!DOCTYPE test SYSTEM "dom1.dtd">
+<test
xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1"
name="HTMLIFrameElement06">
+<metadata>
+<title>HTMLIFrameElement06</title>
+<creator>NIST</creator>
+<description>
+ The marginHeight attribute specifies the frame margin height, in pixels.
+
+ Retrieve the marginHeight attribute of the first IFRAME element and examine
+ it's value.
+</description>
+<contributor>Rick Rivello</contributor>
+<date qualifier="created">2002-05-08</date>
+<subject
resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-o...
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vmarginheight" type="DOMString" />
+<var name="doc" type="Document"/>
+<load var="doc" href="iframe"
willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc"
var="nodeList" tagname='"iframe"'/>
+<assertSize collection="nodeList" size="1"
id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode"
index="0"/>
+<marginHeight interface="HTMLIFrameElement" obj="testNode"
var="vmarginheight"/>
+<assertEquals actual="vmarginheight" expected='"10"'
id="marginheightLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLIFrameElement06.xml.kfail
b/test/testcases/tests/level1/html/HTMLIFrameElement06.xml.kfail
deleted file mode 100644
index 85654d7..0000000
--- a/test/testcases/tests/level1/html/HTMLIFrameElement06.xml.kfail
+++ /dev/null
@@ -1,43 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<?xml-stylesheet href="test-to-html.xml" type="text/xml"?>
-
-<!--
-
-Copyright (c) 2001 World Wide Web Consortium,
-(Massachusetts Institute of Technology, Institut National de
-Recherche en Informatique et en Automatique, Keio University). All
-Rights Reserved. This program is distributed under the W3C's Software
-Intellectual Property License. This program is distributed in the
-hope that it will be useful, but WITHOUT ANY WARRANTY; without even
-the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
-PURPOSE.
-
-See W3C License
http://www.w3.org/Consortium/Legal/ for more details.
-
--->
-<!DOCTYPE test SYSTEM "dom1.dtd">
-<test
xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1"
name="HTMLIFrameElement06">
-<metadata>
-<title>HTMLIFrameElement06</title>
-<creator>NIST</creator>
-<description>
- The marginHeight attribute specifies the frame margin height, in pixels.
-
- Retrieve the marginHeight attribute of the first IFRAME element and examine
- it's value.
-</description>
-<contributor>Rick Rivello</contributor>
-<date qualifier="created">2002-05-08</date>
-<subject
resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-o...
-</metadata>
-<var name="nodeList" type="NodeList"/>
-<var name="testNode" type="Node"/>
-<var name="vmarginheight" type="DOMString" />
-<var name="doc" type="Document"/>
-<load var="doc" href="iframe"
willBeModified="false"/>
-<getElementsByTagName interface="Document" obj="doc"
var="nodeList" tagname='"iframe"'/>
-<assertSize collection="nodeList" size="1"
id="Asize"/>
-<item interface="NodeList" obj="nodeList" var="testNode"
index="0"/>
-<marginHeight interface="HTMLIFrameElement" obj="testNode"
var="vmarginheight"/>
-<assertEquals actual="vmarginheight" expected='"10"'
id="marginheightLink" ignoreCase="false"/>
-</test>
diff --git a/test/testcases/tests/level1/html/HTMLIFrameElement07.xml
b/test/testcases/tests/level1/html/HTMLIFrameElement07.xml
new file mode 100644
index 0000000..8143aa5
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLIFrameElement07.xml
@@ -0,0 +1,44 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xml" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 World Wide Web Consortium,
+(Massachusetts Institute of Technology, Institut National de
+Recherche en Informatique et en Automatique, Keio University). All
+Rights Reserved. This program is distributed under the W3C's Software
+Intellectual Property License. This program is distributed in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
+PURPOSE.
+
+See W3C License
http://www.w3.org/Consortium/Legal/ for more details.
+
+-->
+<!DOCTYPE test SYSTEM "dom1.dtd">
+<test
xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1"
name="HTMLIFrameElement07">
+<metadata>
+<title>HTMLIFrameElement07</title>
+<creator>NIST</creator>
+<description>
+ The name attribute specifies the frame name(object of the target
+ attribute).
+
+ Retrieve the name attribute of the first IFRAME element and examine
+ it's value.
+</description>
+<contributor>Rick Rivello</contributor>
+<date qualifier="created">2002-05-08</date>
+<subject
resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-o...
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vname" type="DOMString" />
+<var name="doc" type="Document"/>
+<load var="doc" href="iframe"
willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc"
var="nodeList" tagname='"iframe"'/>
+<assertSize collection="nodeList" size="1"
id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode"
index="0"/>
+<name interface="HTMLIFrameElement" obj="testNode"
var="vname"/>
+<assertEquals actual="vname" expected='"Iframe1"'
id="nameLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLIFrameElement07.xml.kfail
b/test/testcases/tests/level1/html/HTMLIFrameElement07.xml.kfail
deleted file mode 100644
index 8143aa5..0000000
--- a/test/testcases/tests/level1/html/HTMLIFrameElement07.xml.kfail
+++ /dev/null
@@ -1,44 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<?xml-stylesheet href="test-to-html.xml" type="text/xml"?>
-
-<!--
-
-Copyright (c) 2001 World Wide Web Consortium,
-(Massachusetts Institute of Technology, Institut National de
-Recherche en Informatique et en Automatique, Keio University). All
-Rights Reserved. This program is distributed under the W3C's Software
-Intellectual Property License. This program is distributed in the
-hope that it will be useful, but WITHOUT ANY WARRANTY; without even
-the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
-PURPOSE.
-
-See W3C License
http://www.w3.org/Consortium/Legal/ for more details.
-
--->
-<!DOCTYPE test SYSTEM "dom1.dtd">
-<test
xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1"
name="HTMLIFrameElement07">
-<metadata>
-<title>HTMLIFrameElement07</title>
-<creator>NIST</creator>
-<description>
- The name attribute specifies the frame name(object of the target
- attribute).
-
- Retrieve the name attribute of the first IFRAME element and examine
- it's value.
-</description>
-<contributor>Rick Rivello</contributor>
-<date qualifier="created">2002-05-08</date>
-<subject
resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-o...
-</metadata>
-<var name="nodeList" type="NodeList"/>
-<var name="testNode" type="Node"/>
-<var name="vname" type="DOMString" />
-<var name="doc" type="Document"/>
-<load var="doc" href="iframe"
willBeModified="false"/>
-<getElementsByTagName interface="Document" obj="doc"
var="nodeList" tagname='"iframe"'/>
-<assertSize collection="nodeList" size="1"
id="Asize"/>
-<item interface="NodeList" obj="nodeList" var="testNode"
index="0"/>
-<name interface="HTMLIFrameElement" obj="testNode"
var="vname"/>
-<assertEquals actual="vname" expected='"Iframe1"'
id="nameLink" ignoreCase="false"/>
-</test>
diff --git a/test/testcases/tests/level1/html/HTMLIFrameElement08.xml
b/test/testcases/tests/level1/html/HTMLIFrameElement08.xml
new file mode 100644
index 0000000..729c1a9
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLIFrameElement08.xml
@@ -0,0 +1,44 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xml" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 World Wide Web Consortium,
+(Massachusetts Institute of Technology, Institut National de
+Recherche en Informatique et en Automatique, Keio University). All
+Rights Reserved. This program is distributed under the W3C's Software
+Intellectual Property License. This program is distributed in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
+PURPOSE.
+
+See W3C License
http://www.w3.org/Consortium/Legal/ for more details.
+
+-->
+<!DOCTYPE test SYSTEM "dom1.dtd">
+<test
xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1"
name="HTMLIFrameElement08">
+<metadata>
+<title>HTMLIFrameElement08</title>
+<creator>NIST</creator>
+<description>
+ The scrolling attribute specifies whether or not the frame should have
+ scrollbars.
+
+ Retrieve the scrolling attribute of the first FRAME element and examine
+ it's value.
+</description>
+<contributor>Rick Rivello</contributor>
+<date qualifier="created">2002-05-08</date>
+<subject
resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-o...
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vscrolling" type="DOMString" />
+<var name="doc" type="Document"/>
+<load var="doc" href="iframe"
willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc"
var="nodeList" tagname='"iframe"'/>
+<assertSize collection="nodeList" size="1"
id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode"
index="0"/>
+<scrolling interface="HTMLIFrameElement" obj="testNode"
var="vscrolling"/>
+<assertEquals actual="vscrolling" expected='"yes"'
id="scrollingLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLIFrameElement08.xml.kfail
b/test/testcases/tests/level1/html/HTMLIFrameElement08.xml.kfail
deleted file mode 100644
index 729c1a9..0000000
--- a/test/testcases/tests/level1/html/HTMLIFrameElement08.xml.kfail
+++ /dev/null
@@ -1,44 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<?xml-stylesheet href="test-to-html.xml" type="text/xml"?>
-
-<!--
-
-Copyright (c) 2001 World Wide Web Consortium,
-(Massachusetts Institute of Technology, Institut National de
-Recherche en Informatique et en Automatique, Keio University). All
-Rights Reserved. This program is distributed under the W3C's Software
-Intellectual Property License. This program is distributed in the
-hope that it will be useful, but WITHOUT ANY WARRANTY; without even
-the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
-PURPOSE.
-
-See W3C License
http://www.w3.org/Consortium/Legal/ for more details.
-
--->
-<!DOCTYPE test SYSTEM "dom1.dtd">
-<test
xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1"
name="HTMLIFrameElement08">
-<metadata>
-<title>HTMLIFrameElement08</title>
-<creator>NIST</creator>
-<description>
- The scrolling attribute specifies whether or not the frame should have
- scrollbars.
-
- Retrieve the scrolling attribute of the first FRAME element and examine
- it's value.
-</description>
-<contributor>Rick Rivello</contributor>
-<date qualifier="created">2002-05-08</date>
-<subject
resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-o...
-</metadata>
-<var name="nodeList" type="NodeList"/>
-<var name="testNode" type="Node"/>
-<var name="vscrolling" type="DOMString" />
-<var name="doc" type="Document"/>
-<load var="doc" href="iframe"
willBeModified="false"/>
-<getElementsByTagName interface="Document" obj="doc"
var="nodeList" tagname='"iframe"'/>
-<assertSize collection="nodeList" size="1"
id="Asize"/>
-<item interface="NodeList" obj="nodeList" var="testNode"
index="0"/>
-<scrolling interface="HTMLIFrameElement" obj="testNode"
var="vscrolling"/>
-<assertEquals actual="vscrolling" expected='"yes"'
id="scrollingLink" ignoreCase="false"/>
-</test>
diff --git a/test/testcases/tests/level1/html/HTMLIFrameElement09.xml
b/test/testcases/tests/level1/html/HTMLIFrameElement09.xml
new file mode 100644
index 0000000..e9cc84b
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLIFrameElement09.xml
@@ -0,0 +1,43 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xml" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 World Wide Web Consortium,
+(Massachusetts Institute of Technology, Institut National de
+Recherche en Informatique et en Automatique, Keio University). All
+Rights Reserved. This program is distributed under the W3C's Software
+Intellectual Property License. This program is distributed in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
+PURPOSE.
+
+See W3C License
http://www.w3.org/Consortium/Legal/ for more details.
+
+-->
+<!DOCTYPE test SYSTEM "dom1.dtd">
+<test
xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1"
name="HTMLIFrameElement09">
+<metadata>
+<title>HTMLIFrameElement09</title>
+<creator>NIST</creator>
+<description>
+ The src attribute specifies a URI designating the initial frame contents.
+
+ Retrieve the src attribute of the first FRAME element and examine
+ it's value.
+</description>
+<contributor>Rick Rivello</contributor>
+<date qualifier="created">2002-05-08</date>
+<subject
resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-o...
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vsrc" type="DOMString" />
+<var name="doc" type="Document"/>
+<load var="doc" href="iframe"
willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc"
var="nodeList" tagname='"iframe"'/>
+<assertSize collection="nodeList" size="1"
id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode"
index="0"/>
+<src interface="HTMLIFrameElement" obj="testNode"
var="vsrc"/>
+<assertURIEquals actual="vsrc" name='"right"'
id="srcLink"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLIFrameElement09.xml.kfail
b/test/testcases/tests/level1/html/HTMLIFrameElement09.xml.kfail
deleted file mode 100644
index e9cc84b..0000000
--- a/test/testcases/tests/level1/html/HTMLIFrameElement09.xml.kfail
+++ /dev/null
@@ -1,43 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<?xml-stylesheet href="test-to-html.xml" type="text/xml"?>
-
-<!--
-
-Copyright (c) 2001 World Wide Web Consortium,
-(Massachusetts Institute of Technology, Institut National de
-Recherche en Informatique et en Automatique, Keio University). All
-Rights Reserved. This program is distributed under the W3C's Software
-Intellectual Property License. This program is distributed in the
-hope that it will be useful, but WITHOUT ANY WARRANTY; without even
-the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
-PURPOSE.
-
-See W3C License
http://www.w3.org/Consortium/Legal/ for more details.
-
--->
-<!DOCTYPE test SYSTEM "dom1.dtd">
-<test
xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1"
name="HTMLIFrameElement09">
-<metadata>
-<title>HTMLIFrameElement09</title>
-<creator>NIST</creator>
-<description>
- The src attribute specifies a URI designating the initial frame contents.
-
- Retrieve the src attribute of the first FRAME element and examine
- it's value.
-</description>
-<contributor>Rick Rivello</contributor>
-<date qualifier="created">2002-05-08</date>
-<subject
resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-o...
-</metadata>
-<var name="nodeList" type="NodeList"/>
-<var name="testNode" type="Node"/>
-<var name="vsrc" type="DOMString" />
-<var name="doc" type="Document"/>
-<load var="doc" href="iframe"
willBeModified="false"/>
-<getElementsByTagName interface="Document" obj="doc"
var="nodeList" tagname='"iframe"'/>
-<assertSize collection="nodeList" size="1"
id="Asize"/>
-<item interface="NodeList" obj="nodeList" var="testNode"
index="0"/>
-<src interface="HTMLIFrameElement" obj="testNode"
var="vsrc"/>
-<assertURIEquals actual="vsrc" name='"right"'
id="srcLink"/>
-</test>
diff --git a/test/testcases/tests/level1/html/HTMLIFrameElement10.xml
b/test/testcases/tests/level1/html/HTMLIFrameElement10.xml
new file mode 100644
index 0000000..7278bb4
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLIFrameElement10.xml
@@ -0,0 +1,43 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xml" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 World Wide Web Consortium,
+(Massachusetts Institute of Technology, Institut National de
+Recherche en Informatique et en Automatique, Keio University). All
+Rights Reserved. This program is distributed under the W3C's Software
+Intellectual Property License. This program is distributed in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
+PURPOSE.
+
+See W3C License
http://www.w3.org/Consortium/Legal/ for more details.
+
+-->
+<!DOCTYPE test SYSTEM "dom1.dtd">
+<test
xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1"
name="HTMLIFrameElement10">
+<metadata>
+<title>HTMLIFrameElement10</title>
+<creator>NIST</creator>
+<description>
+ The width attribute specifies the frame width.
+
+ Retrieve the width attribute of the first IFRAME element and examine
+ it's value.
+</description>
+<contributor>Rick Rivello</contributor>
+<date qualifier="created">2002-05-08</date>
+<subject
resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-o...
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vwidth" type="DOMString" />
+<var name="doc" type="Document"/>
+<load var="doc" href="iframe"
willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc"
var="nodeList" tagname='"iframe"'/>
+<assertSize collection="nodeList" size="1"
id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode"
index="0"/>
+<width interface="HTMLIFrameElement" obj="testNode"
var="vwidth"/>
+<assertEquals actual="vwidth" expected='"60"'
id="widthLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLIFrameElement10.xml.kfail
b/test/testcases/tests/level1/html/HTMLIFrameElement10.xml.kfail
deleted file mode 100644
index 7278bb4..0000000
--- a/test/testcases/tests/level1/html/HTMLIFrameElement10.xml.kfail
+++ /dev/null
@@ -1,43 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<?xml-stylesheet href="test-to-html.xml" type="text/xml"?>
-
-<!--
-
-Copyright (c) 2001 World Wide Web Consortium,
-(Massachusetts Institute of Technology, Institut National de
-Recherche en Informatique et en Automatique, Keio University). All
-Rights Reserved. This program is distributed under the W3C's Software
-Intellectual Property License. This program is distributed in the
-hope that it will be useful, but WITHOUT ANY WARRANTY; without even
-the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
-PURPOSE.
-
-See W3C License
http://www.w3.org/Consortium/Legal/ for more details.
-
--->
-<!DOCTYPE test SYSTEM "dom1.dtd">
-<test
xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1"
name="HTMLIFrameElement10">
-<metadata>
-<title>HTMLIFrameElement10</title>
-<creator>NIST</creator>
-<description>
- The width attribute specifies the frame width.
-
- Retrieve the width attribute of the first IFRAME element and examine
- it's value.
-</description>
-<contributor>Rick Rivello</contributor>
-<date qualifier="created">2002-05-08</date>
-<subject
resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-o...
-</metadata>
-<var name="nodeList" type="NodeList"/>
-<var name="testNode" type="Node"/>
-<var name="vwidth" type="DOMString" />
-<var name="doc" type="Document"/>
-<load var="doc" href="iframe"
willBeModified="false"/>
-<getElementsByTagName interface="Document" obj="doc"
var="nodeList" tagname='"iframe"'/>
-<assertSize collection="nodeList" size="1"
id="Asize"/>
-<item interface="NodeList" obj="nodeList" var="testNode"
index="0"/>
-<width interface="HTMLIFrameElement" obj="testNode"
var="vwidth"/>
-<assertEquals actual="vwidth" expected='"60"'
id="widthLink" ignoreCase="false"/>
-</test>
diff --git a/test/testcases/tests/level2/html/HTMLIFrameElement11.xml
b/test/testcases/tests/level2/html/HTMLIFrameElement11.xml
new file mode 100644
index 0000000..4220a43
--- /dev/null
+++ b/test/testcases/tests/level2/html/HTMLIFrameElement11.xml
@@ -0,0 +1,39 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<!--
+
+Copyright (c) 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, Institut National de
+Recherche en Informatique et en Automatique, Keio University). All
+Rights Reserved. This program is distributed under the W3C's Software
+Intellectual Property License. This program is distributed in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
+PURPOSE.
+
+See W3C License
http://www.w3.org/Consortium/Legal/ for more details.
+
+-->
+<!DOCTYPE test SYSTEM "dom2.dtd">
+<test
xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-2"
name="HTMLIFrameElement11">
+<metadata>
+<title>HTMLIFrameElement11</title>
+<creator>NIST</creator>
+<description>
+ Retrieve the contentDocument attribute of the second IFRAME element
+ and examine its title.
+</description>
+<contributor>Rick Rivello</contributor>
+<date qualifier="created">2002-07-03</date>
+<subject
resource="http://www.w3.org/TR/DOM-Level-2-HTML/html#ID-67133006&quo...
+</metadata>
+<var name="testNode" type="Element"/>
+<var name="cd" type="Document" />
+<var name="vtitle" type="DOMString"/>
+<var name="doc" type="Document"/>
+<load var="doc" href="iframe2"
willBeModified="false"/>
+<getElementById interface="Document" obj="doc"
var="testNode" elementId='"Iframe2"'/>
+<contentDocument interface="HTMLIFrameElement" obj="testNode"
var="cd"/>
+<title interface="HTMLDocument" obj="cd"
var="vtitle"/>
+<assertEquals actual="vtitle" expected='"NIST DOM HTML Test -
IFRAME2"' id="titleLink" ignoreCase="false" />
+</test>
diff --git a/test/testcases/tests/level2/html/HTMLIFrameElement11.xml.kfail
b/test/testcases/tests/level2/html/HTMLIFrameElement11.xml.kfail
deleted file mode 100644
index c77d2f4..0000000
--- a/test/testcases/tests/level2/html/HTMLIFrameElement11.xml.kfail
+++ /dev/null
@@ -1,39 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-
-<!--
-
-Copyright (c) 2001-2004 World Wide Web Consortium,
-(Massachusetts Institute of Technology, Institut National de
-Recherche en Informatique et en Automatique, Keio University). All
-Rights Reserved. This program is distributed under the W3C's Software
-Intellectual Property License. This program is distributed in the
-hope that it will be useful, but WITHOUT ANY WARRANTY; without even
-the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
-PURPOSE.
-
-See W3C License
http://www.w3.org/Consortium/Legal/ for more details.
-
--->
-<!DOCTYPE test SYSTEM "dom2.dtd">
-<test
xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-2"
name="HTMLIFrameElement11">
-<metadata>
-<title>HTMLIFrameElement11</title>
-<creator>NIST</creator>
-<description>
- Retrieve the contentDocument attribute of the second IFRAME element
- and examine its title.
-</description>
-<contributor>Rick Rivello</contributor>
-<date qualifier="created">2002-07-03</date>
-<subject
resource="http://www.w3.org/TR/DOM-Level-2-HTML/html#ID-67133006&quo...
-</metadata>
-<var name="testNode" type="Element"/>
-<var name="cd" type="Document" />
-<var name="vtitle" type="DOMString"/>
-<var name="doc" type="Document"/>
-<load var="doc" href="iframe2"
willBeModified="false"/>
-<getElementById interface="Document" obj="doc"
var="testNode" elementId='"Iframe2"'/>
-<contentDocument interface="HTMLIFrameElement" obj="testNode"
var="cd"/>
-<title interface="HTMLDocument" obj="cd"
var="vtitle"/>
-<assertEquals actual="vtitle" expected='"NIST DOM HTML Test -
FRAME"' id="titleLink" ignoreCase="false" />
-</test>
commitdiff
http://git.netsurf-browser.org/libdom.git/commit/?id=eb735d3cd022b9fc8284...
commit eb735d3cd022b9fc8284b2e86570a8db5854d56a
Author: rsk1994 <rsk1coder99(a)gmail.com>
Commit: Rupinder Singh Khokhar <rsk1coder99(a)gmail.com>
Frame Element
diff --git a/Makefile b/Makefile
index 2de8d0c..4dc8af6 100644
--- a/Makefile
+++ b/Makefile
@@ -132,6 +132,7 @@ INSTALL_ITEMS := $(INSTALL_ITEMS) $(I):$(Is)/html_tablerow_element.h
INSTALL_ITEMS := $(INSTALL_ITEMS) $(I):$(Is)/html_base_element.h
INSTALL_ITEMS := $(INSTALL_ITEMS) $(I):$(Is)/html_style_element.h
INSTALL_ITEMS := $(INSTALL_ITEMS) $(I):$(Is)/html_frameset_element.h
+INSTALL_ITEMS := $(INSTALL_ITEMS) $(I):$(Is)/html_frame_element.h
INSTALL_ITEMS := $(INSTALL_ITEMS) /$(LIBDIR)/pkgconfig:lib$(COMPONENT).pc.in
INSTALL_ITEMS := $(INSTALL_ITEMS) /$(LIBDIR):$(OUTPUT)
diff --git a/include/dom/dom.h b/include/dom/dom.h
index 376ef14..d8245ac 100644
--- a/include/dom/dom.h
+++ b/include/dom/dom.h
@@ -91,6 +91,7 @@
#include <dom/html/html_base_element.h>
#include <dom/html/html_style_element.h>
#include <dom/html/html_frameset_element.h>
+#include <dom/html/html_frame_element.h>
/* DOM Events header */
#include <dom/events/events.h>
diff --git a/include/dom/html/html_frame_element.h
b/include/dom/html/html_frame_element.h
index 2e182d5..1202f5c 100644
--- a/include/dom/html/html_frame_element.h
+++ b/include/dom/html/html_frame_element.h
@@ -3,5 +3,68 @@
* Licensed under the MIT License,
*
http://www.opensource.org/licenses/mit-license.php
* Copyright 2009 Bo Yang <struggleyb.nku(a)gmail.com>
+ * Copyright 2014 Rupinder Singh Khokhar <rsk1coder99(a)gmail.com>
*/
+#ifndef dom_html_frame_element_h_
+#define dom_html_frame_element_h_
+#include <stdbool.h>
+#include <dom/core/exceptions.h>
+#include <dom/core/string.h>
+
+#include <dom/html/html_document.h>
+typedef struct dom_html_frame_element dom_html_frame_element;
+
+dom_exception dom_html_frame_element_get_frame_border(
+ dom_html_frame_element *element, dom_string **frame_border);
+
+dom_exception dom_html_frame_element_set_frame_border(
+ dom_html_frame_element *element, dom_string *frame_border);
+
+dom_exception dom_html_frame_element_set_long_desc(
+ dom_html_frame_element *ele, dom_string *long_desc);
+
+dom_exception dom_html_frame_element_get_long_desc(
+ dom_html_frame_element *ele, dom_string **long_desc);
+
+dom_exception dom_html_frame_element_get_margin_height(
+ dom_html_frame_element *element, dom_string **margin_height);
+
+dom_exception dom_html_frame_element_set_margin_height(
+ dom_html_frame_element *element, dom_string *margin_height);
+
+dom_exception dom_html_frame_element_get_margin_width(
+ dom_html_frame_element *element, dom_string **margin_width);
+
+dom_exception dom_html_frame_element_set_margin_width(
+ dom_html_frame_element *element, dom_string *margin_width);
+
+dom_exception dom_html_frame_element_get_name(
+ dom_html_frame_element *element, dom_string **name);
+
+dom_exception dom_html_frame_element_set_name(
+ dom_html_frame_element *element, dom_string *name);
+
+dom_exception dom_html_frame_element_get_scrolling(
+ dom_html_frame_element *element, dom_string **scrolling);
+
+dom_exception dom_html_frame_element_set_scrolling(
+ dom_html_frame_element *element, dom_string *scrolling);
+
+dom_exception dom_html_frame_element_get_src(
+ dom_html_frame_element *element, dom_string **src);
+
+dom_exception dom_html_frame_element_set_src(
+ dom_html_frame_element *element, dom_string *src);
+
+dom_exception dom_html_frame_element_set_no_resize(dom_html_frame_element *ele,
+ bool no_resize);
+
+dom_exception dom_html_frame_element_get_no_resize(dom_html_frame_element *ele,
+ bool *no_resize);
+
+dom_exception dom_html_frame_element_get_content_document(
+ dom_html_frame_element *ele,
+ dom_document **content_document);
+
+#endif
diff --git a/src/html/Makefile b/src/html/Makefile
index a9532cd..fa707d4 100644
--- a/src/html/Makefile
+++ b/src/html/Makefile
@@ -17,10 +17,11 @@ DIR_SOURCES := \
html_param_element.c html_applet_element.c html_area_element.c \
html_map_element.c html_script_element.c html_tablecaption_element.c \
html_tablecell_element.c html_tablecol_element.c html_tablesection_element.c \
- html_table_element.c html_tablerow_element.c html_frameset_element.c
+ html_table_element.c html_tablerow_element.c html_frameset_element.c \
+ html_frame_element.c
UNINMPLEMENTED_SOURCES := \
html_isindex_element.c \
- html_frame_element.c html_iframe_element.c
+ html_iframe_element.c
include $(NSBUILD)/Makefile.subdir
diff --git a/src/html/html_document.c b/src/html/html_document.c
index a4ba62b..cf8d1aa 100644
--- a/src/html/html_document.c
+++ b/src/html/html_document.c
@@ -58,6 +58,7 @@
#include "html/html_tablerow_element.h"
#include "html/html_style_element.h"
#include "html/html_frameset_element.h"
+#include "html/html_frame_element.h"
#include "core/attr.h"
#include "core/string.h"
@@ -369,6 +370,9 @@ _dom_html_document_create_element_internal(dom_html_document *html,
} else if (dom_string_caseless_isequal(tag_name, html->memoised[hds_FRAMESET])) {
exc = _dom_html_frame_set_element_create(html, namespace, prefix,
(dom_html_frame_set_element **) result);
+ } else if (dom_string_caseless_isequal(tag_name, html->memoised[hds_FRAME])) {
+ exc = _dom_html_frame_element_create(html, namespace, prefix,
+ (dom_html_frame_element **) result);
} else {
exc = _dom_html_element_create(html, tag_name, namespace,
prefix, result);
diff --git a/src/html/html_document_strings.h b/src/html/html_document_strings.h
index 10ec80d..35fca73 100644
--- a/src/html/html_document_strings.h
+++ b/src/html/html_document_strings.h
@@ -108,6 +108,7 @@ HTML_DOCUMENT_STRINGS_ACTION1(summary)
HTML_DOCUMENT_STRINGS_ACTION1(prompt)
HTML_DOCUMENT_STRINGS_ACTION1(rows)
HTML_DOCUMENT_STRINGS_ACTION1(cols)
+HTML_DOCUMENT_STRINGS_ACTION1(scrolling)
HTML_DOCUMENT_STRINGS_ACTION(tab_index,tabindex)
HTML_DOCUMENT_STRINGS_ACTION(html_for,for)
HTML_DOCUMENT_STRINGS_ACTION(date_time,datetime)
@@ -120,6 +121,9 @@ HTML_DOCUMENT_STRINGS_ACTION(ch,char)
HTML_DOCUMENT_STRINGS_ACTION(ch_off,charoff)
HTML_DOCUMENT_STRINGS_ACTION(cell_padding,cellpadding)
HTML_DOCUMENT_STRINGS_ACTION(cell_spacing,cellspacing)
+HTML_DOCUMENT_STRINGS_ACTION(frame_border,frameborder)
+HTML_DOCUMENT_STRINGS_ACTION(margin_height,marginheight)
+HTML_DOCUMENT_STRINGS_ACTION(margin_width,marginwidth)
/* HTML_DOCUMENT_STRINGS_ACTION1(type) */
HTML_DOCUMENT_STRINGS_ACTION(use_map,usemap)
/* HTML_DOCUMENT_STRINGS_ACTION1(value) */
diff --git a/src/html/html_frame_element.c b/src/html/html_frame_element.c
index 2e182d5..16534b5 100644
--- a/src/html/html_frame_element.c
+++ b/src/html/html_frame_element.c
@@ -3,5 +3,285 @@
* Licensed under the MIT License,
*
http://www.opensource.org/licenses/mit-license.php
* Copyright 2009 Bo Yang <struggleyb.nku(a)gmail.com>
+ * Copyright 2014 Rupinder Singh Khokhar<rsk1coder99(a)gmail.com>
*/
+#include <assert.h>
+#include <stdlib.h>
+
+#include <dom/html/html_frame_element.h>
+
+#include "html/html_document.h"
+#include "html/html_frame_element.h"
+
+#include "core/node.h"
+#include "core/attr.h"
+#include "utils/utils.h"
+
+static struct dom_element_protected_vtable _protect_vtable = {
+ {
+ DOM_NODE_PROTECT_VTABLE_HTML_FRAME_ELEMENT
+ },
+ DOM_HTML_FRAME_ELEMENT_PROTECT_VTABLE
+};
+
+/**
+ * Create a dom_html_frame_element object
+ *
+ * \param doc The document object
+ * \param ele The returned element object
+ * \return DOM_NO_ERR on success, appropriate dom_exception on failure.
+ */
+dom_exception _dom_html_frame_element_create(struct dom_html_document *doc,
+ dom_string *namespace, dom_string *prefix,
+ struct dom_html_frame_element **ele)
+{
+ struct dom_node_internal *node;
+
+ *ele = malloc(sizeof(dom_html_frame_element));
+ if (*ele == NULL)
+ return DOM_NO_MEM_ERR;
+
+ /* Set up vtables */
+ node = (struct dom_node_internal *) *ele;
+ node->base.vtable = &_dom_html_element_vtable;
+ node->vtable = &_protect_vtable;
+
+ return _dom_html_frame_element_initialise(doc, namespace, prefix, *ele);
+}
+
+/**
+ * Initialise a dom_html_frame_element object
+ *
+ * \param doc The document object
+ * \param ele The dom_html_frame_element object
+ * \return DOM_NO_ERR on success, appropriate dom_exception on failure.
+ */
+dom_exception _dom_html_frame_element_initialise(struct dom_html_document *doc,
+ dom_string *namespace, dom_string *prefix,
+ struct dom_html_frame_element *ele)
+{
+ dom_string *scrolling_default = NULL;
+ dom_exception err;
+ err = dom_string_create((const uint8_t *) "auto",
SLEN("auto"), &scrolling_default);
+ if (err != DOM_NO_ERR)
+ return err;
+
+
+ dom_string *frame_border_default = NULL;
+ err = dom_string_create((const uint8_t *) "1", SLEN("1"),
&frame_border_default);
+ if (err != DOM_NO_ERR)
+ return err;
+
+ err = _dom_html_element_initialise(doc, &ele->base,
+ doc->memoised[hds_FRAME],
+ namespace, prefix);
+
+ ele->scrolling_default = scrolling_default;
+ ele->frame_border_default = frame_border_default;
+
+ return err;
+}
+
+/**
+ * Finalise a dom_html_frame_element object
+ *
+ * \param ele The dom_html_frame_element object
+ */
+void _dom_html_frame_element_finalise(struct dom_html_frame_element *ele)
+{
+ _dom_html_element_finalise(&ele->base);
+}
+
+/**
+ * Destroy a dom_html_frame_element object
+ *
+ * \param ele The dom_html_frame_element object
+ */
+void _dom_html_frame_element_destroy(struct dom_html_frame_element *ele)
+{
+ _dom_html_frame_element_finalise(ele);
+ free(ele);
+}
+
+/**
+ * Get the no_resize property
+ *
+ * \param ele The dom_html_frame_element object
+ * \param no_resize The status
+ * \return DOM_NO_ERR on success, appropriate dom_exception on failure.
+ */
+dom_exception dom_html_frame_element_get_no_resize(dom_html_frame_element *ele,
+ bool *no_resize)
+{
+ return dom_html_element_get_bool_property(&ele->base,
"noresize",
+ SLEN("noresize"), no_resize);
+}
+
+/**
+ * Set the no_resize property
+ *
+ * \param ele The dom_html_frame_element object
+ * \param no_resize The status
+ * \return DOM_NO_ERR on success, appropriate dom_exception on failure.
+ */
+dom_exception dom_html_frame_element_set_no_resize(dom_html_frame_element *ele,
+ bool no_resize)
+{
+ return dom_html_element_set_bool_property(&ele->base,
"noresize",
+ SLEN("noresize"), no_resize);
+}
+
+/*------------------------------------------------------------------------*/
+/* The protected virtual functions */
+
+/* The virtual function used to parse attribute value, see src/core/element.c
+ * for detail */
+dom_exception _dom_html_frame_element_parse_attribute(dom_element *ele,
+ dom_string *name, dom_string *value,
+ dom_string **parsed)
+{
+ UNUSED(ele);
+ UNUSED(name);
+
+ dom_string_ref(value);
+ *parsed = value;
+
+ return DOM_NO_ERR;
+}
+
+/* The virtual destroy function, see src/core/node.c for detail */
+void _dom_virtual_html_frame_element_destroy(dom_node_internal *node)
+{
+ _dom_html_frame_element_destroy((struct dom_html_frame_element *) node);
+}
+
+/* The virtual copy function, see src/core/node.c for detail */
+dom_exception _dom_html_frame_element_copy(dom_node_internal *old,
+ dom_node_internal **copy)
+{
+ return _dom_html_element_copy(old, copy);
+}
+
+/*-----------------------------------------------------------------------*/
+/* API functions */
+
+#define SIMPLE_GET(attr) \
+ dom_exception dom_html_frame_element_get_##attr( \
+ dom_html_frame_element *element, \
+ dom_string **attr) \
+ { \
+ dom_exception ret; \
+ dom_string *_memo_##attr; \
+ \
+ _memo_##attr = \
+ ((struct dom_html_document *) \
+ ((struct dom_node_internal *)element)->owner)->\
+ memoised[hds_##attr]; \
+ \
+ ret = dom_element_get_attribute(element, _memo_##attr, attr); \
+ \
+ return ret; \
+ }
+#define SIMPLE_SET(attr) \
+dom_exception dom_html_frame_element_set_##attr( \
+ dom_html_frame_element *element, \
+ dom_string *attr) \
+ { \
+ dom_exception ret; \
+ dom_string *_memo_##attr; \
+ \
+ _memo_##attr = \
+ ((struct dom_html_document *) \
+ ((struct dom_node_internal *)element)->owner)->\
+ memoised[hds_##attr]; \
+ \
+ ret = dom_element_set_attribute(element, _memo_##attr, attr); \
+ \
+ return ret; \
+ }
+
+#define SIMPLE_GET_SET(attr) SIMPLE_GET(attr) SIMPLE_SET(attr)
+
+SIMPLE_GET_SET(long_desc);
+SIMPLE_GET_SET(name);
+SIMPLE_GET_SET(src);
+SIMPLE_SET(frame_border);
+SIMPLE_GET_SET(margin_width);
+SIMPLE_GET_SET(margin_height);
+SIMPLE_SET(scrolling);
+
+
+/**
+ * Get the frame_border property
+ *
+ * \param ele The dom_html_frame_element object
+ * \param frame_border The returned status
+ * \return DOM_NO_ERR on success, appropriate dom_exception on failure.
+ */
+dom_exception dom_html_frame_element_get_frame_border(
+ dom_html_frame_element *ele,
+ dom_string **frame_border)
+{
+ dom_html_document *doc;
+ bool has_value = false;
+ dom_exception err;
+
+ doc = (dom_html_document *) ((dom_node_internal *) ele)->owner;
+
+ err = dom_element_has_attribute(ele,
+ doc->memoised[hds_frame_border], &has_value);
+ if(err !=DOM_NO_ERR)
+ return err;
+
+ if(has_value) {
+ return dom_element_get_attribute(ele,
+ doc->memoised[hds_frame_border], frame_border);
+ }
+
+ *frame_border = ele->frame_border_default;
+ if (*frame_border != NULL)
+ dom_string_ref(*frame_border);
+ return DOM_NO_ERR;
+}
+
+/**
+ * Get the frame_border property
+ *
+ * \param ele The dom_html_frame_element object
+ * \param scrolling The returned status
+ * \return DOM_NO_ERR on success, appropriate dom_exception on failure.
+ */
+dom_exception dom_html_frame_element_get_scrolling(
+ dom_html_frame_element *ele,
+ dom_string **scrolling)
+{
+ dom_html_document *doc;
+ bool has_value = false;
+ dom_exception err;
+
+ doc = (dom_html_document *) ((dom_node_internal *) ele)->owner;
+
+ err = dom_element_has_attribute(ele,
+ doc->memoised[hds_scrolling], &has_value);
+ if(err !=DOM_NO_ERR)
+ return err;
+
+ if(has_value) {
+ return dom_element_get_attribute(ele,
+ doc->memoised[hds_scrolling], scrolling);
+ }
+
+ *scrolling = ele->scrolling_default;
+ if (*scrolling != NULL)
+ dom_string_ref(*scrolling);
+ return DOM_NO_ERR;
+}
+
+dom_exception dom_html_frame_element_get_content_document(
+ dom_html_frame_element *ele,
+ dom_document **content_document)
+{
+ *content_document = dom_node_get_owner(ele);
+ return DOM_NO_ERR;
+}
diff --git a/src/html/html_frame_element.h b/src/html/html_frame_element.h
index 2e182d5..77a137b 100644
--- a/src/html/html_frame_element.h
+++ b/src/html/html_frame_element.h
@@ -3,5 +3,52 @@
* Licensed under the MIT License,
*
http://www.opensource.org/licenses/mit-license.php
* Copyright 2009 Bo Yang <struggleyb.nku(a)gmail.com>
+ * Copyright 2014 Rupinder Singh Khokhar <rsk1coder99(a)gmail.com>
*/
+#ifndef dom_internal_html_frame_element_h_
+#define dom_internal_html_frame_element_h_
+
+#include <dom/html/html_frameset_element.h>
+#include "html/html_element.h"
+
+
+struct dom_html_frame_element {
+ struct dom_html_element base;
+ /**< The base class */
+ dom_string *scrolling_default;
+ dom_string *frame_border_default;
+};
+
+/* Create a dom_html_frame_element object */
+dom_exception _dom_html_frame_element_create(struct dom_html_document *doc,
+ dom_string *namespace, dom_string *prefix,
+ struct dom_html_frame_element **ele);
+
+/* Initialise a dom_html_frame_element object */
+dom_exception _dom_html_frame_element_initialise(struct dom_html_document *doc,
+ dom_string *namespace, dom_string *prefix,
+ struct dom_html_frame_element *ele);
+
+/* Finalise a dom_html_frame_element object */
+void _dom_html_frame_element_finalise(struct dom_html_frame_element *ele);
+
+/* Destroy a dom_html_frame_element object */
+void _dom_html_frame_element_destroy(struct dom_html_frame_element *ele);
+
+/* The protected virtual functions */
+dom_exception _dom_html_frame_element_parse_attribute(dom_element *ele,
+ dom_string *name, dom_string *value,
+ dom_string **parsed);
+void _dom_virtual_html_frame_element_destroy(dom_node_internal *node);
+dom_exception _dom_html_frame_element_copy(dom_node_internal *old,
+ dom_node_internal **copy);
+
+#define DOM_HTML_FRAME_ELEMENT_PROTECT_VTABLE \
+ _dom_html_frame_element_parse_attribute
+
+#define DOM_NODE_PROTECT_VTABLE_HTML_FRAME_ELEMENT \
+ _dom_virtual_html_frame_element_destroy, \
+ _dom_html_frame_element_copy
+
+#endif
diff --git a/test/DOMTSHandler.pm b/test/DOMTSHandler.pm
index 47dcf75..ee9298c 100644
--- a/test/DOMTSHandler.pm
+++ b/test/DOMTSHandler.pm
@@ -82,6 +82,7 @@ our %unref_prefix = (
NamedNodeMap => "dom_namednodemap",
NodeList => "dom_nodelist",
HTMLCollection => "dom_html_collection",
+ HTMLDocument => "dom_html_document",
);
our %special_method = (
diff --git a/test/dom1-interfaces.xml b/test/dom1-interfaces.xml
index 0c2488e..25d29d8 100644
--- a/test/dom1-interfaces.xml
+++ b/test/dom1-interfaces.xml
@@ -160,6 +160,25 @@ See W3C License
http://www.w3.org/Consortium/Legal/ for more
details.
</exception>
</raises>
</method>
+<method name="getElementById" id="ID-36113835">
+<descr>
+<p>Returns the Element whose<code>id</code>is given by elementId. If no
such element exists, returns<code>null</code>. Behavior is not defined if more
than one element has this<code>id</code>.</p>
+</descr>
+<parameters>
+<param id="ID-9998411" name="elementId" type="DOMString"
attr="in">
+<descr>
+<p>The unique<code>id</code>value for an element.</p>
+</descr>
+</param>
+</parameters>
+<returns type="Element">
+<descr>
+<p>The matching element.</p>
+</descr>
+</returns>
+<raises/>
+</method>
+
<method name="createDocumentFragment" id="ID-35CB04B5">
<descr>
<p>Creates an empty<code>DocumentFragment</code>object.</p>
@@ -1564,24 +1583,6 @@ See W3C License
http://www.w3.org/Consortium/Legal/ for more
details.
</returns>
<raises/>
</method>
-<method name="getElementById" id="ID-36113835">
-<descr>
-<p>Returns the Element whose<code>id</code>is given by elementId. If no
such element exists, returns<code>null</code>. Behavior is not defined if more
than one element has this<code>id</code>.</p>
-</descr>
-<parameters>
-<param id="ID-9998411" name="elementId" type="DOMString"
attr="in">
-<descr>
-<p>The unique<code>id</code>value for an element.</p>
-</descr>
-</param>
-</parameters>
-<returns type="Element">
-<descr>
-<p>The matching element.</p>
-</descr>
-</returns>
-<raises/>
-</method>
<method name="getElementsByName" id="ID-71555259">
<descr>
<p>Returns the (possibly empty) collection of elements
whose<code>name</code>value is given
by<code>elementName</code>.</p>
@@ -3606,6 +3607,11 @@ See W3C License
http://www.w3.org/Consortium/Legal/ for more
details.
<p>A URI designating the initial frame contents. See the<loc
href="http://www.w3.org/TR/REC-html40/present/frames.html#adef-src-F...
form="simple" show="embed" actuate="auto">src attribute
definition</loc>in HTML 4.0.</p>
</descr>
</attribute>
+<attribute readonly="yes" type="Document"
name="contentDocument" id="contentDoc">
+<descr>
+<p/>
+</descr>
+</attribute>
</interface>
<interface name="HTMLIFrameElement" inherits="HTMLElement"
id="ID-50708718">
<descr>
diff --git a/test/testcases/tests/level1/html/HTMLFrameElement01.xml
b/test/testcases/tests/level1/html/HTMLFrameElement01.xml
new file mode 100644
index 0000000..e74ef5e
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLFrameElement01.xml
@@ -0,0 +1,45 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xml" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 World Wide Web Consortium,
+(Massachusetts Institute of Technology, Institut National de
+Recherche en Informatique et en Automatique, Keio University). All
+Rights Reserved. This program is distributed under the W3C's Software
+Intellectual Property License. This program is distributed in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
+PURPOSE.
+
+See W3C License
http://www.w3.org/Consortium/Legal/ for more details.
+
+-->
+<!DOCTYPE test SYSTEM "dom1.dtd">
+<test
xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1"
name="HTMLFrameElement01">
+<metadata>
+<title>HTMLFrameElement01</title>
+<creator>NIST</creator>
+<description>
+ The frameBorder attribute specifies the request for frame borders.
+ (frameBorder=1 A border is drawn)
+ (FrameBorder=0 A border is not drawn)
+
+ Retrieve the frameBorder attribute of the first FRAME element and examine
+ it's value.
+</description>
+<contributor>Rick Rivello</contributor>
+<date qualifier="created">2002-05-08</date>
+<subject
resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-o...
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vframeborder" type="DOMString" />
+<var name="doc" type="Document"/>
+<load var="doc" href="frame"
willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc"
var="nodeList" tagname='"frame"'/>
+<assertSize collection="nodeList" size="2"
id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode"
index="0"/>
+<frameBorder interface="HTMLFrameElement" obj="testNode"
var="vframeborder"/>
+<assertEquals actual="vframeborder" expected='"1"'
id="frameborderLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLFrameElement01.xml.kfail
b/test/testcases/tests/level1/html/HTMLFrameElement01.xml.kfail
deleted file mode 100644
index e74ef5e..0000000
--- a/test/testcases/tests/level1/html/HTMLFrameElement01.xml.kfail
+++ /dev/null
@@ -1,45 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<?xml-stylesheet href="test-to-html.xml" type="text/xml"?>
-
-<!--
-
-Copyright (c) 2001 World Wide Web Consortium,
-(Massachusetts Institute of Technology, Institut National de
-Recherche en Informatique et en Automatique, Keio University). All
-Rights Reserved. This program is distributed under the W3C's Software
-Intellectual Property License. This program is distributed in the
-hope that it will be useful, but WITHOUT ANY WARRANTY; without even
-the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
-PURPOSE.
-
-See W3C License
http://www.w3.org/Consortium/Legal/ for more details.
-
--->
-<!DOCTYPE test SYSTEM "dom1.dtd">
-<test
xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1"
name="HTMLFrameElement01">
-<metadata>
-<title>HTMLFrameElement01</title>
-<creator>NIST</creator>
-<description>
- The frameBorder attribute specifies the request for frame borders.
- (frameBorder=1 A border is drawn)
- (FrameBorder=0 A border is not drawn)
-
- Retrieve the frameBorder attribute of the first FRAME element and examine
- it's value.
-</description>
-<contributor>Rick Rivello</contributor>
-<date qualifier="created">2002-05-08</date>
-<subject
resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-o...
-</metadata>
-<var name="nodeList" type="NodeList"/>
-<var name="testNode" type="Node"/>
-<var name="vframeborder" type="DOMString" />
-<var name="doc" type="Document"/>
-<load var="doc" href="frame"
willBeModified="false"/>
-<getElementsByTagName interface="Document" obj="doc"
var="nodeList" tagname='"frame"'/>
-<assertSize collection="nodeList" size="2"
id="Asize"/>
-<item interface="NodeList" obj="nodeList" var="testNode"
index="0"/>
-<frameBorder interface="HTMLFrameElement" obj="testNode"
var="vframeborder"/>
-<assertEquals actual="vframeborder" expected='"1"'
id="frameborderLink" ignoreCase="false"/>
-</test>
diff --git a/test/testcases/tests/level1/html/HTMLFrameElement02.xml
b/test/testcases/tests/level1/html/HTMLFrameElement02.xml
new file mode 100644
index 0000000..e6197e7
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLFrameElement02.xml
@@ -0,0 +1,44 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xml" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, Institut National de
+Recherche en Informatique et en Automatique, Keio University). All
+Rights Reserved. This program is distributed under the W3C's Software
+Intellectual Property License. This program is distributed in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
+PURPOSE.
+
+See W3C License
http://www.w3.org/Consortium/Legal/ for more details.
+
+-->
+<!DOCTYPE test SYSTEM "dom1.dtd">
+<test
xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1"
name="HTMLFrameElement02">
+<metadata>
+<title>HTMLFrameElement02</title>
+<creator>NIST</creator>
+<description>
+ The longDesc attribute specifies a URI designating a long description
+ of this image or frame.
+
+ Retrieve the longDesc attribute of the first FRAME element and examine
+ its value.
+</description>
+<contributor>Rick Rivello</contributor>
+<date qualifier="created">2002-05-08</date>
+<subject
resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-o...
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vlongdesc" type="DOMString" />
+<var name="doc" type="Document"/>
+<load var="doc" href="frame"
willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc"
var="nodeList" tagname='"frame"'/>
+<assertSize collection="nodeList" size="2"
id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode"
index="0"/>
+<longDesc interface="HTMLFrameElement" obj="testNode"
var="vlongdesc"/>
+<assertEquals actual="vlongdesc" expected='"about:blank"'
ignoreCase="false" id="longdescLink"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLFrameElement02.xml.kfail
b/test/testcases/tests/level1/html/HTMLFrameElement02.xml.kfail
deleted file mode 100644
index e6197e7..0000000
--- a/test/testcases/tests/level1/html/HTMLFrameElement02.xml.kfail
+++ /dev/null
@@ -1,44 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<?xml-stylesheet href="test-to-html.xml" type="text/xml"?>
-
-<!--
-
-Copyright (c) 2001-2004 World Wide Web Consortium,
-(Massachusetts Institute of Technology, Institut National de
-Recherche en Informatique et en Automatique, Keio University). All
-Rights Reserved. This program is distributed under the W3C's Software
-Intellectual Property License. This program is distributed in the
-hope that it will be useful, but WITHOUT ANY WARRANTY; without even
-the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
-PURPOSE.
-
-See W3C License
http://www.w3.org/Consortium/Legal/ for more details.
-
--->
-<!DOCTYPE test SYSTEM "dom1.dtd">
-<test
xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1"
name="HTMLFrameElement02">
-<metadata>
-<title>HTMLFrameElement02</title>
-<creator>NIST</creator>
-<description>
- The longDesc attribute specifies a URI designating a long description
- of this image or frame.
-
- Retrieve the longDesc attribute of the first FRAME element and examine
- its value.
-</description>
-<contributor>Rick Rivello</contributor>
-<date qualifier="created">2002-05-08</date>
-<subject
resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-o...
-</metadata>
-<var name="nodeList" type="NodeList"/>
-<var name="testNode" type="Node"/>
-<var name="vlongdesc" type="DOMString" />
-<var name="doc" type="Document"/>
-<load var="doc" href="frame"
willBeModified="false"/>
-<getElementsByTagName interface="Document" obj="doc"
var="nodeList" tagname='"frame"'/>
-<assertSize collection="nodeList" size="2"
id="Asize"/>
-<item interface="NodeList" obj="nodeList" var="testNode"
index="0"/>
-<longDesc interface="HTMLFrameElement" obj="testNode"
var="vlongdesc"/>
-<assertEquals actual="vlongdesc" expected='"about:blank"'
ignoreCase="false" id="longdescLink"/>
-</test>
diff --git a/test/testcases/tests/level1/html/HTMLFrameElement03.xml
b/test/testcases/tests/level1/html/HTMLFrameElement03.xml
new file mode 100644
index 0000000..601ad32
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLFrameElement03.xml
@@ -0,0 +1,43 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xml" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 World Wide Web Consortium,
+(Massachusetts Institute of Technology, Institut National de
+Recherche en Informatique et en Automatique, Keio University). All
+Rights Reserved. This program is distributed under the W3C's Software
+Intellectual Property License. This program is distributed in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
+PURPOSE.
+
+See W3C License
http://www.w3.org/Consortium/Legal/ for more details.
+
+-->
+<!DOCTYPE test SYSTEM "dom1.dtd">
+<test
xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1"
name="HTMLFrameElement03">
+<metadata>
+<title>HTMLFrameElement03</title>
+<creator>NIST</creator>
+<description>
+ The marginHeight attribute specifies the frame margin height, in pixels.
+
+ Retrieve the marginHeight attribute of the first FRAME element and examine
+ it's value.
+</description>
+<contributor>Rick Rivello</contributor>
+<date qualifier="created">2002-05-08</date>
+<subject
resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-o...
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vmarginheight" type="DOMString" />
+<var name="doc" type="Document"/>
+<load var="doc" href="frame"
willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc"
var="nodeList" tagname='"frame"'/>
+<assertSize collection="nodeList" size="2"
id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode"
index="0"/>
+<marginHeight interface="HTMLFrameElement" obj="testNode"
var="vmarginheight"/>
+<assertEquals actual="vmarginheight" expected='"10"'
id="marginheightLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLFrameElement03.xml.kfail
b/test/testcases/tests/level1/html/HTMLFrameElement03.xml.kfail
deleted file mode 100644
index 601ad32..0000000
--- a/test/testcases/tests/level1/html/HTMLFrameElement03.xml.kfail
+++ /dev/null
@@ -1,43 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<?xml-stylesheet href="test-to-html.xml" type="text/xml"?>
-
-<!--
-
-Copyright (c) 2001 World Wide Web Consortium,
-(Massachusetts Institute of Technology, Institut National de
-Recherche en Informatique et en Automatique, Keio University). All
-Rights Reserved. This program is distributed under the W3C's Software
-Intellectual Property License. This program is distributed in the
-hope that it will be useful, but WITHOUT ANY WARRANTY; without even
-the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
-PURPOSE.
-
-See W3C License
http://www.w3.org/Consortium/Legal/ for more details.
-
--->
-<!DOCTYPE test SYSTEM "dom1.dtd">
-<test
xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1"
name="HTMLFrameElement03">
-<metadata>
-<title>HTMLFrameElement03</title>
-<creator>NIST</creator>
-<description>
- The marginHeight attribute specifies the frame margin height, in pixels.
-
- Retrieve the marginHeight attribute of the first FRAME element and examine
- it's value.
-</description>
-<contributor>Rick Rivello</contributor>
-<date qualifier="created">2002-05-08</date>
-<subject
resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-o...
-</metadata>
-<var name="nodeList" type="NodeList"/>
-<var name="testNode" type="Node"/>
-<var name="vmarginheight" type="DOMString" />
-<var name="doc" type="Document"/>
-<load var="doc" href="frame"
willBeModified="false"/>
-<getElementsByTagName interface="Document" obj="doc"
var="nodeList" tagname='"frame"'/>
-<assertSize collection="nodeList" size="2"
id="Asize"/>
-<item interface="NodeList" obj="nodeList" var="testNode"
index="0"/>
-<marginHeight interface="HTMLFrameElement" obj="testNode"
var="vmarginheight"/>
-<assertEquals actual="vmarginheight" expected='"10"'
id="marginheightLink" ignoreCase="false"/>
-</test>
diff --git a/test/testcases/tests/level1/html/HTMLFrameElement04.xml
b/test/testcases/tests/level1/html/HTMLFrameElement04.xml
new file mode 100644
index 0000000..85a6b3e
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLFrameElement04.xml
@@ -0,0 +1,43 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xml" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 World Wide Web Consortium,
+(Massachusetts Institute of Technology, Institut National de
+Recherche en Informatique et en Automatique, Keio University). All
+Rights Reserved. This program is distributed under the W3C's Software
+Intellectual Property License. This program is distributed in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
+PURPOSE.
+
+See W3C License
http://www.w3.org/Consortium/Legal/ for more details.
+
+-->
+<!DOCTYPE test SYSTEM "dom1.dtd">
+<test
xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1"
name="HTMLFrameElement04">
+<metadata>
+<title>HTMLFrameElement04</title>
+<creator>NIST</creator>
+<description>
+ The marginWidth attribute specifies the frame margin width, in pixels.
+
+ Retrieve the marginWidth attribute of the first FRAME element and examine
+ it's value.
+</description>
+<contributor>Rick Rivello</contributor>
+<date qualifier="created">2002-05-08</date>
+<subject
resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-o...
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vmarginwidth" type="DOMString" />
+<var name="doc" type="Document"/>
+<load var="doc" href="frame"
willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc"
var="nodeList" tagname='"frame"'/>
+<assertSize collection="nodeList" size="2"
id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode"
index="0"/>
+<marginWidth interface="HTMLFrameElement" obj="testNode"
var="vmarginwidth"/>
+<assertEquals actual="vmarginwidth" expected='"5"'
id="marginwidthLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLFrameElement04.xml.kfail
b/test/testcases/tests/level1/html/HTMLFrameElement04.xml.kfail
deleted file mode 100644
index 85a6b3e..0000000
--- a/test/testcases/tests/level1/html/HTMLFrameElement04.xml.kfail
+++ /dev/null
@@ -1,43 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<?xml-stylesheet href="test-to-html.xml" type="text/xml"?>
-
-<!--
-
-Copyright (c) 2001 World Wide Web Consortium,
-(Massachusetts Institute of Technology, Institut National de
-Recherche en Informatique et en Automatique, Keio University). All
-Rights Reserved. This program is distributed under the W3C's Software
-Intellectual Property License. This program is distributed in the
-hope that it will be useful, but WITHOUT ANY WARRANTY; without even
-the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
-PURPOSE.
-
-See W3C License
http://www.w3.org/Consortium/Legal/ for more details.
-
--->
-<!DOCTYPE test SYSTEM "dom1.dtd">
-<test
xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1"
name="HTMLFrameElement04">
-<metadata>
-<title>HTMLFrameElement04</title>
-<creator>NIST</creator>
-<description>
- The marginWidth attribute specifies the frame margin width, in pixels.
-
- Retrieve the marginWidth attribute of the first FRAME element and examine
- it's value.
-</description>
-<contributor>Rick Rivello</contributor>
-<date qualifier="created">2002-05-08</date>
-<subject
resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-o...
-</metadata>
-<var name="nodeList" type="NodeList"/>
-<var name="testNode" type="Node"/>
-<var name="vmarginwidth" type="DOMString" />
-<var name="doc" type="Document"/>
-<load var="doc" href="frame"
willBeModified="false"/>
-<getElementsByTagName interface="Document" obj="doc"
var="nodeList" tagname='"frame"'/>
-<assertSize collection="nodeList" size="2"
id="Asize"/>
-<item interface="NodeList" obj="nodeList" var="testNode"
index="0"/>
-<marginWidth interface="HTMLFrameElement" obj="testNode"
var="vmarginwidth"/>
-<assertEquals actual="vmarginwidth" expected='"5"'
id="marginwidthLink" ignoreCase="false"/>
-</test>
diff --git a/test/testcases/tests/level1/html/HTMLFrameElement05.xml
b/test/testcases/tests/level1/html/HTMLFrameElement05.xml
new file mode 100644
index 0000000..8df7700
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLFrameElement05.xml
@@ -0,0 +1,44 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xml" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 World Wide Web Consortium,
+(Massachusetts Institute of Technology, Institut National de
+Recherche en Informatique et en Automatique, Keio University). All
+Rights Reserved. This program is distributed under the W3C's Software
+Intellectual Property License. This program is distributed in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
+PURPOSE.
+
+See W3C License
http://www.w3.org/Consortium/Legal/ for more details.
+
+-->
+<!DOCTYPE test SYSTEM "dom1.dtd">
+<test
xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1"
name="HTMLFrameElement05">
+<metadata>
+<title>HTMLFrameElement05</title>
+<creator>NIST</creator>
+<description>
+ The name attribute specifies the frame name(object of the target
+ attribute).
+
+ Retrieve the name attribute of the first FRAME element and examine
+ it's value.
+</description>
+<contributor>Rick Rivello</contributor>
+<date qualifier="created">2002-05-08</date>
+<subject
resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-o...
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vname" type="DOMString" />
+<var name="doc" type="Document"/>
+<load var="doc" href="frame"
willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc"
var="nodeList" tagname='"frame"'/>
+<assertSize collection="nodeList" size="2"
id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode"
index="0"/>
+<name interface="HTMLFrameElement" obj="testNode"
var="vname"/>
+<assertEquals actual="vname" expected='"Frame1"'
id="nameLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLFrameElement05.xml.kfail
b/test/testcases/tests/level1/html/HTMLFrameElement05.xml.kfail
deleted file mode 100644
index 8df7700..0000000
--- a/test/testcases/tests/level1/html/HTMLFrameElement05.xml.kfail
+++ /dev/null
@@ -1,44 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<?xml-stylesheet href="test-to-html.xml" type="text/xml"?>
-
-<!--
-
-Copyright (c) 2001 World Wide Web Consortium,
-(Massachusetts Institute of Technology, Institut National de
-Recherche en Informatique et en Automatique, Keio University). All
-Rights Reserved. This program is distributed under the W3C's Software
-Intellectual Property License. This program is distributed in the
-hope that it will be useful, but WITHOUT ANY WARRANTY; without even
-the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
-PURPOSE.
-
-See W3C License
http://www.w3.org/Consortium/Legal/ for more details.
-
--->
-<!DOCTYPE test SYSTEM "dom1.dtd">
-<test
xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1"
name="HTMLFrameElement05">
-<metadata>
-<title>HTMLFrameElement05</title>
-<creator>NIST</creator>
-<description>
- The name attribute specifies the frame name(object of the target
- attribute).
-
- Retrieve the name attribute of the first FRAME element and examine
- it's value.
-</description>
-<contributor>Rick Rivello</contributor>
-<date qualifier="created">2002-05-08</date>
-<subject
resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-o...
-</metadata>
-<var name="nodeList" type="NodeList"/>
-<var name="testNode" type="Node"/>
-<var name="vname" type="DOMString" />
-<var name="doc" type="Document"/>
-<load var="doc" href="frame"
willBeModified="false"/>
-<getElementsByTagName interface="Document" obj="doc"
var="nodeList" tagname='"frame"'/>
-<assertSize collection="nodeList" size="2"
id="Asize"/>
-<item interface="NodeList" obj="nodeList" var="testNode"
index="0"/>
-<name interface="HTMLFrameElement" obj="testNode"
var="vname"/>
-<assertEquals actual="vname" expected='"Frame1"'
id="nameLink" ignoreCase="false"/>
-</test>
diff --git a/test/testcases/tests/level1/html/HTMLFrameElement06.xml
b/test/testcases/tests/level1/html/HTMLFrameElement06.xml
new file mode 100644
index 0000000..43f46e1
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLFrameElement06.xml
@@ -0,0 +1,44 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xml" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 World Wide Web Consortium,
+(Massachusetts Institute of Technology, Institut National de
+Recherche en Informatique et en Automatique, Keio University). All
+Rights Reserved. This program is distributed under the W3C's Software
+Intellectual Property License. This program is distributed in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
+PURPOSE.
+
+See W3C License
http://www.w3.org/Consortium/Legal/ for more details.
+
+-->
+<!DOCTYPE test SYSTEM "dom1.dtd">
+<test
xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1"
name="HTMLFrameElement06">
+<metadata>
+<title>HTMLFrameElement06</title>
+<creator>NIST</creator>
+<description>
+ The noResize attribute specifies if the user can resize the frame. When
+ true, forbid user from resizing frame.
+
+ Retrieve the noResize attribute of the first FRAME element and examine
+ it's value.
+</description>
+<contributor>Rick Rivello</contributor>
+<date qualifier="created">2002-05-08</date>
+<subject
resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-o...
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vnoresize" type="boolean" />
+<var name="doc" type="Document"/>
+<load var="doc" href="frame"
willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc"
var="nodeList" tagname='"frame"'/>
+<assertSize collection="nodeList" size="2"
id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode"
index="0"/>
+<noResize interface="HTMLFrameElement" obj="testNode"
var="vnoresize"/>
+<assertTrue actual="vnoresize" id="noresizeLink"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLFrameElement06.xml.kfail
b/test/testcases/tests/level1/html/HTMLFrameElement06.xml.kfail
deleted file mode 100644
index 43f46e1..0000000
--- a/test/testcases/tests/level1/html/HTMLFrameElement06.xml.kfail
+++ /dev/null
@@ -1,44 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<?xml-stylesheet href="test-to-html.xml" type="text/xml"?>
-
-<!--
-
-Copyright (c) 2001 World Wide Web Consortium,
-(Massachusetts Institute of Technology, Institut National de
-Recherche en Informatique et en Automatique, Keio University). All
-Rights Reserved. This program is distributed under the W3C's Software
-Intellectual Property License. This program is distributed in the
-hope that it will be useful, but WITHOUT ANY WARRANTY; without even
-the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
-PURPOSE.
-
-See W3C License
http://www.w3.org/Consortium/Legal/ for more details.
-
--->
-<!DOCTYPE test SYSTEM "dom1.dtd">
-<test
xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1"
name="HTMLFrameElement06">
-<metadata>
-<title>HTMLFrameElement06</title>
-<creator>NIST</creator>
-<description>
- The noResize attribute specifies if the user can resize the frame. When
- true, forbid user from resizing frame.
-
- Retrieve the noResize attribute of the first FRAME element and examine
- it's value.
-</description>
-<contributor>Rick Rivello</contributor>
-<date qualifier="created">2002-05-08</date>
-<subject
resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-o...
-</metadata>
-<var name="nodeList" type="NodeList"/>
-<var name="testNode" type="Node"/>
-<var name="vnoresize" type="boolean" />
-<var name="doc" type="Document"/>
-<load var="doc" href="frame"
willBeModified="false"/>
-<getElementsByTagName interface="Document" obj="doc"
var="nodeList" tagname='"frame"'/>
-<assertSize collection="nodeList" size="2"
id="Asize"/>
-<item interface="NodeList" obj="nodeList" var="testNode"
index="0"/>
-<noResize interface="HTMLFrameElement" obj="testNode"
var="vnoresize"/>
-<assertTrue actual="vnoresize" id="noresizeLink"/>
-</test>
diff --git a/test/testcases/tests/level1/html/HTMLFrameElement07.xml
b/test/testcases/tests/level1/html/HTMLFrameElement07.xml
new file mode 100644
index 0000000..a7fdea4
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLFrameElement07.xml
@@ -0,0 +1,44 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xml" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 World Wide Web Consortium,
+(Massachusetts Institute of Technology, Institut National de
+Recherche en Informatique et en Automatique, Keio University). All
+Rights Reserved. This program is distributed under the W3C's Software
+Intellectual Property License. This program is distributed in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
+PURPOSE.
+
+See W3C License
http://www.w3.org/Consortium/Legal/ for more details.
+
+-->
+<!DOCTYPE test SYSTEM "dom1.dtd">
+<test
xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1"
name="HTMLFrameElement07">
+<metadata>
+<title>HTMLFrameElement07</title>
+<creator>NIST</creator>
+<description>
+ The scrolling attribute specifies whether or not the frame should have
+ scrollbars.
+
+ Retrieve the scrolling attribute of the first FRAME element and examine
+ it's value.
+</description>
+<contributor>Rick Rivello</contributor>
+<date qualifier="created">2002-05-08</date>
+<subject
resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-o...
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vscrolling" type="DOMString" />
+<var name="doc" type="Document"/>
+<load var="doc" href="frame"
willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc"
var="nodeList" tagname='"frame"'/>
+<assertSize collection="nodeList" size="2"
id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode"
index="0"/>
+<scrolling interface="HTMLFrameElement" obj="testNode"
var="vscrolling"/>
+<assertEquals actual="vscrolling" expected='"yes"'
id="scrollingLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLFrameElement07.xml.kfail
b/test/testcases/tests/level1/html/HTMLFrameElement07.xml.kfail
deleted file mode 100644
index a7fdea4..0000000
--- a/test/testcases/tests/level1/html/HTMLFrameElement07.xml.kfail
+++ /dev/null
@@ -1,44 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<?xml-stylesheet href="test-to-html.xml" type="text/xml"?>
-
-<!--
-
-Copyright (c) 2001 World Wide Web Consortium,
-(Massachusetts Institute of Technology, Institut National de
-Recherche en Informatique et en Automatique, Keio University). All
-Rights Reserved. This program is distributed under the W3C's Software
-Intellectual Property License. This program is distributed in the
-hope that it will be useful, but WITHOUT ANY WARRANTY; without even
-the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
-PURPOSE.
-
-See W3C License
http://www.w3.org/Consortium/Legal/ for more details.
-
--->
-<!DOCTYPE test SYSTEM "dom1.dtd">
-<test
xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1"
name="HTMLFrameElement07">
-<metadata>
-<title>HTMLFrameElement07</title>
-<creator>NIST</creator>
-<description>
- The scrolling attribute specifies whether or not the frame should have
- scrollbars.
-
- Retrieve the scrolling attribute of the first FRAME element and examine
- it's value.
-</description>
-<contributor>Rick Rivello</contributor>
-<date qualifier="created">2002-05-08</date>
-<subject
resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-o...
-</metadata>
-<var name="nodeList" type="NodeList"/>
-<var name="testNode" type="Node"/>
-<var name="vscrolling" type="DOMString" />
-<var name="doc" type="Document"/>
-<load var="doc" href="frame"
willBeModified="false"/>
-<getElementsByTagName interface="Document" obj="doc"
var="nodeList" tagname='"frame"'/>
-<assertSize collection="nodeList" size="2"
id="Asize"/>
-<item interface="NodeList" obj="nodeList" var="testNode"
index="0"/>
-<scrolling interface="HTMLFrameElement" obj="testNode"
var="vscrolling"/>
-<assertEquals actual="vscrolling" expected='"yes"'
id="scrollingLink" ignoreCase="false"/>
-</test>
diff --git a/test/testcases/tests/level1/html/HTMLFrameElement08.xml
b/test/testcases/tests/level1/html/HTMLFrameElement08.xml
new file mode 100644
index 0000000..4b2843a
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLFrameElement08.xml
@@ -0,0 +1,43 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xml" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 World Wide Web Consortium,
+(Massachusetts Institute of Technology, Institut National de
+Recherche en Informatique et en Automatique, Keio University). All
+Rights Reserved. This program is distributed under the W3C's Software
+Intellectual Property License. This program is distributed in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
+PURPOSE.
+
+See W3C License
http://www.w3.org/Consortium/Legal/ for more details.
+
+-->
+<!DOCTYPE test SYSTEM "dom1.dtd">
+<test
xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1"
name="HTMLFrameElement08">
+<metadata>
+<title>HTMLFrameElement08</title>
+<creator>NIST</creator>
+<description>
+ The src attribute specifies a URI designating the initial frame contents.
+
+ Retrieve the src attribute of the first FRAME element and examine
+ it's value.
+</description>
+<contributor>Rick Rivello</contributor>
+<date qualifier="created">2002-05-08</date>
+<subject
resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-o...
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vsrc" type="DOMString" />
+<var name="doc" type="Document"/>
+<load var="doc" href="frame"
willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc"
var="nodeList" tagname='"frame"'/>
+<assertSize collection="nodeList" size="2"
id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode"
index="0"/>
+<src interface="HTMLFrameElement" obj="testNode"
var="vsrc"/>
+<assertURIEquals actual="vsrc" name='"right"'
id="srcLink"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLFrameElement08.xml.kfail
b/test/testcases/tests/level1/html/HTMLFrameElement08.xml.kfail
deleted file mode 100644
index 4b2843a..0000000
--- a/test/testcases/tests/level1/html/HTMLFrameElement08.xml.kfail
+++ /dev/null
@@ -1,43 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<?xml-stylesheet href="test-to-html.xml" type="text/xml"?>
-
-<!--
-
-Copyright (c) 2001 World Wide Web Consortium,
-(Massachusetts Institute of Technology, Institut National de
-Recherche en Informatique et en Automatique, Keio University). All
-Rights Reserved. This program is distributed under the W3C's Software
-Intellectual Property License. This program is distributed in the
-hope that it will be useful, but WITHOUT ANY WARRANTY; without even
-the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
-PURPOSE.
-
-See W3C License
http://www.w3.org/Consortium/Legal/ for more details.
-
--->
-<!DOCTYPE test SYSTEM "dom1.dtd">
-<test
xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1"
name="HTMLFrameElement08">
-<metadata>
-<title>HTMLFrameElement08</title>
-<creator>NIST</creator>
-<description>
- The src attribute specifies a URI designating the initial frame contents.
-
- Retrieve the src attribute of the first FRAME element and examine
- it's value.
-</description>
-<contributor>Rick Rivello</contributor>
-<date qualifier="created">2002-05-08</date>
-<subject
resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-o...
-</metadata>
-<var name="nodeList" type="NodeList"/>
-<var name="testNode" type="Node"/>
-<var name="vsrc" type="DOMString" />
-<var name="doc" type="Document"/>
-<load var="doc" href="frame"
willBeModified="false"/>
-<getElementsByTagName interface="Document" obj="doc"
var="nodeList" tagname='"frame"'/>
-<assertSize collection="nodeList" size="2"
id="Asize"/>
-<item interface="NodeList" obj="nodeList" var="testNode"
index="0"/>
-<src interface="HTMLFrameElement" obj="testNode"
var="vsrc"/>
-<assertURIEquals actual="vsrc" name='"right"'
id="srcLink"/>
-</test>
diff --git a/test/testcases/tests/level2/html/HTMLFrameElement09.xml
b/test/testcases/tests/level2/html/HTMLFrameElement09.xml
new file mode 100644
index 0000000..9ae0e16
--- /dev/null
+++ b/test/testcases/tests/level2/html/HTMLFrameElement09.xml
@@ -0,0 +1,42 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<!--
+
+Copyright (c) 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, Institut National de
+Recherche en Informatique et en Automatique, Keio University). All
+Rights Reserved. This program is distributed under the W3C's Software
+Intellectual Property License. This program is distributed in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
+PURPOSE.
+
+See W3C License
http://www.w3.org/Consortium/Legal/ for more details.
+
+-->
+<!DOCTYPE test SYSTEM "dom2.dtd">
+<test
xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-2"
name="HTMLFrameElement09">
+<metadata>
+<title>HTMLFrameElement09</title>
+<creator>NIST</creator>
+<description>
+ The contentDocument attribute specifies the document this frame contains,
+ if there is any and it is available, or null otherwise.
+
+ Retrieve the contentDocument attribute of the first FRAME element
+ and examine its TITLE value.
+</description>
+<contributor>Rick Rivello</contributor>
+<date qualifier="created">2002-07-03</date>
+<subject
resource="http://www.w3.org/TR/DOM-Level-2-HTML/html#ID-78799536&quo...
+</metadata>
+<var name="testNode" type="Element"/>
+<var name="cd" type="Document" />
+<var name="vtitle" type="DOMString"/>
+<var name="doc" type="Document"/>
+<load var="doc" href="frame2"
willBeModified="false"/>
+<getElementById interface="Document" obj="doc"
var="testNode" elementId='"Frame1"'/>
+<contentDocument interface="HTMLFrameElement" obj="testNode"
var="cd"/>
+<title interface="HTMLDocument" obj="cd"
var="vtitle"/>
+<assertEquals actual="vtitle" expected='"NIST DOM HTML Test -
FRAME2"' id="titleLink" ignoreCase="false" />
+</test>
diff --git a/test/testcases/tests/level2/html/HTMLFrameElement09.xml.kfail
b/test/testcases/tests/level2/html/HTMLFrameElement09.xml.kfail
deleted file mode 100644
index d6fc5cc..0000000
--- a/test/testcases/tests/level2/html/HTMLFrameElement09.xml.kfail
+++ /dev/null
@@ -1,42 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-
-<!--
-
-Copyright (c) 2001-2004 World Wide Web Consortium,
-(Massachusetts Institute of Technology, Institut National de
-Recherche en Informatique et en Automatique, Keio University). All
-Rights Reserved. This program is distributed under the W3C's Software
-Intellectual Property License. This program is distributed in the
-hope that it will be useful, but WITHOUT ANY WARRANTY; without even
-the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
-PURPOSE.
-
-See W3C License
http://www.w3.org/Consortium/Legal/ for more details.
-
--->
-<!DOCTYPE test SYSTEM "dom2.dtd">
-<test
xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-2"
name="HTMLFrameElement09">
-<metadata>
-<title>HTMLFrameElement09</title>
-<creator>NIST</creator>
-<description>
- The contentDocument attribute specifies the document this frame contains,
- if there is any and it is available, or null otherwise.
-
- Retrieve the contentDocument attribute of the first FRAME element
- and examine its TITLE value.
-</description>
-<contributor>Rick Rivello</contributor>
-<date qualifier="created">2002-07-03</date>
-<subject
resource="http://www.w3.org/TR/DOM-Level-2-HTML/html#ID-78799536&quo...
-</metadata>
-<var name="testNode" type="Element"/>
-<var name="cd" type="Document" />
-<var name="vtitle" type="DOMString"/>
-<var name="doc" type="Document"/>
-<load var="doc" href="frame2"
willBeModified="false"/>
-<getElementById interface="Document" obj="doc"
var="testNode" elementId='"Frame1"'/>
-<contentDocument interface="HTMLFrameElement" obj="testNode"
var="cd"/>
-<title interface="HTMLDocument" obj="cd"
var="vtitle"/>
-<assertEquals actual="vtitle" expected='"NIST DOM HTML Test -
FRAMESET"' id="titleLink" ignoreCase="false" />
-</test>
commitdiff
http://git.netsurf-browser.org/libdom.git/commit/?id=26610a3b631ecf53356c...
commit 26610a3b631ecf53356c95fa72ba822b0cb12d86
Author: rsk1994 <rsk1coder99(a)gmail.com>
Commit: Rupinder Singh Khokhar <rsk1coder99(a)gmail.com>
FrameSet Element
diff --git a/Makefile b/Makefile
index 9b47c36..2de8d0c 100644
--- a/Makefile
+++ b/Makefile
@@ -131,6 +131,7 @@ INSTALL_ITEMS := $(INSTALL_ITEMS) $(I):$(Is)/html_table_element.h
INSTALL_ITEMS := $(INSTALL_ITEMS) $(I):$(Is)/html_tablerow_element.h
INSTALL_ITEMS := $(INSTALL_ITEMS) $(I):$(Is)/html_base_element.h
INSTALL_ITEMS := $(INSTALL_ITEMS) $(I):$(Is)/html_style_element.h
+INSTALL_ITEMS := $(INSTALL_ITEMS) $(I):$(Is)/html_frameset_element.h
INSTALL_ITEMS := $(INSTALL_ITEMS) /$(LIBDIR)/pkgconfig:lib$(COMPONENT).pc.in
INSTALL_ITEMS := $(INSTALL_ITEMS) /$(LIBDIR):$(OUTPUT)
diff --git a/include/dom/dom.h b/include/dom/dom.h
index 68ae227..376ef14 100644
--- a/include/dom/dom.h
+++ b/include/dom/dom.h
@@ -90,6 +90,7 @@
#include <dom/html/html_tablerow_element.h>
#include <dom/html/html_base_element.h>
#include <dom/html/html_style_element.h>
+#include <dom/html/html_frameset_element.h>
/* DOM Events header */
#include <dom/events/events.h>
diff --git a/include/dom/html/html_frameset_element.h
b/include/dom/html/html_frameset_element.h
index 2e182d5..c0de3b4 100644
--- a/include/dom/html/html_frameset_element.h
+++ b/include/dom/html/html_frameset_element.h
@@ -3,5 +3,27 @@
* Licensed under the MIT License,
*
http://www.opensource.org/licenses/mit-license.php
* Copyright 2009 Bo Yang <struggleyb.nku(a)gmail.com>
+ * Copyright 2014 Rupinder Singh Khokhar <rsk1coder99(a)gmail.com>
*/
+#ifndef dom_html_frame_set_element_h_
+#define dom_html_frame_set_element_h_
+#include <stdbool.h>
+#include <dom/core/exceptions.h>
+#include <dom/core/string.h>
+
+typedef struct dom_html_frame_set_element dom_html_frame_set_element;
+
+dom_exception dom_html_frame_set_element_get_rows(
+ dom_html_frame_set_element *element, dom_string **rows);
+
+dom_exception dom_html_frame_set_element_set_rows(
+ dom_html_frame_set_element *element, dom_string *rows);
+
+dom_exception dom_html_frame_set_element_set_cols(
+ dom_html_frame_set_element *ele, dom_string *cols);
+
+dom_exception dom_html_frame_set_element_get_cols(
+ dom_html_frame_set_element *ele, dom_string **cols);
+
+#endif
diff --git a/src/html/Makefile b/src/html/Makefile
index 2cb85d9..a9532cd 100644
--- a/src/html/Makefile
+++ b/src/html/Makefile
@@ -17,10 +17,10 @@ DIR_SOURCES := \
html_param_element.c html_applet_element.c html_area_element.c \
html_map_element.c html_script_element.c html_tablecaption_element.c \
html_tablecell_element.c html_tablecol_element.c html_tablesection_element.c \
- html_table_element.c html_tablerow_element.c
+ html_table_element.c html_tablerow_element.c html_frameset_element.c
UNINMPLEMENTED_SOURCES := \
- html_frameset_element.c html_isindex_element.c \
+ html_isindex_element.c \
html_frame_element.c html_iframe_element.c
include $(NSBUILD)/Makefile.subdir
diff --git a/src/html/html_document.c b/src/html/html_document.c
index 0e39f77..a4ba62b 100644
--- a/src/html/html_document.c
+++ b/src/html/html_document.c
@@ -57,6 +57,7 @@
#include "html/html_table_element.h"
#include "html/html_tablerow_element.h"
#include "html/html_style_element.h"
+#include "html/html_frameset_element.h"
#include "core/attr.h"
#include "core/string.h"
@@ -365,6 +366,9 @@ _dom_html_document_create_element_internal(dom_html_document *html,
} else if (dom_string_caseless_isequal(tag_name, html->memoised[hds_STYLE])) {
exc = _dom_html_style_element_create(html,
(dom_html_style_element **) result);
+ } else if (dom_string_caseless_isequal(tag_name, html->memoised[hds_FRAMESET])) {
+ exc = _dom_html_frame_set_element_create(html, namespace, prefix,
+ (dom_html_frame_set_element **) result);
} else {
exc = _dom_html_element_create(html, tag_name, namespace,
prefix, result);
diff --git a/src/html/html_document_strings.h b/src/html/html_document_strings.h
index 5d5ddaf..10ec80d 100644
--- a/src/html/html_document_strings.h
+++ b/src/html/html_document_strings.h
@@ -106,6 +106,8 @@ HTML_DOCUMENT_STRINGS_ACTION1(frame)
HTML_DOCUMENT_STRINGS_ACTION1(rules)
HTML_DOCUMENT_STRINGS_ACTION1(summary)
HTML_DOCUMENT_STRINGS_ACTION1(prompt)
+HTML_DOCUMENT_STRINGS_ACTION1(rows)
+HTML_DOCUMENT_STRINGS_ACTION1(cols)
HTML_DOCUMENT_STRINGS_ACTION(tab_index,tabindex)
HTML_DOCUMENT_STRINGS_ACTION(html_for,for)
HTML_DOCUMENT_STRINGS_ACTION(date_time,datetime)
diff --git a/src/html/html_frameset_element.c b/src/html/html_frameset_element.c
index 2e182d5..b096156 100644
--- a/src/html/html_frameset_element.c
+++ b/src/html/html_frameset_element.c
@@ -3,5 +3,234 @@
* Licensed under the MIT License,
*
http://www.opensource.org/licenses/mit-license.php
* Copyright 2009 Bo Yang <struggleyb.nku(a)gmail.com>
+ * Copyright 2014 Rupinder Singh Khokhar<rsk1coder99(a)gmail.com>
*/
+#include <assert.h>
+#include <stdlib.h>
+#include <dom/html/html_frameset_element.h>
+
+#include "html/html_document.h"
+#include "html/html_frameset_element.h"
+
+#include "core/node.h"
+#include "core/attr.h"
+#include "utils/utils.h"
+
+static struct dom_element_protected_vtable _protect_vtable = {
+ {
+ DOM_NODE_PROTECT_VTABLE_HTML_FRAME_SET_ELEMENT
+ },
+ DOM_HTML_FRAME_SET_ELEMENT_PROTECT_VTABLE
+};
+
+/**
+ * Create a dom_html_frame_set_element object
+ *
+ * \param doc The document object
+ * \param ele The returned element object
+ * \return DOM_NO_ERR on success, appropriate dom_exception on failure.
+ */
+dom_exception _dom_html_frame_set_element_create(struct dom_html_document *doc,
+ dom_string *namespace, dom_string *prefix,
+ struct dom_html_frame_set_element **ele)
+{
+ struct dom_node_internal *node;
+
+ *ele = malloc(sizeof(dom_html_frame_set_element));
+ if (*ele == NULL)
+ return DOM_NO_MEM_ERR;
+
+ /* Set up vtables */
+ node = (struct dom_node_internal *) *ele;
+ node->base.vtable = &_dom_html_element_vtable;
+ node->vtable = &_protect_vtable;
+
+ return _dom_html_frame_set_element_initialise(doc, namespace, prefix, *ele);
+}
+
+/**
+ * Initialise a dom_html_frame_set_element object
+ *
+ * \param doc The document object
+ * \param ele The dom_html_frame_set_element object
+ * \return DOM_NO_ERR on success, appropriate dom_exception on failure.
+ */
+dom_exception _dom_html_frame_set_element_initialise(struct dom_html_document *doc,
+ dom_string *namespace, dom_string *prefix,
+ struct dom_html_frame_set_element *ele)
+{
+ dom_string *cols_rows_default = NULL;
+ dom_exception err;
+ err = dom_string_create((const uint8_t *) "100%",
SLEN("100%"), &cols_rows_default);
+ if (err != DOM_NO_ERR)
+ return err;
+
+ err = _dom_html_element_initialise(doc, &ele->base,
+ doc->memoised[hds_FRAMESET],
+ namespace, prefix);
+ ele->cols_rows_default = cols_rows_default;
+ return err;
+}
+
+/**
+ * Finalise a dom_html_frame_set_element object
+ *
+ * \param ele The dom_html_frame_set_element object
+ */
+void _dom_html_frame_set_element_finalise(struct dom_html_frame_set_element *ele)
+{
+ _dom_html_element_finalise(&ele->base);
+}
+
+/**
+ * Destroy a dom_html_frame_set_element object
+ *
+ * \param ele The dom_html_frame_set_element object
+ */
+void _dom_html_frame_set_element_destroy(struct dom_html_frame_set_element *ele)
+{
+ _dom_html_frame_set_element_finalise(ele);
+ free(ele);
+}
+
+/*------------------------------------------------------------------------*/
+/* The protected virtual functions */
+
+/* The virtual function used to parse attribute value, see src/core/element.c
+ * for detail */
+dom_exception _dom_html_frame_set_element_parse_attribute(dom_element *ele,
+ dom_string *name, dom_string *value,
+ dom_string **parsed)
+{
+ UNUSED(ele);
+ UNUSED(name);
+
+ dom_string_ref(value);
+ *parsed = value;
+
+ return DOM_NO_ERR;
+}
+
+/* The virtual destroy function, see src/core/node.c for detail */
+void _dom_virtual_html_frame_set_element_destroy(dom_node_internal *node)
+{
+ _dom_html_frame_set_element_destroy((struct dom_html_frame_set_element *) node);
+}
+
+/* The virtual copy function, see src/core/node.c for detail */
+dom_exception _dom_html_frame_set_element_copy(dom_node_internal *old,
+ dom_node_internal **copy)
+{
+ return _dom_html_element_copy(old, copy);
+}
+
+/*-----------------------------------------------------------------------*/
+/* API functions */
+
+#define SIMPLE_GET(attr) \
+ dom_exception dom_html_frame_set_element_get_##attr( \
+ dom_html_frame_set_element *element, \
+ dom_string **attr) \
+ { \
+ dom_exception ret; \
+ dom_string *_memo_##attr; \
+ \
+ _memo_##attr = \
+ ((struct dom_html_document *) \
+ ((struct dom_node_internal *)element)->owner)->\
+ memoised[hds_##attr]; \
+ \
+ ret = dom_element_get_attribute(element, _memo_##attr, attr); \
+ \
+ return ret; \
+ }
+#define SIMPLE_SET(attr) \
+dom_exception dom_html_frame_set_element_set_##attr( \
+ dom_html_frame_set_element *element, \
+ dom_string *attr) \
+ { \
+ dom_exception ret; \
+ dom_string *_memo_##attr; \
+ \
+ _memo_##attr = \
+ ((struct dom_html_document *) \
+ ((struct dom_node_internal *)element)->owner)->\
+ memoised[hds_##attr]; \
+ \
+ ret = dom_element_set_attribute(element, _memo_##attr, attr); \
+ \
+ return ret; \
+ }
+
+#define SIMPLE_GET_SET(attr) SIMPLE_GET(attr) SIMPLE_SET(attr)
+
+SIMPLE_SET(rows);
+SIMPLE_SET(cols);
+
+/**
+ * Get the rows property
+ *
+ * \param ele The dom_html_frame_set_element object
+ * \param rows The returned status
+ * \return DOM_NO_ERR on success, appropriate dom_exception on failure.
+ */
+dom_exception dom_html_frame_set_element_get_rows(
+ dom_html_frame_set_element *ele,
+ dom_string **rows)
+{
+ dom_html_document *doc;
+ bool has_value = false;
+ dom_exception err;
+
+ doc = (dom_html_document *) ((dom_node_internal *) ele)->owner;
+
+ err = dom_element_has_attribute(ele,
+ doc->memoised[hds_rows], &has_value);
+ if(err !=DOM_NO_ERR)
+ return err;
+
+ if(has_value) {
+ return dom_element_get_attribute(ele,
+ doc->memoised[hds_rows], rows);
+ }
+
+ *rows = ele->cols_rows_default;
+ if (*rows != NULL)
+ dom_string_ref(*rows);
+
+ return DOM_NO_ERR;
+}
+
+/**
+ * Get the cols property
+ *
+ * \param ele The dom_html_frame_set_element object
+ * \param cols The returned status
+ * \return DOM_NO_ERR on success, appropriate dom_exception on failure.
+ */
+dom_exception dom_html_frame_set_element_get_cols(
+ dom_html_frame_set_element *ele,
+ dom_string **cols)
+{
+ dom_html_document *doc;
+ bool has_value = false;
+ dom_exception err;
+
+ doc = (dom_html_document *) ((dom_node_internal *) ele)->owner;
+
+ err = dom_element_has_attribute(ele,
+ doc->memoised[hds_cols], &has_value);
+ if(err !=DOM_NO_ERR)
+ return err;
+
+ if(has_value) {
+ return dom_element_get_attribute(ele,
+ doc->memoised[hds_cols], cols);
+ }
+
+ *cols = ele->cols_rows_default;
+ if (*cols != NULL)
+ dom_string_ref(*cols);
+ return DOM_NO_ERR;
+}
diff --git a/src/html/html_frameset_element.h b/src/html/html_frameset_element.h
index 2e182d5..fd1c255 100644
--- a/src/html/html_frameset_element.h
+++ b/src/html/html_frameset_element.h
@@ -3,5 +3,51 @@
* Licensed under the MIT License,
*
http://www.opensource.org/licenses/mit-license.php
* Copyright 2009 Bo Yang <struggleyb.nku(a)gmail.com>
+ * Copyright 2014 Rupinder Singh Khokhar <rsk1coder99(a)gmail.com>
*/
+#ifndef dom_internal_html_frame_set_element_h_
+#define dom_internal_html_frame_set_element_h_
+
+#include <dom/html/html_frameset_element.h>
+#include "html/html_element.h"
+
+
+struct dom_html_frame_set_element {
+ struct dom_html_element base;
+ /**< The base class */
+ dom_string *cols_rows_default;
+};
+
+/* Create a dom_html_frame_set_element object */
+dom_exception _dom_html_frame_set_element_create(struct dom_html_document *doc,
+ dom_string *namespace, dom_string *prefix,
+ struct dom_html_frame_set_element **ele);
+
+/* Initialise a dom_html_frame_set_element object */
+dom_exception _dom_html_frame_set_element_initialise(struct dom_html_document *doc,
+ dom_string *namespace, dom_string *prefix,
+ struct dom_html_frame_set_element *ele);
+
+/* Finalise a dom_html_frame_set_element object */
+void _dom_html_frame_set_element_finalise(struct dom_html_frame_set_element *ele);
+
+/* Destroy a dom_html_frame_set_element object */
+void _dom_html_frame_set_element_destroy(struct dom_html_frame_set_element *ele);
+
+/* The protected virtual functions */
+dom_exception _dom_html_frame_set_element_parse_attribute(dom_element *ele,
+ dom_string *name, dom_string *value,
+ dom_string **parsed);
+void _dom_virtual_html_frame_set_element_destroy(dom_node_internal *node);
+dom_exception _dom_html_frame_set_element_copy(dom_node_internal *old,
+ dom_node_internal **copy);
+
+#define DOM_HTML_FRAME_SET_ELEMENT_PROTECT_VTABLE \
+ _dom_html_frame_set_element_parse_attribute
+
+#define DOM_NODE_PROTECT_VTABLE_HTML_FRAME_SET_ELEMENT \
+ _dom_virtual_html_frame_set_element_destroy, \
+ _dom_html_frame_set_element_copy
+
+#endif
diff --git a/test/testcases/tests/level1/html/HTMLFrameSetElement01.xml
b/test/testcases/tests/level1/html/HTMLFrameSetElement01.xml
new file mode 100644
index 0000000..18e5ff5
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLFrameSetElement01.xml
@@ -0,0 +1,44 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xml" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 World Wide Web Consortium,
+(Massachusetts Institute of Technology, Institut National de
+Recherche en Informatique et en Automatique, Keio University). All
+Rights Reserved. This program is distributed under the W3C's Software
+Intellectual Property License. This program is distributed in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
+PURPOSE.
+
+See W3C License
http://www.w3.org/Consortium/Legal/ for more details.
+
+-->
+<!DOCTYPE test SYSTEM "dom1.dtd">
+<test
xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1"
name="HTMLFrameSetElement01">
+<metadata>
+<title>HTMLFrameSetElement01</title>
+<creator>NIST</creator>
+<description>
+ The cols attribute specifies the number of columns of frames in the
+ frameset.
+
+ Retrieve the cols attribute of the first FRAMESET element and examine
+ it's value.
+</description>
+<contributor>Rick Rivello</contributor>
+<date qualifier="created">2002-05-08</date>
+<subject
resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-o...
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vcols" type="DOMString" />
+<var name="doc" type="Document"/>
+<load var="doc" href="frameset"
willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc"
var="nodeList" tagname='"frameset"'/>
+<assertSize collection="nodeList" size="2"
id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode"
index="0"/>
+<cols interface="HTMLFrameSetElement" obj="testNode"
var="vcols"/>
+<assertEquals actual="vcols" expected='"20, 80"'
id="colsLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLFrameSetElement01.xml.kfail
b/test/testcases/tests/level1/html/HTMLFrameSetElement01.xml.kfail
deleted file mode 100644
index 18e5ff5..0000000
--- a/test/testcases/tests/level1/html/HTMLFrameSetElement01.xml.kfail
+++ /dev/null
@@ -1,44 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<?xml-stylesheet href="test-to-html.xml" type="text/xml"?>
-
-<!--
-
-Copyright (c) 2001 World Wide Web Consortium,
-(Massachusetts Institute of Technology, Institut National de
-Recherche en Informatique et en Automatique, Keio University). All
-Rights Reserved. This program is distributed under the W3C's Software
-Intellectual Property License. This program is distributed in the
-hope that it will be useful, but WITHOUT ANY WARRANTY; without even
-the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
-PURPOSE.
-
-See W3C License
http://www.w3.org/Consortium/Legal/ for more details.
-
--->
-<!DOCTYPE test SYSTEM "dom1.dtd">
-<test
xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1"
name="HTMLFrameSetElement01">
-<metadata>
-<title>HTMLFrameSetElement01</title>
-<creator>NIST</creator>
-<description>
- The cols attribute specifies the number of columns of frames in the
- frameset.
-
- Retrieve the cols attribute of the first FRAMESET element and examine
- it's value.
-</description>
-<contributor>Rick Rivello</contributor>
-<date qualifier="created">2002-05-08</date>
-<subject
resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-o...
-</metadata>
-<var name="nodeList" type="NodeList"/>
-<var name="testNode" type="Node"/>
-<var name="vcols" type="DOMString" />
-<var name="doc" type="Document"/>
-<load var="doc" href="frameset"
willBeModified="false"/>
-<getElementsByTagName interface="Document" obj="doc"
var="nodeList" tagname='"frameset"'/>
-<assertSize collection="nodeList" size="2"
id="Asize"/>
-<item interface="NodeList" obj="nodeList" var="testNode"
index="0"/>
-<cols interface="HTMLFrameSetElement" obj="testNode"
var="vcols"/>
-<assertEquals actual="vcols" expected='"20, 80"'
id="colsLink" ignoreCase="false"/>
-</test>
diff --git a/test/testcases/tests/level1/html/HTMLFrameSetElement02.xml
b/test/testcases/tests/level1/html/HTMLFrameSetElement02.xml
new file mode 100644
index 0000000..e598cef
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLFrameSetElement02.xml
@@ -0,0 +1,44 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xml" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 World Wide Web Consortium,
+(Massachusetts Institute of Technology, Institut National de
+Recherche en Informatique et en Automatique, Keio University). All
+Rights Reserved. This program is distributed under the W3C's Software
+Intellectual Property License. This program is distributed in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
+PURPOSE.
+
+See W3C License
http://www.w3.org/Consortium/Legal/ for more details.
+
+-->
+<!DOCTYPE test SYSTEM "dom1.dtd">
+<test
xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1"
name="HTMLFrameSetElement02">
+<metadata>
+<title>HTMLFrameSetElement02</title>
+<creator>NIST</creator>
+<description>
+ The rows attribute specifies the number of rows of frames in the
+ frameset.
+
+ Retrieve the rows attribute of the second FRAMESET element and examine
+ it's value.
+</description>
+<contributor>Rick Rivello</contributor>
+<date qualifier="created">2002-05-08</date>
+<subject
resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-o...
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vrows" type="DOMString" />
+<var name="doc" type="Document"/>
+<load var="doc" href="frameset"
willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc"
var="nodeList" tagname='"frameset"'/>
+<assertSize collection="nodeList" size="2"
id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode"
index="1"/>
+<rows interface="HTMLFrameSetElement" obj="testNode"
var="vrows"/>
+<assertEquals actual="vrows" expected='"100, 200"'
id="rowsLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLFrameSetElement02.xml.kfail
b/test/testcases/tests/level1/html/HTMLFrameSetElement02.xml.kfail
deleted file mode 100644
index e598cef..0000000
--- a/test/testcases/tests/level1/html/HTMLFrameSetElement02.xml.kfail
+++ /dev/null
@@ -1,44 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<?xml-stylesheet href="test-to-html.xml" type="text/xml"?>
-
-<!--
-
-Copyright (c) 2001 World Wide Web Consortium,
-(Massachusetts Institute of Technology, Institut National de
-Recherche en Informatique et en Automatique, Keio University). All
-Rights Reserved. This program is distributed under the W3C's Software
-Intellectual Property License. This program is distributed in the
-hope that it will be useful, but WITHOUT ANY WARRANTY; without even
-the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
-PURPOSE.
-
-See W3C License
http://www.w3.org/Consortium/Legal/ for more details.
-
--->
-<!DOCTYPE test SYSTEM "dom1.dtd">
-<test
xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1"
name="HTMLFrameSetElement02">
-<metadata>
-<title>HTMLFrameSetElement02</title>
-<creator>NIST</creator>
-<description>
- The rows attribute specifies the number of rows of frames in the
- frameset.
-
- Retrieve the rows attribute of the second FRAMESET element and examine
- it's value.
-</description>
-<contributor>Rick Rivello</contributor>
-<date qualifier="created">2002-05-08</date>
-<subject
resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-o...
-</metadata>
-<var name="nodeList" type="NodeList"/>
-<var name="testNode" type="Node"/>
-<var name="vrows" type="DOMString" />
-<var name="doc" type="Document"/>
-<load var="doc" href="frameset"
willBeModified="false"/>
-<getElementsByTagName interface="Document" obj="doc"
var="nodeList" tagname='"frameset"'/>
-<assertSize collection="nodeList" size="2"
id="Asize"/>
-<item interface="NodeList" obj="nodeList" var="testNode"
index="1"/>
-<rows interface="HTMLFrameSetElement" obj="testNode"
var="vrows"/>
-<assertEquals actual="vrows" expected='"100, 200"'
id="rowsLink" ignoreCase="false"/>
-</test>
commitdiff
http://git.netsurf-browser.org/libdom.git/commit/?id=bf6aa2739d4b65c43986...
commit bf6aa2739d4b65c43986b29a2b2c4bbbab061cf5
Author: rsk1994 <rsk1coder99(a)gmail.com>
Commit: Rupinder Singh Khokhar <rsk1coder99(a)gmail.com>
TEST generator bug fix
Adding Test Cases & DOMTSHandler fix
diff --git a/test/DOMTSHandler.pm b/test/DOMTSHandler.pm
index 8953047..47dcf75 100644
--- a/test/DOMTSHandler.pm
+++ b/test/DOMTSHandler.pm
@@ -728,7 +728,7 @@ sub generate_method {
$method = to_cmethod($ats{'interface'}, $en);
my $cast = to_attribute_cast($ats{'interface'});
my $get_attribute = $node->getAttribute("name");
- my $cast_get_attribute = to_get_attribute_cast($get_attribute);
+ my $cast_get_attribute = to_get_attribute_cast($get_attribute,
$ats{'interface'});
my $ns = $dd->find("parameters/param", $node);
my $params = "${cast}$ats{'obj'}";
for ($count = 1; $count <= $ns->size; $count++) {
@@ -857,7 +857,7 @@ sub generate_attribute_fetcher {
my $fetcher = to_attribute_fetcher($ats{'interface'}, "$en");
my $cast = to_attribute_cast($ats{'interface'});
my $get_attribute = $node->getAttribute("name");
- my $cast_get_attribute = to_get_attribute_cast($get_attribute);
+ my $cast_get_attribute = to_get_attribute_cast($get_attribute,
$ats{'interface'});
my $unref = 0;
my $temp_node = 0;
# Deal with the situation like
@@ -1476,7 +1476,8 @@ sub get_prefix {
}
sub to_get_attribute_cast {
my $type = shift;
- my $ret = get_get_attribute_prefix($type);
+ my $interface = shift;
+ my $ret = get_get_attribute_prefix($type, $interface);
if($ret eq "") {
return $ret;
}
@@ -1486,12 +1487,15 @@ sub to_get_attribute_cast {
sub get_get_attribute_prefix {
my $type = shift;
-
- if (exists $special_prefix{$type}) {
+ my $interface = shift;
+ if ((($interface eq "HTMLCollection") or ($interface eq
"HTMLSelectElement")) and ($type eq "length")) {
+ $prefix = "uint32_t ";
+ } elsif (exists $special_prefix{$type}) {
$prefix = $special_prefix{$type};
} else {
$prefix = "";
}
+
return $prefix;
}
# This function remain unsed
diff --git a/test/testcases/tests/level1/html/HTMLSelectElement05.xml
b/test/testcases/tests/level1/html/HTMLSelectElement05.xml
new file mode 100644
index 0000000..16c78e1
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLSelectElement05.xml
@@ -0,0 +1,43 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 World Wide Web Consortium,
+(Massachusetts Institute of Technology, Institut National de
+Recherche en Informatique et en Automatique, Keio University). All
+Rights Reserved. This program is distributed under the W3C's Software
+Intellectual Property License. This program is distributed in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
+PURPOSE.
+
+See W3C License
http://www.w3.org/Consortium/Legal/ for more details.
+
+-->
+<!DOCTYPE test SYSTEM "dom1.dtd">
+<test
xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1"
name="HTMLSelectElement05">
+<metadata>
+<title>HTMLSelectElement05</title>
+<creator>NIST</creator>
+<description>
+ The length attribute specifies the number of options in this select.
+
+ Retrieve the length attribute from the first SELECT element and
+ examine its value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject
resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-o...
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vlength" type="int"/>
+<var name="doc" type="Document"/>
+<load var="doc" href="select"
willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc"
var="nodeList" tagname='"select"'/>
+<assertSize collection="nodeList" size="3"
id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode"
index="0"/>
+<length interface="HTMLSelectElement" obj="testNode"
var="vlength"/>
+<assertEquals actual="vlength" expected="5"
id="lengthLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLSelectElement05.xml.int-broken
b/test/testcases/tests/level1/html/HTMLSelectElement05.xml.int-broken
deleted file mode 100644
index 16c78e1..0000000
--- a/test/testcases/tests/level1/html/HTMLSelectElement05.xml.int-broken
+++ /dev/null
@@ -1,43 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
-
-<!--
-
-Copyright (c) 2001 World Wide Web Consortium,
-(Massachusetts Institute of Technology, Institut National de
-Recherche en Informatique et en Automatique, Keio University). All
-Rights Reserved. This program is distributed under the W3C's Software
-Intellectual Property License. This program is distributed in the
-hope that it will be useful, but WITHOUT ANY WARRANTY; without even
-the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
-PURPOSE.
-
-See W3C License
http://www.w3.org/Consortium/Legal/ for more details.
-
--->
-<!DOCTYPE test SYSTEM "dom1.dtd">
-<test
xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1"
name="HTMLSelectElement05">
-<metadata>
-<title>HTMLSelectElement05</title>
-<creator>NIST</creator>
-<description>
- The length attribute specifies the number of options in this select.
-
- Retrieve the length attribute from the first SELECT element and
- examine its value.
-</description>
-<contributor>Mary Brady</contributor>
-<date qualifier="created">2002-02-22</date>
-<subject
resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-o...
-</metadata>
-<var name="nodeList" type="NodeList"/>
-<var name="testNode" type="Node"/>
-<var name="vlength" type="int"/>
-<var name="doc" type="Document"/>
-<load var="doc" href="select"
willBeModified="false"/>
-<getElementsByTagName interface="Document" obj="doc"
var="nodeList" tagname='"select"'/>
-<assertSize collection="nodeList" size="3"
id="Asize"/>
-<item interface="NodeList" obj="nodeList" var="testNode"
index="0"/>
-<length interface="HTMLSelectElement" obj="testNode"
var="vlength"/>
-<assertEquals actual="vlength" expected="5"
id="lengthLink" ignoreCase="false"/>
-</test>
diff --git a/test/testcases/tests/level1/html/HTMLSelectElement16.xml
b/test/testcases/tests/level1/html/HTMLSelectElement16.xml
new file mode 100644
index 0000000..a5e9422
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLSelectElement16.xml
@@ -0,0 +1,43 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, Institut National de
+Recherche en Informatique et en Automatique, Keio University). All
+Rights Reserved. This program is distributed under the W3C's Software
+Intellectual Property License. This program is distributed in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
+PURPOSE.
+
+See W3C License
http://www.w3.org/Consortium/Legal/ for more details.
+
+-->
+<!DOCTYPE test SYSTEM "dom1.dtd">
+<test
xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1"
name="HTMLSelectElement16">
+<metadata>
+<title>HTMLSelectElement16</title>
+<creator>Curt Arnold</creator>
+<description>
+Removes an option using HTMLSelectElement.remove.
+</description>
+<date qualifier="created">2004-03-18</date>
+<subject
resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-o...
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="doc" type="Document"/>
+<var name="optLength" type="int"/>
+<var name="selected" type="int"/>
+<load var="doc" href="select"
willBeModified="true"/>
+<getElementsByTagName interface="Document" obj="doc"
var="nodeList" tagname='"select"'/>
+<assertSize collection="nodeList" size="3"
id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode"
index="0"/>
+<remove interface="HTMLSelectElement" obj="testNode"
index="0"/>
+<length interface="HTMLSelectElement" obj="testNode"
var="optLength"/>
+<assertEquals actual="optLength" expected="4"
id="optLength" ignoreCase="false"/>
+<selectedIndex interface="HTMLSelectElement" obj="testNode"
var="selected"/>
+<assertEquals actual="selected" expected="-1"
id="selected" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLSelectElement16.xml.kfail
b/test/testcases/tests/level1/html/HTMLSelectElement16.xml.kfail
deleted file mode 100644
index a5e9422..0000000
--- a/test/testcases/tests/level1/html/HTMLSelectElement16.xml.kfail
+++ /dev/null
@@ -1,43 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
-
-<!--
-
-Copyright (c) 2004 World Wide Web Consortium,
-(Massachusetts Institute of Technology, Institut National de
-Recherche en Informatique et en Automatique, Keio University). All
-Rights Reserved. This program is distributed under the W3C's Software
-Intellectual Property License. This program is distributed in the
-hope that it will be useful, but WITHOUT ANY WARRANTY; without even
-the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
-PURPOSE.
-
-See W3C License
http://www.w3.org/Consortium/Legal/ for more details.
-
--->
-<!DOCTYPE test SYSTEM "dom1.dtd">
-<test
xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1"
name="HTMLSelectElement16">
-<metadata>
-<title>HTMLSelectElement16</title>
-<creator>Curt Arnold</creator>
-<description>
-Removes an option using HTMLSelectElement.remove.
-</description>
-<date qualifier="created">2004-03-18</date>
-<subject
resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-o...
-</metadata>
-<var name="nodeList" type="NodeList"/>
-<var name="testNode" type="Node"/>
-<var name="doc" type="Document"/>
-<var name="optLength" type="int"/>
-<var name="selected" type="int"/>
-<load var="doc" href="select"
willBeModified="true"/>
-<getElementsByTagName interface="Document" obj="doc"
var="nodeList" tagname='"select"'/>
-<assertSize collection="nodeList" size="3"
id="Asize"/>
-<item interface="NodeList" obj="nodeList" var="testNode"
index="0"/>
-<remove interface="HTMLSelectElement" obj="testNode"
index="0"/>
-<length interface="HTMLSelectElement" obj="testNode"
var="optLength"/>
-<assertEquals actual="optLength" expected="4"
id="optLength" ignoreCase="false"/>
-<selectedIndex interface="HTMLSelectElement" obj="testNode"
var="selected"/>
-<assertEquals actual="selected" expected="-1"
id="selected" ignoreCase="false"/>
-</test>
diff --git a/test/testcases/tests/level1/html/HTMLSelectElement17.xml
b/test/testcases/tests/level1/html/HTMLSelectElement17.xml
new file mode 100644
index 0000000..03549ff
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLSelectElement17.xml
@@ -0,0 +1,43 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, Institut National de
+Recherche en Informatique et en Automatique, Keio University). All
+Rights Reserved. This program is distributed under the W3C's Software
+Intellectual Property License. This program is distributed in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
+PURPOSE.
+
+See W3C License
http://www.w3.org/Consortium/Legal/ for more details.
+
+-->
+<!DOCTYPE test SYSTEM "dom1.dtd">
+<test
xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1"
name="HTMLSelectElement17">
+<metadata>
+<title>HTMLSelectElement17</title>
+<creator>Curt Arnold</creator>
+<description>
+Removes a non-existant option using HTMLSelectElement.remove.
+</description>
+<date qualifier="created">2004-03-18</date>
+<subject
resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-o...
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="doc" type="Document"/>
+<var name="optLength" type="int"/>
+<var name="selected" type="int"/>
+<load var="doc" href="select"
willBeModified="true"/>
+<getElementsByTagName interface="Document" obj="doc"
var="nodeList" tagname='"select"'/>
+<assertSize collection="nodeList" size="3"
id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode"
index="0"/>
+<remove interface="HTMLSelectElement" obj="testNode"
index="6"/>
+<length interface="HTMLSelectElement" obj="testNode"
var="optLength"/>
+<assertEquals actual="optLength" expected="5"
id="optLength" ignoreCase="false"/>
+<selectedIndex interface="HTMLSelectElement" obj="testNode"
var="selected"/>
+<assertEquals actual="selected" expected="0"
id="selected" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLSelectElement17.xml.kfail
b/test/testcases/tests/level1/html/HTMLSelectElement17.xml.kfail
deleted file mode 100644
index 03549ff..0000000
--- a/test/testcases/tests/level1/html/HTMLSelectElement17.xml.kfail
+++ /dev/null
@@ -1,43 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
-
-<!--
-
-Copyright (c) 2004 World Wide Web Consortium,
-(Massachusetts Institute of Technology, Institut National de
-Recherche en Informatique et en Automatique, Keio University). All
-Rights Reserved. This program is distributed under the W3C's Software
-Intellectual Property License. This program is distributed in the
-hope that it will be useful, but WITHOUT ANY WARRANTY; without even
-the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
-PURPOSE.
-
-See W3C License
http://www.w3.org/Consortium/Legal/ for more details.
-
--->
-<!DOCTYPE test SYSTEM "dom1.dtd">
-<test
xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1"
name="HTMLSelectElement17">
-<metadata>
-<title>HTMLSelectElement17</title>
-<creator>Curt Arnold</creator>
-<description>
-Removes a non-existant option using HTMLSelectElement.remove.
-</description>
-<date qualifier="created">2004-03-18</date>
-<subject
resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-o...
-</metadata>
-<var name="nodeList" type="NodeList"/>
-<var name="testNode" type="Node"/>
-<var name="doc" type="Document"/>
-<var name="optLength" type="int"/>
-<var name="selected" type="int"/>
-<load var="doc" href="select"
willBeModified="true"/>
-<getElementsByTagName interface="Document" obj="doc"
var="nodeList" tagname='"select"'/>
-<assertSize collection="nodeList" size="3"
id="Asize"/>
-<item interface="NodeList" obj="nodeList" var="testNode"
index="0"/>
-<remove interface="HTMLSelectElement" obj="testNode"
index="6"/>
-<length interface="HTMLSelectElement" obj="testNode"
var="optLength"/>
-<assertEquals actual="optLength" expected="5"
id="optLength" ignoreCase="false"/>
-<selectedIndex interface="HTMLSelectElement" obj="testNode"
var="selected"/>
-<assertEquals actual="selected" expected="0"
id="selected" ignoreCase="false"/>
-</test>
diff --git a/test/testcases/tests/level1/html/HTMLSelectElement18.xml
b/test/testcases/tests/level1/html/HTMLSelectElement18.xml
new file mode 100644
index 0000000..aff29d9
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLSelectElement18.xml
@@ -0,0 +1,57 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, Institut National de
+Recherche en Informatique et en Automatique, Keio University). All
+Rights Reserved. This program is distributed under the W3C's Software
+Intellectual Property License. This program is distributed in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
+PURPOSE.
+
+See W3C License
http://www.w3.org/Consortium/Legal/ for more details.
+
+-->
+<!DOCTYPE test SYSTEM "dom1.dtd">
+<test
xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1"
name="HTMLSelectElement18">
+<metadata>
+<title>HTMLSelectElement18</title>
+<creator>Curt Arnold</creator>
+<description>
+Add a new option at the end of an select using HTMLSelectElement.add.
+</description>
+<date qualifier="created">2004-03-18</date>
+<subject
resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-o...
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="doc" type="Document"/>
+<var name="optLength" type="int"/>
+<var name="selected" type="int"/>
+<var name="newOpt" type="Element"/>
+<var name="newOptText" type="Text"/>
+<var name="opt" type="Element"/>
+<var name="optText" type="Text"/>
+<var name="optValue" type="DOMString"/>
+<var name="retNode" type="Node"/>
+<var name="nullNode" type="Node" isNull="true"/>
+<load var="doc" href="select"
willBeModified="true"/>
+<getElementsByTagName interface="Document" obj="doc"
var="nodeList" tagname='"select"'/>
+<assertSize collection="nodeList" size="3"
id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode"
index="0"/>
+<createElement var="newOpt" obj="doc"
tagName='"option"'/>
+<createTextNode var="newOptText" obj="doc"
data='"EMP31415"'/>
+<appendChild var="retNode" obj="newOpt"
newChild="newOptText"/>
+<add interface="HTMLSelectElement" obj="testNode"
element="newOpt" before="nullNode"/>
+<length interface="HTMLSelectElement" obj="testNode"
var="optLength"/>
+<assertEquals actual="optLength" expected="6"
id="optLength" ignoreCase="false"/>
+<selectedIndex interface="HTMLSelectElement" obj="testNode"
var="selected"/>
+<assertEquals actual="selected" expected="0"
id="selected" ignoreCase="false"/>
+<lastChild var="opt" obj="testNode"
interface="Node"/>
+<firstChild var="optText" obj="opt"
interface="Node"/>
+<nodeValue var="optValue" obj="optText"/>
+<assertEquals actual="optValue" expected='"EMP31415"'
id="lastValue" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLSelectElement18.xml.kfail
b/test/testcases/tests/level1/html/HTMLSelectElement18.xml.kfail
deleted file mode 100644
index aff29d9..0000000
--- a/test/testcases/tests/level1/html/HTMLSelectElement18.xml.kfail
+++ /dev/null
@@ -1,57 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
-
-<!--
-
-Copyright (c) 2004 World Wide Web Consortium,
-(Massachusetts Institute of Technology, Institut National de
-Recherche en Informatique et en Automatique, Keio University). All
-Rights Reserved. This program is distributed under the W3C's Software
-Intellectual Property License. This program is distributed in the
-hope that it will be useful, but WITHOUT ANY WARRANTY; without even
-the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
-PURPOSE.
-
-See W3C License
http://www.w3.org/Consortium/Legal/ for more details.
-
--->
-<!DOCTYPE test SYSTEM "dom1.dtd">
-<test
xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1"
name="HTMLSelectElement18">
-<metadata>
-<title>HTMLSelectElement18</title>
-<creator>Curt Arnold</creator>
-<description>
-Add a new option at the end of an select using HTMLSelectElement.add.
-</description>
-<date qualifier="created">2004-03-18</date>
-<subject
resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-o...
-</metadata>
-<var name="nodeList" type="NodeList"/>
-<var name="testNode" type="Node"/>
-<var name="doc" type="Document"/>
-<var name="optLength" type="int"/>
-<var name="selected" type="int"/>
-<var name="newOpt" type="Element"/>
-<var name="newOptText" type="Text"/>
-<var name="opt" type="Element"/>
-<var name="optText" type="Text"/>
-<var name="optValue" type="DOMString"/>
-<var name="retNode" type="Node"/>
-<var name="nullNode" type="Node" isNull="true"/>
-<load var="doc" href="select"
willBeModified="true"/>
-<getElementsByTagName interface="Document" obj="doc"
var="nodeList" tagname='"select"'/>
-<assertSize collection="nodeList" size="3"
id="Asize"/>
-<item interface="NodeList" obj="nodeList" var="testNode"
index="0"/>
-<createElement var="newOpt" obj="doc"
tagName='"option"'/>
-<createTextNode var="newOptText" obj="doc"
data='"EMP31415"'/>
-<appendChild var="retNode" obj="newOpt"
newChild="newOptText"/>
-<add interface="HTMLSelectElement" obj="testNode"
element="newOpt" before="nullNode"/>
-<length interface="HTMLSelectElement" obj="testNode"
var="optLength"/>
-<assertEquals actual="optLength" expected="6"
id="optLength" ignoreCase="false"/>
-<selectedIndex interface="HTMLSelectElement" obj="testNode"
var="selected"/>
-<assertEquals actual="selected" expected="0"
id="selected" ignoreCase="false"/>
-<lastChild var="opt" obj="testNode"
interface="Node"/>
-<firstChild var="optText" obj="opt"
interface="Node"/>
-<nodeValue var="optValue" obj="optText"/>
-<assertEquals actual="optValue" expected='"EMP31415"'
id="lastValue" ignoreCase="false"/>
-</test>
diff --git a/test/testcases/tests/level1/html/HTMLSelectElement19.xml
b/test/testcases/tests/level1/html/HTMLSelectElement19.xml
new file mode 100644
index 0000000..5d06fe1
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLSelectElement19.xml
@@ -0,0 +1,61 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, Institut National de
+Recherche en Informatique et en Automatique, Keio University). All
+Rights Reserved. This program is distributed under the W3C's Software
+Intellectual Property License. This program is distributed in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
+PURPOSE.
+
+See W3C License
http://www.w3.org/Consortium/Legal/ for more details.
+
+-->
+<!DOCTYPE test SYSTEM "dom1.dtd">
+<test
xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1"
name="HTMLSelectElement19">
+<metadata>
+<title>HTMLSelectElement19</title>
+<creator>Curt Arnold</creator>
+<description>
+Add a new option before the selected node using HTMLSelectElement.add.
+</description>
+<date qualifier="created">2004-03-18</date>
+<subject
resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-o...
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="doc" type="Document"/>
+<var name="optLength" type="int"/>
+<var name="selected" type="int"/>
+<var name="newOpt" type="Element"/>
+<var name="newOptText" type="Text"/>
+<var name="opt" type="Node"/>
+<var name="optText" type="Text"/>
+<var name="optValue" type="DOMString"/>
+<var name="retNode" type="Node"/>
+<var name="options" type="HTMLCollection"/>
+<var name="selectedNode" type="Node"/>
+<load var="doc" href="select"
willBeModified="true"/>
+<getElementsByTagName interface="Document" obj="doc"
var="nodeList" tagname='"select"'/>
+<assertSize collection="nodeList" size="3"
id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode"
index="0"/>
+<createElement var="newOpt" obj="doc"
tagName='"option"'/>
+<createTextNode var="newOptText" obj="doc"
data='"EMP31415"'/>
+<appendChild var="retNode" obj="newOpt"
newChild="newOptText"/>
+<options var="options" obj="testNode"/>
+<item var="selectedNode" obj="options" index="0"
interface="HTMLCollection"/>
+<add interface="HTMLSelectElement" obj="testNode"
element="newOpt" before="selectedNode"/>
+<length interface="HTMLSelectElement" obj="testNode"
var="optLength"/>
+<assertEquals actual="optLength" expected="6"
id="optLength" ignoreCase="false"/>
+<selectedIndex interface="HTMLSelectElement" obj="testNode"
var="selected"/>
+<assertEquals actual="selected" expected="1"
id="selected" ignoreCase="false"/>
+<options var="options" obj="testNode"/>
+<item var="opt" obj="options" index="0"
interface="HTMLCollection"/>
+<firstChild var="optText" obj="opt"
interface="Node"/>
+<nodeValue var="optValue" obj="optText"/>
+<assertEquals actual="optValue" expected='"EMP31415"'
id="lastValue" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLSelectElement19.xml.kfail
b/test/testcases/tests/level1/html/HTMLSelectElement19.xml.kfail
deleted file mode 100644
index 5d06fe1..0000000
--- a/test/testcases/tests/level1/html/HTMLSelectElement19.xml.kfail
+++ /dev/null
@@ -1,61 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
-
-<!--
-
-Copyright (c) 2004 World Wide Web Consortium,
-(Massachusetts Institute of Technology, Institut National de
-Recherche en Informatique et en Automatique, Keio University). All
-Rights Reserved. This program is distributed under the W3C's Software
-Intellectual Property License. This program is distributed in the
-hope that it will be useful, but WITHOUT ANY WARRANTY; without even
-the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
-PURPOSE.
-
-See W3C License
http://www.w3.org/Consortium/Legal/ for more details.
-
--->
-<!DOCTYPE test SYSTEM "dom1.dtd">
-<test
xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1"
name="HTMLSelectElement19">
-<metadata>
-<title>HTMLSelectElement19</title>
-<creator>Curt Arnold</creator>
-<description>
-Add a new option before the selected node using HTMLSelectElement.add.
-</description>
-<date qualifier="created">2004-03-18</date>
-<subject
resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-o...
-</metadata>
-<var name="nodeList" type="NodeList"/>
-<var name="testNode" type="Node"/>
-<var name="doc" type="Document"/>
-<var name="optLength" type="int"/>
-<var name="selected" type="int"/>
-<var name="newOpt" type="Element"/>
-<var name="newOptText" type="Text"/>
-<var name="opt" type="Node"/>
-<var name="optText" type="Text"/>
-<var name="optValue" type="DOMString"/>
-<var name="retNode" type="Node"/>
-<var name="options" type="HTMLCollection"/>
-<var name="selectedNode" type="Node"/>
-<load var="doc" href="select"
willBeModified="true"/>
-<getElementsByTagName interface="Document" obj="doc"
var="nodeList" tagname='"select"'/>
-<assertSize collection="nodeList" size="3"
id="Asize"/>
-<item interface="NodeList" obj="nodeList" var="testNode"
index="0"/>
-<createElement var="newOpt" obj="doc"
tagName='"option"'/>
-<createTextNode var="newOptText" obj="doc"
data='"EMP31415"'/>
-<appendChild var="retNode" obj="newOpt"
newChild="newOptText"/>
-<options var="options" obj="testNode"/>
-<item var="selectedNode" obj="options" index="0"
interface="HTMLCollection"/>
-<add interface="HTMLSelectElement" obj="testNode"
element="newOpt" before="selectedNode"/>
-<length interface="HTMLSelectElement" obj="testNode"
var="optLength"/>
-<assertEquals actual="optLength" expected="6"
id="optLength" ignoreCase="false"/>
-<selectedIndex interface="HTMLSelectElement" obj="testNode"
var="selected"/>
-<assertEquals actual="selected" expected="1"
id="selected" ignoreCase="false"/>
-<options var="options" obj="testNode"/>
-<item var="opt" obj="options" index="0"
interface="HTMLCollection"/>
-<firstChild var="optText" obj="opt"
interface="Node"/>
-<nodeValue var="optValue" obj="optText"/>
-<assertEquals actual="optValue" expected='"EMP31415"'
id="lastValue" ignoreCase="false"/>
-</test>
diff --git a/test/testcases/tests/level1/html/HTMLTableElement21.xml
b/test/testcases/tests/level1/html/HTMLTableElement21.xml
new file mode 100644
index 0000000..b50a007
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLTableElement21.xml
@@ -0,0 +1,62 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xml" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 World Wide Web Consortium,
+(Massachusetts Institute of Technology, Institut National de
+Recherche en Informatique et en Automatique, Keio University). All
+Rights Reserved. This program is distributed under the W3C's Software
+Intellectual Property License. This program is distributed in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
+PURPOSE.
+
+See W3C License
http://www.w3.org/Consortium/Legal/ for more details.
+
+-->
+<!DOCTYPE test SYSTEM "dom1.dtd">
+<test
xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1"
name="HTMLTableElement21">
+<metadata>
+<title>HTMLTableElement21</title>
+<creator>NIST</creator>
+<description>
+ The deleteTHead() method deletes the header from the table.
+
+ The deleteTHead() method will delete the THEAD Element from the
+ second TABLE element. First make sure that the THEAD element exists
+ and then count the number of rows. After the THEAD element is
+ deleted there should be one less row.
+</description>
+<contributor>Rick Rivello</contributor>
+<date qualifier="created">2002-05-02</date>
+<subject
resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-o...
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="rowsnodeList" type="HTMLCollection"/>
+<var name="testNode" type="Node"/>
+<var name="vsection1" type="HTMLTableSectionElement" />
+<var name="vsection2" type="HTMLTableSectionElement" />
+<var name="vrows" type="int"/>
+<var name="doc" type="Document"/>
+<var name="result" type="List"/>
+<var name="expectedResult" type="List">
+<member>4</member>
+<member>3</member>
+</var>
+<load var="doc" href="table" willBeModified="true"/>
+<getElementsByTagName interface="Document" obj="doc"
var="nodeList" tagname='"table"'/>
+<assertSize collection="nodeList" size="3"
id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode"
index="1"/>
+<tHead interface="HTMLTableElement" obj="testNode"
var="vsection1"/>
+<assertNotNull actual="vsection1" id="vsection1Id"/>
+<rows interface="HTMLTableElement" obj="testNode"
var="rowsnodeList"/>
+<length interface="HTMLCollection" obj="rowsnodeList"
var="vrows"/>
+<append collection="result" item="vrows"/>
+<deleteTHead obj="testNode" interface="HTMLTableElement"/>
+<tHead interface="HTMLTableElement" obj="testNode"
var="vsection2"/>
+<rows interface="HTMLTableElement" obj="testNode"
var="rowsnodeList"/>
+<length interface="HTMLCollection" obj="rowsnodeList"
var="vrows"/>
+<append collection="result" item="vrows"/>
+<assertEquals actual="result" expected="expectedResult"
id="rowsLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLTableElement21.xml.kfail
b/test/testcases/tests/level1/html/HTMLTableElement21.xml.kfail
deleted file mode 100644
index b50a007..0000000
--- a/test/testcases/tests/level1/html/HTMLTableElement21.xml.kfail
+++ /dev/null
@@ -1,62 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<?xml-stylesheet href="test-to-html.xml" type="text/xml"?>
-
-<!--
-
-Copyright (c) 2001 World Wide Web Consortium,
-(Massachusetts Institute of Technology, Institut National de
-Recherche en Informatique et en Automatique, Keio University). All
-Rights Reserved. This program is distributed under the W3C's Software
-Intellectual Property License. This program is distributed in the
-hope that it will be useful, but WITHOUT ANY WARRANTY; without even
-the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
-PURPOSE.
-
-See W3C License
http://www.w3.org/Consortium/Legal/ for more details.
-
--->
-<!DOCTYPE test SYSTEM "dom1.dtd">
-<test
xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1"
name="HTMLTableElement21">
-<metadata>
-<title>HTMLTableElement21</title>
-<creator>NIST</creator>
-<description>
- The deleteTHead() method deletes the header from the table.
-
- The deleteTHead() method will delete the THEAD Element from the
- second TABLE element. First make sure that the THEAD element exists
- and then count the number of rows. After the THEAD element is
- deleted there should be one less row.
-</description>
-<contributor>Rick Rivello</contributor>
-<date qualifier="created">2002-05-02</date>
-<subject
resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-o...
-</metadata>
-<var name="nodeList" type="NodeList"/>
-<var name="rowsnodeList" type="HTMLCollection"/>
-<var name="testNode" type="Node"/>
-<var name="vsection1" type="HTMLTableSectionElement" />
-<var name="vsection2" type="HTMLTableSectionElement" />
-<var name="vrows" type="int"/>
-<var name="doc" type="Document"/>
-<var name="result" type="List"/>
-<var name="expectedResult" type="List">
-<member>4</member>
-<member>3</member>
-</var>
-<load var="doc" href="table" willBeModified="true"/>
-<getElementsByTagName interface="Document" obj="doc"
var="nodeList" tagname='"table"'/>
-<assertSize collection="nodeList" size="3"
id="Asize"/>
-<item interface="NodeList" obj="nodeList" var="testNode"
index="1"/>
-<tHead interface="HTMLTableElement" obj="testNode"
var="vsection1"/>
-<assertNotNull actual="vsection1" id="vsection1Id"/>
-<rows interface="HTMLTableElement" obj="testNode"
var="rowsnodeList"/>
-<length interface="HTMLCollection" obj="rowsnodeList"
var="vrows"/>
-<append collection="result" item="vrows"/>
-<deleteTHead obj="testNode" interface="HTMLTableElement"/>
-<tHead interface="HTMLTableElement" obj="testNode"
var="vsection2"/>
-<rows interface="HTMLTableElement" obj="testNode"
var="rowsnodeList"/>
-<length interface="HTMLCollection" obj="rowsnodeList"
var="vrows"/>
-<append collection="result" item="vrows"/>
-<assertEquals actual="result" expected="expectedResult"
id="rowsLink" ignoreCase="false"/>
-</test>
diff --git a/test/testcases/tests/level1/html/HTMLTableElement24.xml
b/test/testcases/tests/level1/html/HTMLTableElement24.xml
new file mode 100644
index 0000000..58af66e
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLTableElement24.xml
@@ -0,0 +1,62 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xml" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 World Wide Web Consortium,
+(Massachusetts Institute of Technology, Institut National de
+Recherche en Informatique et en Automatique, Keio University). All
+Rights Reserved. This program is distributed under the W3C's Software
+Intellectual Property License. This program is distributed in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
+PURPOSE.
+
+See W3C License
http://www.w3.org/Consortium/Legal/ for more details.
+
+-->
+<!DOCTYPE test SYSTEM "dom1.dtd">
+<test
xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1"
name="HTMLTableElement24">
+<metadata>
+<title>HTMLTableElement24</title>
+<creator>NIST</creator>
+<description>
+ The deleteTFoot() method deletes the footer from the table.
+
+ The deleteTFoot() method will delete the TFOOT Element from the
+ second TABLE element. First make sure that the TFOOT element exists
+ and then count the number of rows. After the TFOOT element is
+ deleted there should be one less row.
+</description>
+<contributor>Rick Rivello</contributor>
+<date qualifier="created">2002-05-02</date>
+<subject
resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-o...
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="rowsnodeList" type="HTMLCollection"/>
+<var name="testNode" type="Node"/>
+<var name="vsection1" type="HTMLTableSectionElement" />
+<var name="vsection2" type="HTMLTableSectionElement" />
+<var name="vrows" type="int"/>
+<var name="doc" type="Document"/>
+<var name="result" type="List"/>
+<var name="expectedResult" type="List">
+<member>4</member>
+<member>3</member>
+</var>
+<load var="doc" href="table" willBeModified="true"/>
+<getElementsByTagName interface="Document" obj="doc"
var="nodeList" tagname='"table"'/>
+<assertSize collection="nodeList" size="3"
id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode"
index="1"/>
+<tFoot interface="HTMLTableElement" obj="testNode"
var="vsection1"/>
+<assertNotNull actual="vsection1" id="vsection1Id"/>
+<rows interface="HTMLTableElement" obj="testNode"
var="rowsnodeList"/>
+<length interface="HTMLCollection" obj="rowsnodeList"
var="vrows"/>
+<append collection="result" item="vrows"/>
+<deleteTFoot obj="testNode" interface="HTMLTableElement"/>
+<tFoot interface="HTMLTableElement" obj="testNode"
var="vsection2"/>
+<rows interface="HTMLTableElement" obj="testNode"
var="rowsnodeList"/>
+<length interface="HTMLCollection" obj="rowsnodeList"
var="vrows"/>
+<append collection="result" item="vrows"/>
+<assertEquals actual="result" expected="expectedResult"
id="rowsLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLTableElement24.xml.kfail
b/test/testcases/tests/level1/html/HTMLTableElement24.xml.kfail
deleted file mode 100644
index 58af66e..0000000
--- a/test/testcases/tests/level1/html/HTMLTableElement24.xml.kfail
+++ /dev/null
@@ -1,62 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<?xml-stylesheet href="test-to-html.xml" type="text/xml"?>
-
-<!--
-
-Copyright (c) 2001 World Wide Web Consortium,
-(Massachusetts Institute of Technology, Institut National de
-Recherche en Informatique et en Automatique, Keio University). All
-Rights Reserved. This program is distributed under the W3C's Software
-Intellectual Property License. This program is distributed in the
-hope that it will be useful, but WITHOUT ANY WARRANTY; without even
-the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
-PURPOSE.
-
-See W3C License
http://www.w3.org/Consortium/Legal/ for more details.
-
--->
-<!DOCTYPE test SYSTEM "dom1.dtd">
-<test
xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1"
name="HTMLTableElement24">
-<metadata>
-<title>HTMLTableElement24</title>
-<creator>NIST</creator>
-<description>
- The deleteTFoot() method deletes the footer from the table.
-
- The deleteTFoot() method will delete the TFOOT Element from the
- second TABLE element. First make sure that the TFOOT element exists
- and then count the number of rows. After the TFOOT element is
- deleted there should be one less row.
-</description>
-<contributor>Rick Rivello</contributor>
-<date qualifier="created">2002-05-02</date>
-<subject
resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-o...
-</metadata>
-<var name="nodeList" type="NodeList"/>
-<var name="rowsnodeList" type="HTMLCollection"/>
-<var name="testNode" type="Node"/>
-<var name="vsection1" type="HTMLTableSectionElement" />
-<var name="vsection2" type="HTMLTableSectionElement" />
-<var name="vrows" type="int"/>
-<var name="doc" type="Document"/>
-<var name="result" type="List"/>
-<var name="expectedResult" type="List">
-<member>4</member>
-<member>3</member>
-</var>
-<load var="doc" href="table" willBeModified="true"/>
-<getElementsByTagName interface="Document" obj="doc"
var="nodeList" tagname='"table"'/>
-<assertSize collection="nodeList" size="3"
id="Asize"/>
-<item interface="NodeList" obj="nodeList" var="testNode"
index="1"/>
-<tFoot interface="HTMLTableElement" obj="testNode"
var="vsection1"/>
-<assertNotNull actual="vsection1" id="vsection1Id"/>
-<rows interface="HTMLTableElement" obj="testNode"
var="rowsnodeList"/>
-<length interface="HTMLCollection" obj="rowsnodeList"
var="vrows"/>
-<append collection="result" item="vrows"/>
-<deleteTFoot obj="testNode" interface="HTMLTableElement"/>
-<tFoot interface="HTMLTableElement" obj="testNode"
var="vsection2"/>
-<rows interface="HTMLTableElement" obj="testNode"
var="rowsnodeList"/>
-<length interface="HTMLCollection" obj="rowsnodeList"
var="vrows"/>
-<append collection="result" item="vrows"/>
-<assertEquals actual="result" expected="expectedResult"
id="rowsLink" ignoreCase="false"/>
-</test>
diff --git a/test/testcases/tests/level1/html/HTMLTableRowElement11.xml
b/test/testcases/tests/level1/html/HTMLTableRowElement11.xml
new file mode 100644
index 0000000..f284090
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLTableRowElement11.xml
@@ -0,0 +1,67 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xml" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 World Wide Web Consortium,
+(Massachusetts Institute of Technology, Institut National de
+Recherche en Informatique et en Automatique, Keio University). All
+Rights Reserved. This program is distributed under the W3C's Software
+Intellectual Property License. This program is distributed in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
+PURPOSE.
+
+See W3C License
http://www.w3.org/Consortium/Legal/ for more details.
+
+-->
+<!DOCTYPE test SYSTEM "dom1.dtd">
+<test
xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1"
name="HTMLTableRowElement11">
+<metadata>
+<title>HTMLTableRowElement11</title>
+<creator>NIST</creator>
+<description>
+ The insertCell() method inserts an empty TD cell into this row.
+
+
+ Retrieve the fourth TR element and examine the value of
+ the cells length attribute which should be set to six.
+ Check the value of the first TD element. Invoke the
+ insertCell() which will create an empty TD cell at the
+ zero index position. Check the value of the newly created
+ cell and make sure it is null and also the numbers of cells
+ should now be seven.
+</description>
+<contributor>Rick Rivello</contributor>
+<date qualifier="created">2002-05-06</date>
+<subject
resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-o...
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="cellsnodeList" type="HTMLCollection"/>
+<var name="testNode" type="Node"/>
+<var name="trNode" type="Node"/>
+<var name="cellNode" type="Node"/>
+<var name="value" type="DOMString"/>
+<var name="newCell" type="HTMLElement"/>
+<var name="vcells" type="int" />
+<var name="doc" type="Document"/>
+<load var="doc" href="tablerow"
willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc"
var="nodeList" tagname='"tr"'/>
+<assertSize collection="nodeList" size="5"
id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode"
index="3"/>
+<cells interface="HTMLTableRowElement" obj="testNode"
var="cellsnodeList"/>
+<length interface="HTMLCollection" obj="cellsnodeList"
var="vcells"/>
+<assertEquals actual="vcells" expected="6"
id="cellsLink1" ignoreCase="false"/>
+<item interface="HTMLCollection" obj="cellsnodeList"
var="trNode" index="0"/>
+<firstChild interface="Node" obj="trNode"
var="cellNode"/>
+<nodeValue obj="cellNode" var="value"/>
+<assertEquals actual="value" expected='"EMP0001"'
id="value1Link" ignoreCase="false"/>
+<insertCell interface="HTMLTableRowElement" obj="testNode"
var="newCell" index="0"/>
+<item interface="NodeList" obj="nodeList" var="testNode"
index="3"/>
+<cells interface="HTMLTableRowElement" obj="testNode"
var="cellsnodeList"/>
+<length interface="HTMLCollection" obj="cellsnodeList"
var="vcells"/>
+<assertEquals actual="vcells" expected="7"
id="cellsLink2" ignoreCase="false"/>
+<item interface="HTMLCollection" obj="cellsnodeList"
var="trNode" index="0"/>
+<firstChild interface="Node" obj="trNode"
var="cellNode"/>
+<assertNull actual="cellNode" id="value2Link"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLTableRowElement11.xml.kfail
b/test/testcases/tests/level1/html/HTMLTableRowElement11.xml.kfail
deleted file mode 100644
index f284090..0000000
--- a/test/testcases/tests/level1/html/HTMLTableRowElement11.xml.kfail
+++ /dev/null
@@ -1,67 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<?xml-stylesheet href="test-to-html.xml" type="text/xml"?>
-
-<!--
-
-Copyright (c) 2001 World Wide Web Consortium,
-(Massachusetts Institute of Technology, Institut National de
-Recherche en Informatique et en Automatique, Keio University). All
-Rights Reserved. This program is distributed under the W3C's Software
-Intellectual Property License. This program is distributed in the
-hope that it will be useful, but WITHOUT ANY WARRANTY; without even
-the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
-PURPOSE.
-
-See W3C License
http://www.w3.org/Consortium/Legal/ for more details.
-
--->
-<!DOCTYPE test SYSTEM "dom1.dtd">
-<test
xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1"
name="HTMLTableRowElement11">
-<metadata>
-<title>HTMLTableRowElement11</title>
-<creator>NIST</creator>
-<description>
- The insertCell() method inserts an empty TD cell into this row.
-
-
- Retrieve the fourth TR element and examine the value of
- the cells length attribute which should be set to six.
- Check the value of the first TD element. Invoke the
- insertCell() which will create an empty TD cell at the
- zero index position. Check the value of the newly created
- cell and make sure it is null and also the numbers of cells
- should now be seven.
-</description>
-<contributor>Rick Rivello</contributor>
-<date qualifier="created">2002-05-06</date>
-<subject
resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-o...
-</metadata>
-<var name="nodeList" type="NodeList"/>
-<var name="cellsnodeList" type="HTMLCollection"/>
-<var name="testNode" type="Node"/>
-<var name="trNode" type="Node"/>
-<var name="cellNode" type="Node"/>
-<var name="value" type="DOMString"/>
-<var name="newCell" type="HTMLElement"/>
-<var name="vcells" type="int" />
-<var name="doc" type="Document"/>
-<load var="doc" href="tablerow"
willBeModified="false"/>
-<getElementsByTagName interface="Document" obj="doc"
var="nodeList" tagname='"tr"'/>
-<assertSize collection="nodeList" size="5"
id="Asize"/>
-<item interface="NodeList" obj="nodeList" var="testNode"
index="3"/>
-<cells interface="HTMLTableRowElement" obj="testNode"
var="cellsnodeList"/>
-<length interface="HTMLCollection" obj="cellsnodeList"
var="vcells"/>
-<assertEquals actual="vcells" expected="6"
id="cellsLink1" ignoreCase="false"/>
-<item interface="HTMLCollection" obj="cellsnodeList"
var="trNode" index="0"/>
-<firstChild interface="Node" obj="trNode"
var="cellNode"/>
-<nodeValue obj="cellNode" var="value"/>
-<assertEquals actual="value" expected='"EMP0001"'
id="value1Link" ignoreCase="false"/>
-<insertCell interface="HTMLTableRowElement" obj="testNode"
var="newCell" index="0"/>
-<item interface="NodeList" obj="nodeList" var="testNode"
index="3"/>
-<cells interface="HTMLTableRowElement" obj="testNode"
var="cellsnodeList"/>
-<length interface="HTMLCollection" obj="cellsnodeList"
var="vcells"/>
-<assertEquals actual="vcells" expected="7"
id="cellsLink2" ignoreCase="false"/>
-<item interface="HTMLCollection" obj="cellsnodeList"
var="trNode" index="0"/>
-<firstChild interface="Node" obj="trNode"
var="cellNode"/>
-<assertNull actual="cellNode" id="value2Link"/>
-</test>
diff --git a/test/testcases/tests/level1/html/HTMLTableRowElement12.xml
b/test/testcases/tests/level1/html/HTMLTableRowElement12.xml
new file mode 100644
index 0000000..121954c
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLTableRowElement12.xml
@@ -0,0 +1,66 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xml" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 World Wide Web Consortium,
+(Massachusetts Institute of Technology, Institut National de
+Recherche en Informatique et en Automatique, Keio University). All
+Rights Reserved. This program is distributed under the W3C's Software
+Intellectual Property License. This program is distributed in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
+PURPOSE.
+
+See W3C License
http://www.w3.org/Consortium/Legal/ for more details.
+
+-->
+<!DOCTYPE test SYSTEM "dom1.dtd">
+<test
xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1"
name="HTMLTableRowElement12">
+<metadata>
+<title>HTMLTableRowElement12</title>
+<creator>NIST</creator>
+<description>
+ The insertCell() method inserts an empty TD cell into this row.
+
+
+ Retrieve the fourth TR element and examine the value of
+ the cells length attribute which should be set to six.
+ Check the value of the last TD element. Invoke the
+ insertCell() which will append the empty cell to the end of the list.
+ Check the value of the newly created cell and make sure it is null
+ and also the numbers of cells should now be seven.
+</description>
+<contributor>Rick Rivello</contributor>
+<date qualifier="created">2002-05-06</date>
+<subject
resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-o...
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="cellsnodeList" type="HTMLCollection"/>
+<var name="testNode" type="Node"/>
+<var name="trNode" type="Node"/>
+<var name="cellNode" type="Node"/>
+<var name="value" type="DOMString"/>
+<var name="newCell" type="HTMLElement"/>
+<var name="vcells" type="int" />
+<var name="doc" type="Document"/>
+<load var="doc" href="tablerow"
willBeModified="true"/>
+<getElementsByTagName interface="Document" obj="doc"
var="nodeList" tagname='"tr"'/>
+<assertSize collection="nodeList" size="5"
id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode"
index="3"/>
+<cells interface="HTMLTableRowElement" obj="testNode"
var="cellsnodeList"/>
+<length interface="HTMLCollection" obj="cellsnodeList"
var="vcells"/>
+<assertEquals actual="vcells" expected="6"
id="cellsLink1" ignoreCase="false"/>
+<item interface="HTMLCollection" obj="cellsnodeList"
var="trNode" index="5"/>
+<firstChild interface="Node" obj="trNode"
var="cellNode"/>
+<nodeValue obj="cellNode" var="value"/>
+<assertEquals actual="value" expected='"1230 North Ave. Dallas,
Texas 98551"' id="value1Link" ignoreCase="false"/>
+<insertCell interface="HTMLTableRowElement" obj="testNode"
var="newCell" index="6"/>
+<item interface="NodeList" obj="nodeList" var="testNode"
index="3"/>
+<cells interface="HTMLTableRowElement" obj="testNode"
var="cellsnodeList"/>
+<length interface="HTMLCollection" obj="cellsnodeList"
var="vcells"/>
+<assertEquals actual="vcells" expected="7"
id="cellsLink2" ignoreCase="false"/>
+<item interface="HTMLCollection" obj="cellsnodeList"
var="trNode" index="6"/>
+<firstChild interface="Node" obj="trNode"
var="cellNode"/>
+<assertNull actual="cellNode" id="value2Link"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLTableRowElement12.xml.kfail
b/test/testcases/tests/level1/html/HTMLTableRowElement12.xml.kfail
deleted file mode 100644
index 121954c..0000000
--- a/test/testcases/tests/level1/html/HTMLTableRowElement12.xml.kfail
+++ /dev/null
@@ -1,66 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<?xml-stylesheet href="test-to-html.xml" type="text/xml"?>
-
-<!--
-
-Copyright (c) 2001 World Wide Web Consortium,
-(Massachusetts Institute of Technology, Institut National de
-Recherche en Informatique et en Automatique, Keio University). All
-Rights Reserved. This program is distributed under the W3C's Software
-Intellectual Property License. This program is distributed in the
-hope that it will be useful, but WITHOUT ANY WARRANTY; without even
-the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
-PURPOSE.
-
-See W3C License
http://www.w3.org/Consortium/Legal/ for more details.
-
--->
-<!DOCTYPE test SYSTEM "dom1.dtd">
-<test
xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1"
name="HTMLTableRowElement12">
-<metadata>
-<title>HTMLTableRowElement12</title>
-<creator>NIST</creator>
-<description>
- The insertCell() method inserts an empty TD cell into this row.
-
-
- Retrieve the fourth TR element and examine the value of
- the cells length attribute which should be set to six.
- Check the value of the last TD element. Invoke the
- insertCell() which will append the empty cell to the end of the list.
- Check the value of the newly created cell and make sure it is null
- and also the numbers of cells should now be seven.
-</description>
-<contributor>Rick Rivello</contributor>
-<date qualifier="created">2002-05-06</date>
-<subject
resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-o...
-</metadata>
-<var name="nodeList" type="NodeList"/>
-<var name="cellsnodeList" type="HTMLCollection"/>
-<var name="testNode" type="Node"/>
-<var name="trNode" type="Node"/>
-<var name="cellNode" type="Node"/>
-<var name="value" type="DOMString"/>
-<var name="newCell" type="HTMLElement"/>
-<var name="vcells" type="int" />
-<var name="doc" type="Document"/>
-<load var="doc" href="tablerow"
willBeModified="true"/>
-<getElementsByTagName interface="Document" obj="doc"
var="nodeList" tagname='"tr"'/>
-<assertSize collection="nodeList" size="5"
id="Asize"/>
-<item interface="NodeList" obj="nodeList" var="testNode"
index="3"/>
-<cells interface="HTMLTableRowElement" obj="testNode"
var="cellsnodeList"/>
-<length interface="HTMLCollection" obj="cellsnodeList"
var="vcells"/>
-<assertEquals actual="vcells" expected="6"
id="cellsLink1" ignoreCase="false"/>
-<item interface="HTMLCollection" obj="cellsnodeList"
var="trNode" index="5"/>
-<firstChild interface="Node" obj="trNode"
var="cellNode"/>
-<nodeValue obj="cellNode" var="value"/>
-<assertEquals actual="value" expected='"1230 North Ave. Dallas,
Texas 98551"' id="value1Link" ignoreCase="false"/>
-<insertCell interface="HTMLTableRowElement" obj="testNode"
var="newCell" index="6"/>
-<item interface="NodeList" obj="nodeList" var="testNode"
index="3"/>
-<cells interface="HTMLTableRowElement" obj="testNode"
var="cellsnodeList"/>
-<length interface="HTMLCollection" obj="cellsnodeList"
var="vcells"/>
-<assertEquals actual="vcells" expected="7"
id="cellsLink2" ignoreCase="false"/>
-<item interface="HTMLCollection" obj="cellsnodeList"
var="trNode" index="6"/>
-<firstChild interface="Node" obj="trNode"
var="cellNode"/>
-<assertNull actual="cellNode" id="value2Link"/>
-</test>
diff --git a/test/testcases/tests/level1/html/HTMLTableRowElement13.xml
b/test/testcases/tests/level1/html/HTMLTableRowElement13.xml
new file mode 100644
index 0000000..a90f596
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLTableRowElement13.xml
@@ -0,0 +1,66 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xml" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 World Wide Web Consortium,
+(Massachusetts Institute of Technology, Institut National de
+Recherche en Informatique et en Automatique, Keio University). All
+Rights Reserved. This program is distributed under the W3C's Software
+Intellectual Property License. This program is distributed in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
+PURPOSE.
+
+See W3C License
http://www.w3.org/Consortium/Legal/ for more details.
+
+-->
+<!DOCTYPE test SYSTEM "dom1.dtd">
+<test
xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1"
name="HTMLTableRowElement13">
+<metadata>
+<title>HTMLTableRowElement13</title>
+<creator>NIST</creator>
+<description>
+ The deleteCell() method deletes a cell from the current row.
+
+
+ Retrieve the fourth TR element and examine the value of
+ the cells length attribute which should be set to six.
+ Check the value of the first TD element. Invoke the
+ deleteCell() method which will delete a cell from the current row.
+ Check the value of the cell at the zero index and also check
+ the number of cells which should now be five.
+</description>
+<contributor>Rick Rivello</contributor>
+<date qualifier="created">2002-05-06</date>
+<subject
resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-o...
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="cellsnodeList" type="HTMLCollection"/>
+<var name="testNode" type="Node"/>
+<var name="trNode" type="Node"/>
+<var name="cellNode" type="Node"/>
+<var name="value" type="DOMString"/>
+<var name="vcells" type="int" />
+<var name="doc" type="Document"/>
+<load var="doc" href="tablerow"
willBeModified="true"/>
+<getElementsByTagName interface="Document" obj="doc"
var="nodeList" tagname='"tr"'/>
+<assertSize collection="nodeList" size="5"
id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode"
index="3"/>
+<cells interface="HTMLTableRowElement" obj="testNode"
var="cellsnodeList"/>
+<length interface="HTMLCollection" obj="cellsnodeList"
var="vcells"/>
+<assertEquals actual="vcells" expected="6"
id="cellsLink1" ignoreCase="false"/>
+<item interface="HTMLCollection" obj="cellsnodeList"
var="trNode" index="0"/>
+<firstChild interface="Node" obj="trNode"
var="cellNode"/>
+<nodeValue obj="cellNode" var="value"/>
+<assertEquals actual="value" expected='"EMP0001"'
id="value1Link" ignoreCase="false"/>
+<deleteCell interface="HTMLTableRowElement" obj="testNode"
index="0"/>
+<item interface="NodeList" obj="nodeList" var="testNode"
index="3"/>
+<cells interface="HTMLTableRowElement" obj="testNode"
var="cellsnodeList"/>
+<length interface="HTMLCollection" obj="cellsnodeList"
var="vcells"/>
+<assertEquals actual="vcells" expected="5"
id="cellsLink2" ignoreCase="false"/>
+<item interface="HTMLCollection" obj="cellsnodeList"
var="trNode" index="0"/>
+<firstChild interface="Node" obj="trNode"
var="cellNode"/>
+<nodeValue obj="cellNode" var="value"/>
+<assertEquals actual="value" expected='"Margaret Martin"'
id="value2Link" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLTableRowElement13.xml.kfail
b/test/testcases/tests/level1/html/HTMLTableRowElement13.xml.kfail
deleted file mode 100644
index a90f596..0000000
--- a/test/testcases/tests/level1/html/HTMLTableRowElement13.xml.kfail
+++ /dev/null
@@ -1,66 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<?xml-stylesheet href="test-to-html.xml" type="text/xml"?>
-
-<!--
-
-Copyright (c) 2001 World Wide Web Consortium,
-(Massachusetts Institute of Technology, Institut National de
-Recherche en Informatique et en Automatique, Keio University). All
-Rights Reserved. This program is distributed under the W3C's Software
-Intellectual Property License. This program is distributed in the
-hope that it will be useful, but WITHOUT ANY WARRANTY; without even
-the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
-PURPOSE.
-
-See W3C License
http://www.w3.org/Consortium/Legal/ for more details.
-
--->
-<!DOCTYPE test SYSTEM "dom1.dtd">
-<test
xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1"
name="HTMLTableRowElement13">
-<metadata>
-<title>HTMLTableRowElement13</title>
-<creator>NIST</creator>
-<description>
- The deleteCell() method deletes a cell from the current row.
-
-
- Retrieve the fourth TR element and examine the value of
- the cells length attribute which should be set to six.
- Check the value of the first TD element. Invoke the
- deleteCell() method which will delete a cell from the current row.
- Check the value of the cell at the zero index and also check
- the number of cells which should now be five.
-</description>
-<contributor>Rick Rivello</contributor>
-<date qualifier="created">2002-05-06</date>
-<subject
resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-o...
-</metadata>
-<var name="nodeList" type="NodeList"/>
-<var name="cellsnodeList" type="HTMLCollection"/>
-<var name="testNode" type="Node"/>
-<var name="trNode" type="Node"/>
-<var name="cellNode" type="Node"/>
-<var name="value" type="DOMString"/>
-<var name="vcells" type="int" />
-<var name="doc" type="Document"/>
-<load var="doc" href="tablerow"
willBeModified="true"/>
-<getElementsByTagName interface="Document" obj="doc"
var="nodeList" tagname='"tr"'/>
-<assertSize collection="nodeList" size="5"
id="Asize"/>
-<item interface="NodeList" obj="nodeList" var="testNode"
index="3"/>
-<cells interface="HTMLTableRowElement" obj="testNode"
var="cellsnodeList"/>
-<length interface="HTMLCollection" obj="cellsnodeList"
var="vcells"/>
-<assertEquals actual="vcells" expected="6"
id="cellsLink1" ignoreCase="false"/>
-<item interface="HTMLCollection" obj="cellsnodeList"
var="trNode" index="0"/>
-<firstChild interface="Node" obj="trNode"
var="cellNode"/>
-<nodeValue obj="cellNode" var="value"/>
-<assertEquals actual="value" expected='"EMP0001"'
id="value1Link" ignoreCase="false"/>
-<deleteCell interface="HTMLTableRowElement" obj="testNode"
index="0"/>
-<item interface="NodeList" obj="nodeList" var="testNode"
index="3"/>
-<cells interface="HTMLTableRowElement" obj="testNode"
var="cellsnodeList"/>
-<length interface="HTMLCollection" obj="cellsnodeList"
var="vcells"/>
-<assertEquals actual="vcells" expected="5"
id="cellsLink2" ignoreCase="false"/>
-<item interface="HTMLCollection" obj="cellsnodeList"
var="trNode" index="0"/>
-<firstChild interface="Node" obj="trNode"
var="cellNode"/>
-<nodeValue obj="cellNode" var="value"/>
-<assertEquals actual="value" expected='"Margaret Martin"'
id="value2Link" ignoreCase="false"/>
-</test>
diff --git a/test/testcases/tests/level1/html/HTMLTableRowElement14.xml
b/test/testcases/tests/level1/html/HTMLTableRowElement14.xml
new file mode 100644
index 0000000..27af8e2
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLTableRowElement14.xml
@@ -0,0 +1,66 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xml" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 World Wide Web Consortium,
+(Massachusetts Institute of Technology, Institut National de
+Recherche en Informatique et en Automatique, Keio University). All
+Rights Reserved. This program is distributed under the W3C's Software
+Intellectual Property License. This program is distributed in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
+PURPOSE.
+
+See W3C License
http://www.w3.org/Consortium/Legal/ for more details.
+
+-->
+<!DOCTYPE test SYSTEM "dom1.dtd">
+<test
xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1"
name="HTMLTableRowElement14">
+<metadata>
+<title>HTMLTableRowElement14</title>
+<creator>NIST</creator>
+<description>
+ The deleteCell() method deletes a cell from the current row.
+
+
+ Retrieve the fourth TR element and examine the value of
+ the cells length attribute which should be set to six.
+ Check the value of the third(index 2) TD element. Invoke the
+ deleteCell() method which will delete a cell from the current row.
+ Check the value of the third cell(index 2) and also check
+ the number of cells which should now be five.
+</description>
+<contributor>Rick Rivello</contributor>
+<date qualifier="created">2002-05-06</date>
+<subject
resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-o...
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="cellsnodeList" type="HTMLCollection"/>
+<var name="testNode" type="Node"/>
+<var name="trNode" type="Node"/>
+<var name="cellNode" type="Node"/>
+<var name="value" type="DOMString"/>
+<var name="vcells" type="int" />
+<var name="doc" type="Document"/>
+<load var="doc" href="tablerow"
willBeModified="true"/>
+<getElementsByTagName interface="Document" obj="doc"
var="nodeList" tagname='"tr"'/>
+<assertSize collection="nodeList" size="5"
id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode"
index="3"/>
+<cells interface="HTMLTableRowElement" obj="testNode"
var="cellsnodeList"/>
+<length interface="HTMLCollection" obj="cellsnodeList"
var="vcells"/>
+<assertEquals actual="vcells" expected="6"
id="cellsLink1" ignoreCase="false"/>
+<item interface="HTMLCollection" obj="cellsnodeList"
var="trNode" index="2"/>
+<firstChild interface="Node" obj="trNode"
var="cellNode"/>
+<nodeValue obj="cellNode" var="value"/>
+<assertEquals actual="value" expected='"Accountant"'
id="value1Link" ignoreCase="false"/>
+<deleteCell interface="HTMLTableRowElement" obj="testNode"
index="2"/>
+<item interface="NodeList" obj="nodeList" var="testNode"
index="3"/>
+<cells interface="HTMLTableRowElement" obj="testNode"
var="cellsnodeList"/>
+<length interface="HTMLCollection" obj="cellsnodeList"
var="vcells"/>
+<assertEquals actual="vcells" expected="5"
id="cellsLink2" ignoreCase="false"/>
+<item interface="HTMLCollection" obj="cellsnodeList"
var="trNode" index="2"/>
+<firstChild interface="Node" obj="trNode"
var="cellNode"/>
+<nodeValue obj="cellNode" var="value"/>
+<assertEquals actual="value" expected='"56,000"'
id="value2Link" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLTableRowElement14.xml.kfail
b/test/testcases/tests/level1/html/HTMLTableRowElement14.xml.kfail
deleted file mode 100644
index 27af8e2..0000000
--- a/test/testcases/tests/level1/html/HTMLTableRowElement14.xml.kfail
+++ /dev/null
@@ -1,66 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<?xml-stylesheet href="test-to-html.xml" type="text/xml"?>
-
-<!--
-
-Copyright (c) 2001 World Wide Web Consortium,
-(Massachusetts Institute of Technology, Institut National de
-Recherche en Informatique et en Automatique, Keio University). All
-Rights Reserved. This program is distributed under the W3C's Software
-Intellectual Property License. This program is distributed in the
-hope that it will be useful, but WITHOUT ANY WARRANTY; without even
-the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
-PURPOSE.
-
-See W3C License
http://www.w3.org/Consortium/Legal/ for more details.
-
--->
-<!DOCTYPE test SYSTEM "dom1.dtd">
-<test
xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1"
name="HTMLTableRowElement14">
-<metadata>
-<title>HTMLTableRowElement14</title>
-<creator>NIST</creator>
-<description>
- The deleteCell() method deletes a cell from the current row.
-
-
- Retrieve the fourth TR element and examine the value of
- the cells length attribute which should be set to six.
- Check the value of the third(index 2) TD element. Invoke the
- deleteCell() method which will delete a cell from the current row.
- Check the value of the third cell(index 2) and also check
- the number of cells which should now be five.
-</description>
-<contributor>Rick Rivello</contributor>
-<date qualifier="created">2002-05-06</date>
-<subject
resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-o...
-</metadata>
-<var name="nodeList" type="NodeList"/>
-<var name="cellsnodeList" type="HTMLCollection"/>
-<var name="testNode" type="Node"/>
-<var name="trNode" type="Node"/>
-<var name="cellNode" type="Node"/>
-<var name="value" type="DOMString"/>
-<var name="vcells" type="int" />
-<var name="doc" type="Document"/>
-<load var="doc" href="tablerow"
willBeModified="true"/>
-<getElementsByTagName interface="Document" obj="doc"
var="nodeList" tagname='"tr"'/>
-<assertSize collection="nodeList" size="5"
id="Asize"/>
-<item interface="NodeList" obj="nodeList" var="testNode"
index="3"/>
-<cells interface="HTMLTableRowElement" obj="testNode"
var="cellsnodeList"/>
-<length interface="HTMLCollection" obj="cellsnodeList"
var="vcells"/>
-<assertEquals actual="vcells" expected="6"
id="cellsLink1" ignoreCase="false"/>
-<item interface="HTMLCollection" obj="cellsnodeList"
var="trNode" index="2"/>
-<firstChild interface="Node" obj="trNode"
var="cellNode"/>
-<nodeValue obj="cellNode" var="value"/>
-<assertEquals actual="value" expected='"Accountant"'
id="value1Link" ignoreCase="false"/>
-<deleteCell interface="HTMLTableRowElement" obj="testNode"
index="2"/>
-<item interface="NodeList" obj="nodeList" var="testNode"
index="3"/>
-<cells interface="HTMLTableRowElement" obj="testNode"
var="cellsnodeList"/>
-<length interface="HTMLCollection" obj="cellsnodeList"
var="vcells"/>
-<assertEquals actual="vcells" expected="5"
id="cellsLink2" ignoreCase="false"/>
-<item interface="HTMLCollection" obj="cellsnodeList"
var="trNode" index="2"/>
-<firstChild interface="Node" obj="trNode"
var="cellNode"/>
-<nodeValue obj="cellNode" var="value"/>
-<assertEquals actual="value" expected='"56,000"'
id="value2Link" ignoreCase="false"/>
-</test>
diff --git a/test/testcases/tests/level1/html/HTMLTableSectionElement13.xml
b/test/testcases/tests/level1/html/HTMLTableSectionElement13.xml
new file mode 100644
index 0000000..1110c65
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLTableSectionElement13.xml
@@ -0,0 +1,45 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 World Wide Web Consortium,
+(Massachusetts Institute of Technology, Institut National de
+Recherche en Informatique et en Automatique, Keio University). All
+Rights Reserved. This program is distributed under the W3C's Software
+Intellectual Property License. This program is distributed in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
+PURPOSE.
+
+See W3C License
http://www.w3.org/Consortium/Legal/ for more details.
+
+-->
+<!DOCTYPE test SYSTEM "dom1.dtd">
+<test
xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1"
name="HTMLTableSectionElement13">
+<metadata>
+<title>HTMLTableSectionElement13</title>
+<creator>NIST</creator>
+<description>
+ The rows attribute specifies the collection of rows in this table section.
+
+ Retrieve the first THEAD element and examine the value of
+ the rows length attribute.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject
resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-o...
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="rowsnodeList" type="HTMLCollection"/>
+<var name="testNode" type="Node"/>
+<var name="vrows" type="int" />
+<var name="doc" type="Document"/>
+<load var="doc" href="tablesection"
willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc"
var="nodeList" tagname='"thead"'/>
+<assertSize collection="nodeList" size="1"
id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode"
index="0"/>
+<rows interface="HTMLTableSectionElement" obj="testNode"
var="rowsnodeList"/>
+<length interface="HTMLCollection" obj="rowsnodeList"
var="vrows"/>
+<assertEquals actual="vrows" expected="1" id="rowsLink"
ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLTableSectionElement13.xml.kfail
b/test/testcases/tests/level1/html/HTMLTableSectionElement13.xml.kfail
deleted file mode 100644
index 1110c65..0000000
--- a/test/testcases/tests/level1/html/HTMLTableSectionElement13.xml.kfail
+++ /dev/null
@@ -1,45 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
-
-<!--
-
-Copyright (c) 2001 World Wide Web Consortium,
-(Massachusetts Institute of Technology, Institut National de
-Recherche en Informatique et en Automatique, Keio University). All
-Rights Reserved. This program is distributed under the W3C's Software
-Intellectual Property License. This program is distributed in the
-hope that it will be useful, but WITHOUT ANY WARRANTY; without even
-the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
-PURPOSE.
-
-See W3C License
http://www.w3.org/Consortium/Legal/ for more details.
-
--->
-<!DOCTYPE test SYSTEM "dom1.dtd">
-<test
xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1"
name="HTMLTableSectionElement13">
-<metadata>
-<title>HTMLTableSectionElement13</title>
-<creator>NIST</creator>
-<description>
- The rows attribute specifies the collection of rows in this table section.
-
- Retrieve the first THEAD element and examine the value of
- the rows length attribute.
-</description>
-<contributor>Mary Brady</contributor>
-<date qualifier="created">2002-02-22</date>
-<subject
resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-o...
-</metadata>
-<var name="nodeList" type="NodeList"/>
-<var name="rowsnodeList" type="HTMLCollection"/>
-<var name="testNode" type="Node"/>
-<var name="vrows" type="int" />
-<var name="doc" type="Document"/>
-<load var="doc" href="tablesection"
willBeModified="false"/>
-<getElementsByTagName interface="Document" obj="doc"
var="nodeList" tagname='"thead"'/>
-<assertSize collection="nodeList" size="1"
id="Asize"/>
-<item interface="NodeList" obj="nodeList" var="testNode"
index="0"/>
-<rows interface="HTMLTableSectionElement" obj="testNode"
var="rowsnodeList"/>
-<length interface="HTMLCollection" obj="rowsnodeList"
var="vrows"/>
-<assertEquals actual="vrows" expected="1" id="rowsLink"
ignoreCase="false"/>
-</test>
diff --git a/test/testcases/tests/level1/html/HTMLTableSectionElement14.xml
b/test/testcases/tests/level1/html/HTMLTableSectionElement14.xml
new file mode 100644
index 0000000..83c90c0
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLTableSectionElement14.xml
@@ -0,0 +1,45 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 World Wide Web Consortium,
+(Massachusetts Institute of Technology, Institut National de
+Recherche en Informatique et en Automatique, Keio University). All
+Rights Reserved. This program is distributed under the W3C's Software
+Intellectual Property License. This program is distributed in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
+PURPOSE.
+
+See W3C License
http://www.w3.org/Consortium/Legal/ for more details.
+
+-->
+<!DOCTYPE test SYSTEM "dom1.dtd">
+<test
xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1"
name="HTMLTableSectionElement14">
+<metadata>
+<title>HTMLTableSectionElement14</title>
+<creator>NIST</creator>
+<description>
+ The rows attribute specifies the collection of rows in this table section.
+
+ Retrieve the first TFOOT element and examine the value of
+ the rows length attribute.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject
resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-o...
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="rowsnodeList" type="HTMLCollection"/>
+<var name="testNode" type="Node"/>
+<var name="vrows" type="int" />
+<var name="doc" type="Document"/>
+<load var="doc" href="tablesection"
willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc"
var="nodeList" tagname='"tfoot"'/>
+<assertSize collection="nodeList" size="1"
id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode"
index="0"/>
+<rows interface="HTMLTableSectionElement" obj="testNode"
var="rowsnodeList"/>
+<length interface="HTMLCollection" obj="rowsnodeList"
var="vrows"/>
+<assertEquals actual="vrows" expected="1" id="rowsLink"
ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLTableSectionElement14.xml.kfail
b/test/testcases/tests/level1/html/HTMLTableSectionElement14.xml.kfail
deleted file mode 100644
index 83c90c0..0000000
--- a/test/testcases/tests/level1/html/HTMLTableSectionElement14.xml.kfail
+++ /dev/null
@@ -1,45 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
-
-<!--
-
-Copyright (c) 2001 World Wide Web Consortium,
-(Massachusetts Institute of Technology, Institut National de
-Recherche en Informatique et en Automatique, Keio University). All
-Rights Reserved. This program is distributed under the W3C's Software
-Intellectual Property License. This program is distributed in the
-hope that it will be useful, but WITHOUT ANY WARRANTY; without even
-the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
-PURPOSE.
-
-See W3C License
http://www.w3.org/Consortium/Legal/ for more details.
-
--->
-<!DOCTYPE test SYSTEM "dom1.dtd">
-<test
xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1"
name="HTMLTableSectionElement14">
-<metadata>
-<title>HTMLTableSectionElement14</title>
-<creator>NIST</creator>
-<description>
- The rows attribute specifies the collection of rows in this table section.
-
- Retrieve the first TFOOT element and examine the value of
- the rows length attribute.
-</description>
-<contributor>Mary Brady</contributor>
-<date qualifier="created">2002-02-22</date>
-<subject
resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-o...
-</metadata>
-<var name="nodeList" type="NodeList"/>
-<var name="rowsnodeList" type="HTMLCollection"/>
-<var name="testNode" type="Node"/>
-<var name="vrows" type="int" />
-<var name="doc" type="Document"/>
-<load var="doc" href="tablesection"
willBeModified="false"/>
-<getElementsByTagName interface="Document" obj="doc"
var="nodeList" tagname='"tfoot"'/>
-<assertSize collection="nodeList" size="1"
id="Asize"/>
-<item interface="NodeList" obj="nodeList" var="testNode"
index="0"/>
-<rows interface="HTMLTableSectionElement" obj="testNode"
var="rowsnodeList"/>
-<length interface="HTMLCollection" obj="rowsnodeList"
var="vrows"/>
-<assertEquals actual="vrows" expected="1" id="rowsLink"
ignoreCase="false"/>
-</test>
diff --git a/test/testcases/tests/level1/html/HTMLTableSectionElement15.xml
b/test/testcases/tests/level1/html/HTMLTableSectionElement15.xml
new file mode 100644
index 0000000..6c8f0dd
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLTableSectionElement15.xml
@@ -0,0 +1,45 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 World Wide Web Consortium,
+(Massachusetts Institute of Technology, Institut National de
+Recherche en Informatique et en Automatique, Keio University). All
+Rights Reserved. This program is distributed under the W3C's Software
+Intellectual Property License. This program is distributed in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
+PURPOSE.
+
+See W3C License
http://www.w3.org/Consortium/Legal/ for more details.
+
+-->
+<!DOCTYPE test SYSTEM "dom1.dtd">
+<test
xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1"
name="HTMLTableSectionElement15">
+<metadata>
+<title>HTMLTableSectionElement15</title>
+<creator>NIST</creator>
+<description>
+ The rows attribute specifies the collection of rows in this table section.
+
+ Retrieve the first TBODY element and examine the value of
+ the rows length attribute.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject
resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-o...
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="rowsnodeList" type="HTMLCollection"/>
+<var name="testNode" type="Node"/>
+<var name="vrows" type="int" />
+<var name="doc" type="Document"/>
+<load var="doc" href="tablesection"
willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc"
var="nodeList" tagname='"tbody"'/>
+<assertSize collection="nodeList" size="2"
id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode"
index="1"/>
+<rows interface="HTMLTableSectionElement" obj="testNode"
var="rowsnodeList"/>
+<length interface="HTMLCollection" obj="rowsnodeList"
var="vrows"/>
+<assertEquals actual="vrows" expected="2" id="rowsLink"
ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLTableSectionElement15.xml.kfail
b/test/testcases/tests/level1/html/HTMLTableSectionElement15.xml.kfail
deleted file mode 100644
index 6c8f0dd..0000000
--- a/test/testcases/tests/level1/html/HTMLTableSectionElement15.xml.kfail
+++ /dev/null
@@ -1,45 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
-
-<!--
-
-Copyright (c) 2001 World Wide Web Consortium,
-(Massachusetts Institute of Technology, Institut National de
-Recherche en Informatique et en Automatique, Keio University). All
-Rights Reserved. This program is distributed under the W3C's Software
-Intellectual Property License. This program is distributed in the
-hope that it will be useful, but WITHOUT ANY WARRANTY; without even
-the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
-PURPOSE.
-
-See W3C License
http://www.w3.org/Consortium/Legal/ for more details.
-
--->
-<!DOCTYPE test SYSTEM "dom1.dtd">
-<test
xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1"
name="HTMLTableSectionElement15">
-<metadata>
-<title>HTMLTableSectionElement15</title>
-<creator>NIST</creator>
-<description>
- The rows attribute specifies the collection of rows in this table section.
-
- Retrieve the first TBODY element and examine the value of
- the rows length attribute.
-</description>
-<contributor>Mary Brady</contributor>
-<date qualifier="created">2002-02-22</date>
-<subject
resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-o...
-</metadata>
-<var name="nodeList" type="NodeList"/>
-<var name="rowsnodeList" type="HTMLCollection"/>
-<var name="testNode" type="Node"/>
-<var name="vrows" type="int" />
-<var name="doc" type="Document"/>
-<load var="doc" href="tablesection"
willBeModified="false"/>
-<getElementsByTagName interface="Document" obj="doc"
var="nodeList" tagname='"tbody"'/>
-<assertSize collection="nodeList" size="2"
id="Asize"/>
-<item interface="NodeList" obj="nodeList" var="testNode"
index="1"/>
-<rows interface="HTMLTableSectionElement" obj="testNode"
var="rowsnodeList"/>
-<length interface="HTMLCollection" obj="rowsnodeList"
var="vrows"/>
-<assertEquals actual="vrows" expected="2" id="rowsLink"
ignoreCase="false"/>
-</test>
diff --git a/test/testcases/tests/level1/html/HTMLTableSectionElement16.xml
b/test/testcases/tests/level1/html/HTMLTableSectionElement16.xml
new file mode 100644
index 0000000..567d86b
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLTableSectionElement16.xml
@@ -0,0 +1,52 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xml" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 World Wide Web Consortium,
+(Massachusetts Institute of Technology, Institut National de
+Recherche en Informatique et en Automatique, Keio University). All
+Rights Reserved. This program is distributed under the W3C's Software
+Intellectual Property License. This program is distributed in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
+PURPOSE.
+
+See W3C License
http://www.w3.org/Consortium/Legal/ for more details.
+
+-->
+<!DOCTYPE test SYSTEM "dom1.dtd">
+<test
xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1"
name="HTMLTableSectionElement16">
+<metadata>
+<title>HTMLTableSectionElement16</title>
+<creator>NIST</creator>
+<description>
+ The insertRow() method inserts a new empty table row.
+
+ Retrieve the first THEAD element and invoke the insertRow() method
+ with an index of 0. The nuber of rows in the THEAD section before
+ insertion of the new row is one. After the new row is inserted the number
+ of rows in the THEAD section is two.
+</description>
+<contributor>Rick Rivello</contributor>
+<date qualifier="created">2002-05-02</date>
+<subject
resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-o...
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="newRow" type="HTMLElement"/>
+<var name="rowsnodeList" type="HTMLCollection"/>
+<var name="vrows" type="int" />
+<var name="doc" type="Document"/>
+<load var="doc" href="tablesection"
willBeModified="true"/>
+<getElementsByTagName interface="Document" obj="doc"
var="nodeList" tagname='"thead"'/>
+<assertSize collection="nodeList" size="1"
id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode"
index="0"/>
+<rows interface="HTMLTableSectionElement" obj="testNode"
var="rowsnodeList"/>
+<length interface="HTMLCollection" obj="rowsnodeList"
var="vrows"/>
+<assertEquals actual="vrows" expected="1" id="rowsLink1"
ignoreCase="false"/>
+<insertRow interface="HTMLTableSectionElement" obj="testNode"
var="newRow" index="0"/>
+<rows interface="HTMLTableSectionElement" obj="testNode"
var="rowsnodeList"/>
+<length interface="HTMLCollection" obj="rowsnodeList"
var="vrows"/>
+<assertEquals actual="vrows" expected="2" id="rowsLink2"
ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLTableSectionElement16.xml.kfail
b/test/testcases/tests/level1/html/HTMLTableSectionElement16.xml.kfail
deleted file mode 100644
index 567d86b..0000000
--- a/test/testcases/tests/level1/html/HTMLTableSectionElement16.xml.kfail
+++ /dev/null
@@ -1,52 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<?xml-stylesheet href="test-to-html.xml" type="text/xml"?>
-
-<!--
-
-Copyright (c) 2001 World Wide Web Consortium,
-(Massachusetts Institute of Technology, Institut National de
-Recherche en Informatique et en Automatique, Keio University). All
-Rights Reserved. This program is distributed under the W3C's Software
-Intellectual Property License. This program is distributed in the
-hope that it will be useful, but WITHOUT ANY WARRANTY; without even
-the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
-PURPOSE.
-
-See W3C License
http://www.w3.org/Consortium/Legal/ for more details.
-
--->
-<!DOCTYPE test SYSTEM "dom1.dtd">
-<test
xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1"
name="HTMLTableSectionElement16">
-<metadata>
-<title>HTMLTableSectionElement16</title>
-<creator>NIST</creator>
-<description>
- The insertRow() method inserts a new empty table row.
-
- Retrieve the first THEAD element and invoke the insertRow() method
- with an index of 0. The nuber of rows in the THEAD section before
- insertion of the new row is one. After the new row is inserted the number
- of rows in the THEAD section is two.
-</description>
-<contributor>Rick Rivello</contributor>
-<date qualifier="created">2002-05-02</date>
-<subject
resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-o...
-</metadata>
-<var name="nodeList" type="NodeList"/>
-<var name="testNode" type="Node"/>
-<var name="newRow" type="HTMLElement"/>
-<var name="rowsnodeList" type="HTMLCollection"/>
-<var name="vrows" type="int" />
-<var name="doc" type="Document"/>
-<load var="doc" href="tablesection"
willBeModified="true"/>
-<getElementsByTagName interface="Document" obj="doc"
var="nodeList" tagname='"thead"'/>
-<assertSize collection="nodeList" size="1"
id="Asize"/>
-<item interface="NodeList" obj="nodeList" var="testNode"
index="0"/>
-<rows interface="HTMLTableSectionElement" obj="testNode"
var="rowsnodeList"/>
-<length interface="HTMLCollection" obj="rowsnodeList"
var="vrows"/>
-<assertEquals actual="vrows" expected="1" id="rowsLink1"
ignoreCase="false"/>
-<insertRow interface="HTMLTableSectionElement" obj="testNode"
var="newRow" index="0"/>
-<rows interface="HTMLTableSectionElement" obj="testNode"
var="rowsnodeList"/>
-<length interface="HTMLCollection" obj="rowsnodeList"
var="vrows"/>
-<assertEquals actual="vrows" expected="2" id="rowsLink2"
ignoreCase="false"/>
-</test>
diff --git a/test/testcases/tests/level1/html/HTMLTableSectionElement17.xml
b/test/testcases/tests/level1/html/HTMLTableSectionElement17.xml
new file mode 100644
index 0000000..4a3e283
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLTableSectionElement17.xml
@@ -0,0 +1,52 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xml" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 World Wide Web Consortium,
+(Massachusetts Institute of Technology, Institut National de
+Recherche en Informatique et en Automatique, Keio University). All
+Rights Reserved. This program is distributed under the W3C's Software
+Intellectual Property License. This program is distributed in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
+PURPOSE.
+
+See W3C License
http://www.w3.org/Consortium/Legal/ for more details.
+
+-->
+<!DOCTYPE test SYSTEM "dom1.dtd">
+<test
xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1"
name="HTMLTableSectionElement17">
+<metadata>
+<title>HTMLTableSectionElement17</title>
+<creator>NIST</creator>
+<description>
+ The insertRow() method inserts a new empty table row.
+
+ Retrieve the first TFOOT element and invoke the insertRow() method
+ with an index of 0. The nuber of rows in the TFOOT section before
+ insertion of the new row is one. After the new row is inserted the number
+ of rows in the TFOOT section is two.
+</description>
+<contributor>Rick Rivello</contributor>
+<date qualifier="created">2002-05-02</date>
+<subject
resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-o...
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="newRow" type="HTMLElement"/>
+<var name="rowsnodeList" type="HTMLCollection"/>
+<var name="vrows" type="int" />
+<var name="doc" type="Document"/>
+<load var="doc" href="tablesection"
willBeModified="true"/>
+<getElementsByTagName interface="Document" obj="doc"
var="nodeList" tagname='"tfoot"'/>
+<assertSize collection="nodeList" size="1"
id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode"
index="0"/>
+<rows interface="HTMLTableSectionElement" obj="testNode"
var="rowsnodeList"/>
+<length interface="HTMLCollection" obj="rowsnodeList"
var="vrows"/>
+<assertEquals actual="vrows" expected="1" id="rowsLink1"
ignoreCase="false"/>
+<insertRow interface="HTMLTableSectionElement" obj="testNode"
var="newRow" index="0"/>
+<rows interface="HTMLTableSectionElement" obj="testNode"
var="rowsnodeList"/>
+<length interface="HTMLCollection" obj="rowsnodeList"
var="vrows"/>
+<assertEquals actual="vrows" expected="2" id="rowsLink2"
ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLTableSectionElement17.xml.kfail
b/test/testcases/tests/level1/html/HTMLTableSectionElement17.xml.kfail
deleted file mode 100644
index 4a3e283..0000000
--- a/test/testcases/tests/level1/html/HTMLTableSectionElement17.xml.kfail
+++ /dev/null
@@ -1,52 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<?xml-stylesheet href="test-to-html.xml" type="text/xml"?>
-
-<!--
-
-Copyright (c) 2001 World Wide Web Consortium,
-(Massachusetts Institute of Technology, Institut National de
-Recherche en Informatique et en Automatique, Keio University). All
-Rights Reserved. This program is distributed under the W3C's Software
-Intellectual Property License. This program is distributed in the
-hope that it will be useful, but WITHOUT ANY WARRANTY; without even
-the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
-PURPOSE.
-
-See W3C License
http://www.w3.org/Consortium/Legal/ for more details.
-
--->
-<!DOCTYPE test SYSTEM "dom1.dtd">
-<test
xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1"
name="HTMLTableSectionElement17">
-<metadata>
-<title>HTMLTableSectionElement17</title>
-<creator>NIST</creator>
-<description>
- The insertRow() method inserts a new empty table row.
-
- Retrieve the first TFOOT element and invoke the insertRow() method
- with an index of 0. The nuber of rows in the TFOOT section before
- insertion of the new row is one. After the new row is inserted the number
- of rows in the TFOOT section is two.
-</description>
-<contributor>Rick Rivello</contributor>
-<date qualifier="created">2002-05-02</date>
-<subject
resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-o...
-</metadata>
-<var name="nodeList" type="NodeList"/>
-<var name="testNode" type="Node"/>
-<var name="newRow" type="HTMLElement"/>
-<var name="rowsnodeList" type="HTMLCollection"/>
-<var name="vrows" type="int" />
-<var name="doc" type="Document"/>
-<load var="doc" href="tablesection"
willBeModified="true"/>
-<getElementsByTagName interface="Document" obj="doc"
var="nodeList" tagname='"tfoot"'/>
-<assertSize collection="nodeList" size="1"
id="Asize"/>
-<item interface="NodeList" obj="nodeList" var="testNode"
index="0"/>
-<rows interface="HTMLTableSectionElement" obj="testNode"
var="rowsnodeList"/>
-<length interface="HTMLCollection" obj="rowsnodeList"
var="vrows"/>
-<assertEquals actual="vrows" expected="1" id="rowsLink1"
ignoreCase="false"/>
-<insertRow interface="HTMLTableSectionElement" obj="testNode"
var="newRow" index="0"/>
-<rows interface="HTMLTableSectionElement" obj="testNode"
var="rowsnodeList"/>
-<length interface="HTMLCollection" obj="rowsnodeList"
var="vrows"/>
-<assertEquals actual="vrows" expected="2" id="rowsLink2"
ignoreCase="false"/>
-</test>
diff --git a/test/testcases/tests/level1/html/HTMLTableSectionElement18.xml
b/test/testcases/tests/level1/html/HTMLTableSectionElement18.xml
new file mode 100644
index 0000000..e8073be
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLTableSectionElement18.xml
@@ -0,0 +1,52 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xml" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 World Wide Web Consortium,
+(Massachusetts Institute of Technology, Institut National de
+Recherche en Informatique et en Automatique, Keio University). All
+Rights Reserved. This program is distributed under the W3C's Software
+Intellectual Property License. This program is distributed in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
+PURPOSE.
+
+See W3C License
http://www.w3.org/Consortium/Legal/ for more details.
+
+-->
+<!DOCTYPE test SYSTEM "dom1.dtd">
+<test
xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1"
name="HTMLTableSectionElement18">
+<metadata>
+<title>HTMLTableSectionElement18</title>
+<creator>NIST</creator>
+<description>
+ The insertRow() method inserts a new empty table row.
+
+ Retrieve the first TBODY element and invoke the insertRow() method
+ with an index of 0. The nuber of rows in the TBODY section before
+ insertion of the new row is two. After the new row is inserted the number
+ of rows in the TBODY section is three.
+</description>
+<contributor>Rick Rivello</contributor>
+<date qualifier="created">2002-05-02</date>
+<subject
resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-o...
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="newRow" type="HTMLElement"/>
+<var name="rowsnodeList" type="HTMLCollection"/>
+<var name="vrows" type="int" />
+<var name="doc" type="Document"/>
+<load var="doc" href="tablesection"
willBeModified="true"/>
+<getElementsByTagName interface="Document" obj="doc"
var="nodeList" tagname='"tbody"'/>
+<assertSize collection="nodeList" size="2"
id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode"
index="1"/>
+<rows interface="HTMLTableSectionElement" obj="testNode"
var="rowsnodeList"/>
+<length interface="HTMLCollection" obj="rowsnodeList"
var="vrows"/>
+<assertEquals actual="vrows" expected="2" id="rowsLink1"
ignoreCase="false"/>
+<insertRow interface="HTMLTableSectionElement" obj="testNode"
var="newRow" index="0"/>
+<rows interface="HTMLTableSectionElement" obj="testNode"
var="rowsnodeList"/>
+<length interface="HTMLCollection" obj="rowsnodeList"
var="vrows"/>
+<assertEquals actual="vrows" expected="3" id="rowsLink2"
ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLTableSectionElement18.xml.kfail
b/test/testcases/tests/level1/html/HTMLTableSectionElement18.xml.kfail
deleted file mode 100644
index e8073be..0000000
--- a/test/testcases/tests/level1/html/HTMLTableSectionElement18.xml.kfail
+++ /dev/null
@@ -1,52 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<?xml-stylesheet href="test-to-html.xml" type="text/xml"?>
-
-<!--
-
-Copyright (c) 2001 World Wide Web Consortium,
-(Massachusetts Institute of Technology, Institut National de
-Recherche en Informatique et en Automatique, Keio University). All
-Rights Reserved. This program is distributed under the W3C's Software
-Intellectual Property License. This program is distributed in the
-hope that it will be useful, but WITHOUT ANY WARRANTY; without even
-the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
-PURPOSE.
-
-See W3C License
http://www.w3.org/Consortium/Legal/ for more details.
-
--->
-<!DOCTYPE test SYSTEM "dom1.dtd">
-<test
xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1"
name="HTMLTableSectionElement18">
-<metadata>
-<title>HTMLTableSectionElement18</title>
-<creator>NIST</creator>
-<description>
- The insertRow() method inserts a new empty table row.
-
- Retrieve the first TBODY element and invoke the insertRow() method
- with an index of 0. The nuber of rows in the TBODY section before
- insertion of the new row is two. After the new row is inserted the number
- of rows in the TBODY section is three.
-</description>
-<contributor>Rick Rivello</contributor>
-<date qualifier="created">2002-05-02</date>
-<subject
resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-o...
-</metadata>
-<var name="nodeList" type="NodeList"/>
-<var name="testNode" type="Node"/>
-<var name="newRow" type="HTMLElement"/>
-<var name="rowsnodeList" type="HTMLCollection"/>
-<var name="vrows" type="int" />
-<var name="doc" type="Document"/>
-<load var="doc" href="tablesection"
willBeModified="true"/>
-<getElementsByTagName interface="Document" obj="doc"
var="nodeList" tagname='"tbody"'/>
-<assertSize collection="nodeList" size="2"
id="Asize"/>
-<item interface="NodeList" obj="nodeList" var="testNode"
index="1"/>
-<rows interface="HTMLTableSectionElement" obj="testNode"
var="rowsnodeList"/>
-<length interface="HTMLCollection" obj="rowsnodeList"
var="vrows"/>
-<assertEquals actual="vrows" expected="2" id="rowsLink1"
ignoreCase="false"/>
-<insertRow interface="HTMLTableSectionElement" obj="testNode"
var="newRow" index="0"/>
-<rows interface="HTMLTableSectionElement" obj="testNode"
var="rowsnodeList"/>
-<length interface="HTMLCollection" obj="rowsnodeList"
var="vrows"/>
-<assertEquals actual="vrows" expected="3" id="rowsLink2"
ignoreCase="false"/>
-</test>
diff --git a/test/testcases/tests/level1/html/HTMLTableSectionElement19.xml
b/test/testcases/tests/level1/html/HTMLTableSectionElement19.xml
new file mode 100644
index 0000000..f8d7933
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLTableSectionElement19.xml
@@ -0,0 +1,53 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xml" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 World Wide Web Consortium,
+(Massachusetts Institute of Technology, Institut National de
+Recherche en Informatique et en Automatique, Keio University). All
+Rights Reserved. This program is distributed under the W3C's Software
+Intellectual Property License. This program is distributed in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
+PURPOSE.
+
+See W3C License
http://www.w3.org/Consortium/Legal/ for more details.
+
+-->
+<!DOCTYPE test SYSTEM "dom1.dtd">
+<test
xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1"
name="HTMLTableSectionElement19">
+<metadata>
+<title>HTMLTableSectionElement19</title>
+<creator>NIST</creator>
+<description>
+ The insertRow() method inserts a new empty table row.
+
+ Retrieve the first THEAD element and invoke the insertRow() method
+ with an index of 1. The nuber of rows in the THEAD section before
+ insertion of the new row is one therefore the new row is appended.
+ After the new row is inserted the number of rows in the THEAD
+ section is two.
+</description>
+<contributor>Rick Rivello</contributor>
+<date qualifier="created">2002-05-02</date>
+<subject
resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-o...
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="newRow" type="HTMLElement"/>
+<var name="rowsnodeList" type="HTMLCollection"/>
+<var name="vrows" type="int" />
+<var name="doc" type="Document"/>
+<load var="doc" href="tablesection"
willBeModified="true"/>
+<getElementsByTagName interface="Document" obj="doc"
var="nodeList" tagname='"thead"'/>
+<assertSize collection="nodeList" size="1"
id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode"
index="0"/>
+<rows interface="HTMLTableSectionElement" obj="testNode"
var="rowsnodeList"/>
+<length interface="HTMLCollection" obj="rowsnodeList"
var="vrows"/>
+<assertEquals actual="vrows" expected="1" id="rowsLink1"
ignoreCase="false"/>
+<insertRow interface="HTMLTableSectionElement" obj="testNode"
var="newRow" index="1"/>
+<rows interface="HTMLTableSectionElement" obj="testNode"
var="rowsnodeList"/>
+<length interface="HTMLCollection" obj="rowsnodeList"
var="vrows"/>
+<assertEquals actual="vrows" expected="2" id="rowsLink2"
ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLTableSectionElement19.xml.kfail
b/test/testcases/tests/level1/html/HTMLTableSectionElement19.xml.kfail
deleted file mode 100644
index f8d7933..0000000
--- a/test/testcases/tests/level1/html/HTMLTableSectionElement19.xml.kfail
+++ /dev/null
@@ -1,53 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<?xml-stylesheet href="test-to-html.xml" type="text/xml"?>
-
-<!--
-
-Copyright (c) 2001 World Wide Web Consortium,
-(Massachusetts Institute of Technology, Institut National de
-Recherche en Informatique et en Automatique, Keio University). All
-Rights Reserved. This program is distributed under the W3C's Software
-Intellectual Property License. This program is distributed in the
-hope that it will be useful, but WITHOUT ANY WARRANTY; without even
-the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
-PURPOSE.
-
-See W3C License
http://www.w3.org/Consortium/Legal/ for more details.
-
--->
-<!DOCTYPE test SYSTEM "dom1.dtd">
-<test
xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1"
name="HTMLTableSectionElement19">
-<metadata>
-<title>HTMLTableSectionElement19</title>
-<creator>NIST</creator>
-<description>
- The insertRow() method inserts a new empty table row.
-
- Retrieve the first THEAD element and invoke the insertRow() method
- with an index of 1. The nuber of rows in the THEAD section before
- insertion of the new row is one therefore the new row is appended.
- After the new row is inserted the number of rows in the THEAD
- section is two.
-</description>
-<contributor>Rick Rivello</contributor>
-<date qualifier="created">2002-05-02</date>
-<subject
resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-o...
-</metadata>
-<var name="nodeList" type="NodeList"/>
-<var name="testNode" type="Node"/>
-<var name="newRow" type="HTMLElement"/>
-<var name="rowsnodeList" type="HTMLCollection"/>
-<var name="vrows" type="int" />
-<var name="doc" type="Document"/>
-<load var="doc" href="tablesection"
willBeModified="true"/>
-<getElementsByTagName interface="Document" obj="doc"
var="nodeList" tagname='"thead"'/>
-<assertSize collection="nodeList" size="1"
id="Asize"/>
-<item interface="NodeList" obj="nodeList" var="testNode"
index="0"/>
-<rows interface="HTMLTableSectionElement" obj="testNode"
var="rowsnodeList"/>
-<length interface="HTMLCollection" obj="rowsnodeList"
var="vrows"/>
-<assertEquals actual="vrows" expected="1" id="rowsLink1"
ignoreCase="false"/>
-<insertRow interface="HTMLTableSectionElement" obj="testNode"
var="newRow" index="1"/>
-<rows interface="HTMLTableSectionElement" obj="testNode"
var="rowsnodeList"/>
-<length interface="HTMLCollection" obj="rowsnodeList"
var="vrows"/>
-<assertEquals actual="vrows" expected="2" id="rowsLink2"
ignoreCase="false"/>
-</test>
diff --git a/test/testcases/tests/level1/html/HTMLTableSectionElement20.xml
b/test/testcases/tests/level1/html/HTMLTableSectionElement20.xml
new file mode 100644
index 0000000..99452e7
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLTableSectionElement20.xml
@@ -0,0 +1,53 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xml" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 World Wide Web Consortium,
+(Massachusetts Institute of Technology, Institut National de
+Recherche en Informatique et en Automatique, Keio University). All
+Rights Reserved. This program is distributed under the W3C's Software
+Intellectual Property License. This program is distributed in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
+PURPOSE.
+
+See W3C License
http://www.w3.org/Consortium/Legal/ for more details.
+
+-->
+<!DOCTYPE test SYSTEM "dom1.dtd">
+<test
xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1"
name="HTMLTableSectionElement20">
+<metadata>
+<title>HTMLTableSectionElement20</title>
+<creator>NIST</creator>
+<description>
+ The insertRow() method inserts a new empty table row.
+
+ Retrieve the first TFOOT element and invoke the insertRow() method
+ with an index of one. The nuber of rows in the TFOOT section before
+ insertion of the new row is one therefore the new row is appended.
+ After the new row is inserted the number of rows in the TFOOT section
+ is two.
+</description>
+<contributor>Rick Rivello</contributor>
+<date qualifier="created">2002-05-02</date>
+<subject
resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-o...
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="newRow" type="HTMLElement"/>
+<var name="rowsnodeList" type="HTMLCollection"/>
+<var name="vrows" type="int" />
+<var name="doc" type="Document"/>
+<load var="doc" href="tablesection"
willBeModified="true"/>
+<getElementsByTagName interface="Document" obj="doc"
var="nodeList" tagname='"tfoot"'/>
+<assertSize collection="nodeList" size="1"
id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode"
index="0"/>
+<rows interface="HTMLTableSectionElement" obj="testNode"
var="rowsnodeList"/>
+<length interface="HTMLCollection" obj="rowsnodeList"
var="vrows"/>
+<assertEquals actual="vrows" expected="1" id="rowsLink1"
ignoreCase="false"/>
+<insertRow interface="HTMLTableSectionElement" obj="testNode"
var="newRow" index="1"/>
+<rows interface="HTMLTableSectionElement" obj="testNode"
var="rowsnodeList"/>
+<length interface="HTMLCollection" obj="rowsnodeList"
var="vrows"/>
+<assertEquals actual="vrows" expected="2" id="rowsLink2"
ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLTableSectionElement20.xml.kfail
b/test/testcases/tests/level1/html/HTMLTableSectionElement20.xml.kfail
deleted file mode 100644
index 99452e7..0000000
--- a/test/testcases/tests/level1/html/HTMLTableSectionElement20.xml.kfail
+++ /dev/null
@@ -1,53 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<?xml-stylesheet href="test-to-html.xml" type="text/xml"?>
-
-<!--
-
-Copyright (c) 2001 World Wide Web Consortium,
-(Massachusetts Institute of Technology, Institut National de
-Recherche en Informatique et en Automatique, Keio University). All
-Rights Reserved. This program is distributed under the W3C's Software
-Intellectual Property License. This program is distributed in the
-hope that it will be useful, but WITHOUT ANY WARRANTY; without even
-the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
-PURPOSE.
-
-See W3C License
http://www.w3.org/Consortium/Legal/ for more details.
-
--->
-<!DOCTYPE test SYSTEM "dom1.dtd">
-<test
xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1"
name="HTMLTableSectionElement20">
-<metadata>
-<title>HTMLTableSectionElement20</title>
-<creator>NIST</creator>
-<description>
- The insertRow() method inserts a new empty table row.
-
- Retrieve the first TFOOT element and invoke the insertRow() method
- with an index of one. The nuber of rows in the TFOOT section before
- insertion of the new row is one therefore the new row is appended.
- After the new row is inserted the number of rows in the TFOOT section
- is two.
-</description>
-<contributor>Rick Rivello</contributor>
-<date qualifier="created">2002-05-02</date>
-<subject
resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-o...
-</metadata>
-<var name="nodeList" type="NodeList"/>
-<var name="testNode" type="Node"/>
-<var name="newRow" type="HTMLElement"/>
-<var name="rowsnodeList" type="HTMLCollection"/>
-<var name="vrows" type="int" />
-<var name="doc" type="Document"/>
-<load var="doc" href="tablesection"
willBeModified="true"/>
-<getElementsByTagName interface="Document" obj="doc"
var="nodeList" tagname='"tfoot"'/>
-<assertSize collection="nodeList" size="1"
id="Asize"/>
-<item interface="NodeList" obj="nodeList" var="testNode"
index="0"/>
-<rows interface="HTMLTableSectionElement" obj="testNode"
var="rowsnodeList"/>
-<length interface="HTMLCollection" obj="rowsnodeList"
var="vrows"/>
-<assertEquals actual="vrows" expected="1" id="rowsLink1"
ignoreCase="false"/>
-<insertRow interface="HTMLTableSectionElement" obj="testNode"
var="newRow" index="1"/>
-<rows interface="HTMLTableSectionElement" obj="testNode"
var="rowsnodeList"/>
-<length interface="HTMLCollection" obj="rowsnodeList"
var="vrows"/>
-<assertEquals actual="vrows" expected="2" id="rowsLink2"
ignoreCase="false"/>
-</test>
diff --git a/test/testcases/tests/level1/html/HTMLTableSectionElement21.xml
b/test/testcases/tests/level1/html/HTMLTableSectionElement21.xml
new file mode 100644
index 0000000..05d7ef8
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLTableSectionElement21.xml
@@ -0,0 +1,54 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xml" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, Institut National de
+Recherche en Informatique et en Automatique, Keio University). All
+Rights Reserved. This program is distributed under the W3C's Software
+Intellectual Property License. This program is distributed in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
+PURPOSE.
+
+See W3C License
http://www.w3.org/Consortium/Legal/ for more details.
+
+-->
+<!DOCTYPE test SYSTEM "dom1.dtd">
+<test
xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1"
name="HTMLTableSectionElement21">
+<metadata>
+<title>HTMLTableSectionElement21</title>
+<creator>NIST</creator>
+<description>
+ The insertRow() method inserts a new empty table row.
+
+ Retrieve the first TBODY element and invoke the insertRow() method
+ with an index of two. The number of rows in the TBODY section before
+ insertion of the new row is two therefore the row is appended.
+ After the new row is inserted the number of rows in the TBODY section is
+ three.
+</description>
+<contributor>Rick Rivello</contributor>
+<date qualifier="created">2002-05-02</date>
+<subject
resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-o...
+<subject
resource="http://www.w3.org/Bugs/Public/show_bug.cgi?id=502"/>
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="newRow" type="HTMLElement"/>
+<var name="rowsnodeList" type="HTMLCollection"/>
+<var name="vrows" type="int" />
+<var name="doc" type="Document"/>
+<load var="doc" href="tablesection"
willBeModified="true"/>
+<getElementsByTagName interface="Document" obj="doc"
var="nodeList" tagname='"tbody"'/>
+<assertSize collection="nodeList" size="2"
id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode"
index="1"/>
+<rows interface="HTMLTableSectionElement" obj="testNode"
var="rowsnodeList"/>
+<length interface="HTMLCollection" obj="rowsnodeList"
var="vrows"/>
+<assertEquals actual="vrows" expected="2" id="rowsLink1"
ignoreCase="false"/>
+<insertRow interface="HTMLTableSectionElement" obj="testNode"
var="newRow" index="2"/>
+<rows interface="HTMLTableSectionElement" obj="testNode"
var="rowsnodeList"/>
+<length interface="HTMLCollection" obj="rowsnodeList"
var="vrows"/>
+<assertEquals actual="vrows" expected="3" id="rowsLink2"
ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLTableSectionElement21.xml.kfail
b/test/testcases/tests/level1/html/HTMLTableSectionElement21.xml.kfail
deleted file mode 100644
index 05d7ef8..0000000
--- a/test/testcases/tests/level1/html/HTMLTableSectionElement21.xml.kfail
+++ /dev/null
@@ -1,54 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<?xml-stylesheet href="test-to-html.xml" type="text/xml"?>
-
-<!--
-
-Copyright (c) 2001-2004 World Wide Web Consortium,
-(Massachusetts Institute of Technology, Institut National de
-Recherche en Informatique et en Automatique, Keio University). All
-Rights Reserved. This program is distributed under the W3C's Software
-Intellectual Property License. This program is distributed in the
-hope that it will be useful, but WITHOUT ANY WARRANTY; without even
-the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
-PURPOSE.
-
-See W3C License
http://www.w3.org/Consortium/Legal/ for more details.
-
--->
-<!DOCTYPE test SYSTEM "dom1.dtd">
-<test
xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1"
name="HTMLTableSectionElement21">
-<metadata>
-<title>HTMLTableSectionElement21</title>
-<creator>NIST</creator>
-<description>
- The insertRow() method inserts a new empty table row.
-
- Retrieve the first TBODY element and invoke the insertRow() method
- with an index of two. The number of rows in the TBODY section before
- insertion of the new row is two therefore the row is appended.
- After the new row is inserted the number of rows in the TBODY section is
- three.
-</description>
-<contributor>Rick Rivello</contributor>
-<date qualifier="created">2002-05-02</date>
-<subject
resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-o...
-<subject
resource="http://www.w3.org/Bugs/Public/show_bug.cgi?id=502"/>
-</metadata>
-<var name="nodeList" type="NodeList"/>
-<var name="testNode" type="Node"/>
-<var name="newRow" type="HTMLElement"/>
-<var name="rowsnodeList" type="HTMLCollection"/>
-<var name="vrows" type="int" />
-<var name="doc" type="Document"/>
-<load var="doc" href="tablesection"
willBeModified="true"/>
-<getElementsByTagName interface="Document" obj="doc"
var="nodeList" tagname='"tbody"'/>
-<assertSize collection="nodeList" size="2"
id="Asize"/>
-<item interface="NodeList" obj="nodeList" var="testNode"
index="1"/>
-<rows interface="HTMLTableSectionElement" obj="testNode"
var="rowsnodeList"/>
-<length interface="HTMLCollection" obj="rowsnodeList"
var="vrows"/>
-<assertEquals actual="vrows" expected="2" id="rowsLink1"
ignoreCase="false"/>
-<insertRow interface="HTMLTableSectionElement" obj="testNode"
var="newRow" index="2"/>
-<rows interface="HTMLTableSectionElement" obj="testNode"
var="rowsnodeList"/>
-<length interface="HTMLCollection" obj="rowsnodeList"
var="vrows"/>
-<assertEquals actual="vrows" expected="3" id="rowsLink2"
ignoreCase="false"/>
-</test>
diff --git a/test/testcases/tests/level1/html/HTMLTableSectionElement22.xml
b/test/testcases/tests/level1/html/HTMLTableSectionElement22.xml
new file mode 100644
index 0000000..5d8bef4
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLTableSectionElement22.xml
@@ -0,0 +1,51 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xml" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 World Wide Web Consortium,
+(Massachusetts Institute of Technology, Institut National de
+Recherche en Informatique et en Automatique, Keio University). All
+Rights Reserved. This program is distributed under the W3C's Software
+Intellectual Property License. This program is distributed in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
+PURPOSE.
+
+See W3C License
http://www.w3.org/Consortium/Legal/ for more details.
+
+-->
+<!DOCTYPE test SYSTEM "dom1.dtd">
+<test
xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1"
name="HTMLTableSectionElement22">
+<metadata>
+<title>HTMLTableSectionElement22</title>
+<creator>NIST</creator>
+<description>
+ The deleteRow() method deletes a row from this section.
+
+ Retrieve the first THEAD element and invoke the deleteRow() method
+ with an index of 0. The nuber of rows in the THEAD section before
+ the deletion of the row is one. After the row is deleted the number
+ of rows in the THEAD section is zero.
+</description>
+<contributor>Rick Rivello</contributor>
+<date qualifier="created">2002-05-02</date>
+<subject
resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-o...
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="rowsnodeList" type="HTMLCollection"/>
+<var name="vrows" type="int" />
+<var name="doc" type="Document"/>
+<load var="doc" href="tablesection"
willBeModified="true"/>
+<getElementsByTagName interface="Document" obj="doc"
var="nodeList" tagname='"thead"'/>
+<assertSize collection="nodeList" size="1"
id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode"
index="0"/>
+<rows interface="HTMLTableSectionElement" obj="testNode"
var="rowsnodeList"/>
+<length interface="HTMLCollection" obj="rowsnodeList"
var="vrows"/>
+<assertEquals actual="vrows" expected="1" id="rowsLink1"
ignoreCase="false"/>
+<deleteRow interface="HTMLTableSectionElement" obj="testNode"
index="0"/>
+<rows interface="HTMLTableSectionElement" obj="testNode"
var="rowsnodeList"/>
+<length interface="HTMLCollection" obj="rowsnodeList"
var="vrows"/>
+<assertEquals actual="vrows" expected="0" id="rowsLink2"
ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLTableSectionElement22.xml.kfail
b/test/testcases/tests/level1/html/HTMLTableSectionElement22.xml.kfail
deleted file mode 100644
index 5d8bef4..0000000
--- a/test/testcases/tests/level1/html/HTMLTableSectionElement22.xml.kfail
+++ /dev/null
@@ -1,51 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<?xml-stylesheet href="test-to-html.xml" type="text/xml"?>
-
-<!--
-
-Copyright (c) 2001 World Wide Web Consortium,
-(Massachusetts Institute of Technology, Institut National de
-Recherche en Informatique et en Automatique, Keio University). All
-Rights Reserved. This program is distributed under the W3C's Software
-Intellectual Property License. This program is distributed in the
-hope that it will be useful, but WITHOUT ANY WARRANTY; without even
-the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
-PURPOSE.
-
-See W3C License
http://www.w3.org/Consortium/Legal/ for more details.
-
--->
-<!DOCTYPE test SYSTEM "dom1.dtd">
-<test
xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1"
name="HTMLTableSectionElement22">
-<metadata>
-<title>HTMLTableSectionElement22</title>
-<creator>NIST</creator>
-<description>
- The deleteRow() method deletes a row from this section.
-
- Retrieve the first THEAD element and invoke the deleteRow() method
- with an index of 0. The nuber of rows in the THEAD section before
- the deletion of the row is one. After the row is deleted the number
- of rows in the THEAD section is zero.
-</description>
-<contributor>Rick Rivello</contributor>
-<date qualifier="created">2002-05-02</date>
-<subject
resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-o...
-</metadata>
-<var name="nodeList" type="NodeList"/>
-<var name="testNode" type="Node"/>
-<var name="rowsnodeList" type="HTMLCollection"/>
-<var name="vrows" type="int" />
-<var name="doc" type="Document"/>
-<load var="doc" href="tablesection"
willBeModified="true"/>
-<getElementsByTagName interface="Document" obj="doc"
var="nodeList" tagname='"thead"'/>
-<assertSize collection="nodeList" size="1"
id="Asize"/>
-<item interface="NodeList" obj="nodeList" var="testNode"
index="0"/>
-<rows interface="HTMLTableSectionElement" obj="testNode"
var="rowsnodeList"/>
-<length interface="HTMLCollection" obj="rowsnodeList"
var="vrows"/>
-<assertEquals actual="vrows" expected="1" id="rowsLink1"
ignoreCase="false"/>
-<deleteRow interface="HTMLTableSectionElement" obj="testNode"
index="0"/>
-<rows interface="HTMLTableSectionElement" obj="testNode"
var="rowsnodeList"/>
-<length interface="HTMLCollection" obj="rowsnodeList"
var="vrows"/>
-<assertEquals actual="vrows" expected="0" id="rowsLink2"
ignoreCase="false"/>
-</test>
diff --git a/test/testcases/tests/level1/html/HTMLTableSectionElement23.xml
b/test/testcases/tests/level1/html/HTMLTableSectionElement23.xml
new file mode 100644
index 0000000..eb3f972
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLTableSectionElement23.xml
@@ -0,0 +1,51 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xml" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 World Wide Web Consortium,
+(Massachusetts Institute of Technology, Institut National de
+Recherche en Informatique et en Automatique, Keio University). All
+Rights Reserved. This program is distributed under the W3C's Software
+Intellectual Property License. This program is distributed in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
+PURPOSE.
+
+See W3C License
http://www.w3.org/Consortium/Legal/ for more details.
+
+-->
+<!DOCTYPE test SYSTEM "dom1.dtd">
+<test
xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1"
name="HTMLTableSectionElement23">
+<metadata>
+<title>HTMLTableSectionElement23</title>
+<creator>NIST</creator>
+<description>
+ The deleteRow() method deletes a row from this section.
+
+ Retrieve the first TFOOT element and invoke the deleteRow() method
+ with an index of 0. The nuber of rows in the TFOOT section before
+ the deletion of the row is one. After the row is deleted the number
+ of rows in the TFOOT section is zero.
+</description>
+<contributor>Rick Rivello</contributor>
+<date qualifier="created">2002-05-02</date>
+<subject
resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-o...
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="rowsnodeList" type="HTMLCollection"/>
+<var name="vrows" type="int" />
+<var name="doc" type="Document"/>
+<load var="doc" href="tablesection"
willBeModified="true"/>
+<getElementsByTagName interface="Document" obj="doc"
var="nodeList" tagname='"tfoot"'/>
+<assertSize collection="nodeList" size="1"
id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode"
index="0"/>
+<rows interface="HTMLTableSectionElement" obj="testNode"
var="rowsnodeList"/>
+<length interface="HTMLCollection" obj="rowsnodeList"
var="vrows"/>
+<assertEquals actual="vrows" expected="1" id="rowsLink1"
ignoreCase="false"/>
+<deleteRow interface="HTMLTableSectionElement" obj="testNode"
index="0"/>
+<rows interface="HTMLTableSectionElement" obj="testNode"
var="rowsnodeList"/>
+<length interface="HTMLCollection" obj="rowsnodeList"
var="vrows"/>
+<assertEquals actual="vrows" expected="0" id="rowsLink2"
ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLTableSectionElement23.xml.kfail
b/test/testcases/tests/level1/html/HTMLTableSectionElement23.xml.kfail
deleted file mode 100644
index eb3f972..0000000
--- a/test/testcases/tests/level1/html/HTMLTableSectionElement23.xml.kfail
+++ /dev/null
@@ -1,51 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<?xml-stylesheet href="test-to-html.xml" type="text/xml"?>
-
-<!--
-
-Copyright (c) 2001 World Wide Web Consortium,
-(Massachusetts Institute of Technology, Institut National de
-Recherche en Informatique et en Automatique, Keio University). All
-Rights Reserved. This program is distributed under the W3C's Software
-Intellectual Property License. This program is distributed in the
-hope that it will be useful, but WITHOUT ANY WARRANTY; without even
-the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
-PURPOSE.
-
-See W3C License
http://www.w3.org/Consortium/Legal/ for more details.
-
--->
-<!DOCTYPE test SYSTEM "dom1.dtd">
-<test
xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1"
name="HTMLTableSectionElement23">
-<metadata>
-<title>HTMLTableSectionElement23</title>
-<creator>NIST</creator>
-<description>
- The deleteRow() method deletes a row from this section.
-
- Retrieve the first TFOOT element and invoke the deleteRow() method
- with an index of 0. The nuber of rows in the TFOOT section before
- the deletion of the row is one. After the row is deleted the number
- of rows in the TFOOT section is zero.
-</description>
-<contributor>Rick Rivello</contributor>
-<date qualifier="created">2002-05-02</date>
-<subject
resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-o...
-</metadata>
-<var name="nodeList" type="NodeList"/>
-<var name="testNode" type="Node"/>
-<var name="rowsnodeList" type="HTMLCollection"/>
-<var name="vrows" type="int" />
-<var name="doc" type="Document"/>
-<load var="doc" href="tablesection"
willBeModified="true"/>
-<getElementsByTagName interface="Document" obj="doc"
var="nodeList" tagname='"tfoot"'/>
-<assertSize collection="nodeList" size="1"
id="Asize"/>
-<item interface="NodeList" obj="nodeList" var="testNode"
index="0"/>
-<rows interface="HTMLTableSectionElement" obj="testNode"
var="rowsnodeList"/>
-<length interface="HTMLCollection" obj="rowsnodeList"
var="vrows"/>
-<assertEquals actual="vrows" expected="1" id="rowsLink1"
ignoreCase="false"/>
-<deleteRow interface="HTMLTableSectionElement" obj="testNode"
index="0"/>
-<rows interface="HTMLTableSectionElement" obj="testNode"
var="rowsnodeList"/>
-<length interface="HTMLCollection" obj="rowsnodeList"
var="vrows"/>
-<assertEquals actual="vrows" expected="0" id="rowsLink2"
ignoreCase="false"/>
-</test>
diff --git a/test/testcases/tests/level1/html/HTMLTableSectionElement24.xml
b/test/testcases/tests/level1/html/HTMLTableSectionElement24.xml
new file mode 100644
index 0000000..39896e1
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLTableSectionElement24.xml
@@ -0,0 +1,51 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xml" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 World Wide Web Consortium,
+(Massachusetts Institute of Technology, Institut National de
+Recherche en Informatique et en Automatique, Keio University). All
+Rights Reserved. This program is distributed under the W3C's Software
+Intellectual Property License. This program is distributed in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
+PURPOSE.
+
+See W3C License
http://www.w3.org/Consortium/Legal/ for more details.
+
+-->
+<!DOCTYPE test SYSTEM "dom1.dtd">
+<test
xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1"
name="HTMLTableSectionElement24">
+<metadata>
+<title>HTMLTableSectionElement24</title>
+<creator>NIST</creator>
+<description>
+ The deleteRow() method deletes a row from this section.
+
+ Retrieve the first TBODY element and invoke the deleteRow() method
+ with an index of 0. The nuber of rows in the TBODY section before
+ the deletion of the row is two. After the row is deleted the number
+ of rows in the TBODY section is one.
+</description>
+<contributor>Rick Rivello</contributor>
+<date qualifier="created">2002-05-02</date>
+<subject
resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-o...
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="rowsnodeList" type="HTMLCollection"/>
+<var name="vrows" type="int" />
+<var name="doc" type="Document"/>
+<load var="doc" href="tablesection"
willBeModified="true"/>
+<getElementsByTagName interface="Document" obj="doc"
var="nodeList" tagname='"tbody"'/>
+<assertSize collection="nodeList" size="2"
id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode"
index="1"/>
+<rows interface="HTMLTableSectionElement" obj="testNode"
var="rowsnodeList"/>
+<length interface="HTMLCollection" obj="rowsnodeList"
var="vrows"/>
+<assertEquals actual="vrows" expected="2" id="rowsLink1"
ignoreCase="false"/>
+<deleteRow interface="HTMLTableSectionElement" obj="testNode"
index="0"/>
+<rows interface="HTMLTableSectionElement" obj="testNode"
var="rowsnodeList"/>
+<length interface="HTMLCollection" obj="rowsnodeList"
var="vrows"/>
+<assertEquals actual="vrows" expected="1" id="rowsLink2"
ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLTableSectionElement24.xml.kfail
b/test/testcases/tests/level1/html/HTMLTableSectionElement24.xml.kfail
deleted file mode 100644
index 39896e1..0000000
--- a/test/testcases/tests/level1/html/HTMLTableSectionElement24.xml.kfail
+++ /dev/null
@@ -1,51 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<?xml-stylesheet href="test-to-html.xml" type="text/xml"?>
-
-<!--
-
-Copyright (c) 2001 World Wide Web Consortium,
-(Massachusetts Institute of Technology, Institut National de
-Recherche en Informatique et en Automatique, Keio University). All
-Rights Reserved. This program is distributed under the W3C's Software
-Intellectual Property License. This program is distributed in the
-hope that it will be useful, but WITHOUT ANY WARRANTY; without even
-the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
-PURPOSE.
-
-See W3C License
http://www.w3.org/Consortium/Legal/ for more details.
-
--->
-<!DOCTYPE test SYSTEM "dom1.dtd">
-<test
xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1"
name="HTMLTableSectionElement24">
-<metadata>
-<title>HTMLTableSectionElement24</title>
-<creator>NIST</creator>
-<description>
- The deleteRow() method deletes a row from this section.
-
- Retrieve the first TBODY element and invoke the deleteRow() method
- with an index of 0. The nuber of rows in the TBODY section before
- the deletion of the row is two. After the row is deleted the number
- of rows in the TBODY section is one.
-</description>
-<contributor>Rick Rivello</contributor>
-<date qualifier="created">2002-05-02</date>
-<subject
resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-o...
-</metadata>
-<var name="nodeList" type="NodeList"/>
-<var name="testNode" type="Node"/>
-<var name="rowsnodeList" type="HTMLCollection"/>
-<var name="vrows" type="int" />
-<var name="doc" type="Document"/>
-<load var="doc" href="tablesection"
willBeModified="true"/>
-<getElementsByTagName interface="Document" obj="doc"
var="nodeList" tagname='"tbody"'/>
-<assertSize collection="nodeList" size="2"
id="Asize"/>
-<item interface="NodeList" obj="nodeList" var="testNode"
index="1"/>
-<rows interface="HTMLTableSectionElement" obj="testNode"
var="rowsnodeList"/>
-<length interface="HTMLCollection" obj="rowsnodeList"
var="vrows"/>
-<assertEquals actual="vrows" expected="2" id="rowsLink1"
ignoreCase="false"/>
-<deleteRow interface="HTMLTableSectionElement" obj="testNode"
index="0"/>
-<rows interface="HTMLTableSectionElement" obj="testNode"
var="rowsnodeList"/>
-<length interface="HTMLCollection" obj="rowsnodeList"
var="vrows"/>
-<assertEquals actual="vrows" expected="1" id="rowsLink2"
ignoreCase="false"/>
-</test>
diff --git a/test/testcases/tests/level1/html/table06.xml
b/test/testcases/tests/level1/html/table06.xml
new file mode 100644
index 0000000..3d461f6
--- /dev/null
+++ b/test/testcases/tests/level1/html/table06.xml
@@ -0,0 +1,42 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<!--
+
+Copyright (c) 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, Institut National de
+Recherche en Informatique et en Automatique, Keio University). All
+Rights Reserved. This program is distributed under the W3C's Software
+Intellectual Property License. This program is distributed in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
+PURPOSE.
+
+See W3C License
http://www.w3.org/Consortium/Legal/ for more details.
+
+-->
+<!DOCTYPE test SYSTEM "dom1.dtd">
+<test
xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1"
name="table06">
+<metadata>
+<title>table06</title>
+<creator>Netscape</creator>
+<description>
+Vertical alignment of data in cells.
+The value of attribute valign of the tablesection element is read and checked against the
expected value.
+</description>
+<contributor>Sivakiran Tummala</contributor>
+<date qualifier="created">2002-02-15</date>
+<subject
resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-o...
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vsection" type="HTMLTableSectionElement" />
+<var name="vvAlign" type="DOMString" />
+<var name="doc" type="Node"/>
+<load var="doc" href="tablesection"
willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc"
var="nodeList" tagname='"table"'/>
+<assertSize collection="nodeList" size="2"
id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode"
index="1"/>
+<tFoot interface="HTMLTableElement" obj="testNode"
var="vsection"/>
+<vAlign interface="HTMLTableSectionElement" obj="vsection"
var="vvAlign"/>
+<assertEquals actual="vvAlign" expected='"middle"'
id="vAlignLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/table06.xml.kfail
b/test/testcases/tests/level1/html/table06.xml.kfail
deleted file mode 100644
index 3d461f6..0000000
--- a/test/testcases/tests/level1/html/table06.xml.kfail
+++ /dev/null
@@ -1,42 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-
-<!--
-
-Copyright (c) 2001-2004 World Wide Web Consortium,
-(Massachusetts Institute of Technology, Institut National de
-Recherche en Informatique et en Automatique, Keio University). All
-Rights Reserved. This program is distributed under the W3C's Software
-Intellectual Property License. This program is distributed in the
-hope that it will be useful, but WITHOUT ANY WARRANTY; without even
-the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
-PURPOSE.
-
-See W3C License
http://www.w3.org/Consortium/Legal/ for more details.
-
--->
-<!DOCTYPE test SYSTEM "dom1.dtd">
-<test
xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1"
name="table06">
-<metadata>
-<title>table06</title>
-<creator>Netscape</creator>
-<description>
-Vertical alignment of data in cells.
-The value of attribute valign of the tablesection element is read and checked against the
expected value.
-</description>
-<contributor>Sivakiran Tummala</contributor>
-<date qualifier="created">2002-02-15</date>
-<subject
resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-o...
-</metadata>
-<var name="nodeList" type="NodeList"/>
-<var name="testNode" type="Node"/>
-<var name="vsection" type="HTMLTableSectionElement" />
-<var name="vvAlign" type="DOMString" />
-<var name="doc" type="Node"/>
-<load var="doc" href="tablesection"
willBeModified="false"/>
-<getElementsByTagName interface="Document" obj="doc"
var="nodeList" tagname='"table"'/>
-<assertSize collection="nodeList" size="2"
id="Asize"/>
-<item interface="NodeList" obj="nodeList" var="testNode"
index="1"/>
-<tFoot interface="HTMLTableElement" obj="testNode"
var="vsection"/>
-<vAlign interface="HTMLTableSectionElement" obj="vsection"
var="vvAlign"/>
-<assertEquals actual="vvAlign" expected='"middle"'
id="vAlignLink" ignoreCase="false"/>
-</test>
diff --git a/test/testcases/tests/level1/html/table07.xml
b/test/testcases/tests/level1/html/table07.xml
new file mode 100644
index 0000000..4a04d77
--- /dev/null
+++ b/test/testcases/tests/level1/html/table07.xml
@@ -0,0 +1,44 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<!--
+
+Copyright (c) 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, Institut National de
+Recherche en Informatique et en Automatique, Keio University). All
+Rights Reserved. This program is distributed under the W3C's Software
+Intellectual Property License. This program is distributed in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
+PURPOSE.
+
+See W3C License
http://www.w3.org/Consortium/Legal/ for more details.
+
+-->
+<!DOCTYPE test SYSTEM "dom1.dtd">
+<test
xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1"
name="table07">
+<metadata>
+<title>table07</title>
+<creator>Netscape</creator>
+<description>
+The collection of rows in this table section.
+The value of attribute rows of the tablesection element is read and checked against the
expected value.
+</description>
+<contributor>Sivakiran Tummala</contributor>
+<date qualifier="created">2002-02-15</date>
+<subject
resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-o...
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vsection" type="HTMLTableSectionElement" />
+<var name="vcollection" type="HTMLCollection" />
+<var name="vrows" type="int" />
+<var name="doc" type="Node"/>
+<load var="doc" href="tablesection"
willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc"
var="nodeList" tagname='"table"'/>
+<assertSize collection="nodeList" size="2"
id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode"
index="1"/>
+<tFoot interface="HTMLTableElement" obj="testNode"
var="vsection"/>
+<rows interface="HTMLTableSectionElement" obj="vsection"
var="vcollection"/>
+<length interface="HTMLCollection" obj="vcollection"
var="vrows" />
+<assertEquals actual="vrows" expected="1" id="vrowsLink"
ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/table07.xml.kfail
b/test/testcases/tests/level1/html/table07.xml.kfail
deleted file mode 100644
index 4a04d77..0000000
--- a/test/testcases/tests/level1/html/table07.xml.kfail
+++ /dev/null
@@ -1,44 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-
-<!--
-
-Copyright (c) 2001-2004 World Wide Web Consortium,
-(Massachusetts Institute of Technology, Institut National de
-Recherche en Informatique et en Automatique, Keio University). All
-Rights Reserved. This program is distributed under the W3C's Software
-Intellectual Property License. This program is distributed in the
-hope that it will be useful, but WITHOUT ANY WARRANTY; without even
-the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
-PURPOSE.
-
-See W3C License
http://www.w3.org/Consortium/Legal/ for more details.
-
--->
-<!DOCTYPE test SYSTEM "dom1.dtd">
-<test
xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1"
name="table07">
-<metadata>
-<title>table07</title>
-<creator>Netscape</creator>
-<description>
-The collection of rows in this table section.
-The value of attribute rows of the tablesection element is read and checked against the
expected value.
-</description>
-<contributor>Sivakiran Tummala</contributor>
-<date qualifier="created">2002-02-15</date>
-<subject
resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-o...
-</metadata>
-<var name="nodeList" type="NodeList"/>
-<var name="testNode" type="Node"/>
-<var name="vsection" type="HTMLTableSectionElement" />
-<var name="vcollection" type="HTMLCollection" />
-<var name="vrows" type="int" />
-<var name="doc" type="Node"/>
-<load var="doc" href="tablesection"
willBeModified="false"/>
-<getElementsByTagName interface="Document" obj="doc"
var="nodeList" tagname='"table"'/>
-<assertSize collection="nodeList" size="2"
id="Asize"/>
-<item interface="NodeList" obj="nodeList" var="testNode"
index="1"/>
-<tFoot interface="HTMLTableElement" obj="testNode"
var="vsection"/>
-<rows interface="HTMLTableSectionElement" obj="vsection"
var="vcollection"/>
-<length interface="HTMLCollection" obj="vcollection"
var="vrows" />
-<assertEquals actual="vrows" expected="1" id="vrowsLink"
ignoreCase="false"/>
-</test>
diff --git a/test/testcases/tests/level1/html/table15.xml
b/test/testcases/tests/level1/html/table15.xml
new file mode 100644
index 0000000..89455c3
--- /dev/null
+++ b/test/testcases/tests/level1/html/table15.xml
@@ -0,0 +1,44 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<!--
+
+Copyright (c) 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, Institut National de
+Recherche en Informatique et en Automatique, Keio University). All
+Rights Reserved. This program is distributed under the W3C's Software
+Intellectual Property License. This program is distributed in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
+PURPOSE.
+
+See W3C License
http://www.w3.org/Consortium/Legal/ for more details.
+
+-->
+<!DOCTYPE test SYSTEM "dom1.dtd">
+<test
xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1"
name="table15">
+<metadata>
+<title>table15</title>
+<creator>Netscape</creator>
+<description>
+The collection of rows in this table section.
+The value of attribute rows of the tablesection element is read and checked against the
expected value.
+</description>
+<contributor>Sivakiran Tummala</contributor>
+<date qualifier="created">2002-02-15</date>
+<subject
resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-o...
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vsection" type="HTMLTableSectionElement" />
+<var name="vcollection" type="HTMLCollection" />
+<var name="vrows" type="int" />
+<var name="doc" type="Node"/>
+<load var="doc" href="tablesection"
willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc"
var="nodeList" tagname='"table"'/>
+<assertSize collection="nodeList" size="2"
id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode"
index="1"/>
+<tHead interface="HTMLTableElement" obj="testNode"
var="vsection"/>
+<rows interface="HTMLTableSectionElement" obj="vsection"
var="vcollection"/>
+<length interface="HTMLCollection" obj="vcollection"
var="vrows" />
+<assertEquals actual="vrows" expected="1" id="vrowsLink"
ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/table15.xml.kfail
b/test/testcases/tests/level1/html/table15.xml.kfail
deleted file mode 100644
index 89455c3..0000000
--- a/test/testcases/tests/level1/html/table15.xml.kfail
+++ /dev/null
@@ -1,44 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-
-<!--
-
-Copyright (c) 2001-2004 World Wide Web Consortium,
-(Massachusetts Institute of Technology, Institut National de
-Recherche en Informatique et en Automatique, Keio University). All
-Rights Reserved. This program is distributed under the W3C's Software
-Intellectual Property License. This program is distributed in the
-hope that it will be useful, but WITHOUT ANY WARRANTY; without even
-the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
-PURPOSE.
-
-See W3C License
http://www.w3.org/Consortium/Legal/ for more details.
-
--->
-<!DOCTYPE test SYSTEM "dom1.dtd">
-<test
xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1"
name="table15">
-<metadata>
-<title>table15</title>
-<creator>Netscape</creator>
-<description>
-The collection of rows in this table section.
-The value of attribute rows of the tablesection element is read and checked against the
expected value.
-</description>
-<contributor>Sivakiran Tummala</contributor>
-<date qualifier="created">2002-02-15</date>
-<subject
resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-o...
-</metadata>
-<var name="nodeList" type="NodeList"/>
-<var name="testNode" type="Node"/>
-<var name="vsection" type="HTMLTableSectionElement" />
-<var name="vcollection" type="HTMLCollection" />
-<var name="vrows" type="int" />
-<var name="doc" type="Node"/>
-<load var="doc" href="tablesection"
willBeModified="false"/>
-<getElementsByTagName interface="Document" obj="doc"
var="nodeList" tagname='"table"'/>
-<assertSize collection="nodeList" size="2"
id="Asize"/>
-<item interface="NodeList" obj="nodeList" var="testNode"
index="1"/>
-<tHead interface="HTMLTableElement" obj="testNode"
var="vsection"/>
-<rows interface="HTMLTableSectionElement" obj="vsection"
var="vcollection"/>
-<length interface="HTMLCollection" obj="vcollection"
var="vrows" />
-<assertEquals actual="vrows" expected="1" id="vrowsLink"
ignoreCase="false"/>
-</test>
diff --git a/test/testcases/tests/level2/html/HTMLTableElement40.xml
b/test/testcases/tests/level2/html/HTMLTableElement40.xml
new file mode 100644
index 0000000..154b348
--- /dev/null
+++ b/test/testcases/tests/level2/html/HTMLTableElement40.xml
@@ -0,0 +1,50 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<!--
+
+Copyright (c) 2001 World Wide Web Consortium,
+(Massachusetts Institute of Technology, Institut National de
+Recherche en Informatique et en Automatique, Keio University). All
+Rights Reserved. This program is distributed under the W3C's Software
+Intellectual Property License. This program is distributed in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
+PURPOSE.
+
+See W3C License
http://www.w3.org/Consortium/Legal/ for more details.
+
+-->
+<!DOCTYPE test SYSTEM "dom2.dtd">
+<test
xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-2"
name="HTMLTableElement40">
+<metadata>
+<title>HTMLTableElement40</title>
+<creator>NIST</creator>
+<description>
+ The deleteRow() method deletes a table row. If the index is -1
+ the last row of the table is deleted.
+
+ Retrieve the second TABLE element and invoke the deleteRow() method
+ with an index of negative one. Currently there are four rows in the
+ table. The deleteRow() method is called and now there should be three.
+</description>
+<contributor>Rick Rivello</contributor>
+<date qualifier="created">2002-11-02</date>
+<subject
resource="http://www.w3.org/TR/DOM-Level-2-HTML/html#ID-13114938&quo...
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="rowsnodeList" type="HTMLCollection"/>
+<var name="vrows" type="int"/>
+<var name="doc" type="Document"/>
+<load var="doc" href="table" willBeModified="true"/>
+<getElementsByTagName interface="Document" obj="doc"
var="nodeList" tagname=""table""/>
+<assertSize collection="nodeList" size="3"
id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode"
index="1"/>
+<rows interface="HTMLTableSectionElement" obj="testNode"
var="rowsnodeList"/>
+<length interface="HTMLCollection" obj="rowsnodeList"
var="vrows"/>
+<assertEquals actual="vrows" expected="4" id="rowsLink1"
ignoreCase="false"/>
+<deleteRow interface="HTMLTableElement" obj="testNode"
index="-1"/>
+<rows interface="HTMLTableSectionElement" obj="testNode"
var="rowsnodeList"/>
+<length interface="HTMLCollection" obj="rowsnodeList"
var="vrows"/>
+<assertEquals actual="vrows" expected="3" id="rowsLink2"
ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level2/html/HTMLTableElement40.xml.kfail
b/test/testcases/tests/level2/html/HTMLTableElement40.xml.kfail
deleted file mode 100644
index 154b348..0000000
--- a/test/testcases/tests/level2/html/HTMLTableElement40.xml.kfail
+++ /dev/null
@@ -1,50 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-
-<!--
-
-Copyright (c) 2001 World Wide Web Consortium,
-(Massachusetts Institute of Technology, Institut National de
-Recherche en Informatique et en Automatique, Keio University). All
-Rights Reserved. This program is distributed under the W3C's Software
-Intellectual Property License. This program is distributed in the
-hope that it will be useful, but WITHOUT ANY WARRANTY; without even
-the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
-PURPOSE.
-
-See W3C License
http://www.w3.org/Consortium/Legal/ for more details.
-
--->
-<!DOCTYPE test SYSTEM "dom2.dtd">
-<test
xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-2"
name="HTMLTableElement40">
-<metadata>
-<title>HTMLTableElement40</title>
-<creator>NIST</creator>
-<description>
- The deleteRow() method deletes a table row. If the index is -1
- the last row of the table is deleted.
-
- Retrieve the second TABLE element and invoke the deleteRow() method
- with an index of negative one. Currently there are four rows in the
- table. The deleteRow() method is called and now there should be three.
-</description>
-<contributor>Rick Rivello</contributor>
-<date qualifier="created">2002-11-02</date>
-<subject
resource="http://www.w3.org/TR/DOM-Level-2-HTML/html#ID-13114938&quo...
-</metadata>
-<var name="nodeList" type="NodeList"/>
-<var name="testNode" type="Node"/>
-<var name="rowsnodeList" type="HTMLCollection"/>
-<var name="vrows" type="int"/>
-<var name="doc" type="Document"/>
-<load var="doc" href="table" willBeModified="true"/>
-<getElementsByTagName interface="Document" obj="doc"
var="nodeList" tagname=""table""/>
-<assertSize collection="nodeList" size="3"
id="Asize"/>
-<item interface="NodeList" obj="nodeList" var="testNode"
index="1"/>
-<rows interface="HTMLTableSectionElement" obj="testNode"
var="rowsnodeList"/>
-<length interface="HTMLCollection" obj="rowsnodeList"
var="vrows"/>
-<assertEquals actual="vrows" expected="4" id="rowsLink1"
ignoreCase="false"/>
-<deleteRow interface="HTMLTableElement" obj="testNode"
index="-1"/>
-<rows interface="HTMLTableSectionElement" obj="testNode"
var="rowsnodeList"/>
-<length interface="HTMLCollection" obj="rowsnodeList"
var="vrows"/>
-<assertEquals actual="vrows" expected="3" id="rowsLink2"
ignoreCase="false"/>
-</test>
diff --git a/test/testcases/tests/level2/html/HTMLTableRowElement20.xml
b/test/testcases/tests/level2/html/HTMLTableRowElement20.xml
new file mode 100644
index 0000000..a879e13
--- /dev/null
+++ b/test/testcases/tests/level2/html/HTMLTableRowElement20.xml
@@ -0,0 +1,68 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<!--
+
+Copyright (c) 2001 World Wide Web Consortium,
+(Massachusetts Institute of Technology, Institut National de
+Recherche en Informatique et en Automatique, Keio University). All
+Rights Reserved. This program is distributed under the W3C's Software
+Intellectual Property License. This program is distributed in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
+PURPOSE.
+
+See W3C License
http://www.w3.org/Consortium/Legal/ for more details.
+
+-->
+<!DOCTYPE test SYSTEM "dom2.dtd">
+<test
xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-2"
name="HTMLTableRowElement20">
+<metadata>
+<title>HTMLTableRowElement20</title>
+<creator>NIST</creator>
+<description>
+ The insertCell() method inserts an empty TD cell into this row.
+ If index is -1 or equal to the number of cells, the new cell is
+ appended.
+
+
+ Retrieve the fourth TR element and examine the value of
+ the cells length attribute which should be set to six.
+ Check the value of the last TD element. Invoke the
+ insertCell() with an index of negative one
+ which will append the empty cell to the end of the list.
+ Check the value of the newly created cell and make sure it is null
+ and also the numbers of cells should now be seven.
+</description>
+<contributor>Rick Rivello</contributor>
+<date qualifier="created">2002-11-07</date>
+<subject
resource="http://www.w3.org/TR/DOM-Level-2-HTML/html#ID-68927016&quo...
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="cellsnodeList" type="HTMLCollection"/>
+<var name="testNode" type="Node"/>
+<var name="trNode" type="Node"/>
+<var name="cellNode" type="Node"/>
+<var name="value" type="DOMString"/>
+<var name="newCell" type="HTMLElement"/>
+<var name="vcells" type="int"/>
+<var name="doc" type="Document"/>
+<load var="doc" href="tablerow"
willBeModified="true"/>
+<getElementsByTagName interface="Document" obj="doc"
var="nodeList" tagname=""tr""/>
+<assertSize collection="nodeList" size="5"
id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode"
index="3"/>
+<cells interface="HTMLTableRowElement" obj="testNode"
var="cellsnodeList"/>
+<length interface="HTMLCollection" obj="cellsnodeList"
var="vcells"/>
+<assertEquals actual="vcells" expected="6"
id="cellsLink1" ignoreCase="false"/>
+<item interface="HTMLCollection" obj="cellsnodeList"
var="trNode" index="5"/>
+<firstChild interface="Node" obj="trNode"
var="cellNode"/>
+<nodeValue obj="cellNode" var="value"/>
+<assertEquals actual="value" expected=""1230 North Ave.
Dallas, Texas 98551"" id="value1Link"
ignoreCase="false"/>
+<insertCell interface="HTMLTableRowElement" obj="testNode"
var="newCell" index="-1"/>
+<item interface="NodeList" obj="nodeList" var="testNode"
index="3"/>
+<cells interface="HTMLTableRowElement" obj="testNode"
var="cellsnodeList"/>
+<length interface="HTMLCollection" obj="cellsnodeList"
var="vcells"/>
+<assertEquals actual="vcells" expected="7"
id="cellsLink2" ignoreCase="false"/>
+<item interface="HTMLCollection" obj="cellsnodeList"
var="trNode" index="6"/>
+<firstChild interface="Node" obj="trNode"
var="cellNode"/>
+<assertNull actual="cellNode" id="value2Link"/>
+</test>
diff --git a/test/testcases/tests/level2/html/HTMLTableRowElement20.xml.kfail
b/test/testcases/tests/level2/html/HTMLTableRowElement20.xml.kfail
deleted file mode 100644
index a879e13..0000000
--- a/test/testcases/tests/level2/html/HTMLTableRowElement20.xml.kfail
+++ /dev/null
@@ -1,68 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-
-<!--
-
-Copyright (c) 2001 World Wide Web Consortium,
-(Massachusetts Institute of Technology, Institut National de
-Recherche en Informatique et en Automatique, Keio University). All
-Rights Reserved. This program is distributed under the W3C's Software
-Intellectual Property License. This program is distributed in the
-hope that it will be useful, but WITHOUT ANY WARRANTY; without even
-the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
-PURPOSE.
-
-See W3C License
http://www.w3.org/Consortium/Legal/ for more details.
-
--->
-<!DOCTYPE test SYSTEM "dom2.dtd">
-<test
xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-2"
name="HTMLTableRowElement20">
-<metadata>
-<title>HTMLTableRowElement20</title>
-<creator>NIST</creator>
-<description>
- The insertCell() method inserts an empty TD cell into this row.
- If index is -1 or equal to the number of cells, the new cell is
- appended.
-
-
- Retrieve the fourth TR element and examine the value of
- the cells length attribute which should be set to six.
- Check the value of the last TD element. Invoke the
- insertCell() with an index of negative one
- which will append the empty cell to the end of the list.
- Check the value of the newly created cell and make sure it is null
- and also the numbers of cells should now be seven.
-</description>
-<contributor>Rick Rivello</contributor>
-<date qualifier="created">2002-11-07</date>
-<subject
resource="http://www.w3.org/TR/DOM-Level-2-HTML/html#ID-68927016&quo...
-</metadata>
-<var name="nodeList" type="NodeList"/>
-<var name="cellsnodeList" type="HTMLCollection"/>
-<var name="testNode" type="Node"/>
-<var name="trNode" type="Node"/>
-<var name="cellNode" type="Node"/>
-<var name="value" type="DOMString"/>
-<var name="newCell" type="HTMLElement"/>
-<var name="vcells" type="int"/>
-<var name="doc" type="Document"/>
-<load var="doc" href="tablerow"
willBeModified="true"/>
-<getElementsByTagName interface="Document" obj="doc"
var="nodeList" tagname=""tr""/>
-<assertSize collection="nodeList" size="5"
id="Asize"/>
-<item interface="NodeList" obj="nodeList" var="testNode"
index="3"/>
-<cells interface="HTMLTableRowElement" obj="testNode"
var="cellsnodeList"/>
-<length interface="HTMLCollection" obj="cellsnodeList"
var="vcells"/>
-<assertEquals actual="vcells" expected="6"
id="cellsLink1" ignoreCase="false"/>
-<item interface="HTMLCollection" obj="cellsnodeList"
var="trNode" index="5"/>
-<firstChild interface="Node" obj="trNode"
var="cellNode"/>
-<nodeValue obj="cellNode" var="value"/>
-<assertEquals actual="value" expected=""1230 North Ave.
Dallas, Texas 98551"" id="value1Link"
ignoreCase="false"/>
-<insertCell interface="HTMLTableRowElement" obj="testNode"
var="newCell" index="-1"/>
-<item interface="NodeList" obj="nodeList" var="testNode"
index="3"/>
-<cells interface="HTMLTableRowElement" obj="testNode"
var="cellsnodeList"/>
-<length interface="HTMLCollection" obj="cellsnodeList"
var="vcells"/>
-<assertEquals actual="vcells" expected="7"
id="cellsLink2" ignoreCase="false"/>
-<item interface="HTMLCollection" obj="cellsnodeList"
var="trNode" index="6"/>
-<firstChild interface="Node" obj="trNode"
var="cellNode"/>
-<assertNull actual="cellNode" id="value2Link"/>
-</test>
diff --git a/test/testcases/tests/level2/html/HTMLTableRowElement21.xml
b/test/testcases/tests/level2/html/HTMLTableRowElement21.xml
new file mode 100644
index 0000000..9d5a598
--- /dev/null
+++ b/test/testcases/tests/level2/html/HTMLTableRowElement21.xml
@@ -0,0 +1,67 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<!--
+
+Copyright (c) 2001 World Wide Web Consortium,
+(Massachusetts Institute of Technology, Institut National de
+Recherche en Informatique et en Automatique, Keio University). All
+Rights Reserved. This program is distributed under the W3C's Software
+Intellectual Property License. This program is distributed in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
+PURPOSE.
+
+See W3C License
http://www.w3.org/Consortium/Legal/ for more details.
+
+-->
+<!DOCTYPE test SYSTEM "dom2.dtd">
+<test
xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-2"
name="HTMLTableRowElement21">
+<metadata>
+<title>HTMLTableRowElement21</title>
+<creator>NIST</creator>
+<description>
+ The deleteCell() method deletes a cell from the currtent row. If
+ the index is -1 the last cell in the row is deleted.
+
+
+ Retrieve the fourth TR element and examine the value of
+ the cells length attribute which should be set to six.
+ Check the value of the last TD element. Invoke the
+ deleteCell() with an index of negative one
+ which will delete the last cell in the row.
+ Check the value of the of the last cell
+ and also the numbers of cells should now be five.
+</description>
+<contributor>Rick Rivello</contributor>
+<date qualifier="created">2002-11-07</date>
+<subject
resource="http://www.w3.org/TR/DOM-Level-2-HTML/html#ID-11738598&quo...
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="cellsnodeList" type="HTMLCollection"/>
+<var name="testNode" type="Node"/>
+<var name="trNode" type="Node"/>
+<var name="cellNode" type="Node"/>
+<var name="value" type="DOMString"/>
+<var name="vcells" type="int"/>
+<var name="doc" type="Document"/>
+<load var="doc" href="tablerow"
willBeModified="true"/>
+<getElementsByTagName interface="Document" obj="doc"
var="nodeList" tagname=""tr""/>
+<assertSize collection="nodeList" size="5"
id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode"
index="3"/>
+<cells interface="HTMLTableRowElement" obj="testNode"
var="cellsnodeList"/>
+<length interface="HTMLCollection" obj="cellsnodeList"
var="vcells"/>
+<assertEquals actual="vcells" expected="6"
id="cellsLink1" ignoreCase="false"/>
+<item interface="HTMLCollection" obj="cellsnodeList"
var="trNode" index="5"/>
+<firstChild interface="Node" obj="trNode"
var="cellNode"/>
+<nodeValue obj="cellNode" var="value"/>
+<assertEquals actual="value" expected=""1230 North Ave.
Dallas, Texas 98551"" id="value1Link"
ignoreCase="false"/>
+<deleteCell interface="HTMLTableRowElement" obj="testNode"
index="-1"/>
+<item interface="NodeList" obj="nodeList" var="testNode"
index="3"/>
+<cells interface="HTMLTableRowElement" obj="testNode"
var="cellsnodeList"/>
+<length interface="HTMLCollection" obj="cellsnodeList"
var="vcells"/>
+<assertEquals actual="vcells" expected="5"
id="cellsLink2" ignoreCase="false"/>
+<item interface="HTMLCollection" obj="cellsnodeList"
var="trNode" index="4"/>
+<firstChild interface="Node" obj="trNode"
var="cellNode"/>
+<nodeValue obj="cellNode" var="value"/>
+<assertEquals actual="value" expected='"Female"'
id="value2Link" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level2/html/HTMLTableRowElement21.xml.kfail
b/test/testcases/tests/level2/html/HTMLTableRowElement21.xml.kfail
deleted file mode 100644
index 9d5a598..0000000
--- a/test/testcases/tests/level2/html/HTMLTableRowElement21.xml.kfail
+++ /dev/null
@@ -1,67 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-
-<!--
-
-Copyright (c) 2001 World Wide Web Consortium,
-(Massachusetts Institute of Technology, Institut National de
-Recherche en Informatique et en Automatique, Keio University). All
-Rights Reserved. This program is distributed under the W3C's Software
-Intellectual Property License. This program is distributed in the
-hope that it will be useful, but WITHOUT ANY WARRANTY; without even
-the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
-PURPOSE.
-
-See W3C License
http://www.w3.org/Consortium/Legal/ for more details.
-
--->
-<!DOCTYPE test SYSTEM "dom2.dtd">
-<test
xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-2"
name="HTMLTableRowElement21">
-<metadata>
-<title>HTMLTableRowElement21</title>
-<creator>NIST</creator>
-<description>
- The deleteCell() method deletes a cell from the currtent row. If
- the index is -1 the last cell in the row is deleted.
-
-
- Retrieve the fourth TR element and examine the value of
- the cells length attribute which should be set to six.
- Check the value of the last TD element. Invoke the
- deleteCell() with an index of negative one
- which will delete the last cell in the row.
- Check the value of the of the last cell
- and also the numbers of cells should now be five.
-</description>
-<contributor>Rick Rivello</contributor>
-<date qualifier="created">2002-11-07</date>
-<subject
resource="http://www.w3.org/TR/DOM-Level-2-HTML/html#ID-11738598&quo...
-</metadata>
-<var name="nodeList" type="NodeList"/>
-<var name="cellsnodeList" type="HTMLCollection"/>
-<var name="testNode" type="Node"/>
-<var name="trNode" type="Node"/>
-<var name="cellNode" type="Node"/>
-<var name="value" type="DOMString"/>
-<var name="vcells" type="int"/>
-<var name="doc" type="Document"/>
-<load var="doc" href="tablerow"
willBeModified="true"/>
-<getElementsByTagName interface="Document" obj="doc"
var="nodeList" tagname=""tr""/>
-<assertSize collection="nodeList" size="5"
id="Asize"/>
-<item interface="NodeList" obj="nodeList" var="testNode"
index="3"/>
-<cells interface="HTMLTableRowElement" obj="testNode"
var="cellsnodeList"/>
-<length interface="HTMLCollection" obj="cellsnodeList"
var="vcells"/>
-<assertEquals actual="vcells" expected="6"
id="cellsLink1" ignoreCase="false"/>
-<item interface="HTMLCollection" obj="cellsnodeList"
var="trNode" index="5"/>
-<firstChild interface="Node" obj="trNode"
var="cellNode"/>
-<nodeValue obj="cellNode" var="value"/>
-<assertEquals actual="value" expected=""1230 North Ave.
Dallas, Texas 98551"" id="value1Link"
ignoreCase="false"/>
-<deleteCell interface="HTMLTableRowElement" obj="testNode"
index="-1"/>
-<item interface="NodeList" obj="nodeList" var="testNode"
index="3"/>
-<cells interface="HTMLTableRowElement" obj="testNode"
var="cellsnodeList"/>
-<length interface="HTMLCollection" obj="cellsnodeList"
var="vcells"/>
-<assertEquals actual="vcells" expected="5"
id="cellsLink2" ignoreCase="false"/>
-<item interface="HTMLCollection" obj="cellsnodeList"
var="trNode" index="4"/>
-<firstChild interface="Node" obj="trNode"
var="cellNode"/>
-<nodeValue obj="cellNode" var="value"/>
-<assertEquals actual="value" expected='"Female"'
id="value2Link" ignoreCase="false"/>
-</test>
diff --git a/test/testcases/tests/level2/html/HTMLTableSectionElement30.xml
b/test/testcases/tests/level2/html/HTMLTableSectionElement30.xml
new file mode 100644
index 0000000..8fd17c2
--- /dev/null
+++ b/test/testcases/tests/level2/html/HTMLTableSectionElement30.xml
@@ -0,0 +1,55 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<!--
+
+Copyright (c) 2001 World Wide Web Consortium,
+(Massachusetts Institute of Technology, Institut National de
+Recherche en Informatique et en Automatique, Keio University). All
+Rights Reserved. This program is distributed under the W3C's Software
+Intellectual Property License. This program is distributed in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
+PURPOSE.
+
+See W3C License
http://www.w3.org/Consortium/Legal/ for more details.
+
+-->
+<!DOCTYPE test SYSTEM "dom2.dtd">
+<test
xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-2"
name="HTMLTableSectionElement30">
+<metadata>
+<title>HTMLTableSectionElement30</title>
+<creator>NIST</creator>
+<description>
+ The insertRow() method inserts a new empty table row. The new
+ row is inserted immediately before the current indexth row in this
+ section. If index is -1 or equal to the number of rows in this section,
+ the new row is appended.
+
+ Retrieve the first THEAD element and invoke the insertRow() method
+ with an index of negative one. Since the index is negative one the
+ new row is appended.
+ After the new row is appended the number of rows in the THEAD
+ section is two.
+</description>
+<contributor>Rick Rivello</contributor>
+<date qualifier="created">2002-11-07</date>
+<subject
resource="http://www.w3.org/TR/DOM-Level-2-HTML/html#ID-93995626&quo...
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="newRow" type="HTMLElement"/>
+<var name="rowsnodeList" type="HTMLCollection"/>
+<var name="vrows" type="int"/>
+<var name="doc" type="Document"/>
+<load var="doc" href="tablesection"
willBeModified="true"/>
+<getElementsByTagName interface="Document" obj="doc"
var="nodeList" tagname=""thead""/>
+<assertSize collection="nodeList" size="1"
id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode"
index="0"/>
+<rows interface="HTMLTableSectionElement" obj="testNode"
var="rowsnodeList"/>
+<length interface="HTMLCollection" obj="rowsnodeList"
var="vrows"/>
+<assertEquals actual="vrows" expected="1" id="rowsLink1"
ignoreCase="false"/>
+<insertRow interface="HTMLTableSectionElement" obj="testNode"
var="newRow" index="-1"/>
+<rows interface="HTMLTableSectionElement" obj="testNode"
var="rowsnodeList"/>
+<length interface="HTMLCollection" obj="rowsnodeList"
var="vrows"/>
+<assertEquals actual="vrows" expected="2" id="rowsLink2"
ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level2/html/HTMLTableSectionElement30.xml.kfail
b/test/testcases/tests/level2/html/HTMLTableSectionElement30.xml.kfail
deleted file mode 100644
index 8fd17c2..0000000
--- a/test/testcases/tests/level2/html/HTMLTableSectionElement30.xml.kfail
+++ /dev/null
@@ -1,55 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-
-<!--
-
-Copyright (c) 2001 World Wide Web Consortium,
-(Massachusetts Institute of Technology, Institut National de
-Recherche en Informatique et en Automatique, Keio University). All
-Rights Reserved. This program is distributed under the W3C's Software
-Intellectual Property License. This program is distributed in the
-hope that it will be useful, but WITHOUT ANY WARRANTY; without even
-the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
-PURPOSE.
-
-See W3C License
http://www.w3.org/Consortium/Legal/ for more details.
-
--->
-<!DOCTYPE test SYSTEM "dom2.dtd">
-<test
xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-2"
name="HTMLTableSectionElement30">
-<metadata>
-<title>HTMLTableSectionElement30</title>
-<creator>NIST</creator>
-<description>
- The insertRow() method inserts a new empty table row. The new
- row is inserted immediately before the current indexth row in this
- section. If index is -1 or equal to the number of rows in this section,
- the new row is appended.
-
- Retrieve the first THEAD element and invoke the insertRow() method
- with an index of negative one. Since the index is negative one the
- new row is appended.
- After the new row is appended the number of rows in the THEAD
- section is two.
-</description>
-<contributor>Rick Rivello</contributor>
-<date qualifier="created">2002-11-07</date>
-<subject
resource="http://www.w3.org/TR/DOM-Level-2-HTML/html#ID-93995626&quo...
-</metadata>
-<var name="nodeList" type="NodeList"/>
-<var name="testNode" type="Node"/>
-<var name="newRow" type="HTMLElement"/>
-<var name="rowsnodeList" type="HTMLCollection"/>
-<var name="vrows" type="int"/>
-<var name="doc" type="Document"/>
-<load var="doc" href="tablesection"
willBeModified="true"/>
-<getElementsByTagName interface="Document" obj="doc"
var="nodeList" tagname=""thead""/>
-<assertSize collection="nodeList" size="1"
id="Asize"/>
-<item interface="NodeList" obj="nodeList" var="testNode"
index="0"/>
-<rows interface="HTMLTableSectionElement" obj="testNode"
var="rowsnodeList"/>
-<length interface="HTMLCollection" obj="rowsnodeList"
var="vrows"/>
-<assertEquals actual="vrows" expected="1" id="rowsLink1"
ignoreCase="false"/>
-<insertRow interface="HTMLTableSectionElement" obj="testNode"
var="newRow" index="-1"/>
-<rows interface="HTMLTableSectionElement" obj="testNode"
var="rowsnodeList"/>
-<length interface="HTMLCollection" obj="rowsnodeList"
var="vrows"/>
-<assertEquals actual="vrows" expected="2" id="rowsLink2"
ignoreCase="false"/>
-</test>
diff --git a/test/testcases/tests/level2/html/HTMLTableSectionElement31.xml
b/test/testcases/tests/level2/html/HTMLTableSectionElement31.xml
new file mode 100644
index 0000000..55464e2
--- /dev/null
+++ b/test/testcases/tests/level2/html/HTMLTableSectionElement31.xml
@@ -0,0 +1,53 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<!--
+
+Copyright (c) 2001 World Wide Web Consortium,
+(Massachusetts Institute of Technology, Institut National de
+Recherche en Informatique et en Automatique, Keio University). All
+Rights Reserved. This program is distributed under the W3C's Software
+Intellectual Property License. This program is distributed in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
+PURPOSE.
+
+See W3C License
http://www.w3.org/Consortium/Legal/ for more details.
+
+-->
+<!DOCTYPE test SYSTEM "dom2.dtd">
+<test
xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-2"
name="HTMLTableSectionElement31">
+<metadata>
+<title>HTMLTableSectionElement31</title>
+<creator>NIST</creator>
+<description>
+ The deleteRow() method deletes a row from this section. The index
+ starts from 0 and is relative only to the rows contained inside
+ this section, not all the rows in the table. If the index is -1
+ the last row will be deleted.
+
+ Retrieve the second TBODY element and invoke the deleteRow() method
+ with an index of -1. The nuber of rows in the THEAD section before
+ the deletion of the row is two. After the row is deleted the number
+ of rows in the TBODY section is one.
+</description>
+<contributor>Rick Rivello</contributor>
+<date qualifier="created">2002-11-07</date>
+<subject
resource="http://www.w3.org/TR/DOM-Level-2-HTML/html#ID-5625626"...
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="rowsnodeList" type="HTMLCollection"/>
+<var name="vrows" type="int"/>
+<var name="doc" type="Document"/>
+<load var="doc" href="tablesection"
willBeModified="true"/>
+<getElementsByTagName interface="Document" obj="doc"
var="nodeList" tagname=""tbody""/>
+<assertSize collection="nodeList" size="2"
id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode"
index="1"/>
+<rows interface="HTMLTableSectionElement" obj="testNode"
var="rowsnodeList"/>
+<length interface="HTMLCollection" obj="rowsnodeList"
var="vrows"/>
+<assertEquals actual="vrows" expected="2" id="rowsLink1"
ignoreCase="false"/>
+<deleteRow interface="HTMLTableSectionElement" obj="testNode"
index="-1"/>
+<rows interface="HTMLTableSectionElement" obj="testNode"
var="rowsnodeList"/>
+<length interface="HTMLCollection" obj="rowsnodeList"
var="vrows"/>
+<assertEquals actual="vrows" expected="1" id="rowsLink2"
ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level2/html/HTMLTableSectionElement31.xml.kfail
b/test/testcases/tests/level2/html/HTMLTableSectionElement31.xml.kfail
deleted file mode 100644
index 55464e2..0000000
--- a/test/testcases/tests/level2/html/HTMLTableSectionElement31.xml.kfail
+++ /dev/null
@@ -1,53 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-
-<!--
-
-Copyright (c) 2001 World Wide Web Consortium,
-(Massachusetts Institute of Technology, Institut National de
-Recherche en Informatique et en Automatique, Keio University). All
-Rights Reserved. This program is distributed under the W3C's Software
-Intellectual Property License. This program is distributed in the
-hope that it will be useful, but WITHOUT ANY WARRANTY; without even
-the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
-PURPOSE.
-
-See W3C License
http://www.w3.org/Consortium/Legal/ for more details.
-
--->
-<!DOCTYPE test SYSTEM "dom2.dtd">
-<test
xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-2"
name="HTMLTableSectionElement31">
-<metadata>
-<title>HTMLTableSectionElement31</title>
-<creator>NIST</creator>
-<description>
- The deleteRow() method deletes a row from this section. The index
- starts from 0 and is relative only to the rows contained inside
- this section, not all the rows in the table. If the index is -1
- the last row will be deleted.
-
- Retrieve the second TBODY element and invoke the deleteRow() method
- with an index of -1. The nuber of rows in the THEAD section before
- the deletion of the row is two. After the row is deleted the number
- of rows in the TBODY section is one.
-</description>
-<contributor>Rick Rivello</contributor>
-<date qualifier="created">2002-11-07</date>
-<subject
resource="http://www.w3.org/TR/DOM-Level-2-HTML/html#ID-5625626"...
-</metadata>
-<var name="nodeList" type="NodeList"/>
-<var name="testNode" type="Node"/>
-<var name="rowsnodeList" type="HTMLCollection"/>
-<var name="vrows" type="int"/>
-<var name="doc" type="Document"/>
-<load var="doc" href="tablesection"
willBeModified="true"/>
-<getElementsByTagName interface="Document" obj="doc"
var="nodeList" tagname=""tbody""/>
-<assertSize collection="nodeList" size="2"
id="Asize"/>
-<item interface="NodeList" obj="nodeList" var="testNode"
index="1"/>
-<rows interface="HTMLTableSectionElement" obj="testNode"
var="rowsnodeList"/>
-<length interface="HTMLCollection" obj="rowsnodeList"
var="vrows"/>
-<assertEquals actual="vrows" expected="2" id="rowsLink1"
ignoreCase="false"/>
-<deleteRow interface="HTMLTableSectionElement" obj="testNode"
index="-1"/>
-<rows interface="HTMLTableSectionElement" obj="testNode"
var="rowsnodeList"/>
-<length interface="HTMLCollection" obj="rowsnodeList"
var="vrows"/>
-<assertEquals actual="vrows" expected="1" id="rowsLink2"
ignoreCase="false"/>
-</test>
commitdiff
http://git.netsurf-browser.org/libdom.git/commit/?id=939ec2c2cd709a5ee9cb...
commit 939ec2c2cd709a5ee9cbb4237e77553450543a57
Author: rsk1994 <rsk1coder99(a)gmail.com>
Commit: Rupinder Singh Khokhar <rsk1coder99(a)gmail.com>
Missed inputElement Test files && bubbling and cancelability of generic events
& buttonElement tests
diff --git a/src/html/TODO b/src/html/TODO
index e7d4853..183f10d 100644
--- a/src/html/TODO
+++ b/src/html/TODO
@@ -15,8 +15,8 @@ HTMLFormElement html_form_element DONE
HTMLSelectElement html_select_element DONE
HTMLOptGroupElement html_optgroup_element DONE
HTMLOptionElement html_option_element DONE
-HTMLInputElement html_input_element DONE
-HTMLTextAreaElement html_textarea_element MISSING
+HTMLInputElement html_input_element MISSING
+HTMLTextAreaElement html_textarea_element DONE
HTMLButtonElement html_button_element MISSING
HTMLLabelElement html_label_element DONE
HTMLFieldSetElement html_fieldset_element DONE
diff --git a/src/html/html_anchor_element.c b/src/html/html_anchor_element.c
index a215900..77f8cef 100644
--- a/src/html/html_anchor_element.c
+++ b/src/html/html_anchor_element.c
@@ -198,11 +198,11 @@ dom_exception dom_html_anchor_element_blur(dom_html_anchor_element
*ele)
bool success = false;
assert(doc != NULL);
- /** \todo Is this event (a) default (b) bubbling and (c) cancelable? */
+ /* This event does not bubble & is non-cancelable. Mentioned in w3 specs. More
research is needed to prove why. */
return _dom_dispatch_generic_event((dom_document *) doc,
(dom_event_target *) ele,
- doc->memoised[hds_blur], true,
- true, &success);
+ doc->memoised[hds_blur], false,
+ false, &success);
}
/**
@@ -218,10 +218,10 @@ dom_exception dom_html_anchor_element_focus(dom_html_anchor_element
*ele)
bool success = false;
assert(doc != NULL);
- /** \todo Is this event (a) default (b) bubbling and (c) cancelable? */
+ /* This event does not bubble & is non-cancelable. Mentioned in w3 specs. More
research is needed to prove why. */
return _dom_dispatch_generic_event((dom_document *)doc,
(dom_event_target *) ele,
- doc->memoised[hds_focus], true,
- true, &success);
+ doc->memoised[hds_focus], false,
+ false, &success);
}
diff --git a/src/html/html_text_area_element.c b/src/html/html_text_area_element.c
index eea5b4e..ac90a76 100644
--- a/src/html/html_text_area_element.c
+++ b/src/html/html_text_area_element.c
@@ -438,11 +438,11 @@ dom_exception
dom_html_text_area_element_blur(dom_html_text_area_element *ele)
bool success = false;
assert(doc != NULL);
- /** \todo Is this event (a) default (b) bubbling and (c) cancelable? */
+ /* This event does not bubble & is Non-cancellable. Mentioned in w3 specs. More
research is needed to prove why. */
return _dom_dispatch_generic_event((dom_document *) doc,
(dom_event_target *) ele,
- doc->memoised[hds_blur], true,
- true, &success);
+ doc->memoised[hds_blur], false,
+ false, &success);
}
/**
@@ -458,11 +458,11 @@ dom_exception
dom_html_text_area_element_focus(dom_html_text_area_element *ele)
bool success = false;
assert(doc != NULL);
- /** \todo Is this event (a) default (b) bubbling and (c) cancelable? */
+ /* This event does not bubble & is Non-cancellable. Mentioned in w3 specs. More
research is needed to prove why. */
return _dom_dispatch_generic_event((dom_document *)doc,
(dom_event_target *) ele,
- doc->memoised[hds_focus], true,
- true, &success);
+ doc->memoised[hds_focus], false,
+ false, &success);
}
/**
@@ -478,9 +478,9 @@ dom_exception
dom_html_text_area_element_select(dom_html_text_area_element *ele)
bool success = false;
assert(doc != NULL);
- /** \todo Is this event (a) default (b) bubbling and (c) cancelable? */
+ /* This event bubbles & is non-cancelable. Mentioned in w3 specs. More research is
needed to prove why. */
return _dom_dispatch_generic_event((dom_document *)doc,
(dom_event_target *) ele,
doc->memoised[hds_select], true,
- true, &success);
+ false, &success);
}
diff --git a/test/testcases/tests/level1/html/HTMLOptionElement05.xml
b/test/testcases/tests/level1/html/HTMLOptionElement05.xml
new file mode 100644
index 0000000..46812a1
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLOptionElement05.xml
@@ -0,0 +1,44 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 World Wide Web Consortium,
+(Massachusetts Institute of Technology, Institut National de
+Recherche en Informatique et en Automatique, Keio University). All
+Rights Reserved. This program is distributed under the W3C's Software
+Intellectual Property License. This program is distributed in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
+PURPOSE.
+
+See W3C License
http://www.w3.org/Consortium/Legal/ for more details.
+
+-->
+<!DOCTYPE test SYSTEM "dom1.dtd">
+<test
xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1"
name="HTMLOptionElement05">
+<metadata>
+<title>HTMLOptionElement05</title>
+<creator>NIST</creator>
+<description>
+ The index attribute indicates th index of this OPTION in ints parent
+ SELECT.
+
+ Retrieve the index attribute from the seventh OPTION element
+ and examine its value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject
resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-o...
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vindex" type="int" />
+<var name="doc" type="Document"/>
+<load var="doc" href="option"
willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc"
var="nodeList" tagname='"option"'/>
+<assertSize collection="nodeList" size="10"
id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode"
index="6"/>
+<index interface="HTMLOptionElement" obj="testNode"
var="vindex"/>
+<assertEquals actual="vindex" expected="1"
id="indexLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/button01.xml
b/test/testcases/tests/level1/html/button01.xml
new file mode 100644
index 0000000..f128ea8
--- /dev/null
+++ b/test/testcases/tests/level1/html/button01.xml
@@ -0,0 +1,39 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<!--
+
+Copyright (c) 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, Institut National de
+Recherche en Informatique et en Automatique, Keio University). All
+Rights Reserved. This program is distributed under the W3C's Software
+Intellectual Property License. This program is distributed in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
+PURPOSE.
+
+See W3C License
http://www.w3.org/Consortium/Legal/ for more details.
+
+-->
+<!DOCTYPE test SYSTEM "dom1.dtd">
+<test
xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1"
name="button01">
+<metadata>
+<title>button01</title>
+<creator>Netscape</creator>
+<description>
+Returns the FORM element containing this control. Returns null if this control is not
within the context of a form.
+</description>
+<contributor>Sivakiran Tummala</contributor>
+<date qualifier="created">2002-03-09</date>
+<subject
resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-o...
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vform" type="Node"/>
+<var name="doc" type="Node"/>
+<load var="doc" href="button"
willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc"
var="nodeList" tagname='"button"'/>
+<assertSize collection="nodeList" size="2"
id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode"
index="1"/>
+<form interface="HTMLButtonElement" obj="testNode"
var="vform"/>
+<assertNull actual="vform" id="formLink"/>
+</test>
diff --git a/test/testcases/tests/level1/html/button01.xml.notimpl
b/test/testcases/tests/level1/html/button01.xml.notimpl
deleted file mode 100644
index f128ea8..0000000
--- a/test/testcases/tests/level1/html/button01.xml.notimpl
+++ /dev/null
@@ -1,39 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-
-<!--
-
-Copyright (c) 2001-2004 World Wide Web Consortium,
-(Massachusetts Institute of Technology, Institut National de
-Recherche en Informatique et en Automatique, Keio University). All
-Rights Reserved. This program is distributed under the W3C's Software
-Intellectual Property License. This program is distributed in the
-hope that it will be useful, but WITHOUT ANY WARRANTY; without even
-the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
-PURPOSE.
-
-See W3C License
http://www.w3.org/Consortium/Legal/ for more details.
-
--->
-<!DOCTYPE test SYSTEM "dom1.dtd">
-<test
xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1"
name="button01">
-<metadata>
-<title>button01</title>
-<creator>Netscape</creator>
-<description>
-Returns the FORM element containing this control. Returns null if this control is not
within the context of a form.
-</description>
-<contributor>Sivakiran Tummala</contributor>
-<date qualifier="created">2002-03-09</date>
-<subject
resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-o...
-</metadata>
-<var name="nodeList" type="NodeList"/>
-<var name="testNode" type="Node"/>
-<var name="vform" type="Node"/>
-<var name="doc" type="Node"/>
-<load var="doc" href="button"
willBeModified="false"/>
-<getElementsByTagName interface="Document" obj="doc"
var="nodeList" tagname='"button"'/>
-<assertSize collection="nodeList" size="2"
id="Asize"/>
-<item interface="NodeList" obj="nodeList" var="testNode"
index="1"/>
-<form interface="HTMLButtonElement" obj="testNode"
var="vform"/>
-<assertNull actual="vform" id="formLink"/>
-</test>
diff --git a/test/testcases/tests/level1/html/button02.xml
b/test/testcases/tests/level1/html/button02.xml
new file mode 100644
index 0000000..bd072ef
--- /dev/null
+++ b/test/testcases/tests/level1/html/button02.xml
@@ -0,0 +1,42 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<!--
+
+Copyright (c) 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, Institut National de
+Recherche en Informatique et en Automatique, Keio University). All
+Rights Reserved. This program is distributed under the W3C's Software
+Intellectual Property License. This program is distributed in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
+PURPOSE.
+
+See W3C License
http://www.w3.org/Consortium/Legal/ for more details.
+
+-->
+<!DOCTYPE test SYSTEM "dom1.dtd">
+<test
xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1"
name="button02">
+<metadata>
+<title>button02</title>
+<creator>Netscape</creator>
+<description>
+The value of attribute name of the form element which contains this button is read and
checked against the expected value.
+</description>
+<contributor>Sivakiran Tummala</contributor>
+<date qualifier="created">2002-03-09</date>
+<subject
resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-o...
+<subject
resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-o...
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="formNode" type="Node"/>
+<var name="vfname" type="DOMString" />
+<var name="doc" type="Node"/>
+<load var="doc" href="button"
willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc"
var="nodeList" tagname='"button"'/>
+<assertSize collection="nodeList" size="2"
id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode"
index="0"/>
+<form interface="HTMLButtonElement" obj="testNode"
var="formNode"/>
+<id interface="HTMLElement" obj="formNode"
var="vfname"/>
+<assertEquals actual="vfname" expected='"form2"'
id="formLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/button02.xml.notimpl
b/test/testcases/tests/level1/html/button02.xml.notimpl
deleted file mode 100644
index bd072ef..0000000
--- a/test/testcases/tests/level1/html/button02.xml.notimpl
+++ /dev/null
@@ -1,42 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-
-<!--
-
-Copyright (c) 2001-2004 World Wide Web Consortium,
-(Massachusetts Institute of Technology, Institut National de
-Recherche en Informatique et en Automatique, Keio University). All
-Rights Reserved. This program is distributed under the W3C's Software
-Intellectual Property License. This program is distributed in the
-hope that it will be useful, but WITHOUT ANY WARRANTY; without even
-the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
-PURPOSE.
-
-See W3C License
http://www.w3.org/Consortium/Legal/ for more details.
-
--->
-<!DOCTYPE test SYSTEM "dom1.dtd">
-<test
xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1"
name="button02">
-<metadata>
-<title>button02</title>
-<creator>Netscape</creator>
-<description>
-The value of attribute name of the form element which contains this button is read and
checked against the expected value.
-</description>
-<contributor>Sivakiran Tummala</contributor>
-<date qualifier="created">2002-03-09</date>
-<subject
resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-o...
-<subject
resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-o...
-</metadata>
-<var name="nodeList" type="NodeList"/>
-<var name="testNode" type="Node"/>
-<var name="formNode" type="Node"/>
-<var name="vfname" type="DOMString" />
-<var name="doc" type="Node"/>
-<load var="doc" href="button"
willBeModified="false"/>
-<getElementsByTagName interface="Document" obj="doc"
var="nodeList" tagname='"button"'/>
-<assertSize collection="nodeList" size="2"
id="Asize"/>
-<item interface="NodeList" obj="nodeList" var="testNode"
index="0"/>
-<form interface="HTMLButtonElement" obj="testNode"
var="formNode"/>
-<id interface="HTMLElement" obj="formNode"
var="vfname"/>
-<assertEquals actual="vfname" expected='"form2"'
id="formLink" ignoreCase="false"/>
-</test>
diff --git a/test/testcases/tests/level1/html/button03.xml
b/test/testcases/tests/level1/html/button03.xml
new file mode 100644
index 0000000..4074059
--- /dev/null
+++ b/test/testcases/tests/level1/html/button03.xml
@@ -0,0 +1,42 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<!--
+
+Copyright (c) 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, Institut National de
+Recherche en Informatique et en Automatique, Keio University). All
+Rights Reserved. This program is distributed under the W3C's Software
+Intellectual Property License. This program is distributed in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
+PURPOSE.
+
+See W3C License
http://www.w3.org/Consortium/Legal/ for more details.
+
+-->
+<!DOCTYPE test SYSTEM "dom1.dtd">
+<test
xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1"
name="button03">
+<metadata>
+<title>button03</title>
+<creator>Netscape</creator>
+<description>
+The value of attribute action of the form element which contains this button is read and
checked against the expected value
+</description>
+<contributor>Sivakiran Tummala</contributor>
+<date qualifier="created">2002-03-09</date>
+<subject
resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-o...
+<subject
resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-o...
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="formNode" type="Node"/>
+<var name="vfaction" type="DOMString" />
+<var name="doc" type="Node"/>
+<load var="doc" href="button"
willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc"
var="nodeList" tagname='"button"'/>
+<assertSize collection="nodeList" size="2"
id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode"
index="0"/>
+<form interface="HTMLButtonElement" obj="testNode"
var="formNode"/>
+<action interface="HTMLFormElement" obj="formNode"
var="vfaction"/>
+<assertEquals actual="vfaction" expected='"..."'
id="formLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/button03.xml.notimpl
b/test/testcases/tests/level1/html/button03.xml.notimpl
deleted file mode 100644
index 4074059..0000000
--- a/test/testcases/tests/level1/html/button03.xml.notimpl
+++ /dev/null
@@ -1,42 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-
-<!--
-
-Copyright (c) 2001-2004 World Wide Web Consortium,
-(Massachusetts Institute of Technology, Institut National de
-Recherche en Informatique et en Automatique, Keio University). All
-Rights Reserved. This program is distributed under the W3C's Software
-Intellectual Property License. This program is distributed in the
-hope that it will be useful, but WITHOUT ANY WARRANTY; without even
-the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
-PURPOSE.
-
-See W3C License
http://www.w3.org/Consortium/Legal/ for more details.
-
--->
-<!DOCTYPE test SYSTEM "dom1.dtd">
-<test
xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1"
name="button03">
-<metadata>
-<title>button03</title>
-<creator>Netscape</creator>
-<description>
-The value of attribute action of the form element which contains this button is read and
checked against the expected value
-</description>
-<contributor>Sivakiran Tummala</contributor>
-<date qualifier="created">2002-03-09</date>
-<subject
resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-o...
-<subject
resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-o...
-</metadata>
-<var name="nodeList" type="NodeList"/>
-<var name="testNode" type="Node"/>
-<var name="formNode" type="Node"/>
-<var name="vfaction" type="DOMString" />
-<var name="doc" type="Node"/>
-<load var="doc" href="button"
willBeModified="false"/>
-<getElementsByTagName interface="Document" obj="doc"
var="nodeList" tagname='"button"'/>
-<assertSize collection="nodeList" size="2"
id="Asize"/>
-<item interface="NodeList" obj="nodeList" var="testNode"
index="0"/>
-<form interface="HTMLButtonElement" obj="testNode"
var="formNode"/>
-<action interface="HTMLFormElement" obj="formNode"
var="vfaction"/>
-<assertEquals actual="vfaction" expected='"..."'
id="formLink" ignoreCase="false"/>
-</test>
diff --git a/test/testcases/tests/level1/html/button04.xml
b/test/testcases/tests/level1/html/button04.xml
new file mode 100644
index 0000000..737ddaa
--- /dev/null
+++ b/test/testcases/tests/level1/html/button04.xml
@@ -0,0 +1,42 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<!--
+
+Copyright (c) 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, Institut National de
+Recherche en Informatique et en Automatique, Keio University). All
+Rights Reserved. This program is distributed under the W3C's Software
+Intellectual Property License. This program is distributed in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
+PURPOSE.
+
+See W3C License
http://www.w3.org/Consortium/Legal/ for more details.
+
+-->
+<!DOCTYPE test SYSTEM "dom1.dtd">
+<test
xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1"
name="button04">
+<metadata>
+<title>button04</title>
+<creator>Netscape</creator>
+<description>
+The value of attribute method of the form element which contains this button is read and
checked against the expected value
+</description>
+<contributor>Sivakiran Tummala</contributor>
+<date qualifier="created">2002-03-09</date>
+<subject
resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-o...
+<subject
resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-o...
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="formNode" type="Node"/>
+<var name="vfmethod" type="DOMString" />
+<var name="doc" type="Node"/>
+<load var="doc" href="button"
willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc"
var="nodeList" tagname='"button"'/>
+<assertSize collection="nodeList" size="2"
id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode"
index="0"/>
+<form interface="HTMLButtonElement" obj="testNode"
var="formNode"/>
+<method interface="HTMLFormElement" obj="formNode"
var="vfmethod"/>
+<assertEquals actual="vfmethod" expected='"POST"'
id="formLink" ignoreCase="true"/>
+</test>
diff --git a/test/testcases/tests/level1/html/button04.xml.notimpl
b/test/testcases/tests/level1/html/button04.xml.notimpl
deleted file mode 100644
index 737ddaa..0000000
--- a/test/testcases/tests/level1/html/button04.xml.notimpl
+++ /dev/null
@@ -1,42 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-
-<!--
-
-Copyright (c) 2001-2004 World Wide Web Consortium,
-(Massachusetts Institute of Technology, Institut National de
-Recherche en Informatique et en Automatique, Keio University). All
-Rights Reserved. This program is distributed under the W3C's Software
-Intellectual Property License. This program is distributed in the
-hope that it will be useful, but WITHOUT ANY WARRANTY; without even
-the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
-PURPOSE.
-
-See W3C License
http://www.w3.org/Consortium/Legal/ for more details.
-
--->
-<!DOCTYPE test SYSTEM "dom1.dtd">
-<test
xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1"
name="button04">
-<metadata>
-<title>button04</title>
-<creator>Netscape</creator>
-<description>
-The value of attribute method of the form element which contains this button is read and
checked against the expected value
-</description>
-<contributor>Sivakiran Tummala</contributor>
-<date qualifier="created">2002-03-09</date>
-<subject
resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-o...
-<subject
resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-o...
-</metadata>
-<var name="nodeList" type="NodeList"/>
-<var name="testNode" type="Node"/>
-<var name="formNode" type="Node"/>
-<var name="vfmethod" type="DOMString" />
-<var name="doc" type="Node"/>
-<load var="doc" href="button"
willBeModified="false"/>
-<getElementsByTagName interface="Document" obj="doc"
var="nodeList" tagname='"button"'/>
-<assertSize collection="nodeList" size="2"
id="Asize"/>
-<item interface="NodeList" obj="nodeList" var="testNode"
index="0"/>
-<form interface="HTMLButtonElement" obj="testNode"
var="formNode"/>
-<method interface="HTMLFormElement" obj="formNode"
var="vfmethod"/>
-<assertEquals actual="vfmethod" expected='"POST"'
id="formLink" ignoreCase="true"/>
-</test>
diff --git a/test/testcases/tests/level1/html/button05.xml
b/test/testcases/tests/level1/html/button05.xml
new file mode 100644
index 0000000..ecff6b5
--- /dev/null
+++ b/test/testcases/tests/level1/html/button05.xml
@@ -0,0 +1,40 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<!--
+
+Copyright (c) 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, Institut National de
+Recherche en Informatique et en Automatique, Keio University). All
+Rights Reserved. This program is distributed under the W3C's Software
+Intellectual Property License. This program is distributed in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
+PURPOSE.
+
+See W3C License
http://www.w3.org/Consortium/Legal/ for more details.
+
+-->
+<!DOCTYPE test SYSTEM "dom1.dtd">
+<test
xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1"
name="button05">
+<metadata>
+<title>button05</title>
+<creator>Netscape</creator>
+<description>
+A single character access key to give access to the form control.
+The value of attribute accessKey of the button element is read and checked against the
expected value.
+</description>
+<contributor>Sivakiran Tummala</contributor>
+<date qualifier="created">2002-03-09</date>
+<subject
resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-o...
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vakey" type="DOMString" />
+<var name="doc" type="Node"/>
+<load var="doc" href="button"
willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc"
var="nodeList" tagname='"button"'/>
+<assertSize collection="nodeList" size="2"
id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode"
index="0"/>
+<accessKey interface="HTMLButtonElement" obj="testNode"
var="vakey"/>
+<assertEquals actual="vakey" expected='"f"'
id="accessKeyLink" ignoreCase="true"/>
+</test>
diff --git a/test/testcases/tests/level1/html/button05.xml.notimpl
b/test/testcases/tests/level1/html/button05.xml.notimpl
deleted file mode 100644
index ecff6b5..0000000
--- a/test/testcases/tests/level1/html/button05.xml.notimpl
+++ /dev/null
@@ -1,40 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-
-<!--
-
-Copyright (c) 2001-2004 World Wide Web Consortium,
-(Massachusetts Institute of Technology, Institut National de
-Recherche en Informatique et en Automatique, Keio University). All
-Rights Reserved. This program is distributed under the W3C's Software
-Intellectual Property License. This program is distributed in the
-hope that it will be useful, but WITHOUT ANY WARRANTY; without even
-the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
-PURPOSE.
-
-See W3C License
http://www.w3.org/Consortium/Legal/ for more details.
-
--->
-<!DOCTYPE test SYSTEM "dom1.dtd">
-<test
xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1"
name="button05">
-<metadata>
-<title>button05</title>
-<creator>Netscape</creator>
-<description>
-A single character access key to give access to the form control.
-The value of attribute accessKey of the button element is read and checked against the
expected value.
-</description>
-<contributor>Sivakiran Tummala</contributor>
-<date qualifier="created">2002-03-09</date>
-<subject
resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-o...
-</metadata>
-<var name="nodeList" type="NodeList"/>
-<var name="testNode" type="Node"/>
-<var name="vakey" type="DOMString" />
-<var name="doc" type="Node"/>
-<load var="doc" href="button"
willBeModified="false"/>
-<getElementsByTagName interface="Document" obj="doc"
var="nodeList" tagname='"button"'/>
-<assertSize collection="nodeList" size="2"
id="Asize"/>
-<item interface="NodeList" obj="nodeList" var="testNode"
index="0"/>
-<accessKey interface="HTMLButtonElement" obj="testNode"
var="vakey"/>
-<assertEquals actual="vakey" expected='"f"'
id="accessKeyLink" ignoreCase="true"/>
-</test>
diff --git a/test/testcases/tests/level1/html/button06.xml
b/test/testcases/tests/level1/html/button06.xml
new file mode 100644
index 0000000..7a5e558
--- /dev/null
+++ b/test/testcases/tests/level1/html/button06.xml
@@ -0,0 +1,40 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<!--
+
+Copyright (c) 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, Institut National de
+Recherche en Informatique et en Automatique, Keio University). All
+Rights Reserved. This program is distributed under the W3C's Software
+Intellectual Property License. This program is distributed in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
+PURPOSE.
+
+See W3C License
http://www.w3.org/Consortium/Legal/ for more details.
+
+-->
+<!DOCTYPE test SYSTEM "dom1.dtd">
+<test
xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1"
name="button06">
+<metadata>
+<title>button06</title>
+<creator>Netscape</creator>
+<description>
+Index that represents the element's position in the tabbing order.
+The value of attribute tabIndex of the button element is read and checked against the
expected value.
+</description>
+<contributor>Sivakiran Tummala</contributor>
+<date qualifier="created">2002-03-09</date>
+<subject
resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-o...
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vtabIndex" type="int" />
+<var name="doc" type="Node"/>
+<load var="doc" href="button"
willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc"
var="nodeList" tagname='"button"'/>
+<assertSize collection="nodeList" size="2"
id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode"
index="0"/>
+<tabIndex interface="HTMLButtonElement" obj="testNode"
var="vtabIndex"/>
+<assertEquals actual="vtabIndex" expected="20"
id="tabIndexLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/button06.xml.notimpl
b/test/testcases/tests/level1/html/button06.xml.notimpl
deleted file mode 100644
index 7a5e558..0000000
--- a/test/testcases/tests/level1/html/button06.xml.notimpl
+++ /dev/null
@@ -1,40 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-
-<!--
-
-Copyright (c) 2001-2004 World Wide Web Consortium,
-(Massachusetts Institute of Technology, Institut National de
-Recherche en Informatique et en Automatique, Keio University). All
-Rights Reserved. This program is distributed under the W3C's Software
-Intellectual Property License. This program is distributed in the
-hope that it will be useful, but WITHOUT ANY WARRANTY; without even
-the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
-PURPOSE.
-
-See W3C License
http://www.w3.org/Consortium/Legal/ for more details.
-
--->
-<!DOCTYPE test SYSTEM "dom1.dtd">
-<test
xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1"
name="button06">
-<metadata>
-<title>button06</title>
-<creator>Netscape</creator>
-<description>
-Index that represents the element's position in the tabbing order.
-The value of attribute tabIndex of the button element is read and checked against the
expected value.
-</description>
-<contributor>Sivakiran Tummala</contributor>
-<date qualifier="created">2002-03-09</date>
-<subject
resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-o...
-</metadata>
-<var name="nodeList" type="NodeList"/>
-<var name="testNode" type="Node"/>
-<var name="vtabIndex" type="int" />
-<var name="doc" type="Node"/>
-<load var="doc" href="button"
willBeModified="false"/>
-<getElementsByTagName interface="Document" obj="doc"
var="nodeList" tagname='"button"'/>
-<assertSize collection="nodeList" size="2"
id="Asize"/>
-<item interface="NodeList" obj="nodeList" var="testNode"
index="0"/>
-<tabIndex interface="HTMLButtonElement" obj="testNode"
var="vtabIndex"/>
-<assertEquals actual="vtabIndex" expected="20"
id="tabIndexLink" ignoreCase="false"/>
-</test>
diff --git a/test/testcases/tests/level1/html/button07.xml
b/test/testcases/tests/level1/html/button07.xml
new file mode 100644
index 0000000..daddf76
--- /dev/null
+++ b/test/testcases/tests/level1/html/button07.xml
@@ -0,0 +1,40 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<!--
+
+Copyright (c) 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, Institut National de
+Recherche en Informatique et en Automatique, Keio University). All
+Rights Reserved. This program is distributed under the W3C's Software
+Intellectual Property License. This program is distributed in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
+PURPOSE.
+
+See W3C License
http://www.w3.org/Consortium/Legal/ for more details.
+
+-->
+<!DOCTYPE test SYSTEM "dom1.dtd">
+<test
xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1"
name="button07">
+<metadata>
+<title>button07</title>
+<creator>Netscape</creator>
+<description>
+The type of button
+The value of attribute type of the button element is read and checked against the
expected value.
+</description>
+<contributor>Sivakiran Tummala</contributor>
+<date qualifier="created">2002-03-09</date>
+<subject
resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-o...
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vtype" type="DOMString" />
+<var name="doc" type="Node"/>
+<load var="doc" href="button"
willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc"
var="nodeList" tagname='"button"'/>
+<assertSize collection="nodeList" size="2"
id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode"
index="0"/>
+<type interface="HTMLButtonElement" obj="testNode"
var="vtype"/>
+<assertEquals actual="vtype" expected='"reset"'
id="typeLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/button07.xml.notimpl
b/test/testcases/tests/level1/html/button07.xml.notimpl
deleted file mode 100644
index daddf76..0000000
--- a/test/testcases/tests/level1/html/button07.xml.notimpl
+++ /dev/null
@@ -1,40 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-
-<!--
-
-Copyright (c) 2001-2004 World Wide Web Consortium,
-(Massachusetts Institute of Technology, Institut National de
-Recherche en Informatique et en Automatique, Keio University). All
-Rights Reserved. This program is distributed under the W3C's Software
-Intellectual Property License. This program is distributed in the
-hope that it will be useful, but WITHOUT ANY WARRANTY; without even
-the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
-PURPOSE.
-
-See W3C License
http://www.w3.org/Consortium/Legal/ for more details.
-
--->
-<!DOCTYPE test SYSTEM "dom1.dtd">
-<test
xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1"
name="button07">
-<metadata>
-<title>button07</title>
-<creator>Netscape</creator>
-<description>
-The type of button
-The value of attribute type of the button element is read and checked against the
expected value.
-</description>
-<contributor>Sivakiran Tummala</contributor>
-<date qualifier="created">2002-03-09</date>
-<subject
resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-o...
-</metadata>
-<var name="nodeList" type="NodeList"/>
-<var name="testNode" type="Node"/>
-<var name="vtype" type="DOMString" />
-<var name="doc" type="Node"/>
-<load var="doc" href="button"
willBeModified="false"/>
-<getElementsByTagName interface="Document" obj="doc"
var="nodeList" tagname='"button"'/>
-<assertSize collection="nodeList" size="2"
id="Asize"/>
-<item interface="NodeList" obj="nodeList" var="testNode"
index="0"/>
-<type interface="HTMLButtonElement" obj="testNode"
var="vtype"/>
-<assertEquals actual="vtype" expected='"reset"'
id="typeLink" ignoreCase="false"/>
-</test>
diff --git a/test/testcases/tests/level1/html/button08.xml
b/test/testcases/tests/level1/html/button08.xml
new file mode 100644
index 0000000..a4dbb0b
--- /dev/null
+++ b/test/testcases/tests/level1/html/button08.xml
@@ -0,0 +1,40 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<!--
+
+Copyright (c) 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, Institut National de
+Recherche en Informatique et en Automatique, Keio University). All
+Rights Reserved. This program is distributed under the W3C's Software
+Intellectual Property License. This program is distributed in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
+PURPOSE.
+
+See W3C License
http://www.w3.org/Consortium/Legal/ for more details.
+
+-->
+<!DOCTYPE test SYSTEM "dom1.dtd">
+<test
xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1"
name="button08">
+<metadata>
+<title>button08</title>
+<creator>Netscape</creator>
+<description>
+The control is unavailable in this context.
+The boolean value of attribute disabled of the button element is read and checked against
the expected value.
+</description>
+<contributor>Sivakiran Tummala</contributor>
+<date qualifier="created">2002-03-09</date>
+<subject
resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-o...
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vdisabled" type="boolean" />
+<var name="doc" type="Node"/>
+<load var="doc" href="button"
willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc"
var="nodeList" tagname='"button"'/>
+<assertSize collection="nodeList" size="2"
id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode"
index="0"/>
+<disabled interface="HTMLButtonElement" obj="testNode"
var="vdisabled"/>
+<assertTrue actual="vdisabled" id="disabledLink"/>
+</test>
diff --git a/test/testcases/tests/level1/html/button08.xml.notimpl
b/test/testcases/tests/level1/html/button08.xml.notimpl
deleted file mode 100644
index a4dbb0b..0000000
--- a/test/testcases/tests/level1/html/button08.xml.notimpl
+++ /dev/null
@@ -1,40 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-
-<!--
-
-Copyright (c) 2001-2004 World Wide Web Consortium,
-(Massachusetts Institute of Technology, Institut National de
-Recherche en Informatique et en Automatique, Keio University). All
-Rights Reserved. This program is distributed under the W3C's Software
-Intellectual Property License. This program is distributed in the
-hope that it will be useful, but WITHOUT ANY WARRANTY; without even
-the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
-PURPOSE.
-
-See W3C License
http://www.w3.org/Consortium/Legal/ for more details.
-
--->
-<!DOCTYPE test SYSTEM "dom1.dtd">
-<test
xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1"
name="button08">
-<metadata>
-<title>button08</title>
-<creator>Netscape</creator>
-<description>
-The control is unavailable in this context.
-The boolean value of attribute disabled of the button element is read and checked against
the expected value.
-</description>
-<contributor>Sivakiran Tummala</contributor>
-<date qualifier="created">2002-03-09</date>
-<subject
resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-o...
-</metadata>
-<var name="nodeList" type="NodeList"/>
-<var name="testNode" type="Node"/>
-<var name="vdisabled" type="boolean" />
-<var name="doc" type="Node"/>
-<load var="doc" href="button"
willBeModified="false"/>
-<getElementsByTagName interface="Document" obj="doc"
var="nodeList" tagname='"button"'/>
-<assertSize collection="nodeList" size="2"
id="Asize"/>
-<item interface="NodeList" obj="nodeList" var="testNode"
index="0"/>
-<disabled interface="HTMLButtonElement" obj="testNode"
var="vdisabled"/>
-<assertTrue actual="vdisabled" id="disabledLink"/>
-</test>
diff --git a/test/testcases/tests/level1/html/button09.xml
b/test/testcases/tests/level1/html/button09.xml
new file mode 100644
index 0000000..d0efa94
--- /dev/null
+++ b/test/testcases/tests/level1/html/button09.xml
@@ -0,0 +1,40 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<!--
+
+Copyright (c) 2001 World Wide Web Consortium,
+(Massachusetts Institute of Technology, Institut National de
+Recherche en Informatique et en Automatique, Keio University). All
+Rights Reserved. This program is distributed under the W3C's Software
+Intellectual Property License. This program is distributed in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
+PURPOSE.
+
+See W3C License
http://www.w3.org/Consortium/Legal/ for more details.
+
+-->
+<!DOCTYPE test SYSTEM "dom1.dtd">
+<test
xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1"
name="button09">
+<metadata>
+<title>button09</title>
+<creator>Netscape</creator>
+<description>
+The current form control value.
+The value of attribute value of the button element is read and checked against the
expected value.
+</description>
+<contributor>Sivakiran Tummala</contributor>
+<date qualifier="created">2002-03-09</date>
+<subject
resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-o...
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vvalue" type="DOMString" />
+<var name="doc" type="Node"/>
+<load var="doc" href="button"
willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc"
var="nodeList" tagname='"button"'/>
+<assertSize collection="nodeList" size="2"
id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode"
index="0"/>
+<value interface="HTMLButtonElement" obj="testNode"
var="vvalue"/>
+<assertEquals actual="vvalue" expected='"Reset Disabled
Button"' id="typeLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/button09.xml.notimpl
b/test/testcases/tests/level1/html/button09.xml.notimpl
deleted file mode 100644
index d0efa94..0000000
--- a/test/testcases/tests/level1/html/button09.xml.notimpl
+++ /dev/null
@@ -1,40 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-
-<!--
-
-Copyright (c) 2001 World Wide Web Consortium,
-(Massachusetts Institute of Technology, Institut National de
-Recherche en Informatique et en Automatique, Keio University). All
-Rights Reserved. This program is distributed under the W3C's Software
-Intellectual Property License. This program is distributed in the
-hope that it will be useful, but WITHOUT ANY WARRANTY; without even
-the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
-PURPOSE.
-
-See W3C License
http://www.w3.org/Consortium/Legal/ for more details.
-
--->
-<!DOCTYPE test SYSTEM "dom1.dtd">
-<test
xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1"
name="button09">
-<metadata>
-<title>button09</title>
-<creator>Netscape</creator>
-<description>
-The current form control value.
-The value of attribute value of the button element is read and checked against the
expected value.
-</description>
-<contributor>Sivakiran Tummala</contributor>
-<date qualifier="created">2002-03-09</date>
-<subject
resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-o...
-</metadata>
-<var name="nodeList" type="NodeList"/>
-<var name="testNode" type="Node"/>
-<var name="vvalue" type="DOMString" />
-<var name="doc" type="Node"/>
-<load var="doc" href="button"
willBeModified="false"/>
-<getElementsByTagName interface="Document" obj="doc"
var="nodeList" tagname='"button"'/>
-<assertSize collection="nodeList" size="2"
id="Asize"/>
-<item interface="NodeList" obj="nodeList" var="testNode"
index="0"/>
-<value interface="HTMLButtonElement" obj="testNode"
var="vvalue"/>
-<assertEquals actual="vvalue" expected='"Reset Disabled
Button"' id="typeLink" ignoreCase="false"/>
-</test>
diff --git a/test/testcases/tests/level2/html/files/input.html
b/test/testcases/tests/level2/html/files/input.html
new file mode 100644
index 0000000..c36e87d
--- /dev/null
+++ b/test/testcases/tests/level2/html/files/input.html
@@ -0,0 +1,60 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html;
CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - INPUT</TITLE>
+</HEAD>
+<BODY onload="parent.loadComplete()">
+<TABLE CELLPADDING="15" BORDER="BORDER" SUMMARY="Table
1">
+<TR ALIGN="center">
+<TD VAlign="top">Under a FORM control
+<FORM ID="form1" ACTION="./files/getData.pl"
METHOD="post">
+<TABLE BORDER="15" SUMMARY="Table 2">
+<TR>
+<TD>
+<LABEL ACCESSKEY="b" FOR="input1">Enter Your
Password:</LABEL>
+</TD>
+<TD>
+<INPUT DIR="LTR" ID="input1" TABINDEX="8"
VALUE="Password" TYPE="password" NAME="Password"
SIZE="25" MAXLENGTH="5" ALT="Password entry"
READONLY="READONLY"/>
+</TD>
+</TR>
+<TR>
+<TD>
+<INPUT TYPE="RADIO" NAME="Radio1" ACCESSKEY="c"
VALUE="ReHire"/>ReHire
+</TD>
+</TR>
+<TR>
+<TD>
+<INPUT TYPE="RADIO" NAME="Radio2" VALUE="NewHire"
TABINDEX="9" CHECKED="CHECKED"/>NewHire
+</TD>
+</TR>
+<TR>
+<TD>Hours available to work</TD>
+<TD>
+<INPUT TYPE="CHECKBOX" NAME="Check1" ALIGN="bottom"
TABINDEX="10" VALUE="EarlyMornings"
CHECKED="CHECKED"/>EarlyMornings
+<BR/>
+<INPUT ID="input5" TYPE="CHECKBOX" NAME="Check2"
TABINDEX="11" VALUE="AfterNoon"
ONCLICK="newId(this)"/>Afternoon
+<BR/>
+<INPUT TYPE="CHECKBOX" NAME="Check3" TABINDEX="12"
VALUE="Evenings"/>Evenings
+<BR/>
+<INPUT TYPE="CHECKBOX" NAME="Check4" TABINDEX="13"
VALUE="Closing" DISABLED="DISABLED"/>Closing
+<BR/>
+</TD>
+</TR>
+<TR>
+<TD COLSPAN="2">
+<INPUT TYPE="IMAGE" TABINDEX="14" NAME="SubmitImage"
USEMAP="#submit-map" SRC="./pix/submit.gif"/>
+</TD>
+</TR>
+<TR>
+<TD COLSPAN="2">
+<INPUT TITLE="old_title" TYPE="FILE" NAME="FileControl"
TABINDEX="15" ACCEPT="GIF,JPEG"
ONSELECT="newTitle(this)"/>
+</TD>
+</TR>
+</TABLE>
+</FORM>
+</TD>
+</TR>
+</TABLE>
+</BODY>
+</HTML>
diff --git a/test/testcases/tests/level2/html/files/input.xhtml
b/test/testcases/tests/level2/html/files/input.xhtml
new file mode 100644
index 0000000..b7704ad
--- /dev/null
+++ b/test/testcases/tests/level2/html/files/input.xhtml
@@ -0,0 +1,62 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE html
+ PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
+ "xhtml1-transitional.dtd">
+<html
xmlns='http://www.w3.org/1999/xhtml'>
+<head>
+<title>NIST DOM HTML Test - INPUT</title>
+</head>
+<body onload="parent.loadComplete()">
+<table cellpadding="15" border="border" summary="Table
1">
+<tr align="center">
+<td valign="top">Under a FORM control
+<form id="form1" action="./files/getData.pl"
method="post">
+<table border="15" summary="Table 2">
+<tr>
+<td>
+<label accesskey="b" for="input1">Enter Your
Password:</label>
+</td>
+<td>
+<input dir="ltr" id="input1" tabindex="8"
value="Password" type="password" name="Password"
size="25" maxlength="5" alt="Password entry"
readonly="readonly"/>
+</td>
+</tr>
+<tr>
+<td>
+<input type="radio" name="Radio1" accesskey="c"
value="ReHire"/>
+</td>
+</tr>
+<tr>
+<td>
+<input type="radio" name="Radio2" value="NewHire"
tabindex="9" checked="checked"/>
+</td>
+</tr>
+<tr>
+<td>Hours available to work</td>
+<td>
+<input type="checkbox" name="Check1" align="bottom"
tabindex="10" value="EarlyMornings" checked="checked"/>
+<br/>
+<input id="input5" type="checkbox" name="Check2"
tabindex="11" value="AfterNoon" onclick="newId(this)"/>
+<br/>
+<input type="checkbox" name="Check3" tabindex="12"
value="Evenings"/>
+<br/>
+<input type="checkbox" name="Check4" tabindex="13"
value="Closing" disabled="disabled"/>
+<br/>
+</td>
+</tr>
+<tr>
+<td colspan="2">
+<input type="image" tabindex="14" name="SubmitImage"
usemap="#submit-map" src="./pix/submit.gif"/>
+</td>
+</tr>
+<tr>
+<td colspan="2">
+<input title="old_title" type="file" name="FileControl"
tabindex="15" accept="GIF,JPEG"
onselect="newTitle(this)"/>
+</td>
+</tr>
+</table>
+</form>
+</td>
+</tr>
+</table>
+</body>
+</html>
diff --git a/test/testcases/tests/level2/html/files/input.xml
b/test/testcases/tests/level2/html/files/input.xml
new file mode 100644
index 0000000..b7704ad
--- /dev/null
+++ b/test/testcases/tests/level2/html/files/input.xml
@@ -0,0 +1,62 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE html
+ PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
+ "xhtml1-transitional.dtd">
+<html
xmlns='http://www.w3.org/1999/xhtml'>
+<head>
+<title>NIST DOM HTML Test - INPUT</title>
+</head>
+<body onload="parent.loadComplete()">
+<table cellpadding="15" border="border" summary="Table
1">
+<tr align="center">
+<td valign="top">Under a FORM control
+<form id="form1" action="./files/getData.pl"
method="post">
+<table border="15" summary="Table 2">
+<tr>
+<td>
+<label accesskey="b" for="input1">Enter Your
Password:</label>
+</td>
+<td>
+<input dir="ltr" id="input1" tabindex="8"
value="Password" type="password" name="Password"
size="25" maxlength="5" alt="Password entry"
readonly="readonly"/>
+</td>
+</tr>
+<tr>
+<td>
+<input type="radio" name="Radio1" accesskey="c"
value="ReHire"/>
+</td>
+</tr>
+<tr>
+<td>
+<input type="radio" name="Radio2" value="NewHire"
tabindex="9" checked="checked"/>
+</td>
+</tr>
+<tr>
+<td>Hours available to work</td>
+<td>
+<input type="checkbox" name="Check1" align="bottom"
tabindex="10" value="EarlyMornings" checked="checked"/>
+<br/>
+<input id="input5" type="checkbox" name="Check2"
tabindex="11" value="AfterNoon" onclick="newId(this)"/>
+<br/>
+<input type="checkbox" name="Check3" tabindex="12"
value="Evenings"/>
+<br/>
+<input type="checkbox" name="Check4" tabindex="13"
value="Closing" disabled="disabled"/>
+<br/>
+</td>
+</tr>
+<tr>
+<td colspan="2">
+<input type="image" tabindex="14" name="SubmitImage"
usemap="#submit-map" src="./pix/submit.gif"/>
+</td>
+</tr>
+<tr>
+<td colspan="2">
+<input title="old_title" type="file" name="FileControl"
tabindex="15" accept="GIF,JPEG"
onselect="newTitle(this)"/>
+</td>
+</tr>
+</table>
+</form>
+</td>
+</tr>
+</table>
+</body>
+</html>
commitdiff
http://git.netsurf-browser.org/libdom.git/commit/?id=862b8be1defce10068f3...
commit 862b8be1defce10068f3876aaaa8de8edf65b4ed
Author: rsk1994 <rsk1coder99(a)gmail.com>
Commit: Rupinder Singh Khokhar <rsk1coder99(a)gmail.com>
changing size attribute of Input Element to be of type int
diff --git a/include/dom/html/html_input_element.h
b/include/dom/html/html_input_element.h
index eb6aecd..086e1cb 100644
--- a/include/dom/html/html_input_element.h
+++ b/include/dom/html/html_input_element.h
@@ -85,10 +85,10 @@ dom_exception dom_html_input_element_set_read_only(
dom_html_input_element *input, bool read_only);
dom_exception dom_html_input_element_get_size(
- dom_html_input_element *input, dom_string **size);
+ dom_html_input_element *input, int32_t *size);
dom_exception dom_html_input_element_set_size(
- dom_html_input_element *input, dom_string *size);
+ dom_html_input_element *input, uint32_t size);
dom_exception dom_html_input_element_get_src(
dom_html_input_element *input, dom_string **src);
diff --git a/src/html/TODO b/src/html/TODO
index 6a3d190..e7d4853 100644
--- a/src/html/TODO
+++ b/src/html/TODO
@@ -15,7 +15,7 @@ HTMLFormElement html_form_element DONE
HTMLSelectElement html_select_element DONE
HTMLOptGroupElement html_optgroup_element DONE
HTMLOptionElement html_option_element DONE
-HTMLInputElement html_input_element MISSING
+HTMLInputElement html_input_element DONE
HTMLTextAreaElement html_textarea_element MISSING
HTMLButtonElement html_button_element MISSING
HTMLLabelElement html_label_element DONE
diff --git a/src/html/html_input_element.c b/src/html/html_input_element.c
index bab79f2..c4cfc05 100644
--- a/src/html/html_input_element.c
+++ b/src/html/html_input_element.c
@@ -349,12 +349,24 @@ SIMPLE_GET_SET(access_key);
SIMPLE_GET_SET(align);
SIMPLE_GET_SET(alt);
SIMPLE_GET_SET(name);
-SIMPLE_GET_SET(size);
SIMPLE_GET_SET(src);
SIMPLE_GET(type);
SIMPLE_GET_SET(use_map);
SIMPLE_GET_SET(value);
+dom_exception dom_html_input_element_get_size(
+ dom_html_input_element *input, int32_t *size)
+{
+ return dom_html_element_get_int32_t_property(&input->base, "size",
+ SLEN("size"), size);
+}
+
+dom_exception dom_html_input_element_set_size(
+ dom_html_input_element *input, uint32_t size)
+{
+ return dom_html_element_set_int32_t_property(&input->base, "size",
+ SLEN("size"), size);
+}
dom_exception dom_html_input_element_get_tab_index(
dom_html_input_element *input, int32_t *tab_index)
{
diff --git a/test/testcases/tests/level2/html/HTMLInputElement13.xml
b/test/testcases/tests/level2/html/HTMLInputElement13.xml
new file mode 100644
index 0000000..e243035
--- /dev/null
+++ b/test/testcases/tests/level2/html/HTMLInputElement13.xml
@@ -0,0 +1,43 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<!--
+
+Copyright (c) 2001 World Wide Web Consortium,
+(Massachusetts Institute of Technology, Institut National de
+Recherche en Informatique et en Automatique, Keio University). All
+Rights Reserved. This program is distributed under the W3C's Software
+Intellectual Property License. This program is distributed in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
+PURPOSE.
+
+See W3C License
http://www.w3.org/Consortium/Legal/ for more details.
+
+-->
+<!DOCTYPE test SYSTEM "dom2.dtd">
+<test
xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-2"
name="HTMLInputElement13">
+<metadata>
+<title>HTMLInputElement13</title>
+<creator>NIST</creator>
+<description>
+ The size attribute contains the size information. Its precise meaning
+ is specific to each type of field.
+
+ Retrieve the size attribute of the 1st INPUT element and examine
+ its value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2001-12-26</date>
+<subject
resource="http://www.w3.org/TR/DOM-Level-2-HTML/html#ID-79659438&quo...
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vsize" type="int"/>
+<var name="doc" type="Node"/>
+<load var="doc" href="input"
willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc"
var="nodeList" tagname='"input"'/>
+<assertSize collection="nodeList" size="9"
id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode"
index="0"/>
+<size interface="HTMLInputElement" obj="testNode"
var="vsize"/>
+<assertEquals actual="vsize" expected="25" id="size"
ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level2/html/HTMLInputElement13.xml.kfail
b/test/testcases/tests/level2/html/HTMLInputElement13.xml.kfail
deleted file mode 100644
index e243035..0000000
--- a/test/testcases/tests/level2/html/HTMLInputElement13.xml.kfail
+++ /dev/null
@@ -1,43 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-
-<!--
-
-Copyright (c) 2001 World Wide Web Consortium,
-(Massachusetts Institute of Technology, Institut National de
-Recherche en Informatique et en Automatique, Keio University). All
-Rights Reserved. This program is distributed under the W3C's Software
-Intellectual Property License. This program is distributed in the
-hope that it will be useful, but WITHOUT ANY WARRANTY; without even
-the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
-PURPOSE.
-
-See W3C License
http://www.w3.org/Consortium/Legal/ for more details.
-
--->
-<!DOCTYPE test SYSTEM "dom2.dtd">
-<test
xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-2"
name="HTMLInputElement13">
-<metadata>
-<title>HTMLInputElement13</title>
-<creator>NIST</creator>
-<description>
- The size attribute contains the size information. Its precise meaning
- is specific to each type of field.
-
- Retrieve the size attribute of the 1st INPUT element and examine
- its value.
-</description>
-<contributor>Mary Brady</contributor>
-<date qualifier="created">2001-12-26</date>
-<subject
resource="http://www.w3.org/TR/DOM-Level-2-HTML/html#ID-79659438&quo...
-</metadata>
-<var name="nodeList" type="NodeList"/>
-<var name="testNode" type="Node"/>
-<var name="vsize" type="int"/>
-<var name="doc" type="Node"/>
-<load var="doc" href="input"
willBeModified="false"/>
-<getElementsByTagName interface="Document" obj="doc"
var="nodeList" tagname='"input"'/>
-<assertSize collection="nodeList" size="9"
id="Asize"/>
-<item interface="NodeList" obj="nodeList" var="testNode"
index="0"/>
-<size interface="HTMLInputElement" obj="testNode"
var="vsize"/>
-<assertEquals actual="vsize" expected="25" id="size"
ignoreCase="false"/>
-</test>
commitdiff
http://git.netsurf-browser.org/libdom.git/commit/?id=ac0a6be4a62b2fa98301...
commit ac0a6be4a62b2fa9830184def0652a499df1398b
Author: rsk1994 <rsk1coder99(a)gmail.com>
Commit: Rupinder Singh Khokhar <rsk1coder99(a)gmail.com>
OptionElement
diff --git a/include/dom/html/html_option_element.h
b/include/dom/html/html_option_element.h
index 53ba286..aa0d11c 100644
--- a/include/dom/html/html_option_element.h
+++ b/include/dom/html/html_option_element.h
@@ -28,7 +28,7 @@ dom_exception dom_html_option_element_get_text(
dom_html_option_element *option, dom_string **text);
dom_exception dom_html_option_element_get_index(
- dom_html_option_element *option, unsigned long *index);
+ dom_html_option_element *option, int32_t *index);
dom_exception dom_html_option_element_get_disabled(
dom_html_option_element *option, bool *disabled);
diff --git a/src/html/TODO b/src/html/TODO
index 8e004e1..6a3d190 100644
--- a/src/html/TODO
+++ b/src/html/TODO
@@ -13,8 +13,8 @@ HTMLStyleElement html_style_element DONE
HTMLBodyElement html_body_element MISSING
HTMLFormElement html_form_element DONE
HTMLSelectElement html_select_element DONE
-HTMLOptGroupElement html_optgroup_element MISSING
-HTMLOptionElement html_option_element MISSING
+HTMLOptGroupElement html_optgroup_element DONE
+HTMLOptionElement html_option_element DONE
HTMLInputElement html_input_element MISSING
HTMLTextAreaElement html_textarea_element MISSING
HTMLButtonElement html_button_element MISSING
diff --git a/src/html/html_option_element.c b/src/html/html_option_element.c
index b133deb..b777c5f 100644
--- a/src/html/html_option_element.c
+++ b/src/html/html_option_element.c
@@ -255,13 +255,22 @@ dom_exception dom_html_option_element_get_text(
* \return DOM_NO_ERR on success, appropriate error otherwise.
*/
dom_exception dom_html_option_element_get_index(
- dom_html_option_element *option, unsigned long *index)
+ dom_html_option_element *option, int32_t *index)
{
- UNUSED(option);
- UNUSED(index);
+ dom_html_document *doc = (dom_html_document *) dom_node_get_owner(option);
+ int32_t idx = 0;
+ dom_node_internal *n = ((dom_node_internal *)option)->parent;
- /** \todo Implement */
- return DOM_NOT_SUPPORTED_ERR;
+ for(n = n->first_child;n != NULL; n = n->next) {
+ if((dom_node_internal *)option == n) {
+ *index = idx;
+ break;
+ } else if(dom_string_caseless_isequal(n->name,doc->memoised[hds_OPTION])) {
+ idx += 1;
+ }
+ }
+
+ return DOM_NO_ERR;
}
/**
diff --git a/test/testcases/tests/level1/html/HTMLOptionElement05.xml.kfail
b/test/testcases/tests/level1/html/HTMLOptionElement05.xml.kfail
deleted file mode 100644
index 46812a1..0000000
--- a/test/testcases/tests/level1/html/HTMLOptionElement05.xml.kfail
+++ /dev/null
@@ -1,44 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
-
-<!--
-
-Copyright (c) 2001 World Wide Web Consortium,
-(Massachusetts Institute of Technology, Institut National de
-Recherche en Informatique et en Automatique, Keio University). All
-Rights Reserved. This program is distributed under the W3C's Software
-Intellectual Property License. This program is distributed in the
-hope that it will be useful, but WITHOUT ANY WARRANTY; without even
-the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
-PURPOSE.
-
-See W3C License
http://www.w3.org/Consortium/Legal/ for more details.
-
--->
-<!DOCTYPE test SYSTEM "dom1.dtd">
-<test
xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1"
name="HTMLOptionElement05">
-<metadata>
-<title>HTMLOptionElement05</title>
-<creator>NIST</creator>
-<description>
- The index attribute indicates th index of this OPTION in ints parent
- SELECT.
-
- Retrieve the index attribute from the seventh OPTION element
- and examine its value.
-</description>
-<contributor>Mary Brady</contributor>
-<date qualifier="created">2002-02-22</date>
-<subject
resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-o...
-</metadata>
-<var name="nodeList" type="NodeList"/>
-<var name="testNode" type="Node"/>
-<var name="vindex" type="int" />
-<var name="doc" type="Document"/>
-<load var="doc" href="option"
willBeModified="false"/>
-<getElementsByTagName interface="Document" obj="doc"
var="nodeList" tagname='"option"'/>
-<assertSize collection="nodeList" size="10"
id="Asize"/>
-<item interface="NodeList" obj="nodeList" var="testNode"
index="6"/>
-<index interface="HTMLOptionElement" obj="testNode"
var="vindex"/>
-<assertEquals actual="vindex" expected="1"
id="indexLink" ignoreCase="false"/>
-</test>
commitdiff
http://git.netsurf-browser.org/libdom.git/commit/?id=5c0d74591877de6bcced...
commit 5c0d74591877de6bcced0a6ba5836b4a2df1c5a7
Author: rsk1994 <rsk1coder99(a)gmail.com>
Commit: Rupinder Singh Khokhar <rsk1coder99(a)gmail.com>
Xselect element && disabling IsIndex Element
diff --git a/src/html/Makefile b/src/html/Makefile
index 8c20362..2cb85d9 100644
--- a/src/html/Makefile
+++ b/src/html/Makefile
@@ -3,7 +3,7 @@ DIR_SOURCES := \
html_document.c html_collection.c html_options_collection.c \
html_element.c html_html_element.c html_head_element.c \
html_link_element.c html_title_element.c html_meta_element.c \
- html_base_element.c html_isindex_element.c html_style_element.c \
+ html_base_element.c html_style_element.c \
html_body_element.c html_form_element.c html_select_element.c \
html_button_element.c html_input_element.c html_text_area_element.c \
html_opt_group_element.c html_option_element.c html_hr_element.c \
@@ -20,7 +20,7 @@ DIR_SOURCES := \
html_table_element.c html_tablerow_element.c
UNINMPLEMENTED_SOURCES := \
- html_frameset_element.c \
+ html_frameset_element.c html_isindex_element.c \
html_frame_element.c html_iframe_element.c
include $(NSBUILD)/Makefile.subdir
diff --git a/src/html/TODO b/src/html/TODO
index d817e68..8e004e1 100644
--- a/src/html/TODO
+++ b/src/html/TODO
@@ -12,7 +12,7 @@ HTMLIsIndexElement html_isindex_element MISSING
HTMLStyleElement html_style_element DONE
HTMLBodyElement html_body_element MISSING
HTMLFormElement html_form_element DONE
-HTMLSelectElement html_select_element MISSING
+HTMLSelectElement html_select_element DONE
HTMLOptGroupElement html_optgroup_element MISSING
HTMLOptionElement html_option_element MISSING
HTMLInputElement html_input_element MISSING
diff --git a/src/html/html_select_element.c b/src/html/html_select_element.c
index 1e49c75..7a5e84e 100644
--- a/src/html/html_select_element.c
+++ b/src/html/html_select_element.c
@@ -65,8 +65,8 @@ dom_exception _dom_html_select_element_initialise(struct
dom_html_document *doc,
ele->form = NULL;
return _dom_html_element_initialise(doc, &ele->base,
- doc->memoised[hds_SELECT],
- namespace, prefix);
+ doc->memoised[hds_SELECT],
+ namespace, prefix);
}
/**
@@ -125,16 +125,16 @@ dom_exception _dom_html_select_element_copy(dom_node_internal *old,
/* Public APIs */
static dom_exception _dom_html_select_element_make_collection(
- dom_html_select_element *ele,
- dom_html_options_collection **col)
+ dom_html_select_element *ele,
+ dom_html_options_collection **col)
{
dom_html_document *doc = (dom_html_document *) dom_node_get_owner(ele);
assert(doc != NULL);
return _dom_html_options_collection_create(doc,
- (dom_node_internal *) ele,
- is_option, ele, col);
+ (dom_node_internal *) ele,
+ is_option, ele, col);
}
/**
@@ -178,7 +178,7 @@ dom_exception dom_html_select_element_get_selected_index(
dom_node *option;
bool selected;
dom_html_options_collection *col;
-
+
err = _dom_html_select_element_make_collection(ele, &col);
err = dom_html_options_collection_get_length(col, &len);
@@ -194,7 +194,7 @@ dom_exception dom_html_select_element_get_selected_index(
dom_html_options_collection_unref(col);
return err;
}
-
+
err = dom_html_option_element_get_selected(
(dom_html_option_element *) option, &selected);
@@ -204,7 +204,7 @@ dom_exception dom_html_select_element_get_selected_index(
dom_html_options_collection_unref(col);
return err;
}
-
+
if (selected) {
*index = idx;
dom_html_options_collection_unref(col);
@@ -228,11 +228,30 @@ dom_exception dom_html_select_element_get_selected_index(
dom_exception dom_html_select_element_set_selected_index(
dom_html_select_element *ele, int32_t index)
{
- UNUSED(ele);
- UNUSED(index);
+ dom_exception err;
+ dom_node *option;
+ dom_html_options_collection *col;
- /** \todo Implement */
- return DOM_NOT_SUPPORTED_ERR;
+ err = _dom_html_select_element_make_collection(ele, &col);
+
+ err = dom_html_options_collection_item(col,
+ index, &option);
+ if (err != DOM_NO_ERR) {
+ dom_html_options_collection_unref(col);
+ return err;
+ }
+
+ err = dom_html_option_element_set_selected(
+ (dom_html_option_element *) option, true);
+
+ dom_node_unref(option);
+
+ dom_html_options_collection_unref(col);
+ if (err != DOM_NO_ERR) {
+ return err;
+ }
+
+ return DOM_NO_ERR;
}
/**
@@ -250,7 +269,7 @@ dom_exception dom_html_select_element_get_value(
dom_node *option;
bool selected;
dom_html_options_collection *col;
-
+
err = _dom_html_select_element_make_collection(ele, &col);
if (err != DOM_NO_ERR)
return err;
@@ -291,7 +310,7 @@ dom_exception dom_html_select_element_get_value(
*value = NULL;
dom_html_options_collection_unref(col);
-
+
return DOM_NO_ERR;
}
@@ -305,11 +324,54 @@ dom_exception dom_html_select_element_get_value(
dom_exception dom_html_select_element_set_value(
dom_html_select_element *ele, dom_string *value)
{
- UNUSED(ele);
- UNUSED(value);
+ dom_exception err;
+ uint32_t idx, len;
+ dom_node *option;
+ bool selected;
+ dom_html_options_collection *col;
+
+ err = _dom_html_select_element_make_collection(ele, &col);
+ if (err != DOM_NO_ERR)
+ return err;
+
+ err = dom_html_select_element_get_length(ele, &len);
+ if (err != DOM_NO_ERR) {
+ dom_html_options_collection_unref(col);
+ return err;
+ }
+
+ for (idx = 0; idx < len; idx++) {
+ err = dom_html_options_collection_item(col,
+ idx, &option);
+ if (err != DOM_NO_ERR) {
+ dom_html_options_collection_unref(col);
+ return err;
+ }
+
+ err = dom_html_option_element_get_selected(
+ (dom_html_option_element *) option, &selected);
+ if (err != DOM_NO_ERR) {
+ dom_html_options_collection_unref(col);
+ dom_node_unref(option);
+ return err;
+ }
+
+ if (selected) {
+ err = dom_html_option_element_set_value(
+ (dom_html_option_element *) option,
+ value);
+
+ dom_html_options_collection_unref(col);
+ dom_node_unref(option);
+
+ return err;
+ }
+ }
+
+ dom_html_options_collection_unref(col);
+
+ return DOM_NO_ERR;
- /** \todo Implement */
- return DOM_NOT_SUPPORTED_ERR;
}
/**
@@ -362,7 +424,7 @@ dom_exception dom_html_select_element_set_length(
* \return DOM_NO_ERR on success, appropriate error otherwise.
*/
dom_exception dom_html_select_element_get_form(
- dom_html_select_element *select, dom_html_form_element **form)
+ dom_html_select_element *select, dom_html_form_element **form)
{
*form = select->form;
@@ -536,12 +598,12 @@ dom_exception dom_html_select_element_set_tab_index(
dom_exception dom__html_select_element_add(dom_html_select_element *select,
struct dom_html_element *ele, struct dom_html_element *before)
{
- UNUSED(select);
- UNUSED(ele);
- UNUSED(before);
- /** \todo Implement */
- return DOM_NOT_SUPPORTED_ERR;
+ return _dom_node_insert_before((dom_node_internal *)select,
+ (dom_node_internal *)ele, (dom_node_internal *)before,
+ (dom_node_internal **)&ele);
+
+
}
dom_exception dom_html_select_element_remove(dom_html_select_element *ele,
@@ -549,17 +611,31 @@ dom_exception dom_html_select_element_remove(dom_html_select_element
*ele,
{
dom_exception err;
uint32_t len;
+ dom_node *option;
err = dom_html_select_element_get_length(ele, &len);
if (err != DOM_NO_ERR)
return err;
/* Ensure index is in range */
- if (index < 0 || (uint32_t)index >= len)
+ if (index < 0 || index >= (int32_t)len)
return DOM_NO_ERR;
+ dom_html_options_collection *col;
- /** \todo What does remove mean? Remove option from tree and destroy it? */
- return DOM_NOT_SUPPORTED_ERR;
+ err = _dom_html_select_element_make_collection(ele, &col);
+ if (err != DOM_NO_ERR)
+ return err;
+
+ err = dom_html_options_collection_item(col,
+ index, &option);
+
+ if (err != DOM_NO_ERR) {
+ dom_html_options_collection_unref(col);
+ return err;
+ }
+ return _dom_node_remove_child(((dom_node_internal *)option)->parent,
+ (dom_node_internal *)option,
+ (dom_node_internal **)&option);
}
/**
@@ -577,9 +653,9 @@ dom_exception dom_html_select_element_blur(struct
dom_html_select_element *ele)
/** \todo Is this event (a) default (b) bubbling and (c) cancelable? */
return _dom_dispatch_generic_event((dom_document *) doc,
- (dom_event_target *) ele,
- doc->memoised[hds_blur], true,
- true, &success);
+ (dom_event_target *) ele,
+ doc->memoised[hds_blur], true,
+ true, &success);
}
/**
@@ -597,9 +673,9 @@ dom_exception dom_html_select_element_focus(struct
dom_html_select_element *ele)
/** \todo Is this event (a) default (b) bubbling and (c) cancelable? */
return _dom_dispatch_generic_event((dom_document *) doc,
- (dom_event_target *) ele,
- doc->memoised[hds_focus], true,
- true, &success);
+ (dom_event_target *) ele,
+ doc->memoised[hds_focus], true,
+ true, &success);
}
@@ -611,7 +687,7 @@ bool is_option(struct dom_node_internal *node, void *ctx)
{
dom_html_select_element *ele = ctx;
dom_html_document *doc = (dom_html_document *) dom_node_get_owner(ele);
-
+
if (dom_string_isequal(node->name, doc->memoised[hds_OPTION]))
return true;
@@ -619,7 +695,7 @@ bool is_option(struct dom_node_internal *node, void *ctx)
}
dom_exception _dom_html_select_element_set_form(
- dom_html_select_element *select, dom_html_form_element *form)
+ dom_html_select_element *select, dom_html_form_element *form)
{
select->form = form;
diff --git a/src/html/html_style_element.c b/src/html/html_style_element.c
index 3b295f1..681f0b8 100644
--- a/src/html/html_style_element.c
+++ b/src/html/html_style_element.c
@@ -35,7 +35,7 @@ dom_exception _dom_html_style_element_create(struct dom_html_document
*doc,
*ele = malloc(sizeof(dom_html_style_element));
if (*ele == NULL)
return DOM_NO_MEM_ERR;
-
+
/* Set up vtables */
node = (struct dom_node_internal *) *ele;
node->base.vtable = &_dom_html_element_vtable;
diff --git a/test/testcases/tests/level1/html/HTMLSelectElement17.xml.int-broken
b/test/testcases/tests/level1/html/HTMLSelectElement17.xml.int-broken
deleted file mode 100644
index 03549ff..0000000
--- a/test/testcases/tests/level1/html/HTMLSelectElement17.xml.int-broken
+++ /dev/null
@@ -1,43 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
-
-<!--
-
-Copyright (c) 2004 World Wide Web Consortium,
-(Massachusetts Institute of Technology, Institut National de
-Recherche en Informatique et en Automatique, Keio University). All
-Rights Reserved. This program is distributed under the W3C's Software
-Intellectual Property License. This program is distributed in the
-hope that it will be useful, but WITHOUT ANY WARRANTY; without even
-the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
-PURPOSE.
-
-See W3C License
http://www.w3.org/Consortium/Legal/ for more details.
-
--->
-<!DOCTYPE test SYSTEM "dom1.dtd">
-<test
xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1"
name="HTMLSelectElement17">
-<metadata>
-<title>HTMLSelectElement17</title>
-<creator>Curt Arnold</creator>
-<description>
-Removes a non-existant option using HTMLSelectElement.remove.
-</description>
-<date qualifier="created">2004-03-18</date>
-<subject
resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-o...
-</metadata>
-<var name="nodeList" type="NodeList"/>
-<var name="testNode" type="Node"/>
-<var name="doc" type="Document"/>
-<var name="optLength" type="int"/>
-<var name="selected" type="int"/>
-<load var="doc" href="select"
willBeModified="true"/>
-<getElementsByTagName interface="Document" obj="doc"
var="nodeList" tagname='"select"'/>
-<assertSize collection="nodeList" size="3"
id="Asize"/>
-<item interface="NodeList" obj="nodeList" var="testNode"
index="0"/>
-<remove interface="HTMLSelectElement" obj="testNode"
index="6"/>
-<length interface="HTMLSelectElement" obj="testNode"
var="optLength"/>
-<assertEquals actual="optLength" expected="5"
id="optLength" ignoreCase="false"/>
-<selectedIndex interface="HTMLSelectElement" obj="testNode"
var="selected"/>
-<assertEquals actual="selected" expected="0"
id="selected" ignoreCase="false"/>
-</test>
diff --git a/test/testcases/tests/level1/html/HTMLSelectElement17.xml.kfail
b/test/testcases/tests/level1/html/HTMLSelectElement17.xml.kfail
new file mode 100644
index 0000000..03549ff
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLSelectElement17.xml.kfail
@@ -0,0 +1,43 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, Institut National de
+Recherche en Informatique et en Automatique, Keio University). All
+Rights Reserved. This program is distributed under the W3C's Software
+Intellectual Property License. This program is distributed in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
+PURPOSE.
+
+See W3C License
http://www.w3.org/Consortium/Legal/ for more details.
+
+-->
+<!DOCTYPE test SYSTEM "dom1.dtd">
+<test
xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1"
name="HTMLSelectElement17">
+<metadata>
+<title>HTMLSelectElement17</title>
+<creator>Curt Arnold</creator>
+<description>
+Removes a non-existant option using HTMLSelectElement.remove.
+</description>
+<date qualifier="created">2004-03-18</date>
+<subject
resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-o...
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="doc" type="Document"/>
+<var name="optLength" type="int"/>
+<var name="selected" type="int"/>
+<load var="doc" href="select"
willBeModified="true"/>
+<getElementsByTagName interface="Document" obj="doc"
var="nodeList" tagname='"select"'/>
+<assertSize collection="nodeList" size="3"
id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode"
index="0"/>
+<remove interface="HTMLSelectElement" obj="testNode"
index="6"/>
+<length interface="HTMLSelectElement" obj="testNode"
var="optLength"/>
+<assertEquals actual="optLength" expected="5"
id="optLength" ignoreCase="false"/>
+<selectedIndex interface="HTMLSelectElement" obj="testNode"
var="selected"/>
+<assertEquals actual="selected" expected="0"
id="selected" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLSelectElement19.xml.kfail
b/test/testcases/tests/level1/html/HTMLSelectElement19.xml.kfail
index 2d2a732..5d06fe1 100644
--- a/test/testcases/tests/level1/html/HTMLSelectElement19.xml.kfail
+++ b/test/testcases/tests/level1/html/HTMLSelectElement19.xml.kfail
@@ -33,7 +33,7 @@ Add a new option before the selected node using HTMLSelectElement.add.
<var name="selected" type="int"/>
<var name="newOpt" type="Element"/>
<var name="newOptText" type="Text"/>
-<var name="opt" type="Element"/>
+<var name="opt" type="Node"/>
<var name="optText" type="Text"/>
<var name="optValue" type="DOMString"/>
<var name="retNode" type="Node"/>
diff --git a/test/testcases/tests/level2/html/HTMLSelectElement20.xml
b/test/testcases/tests/level2/html/HTMLSelectElement20.xml
new file mode 100644
index 0000000..ddbe2f7
--- /dev/null
+++ b/test/testcases/tests/level2/html/HTMLSelectElement20.xml
@@ -0,0 +1,56 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, Institut National de
+Recherche en Informatique et en Automatique, Keio University). All
+Rights Reserved. This program is distributed under the W3C's Software
+Intellectual Property License. This program is distributed in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
+PURPOSE.
+
+See W3C License
http://www.w3.org/Consortium/Legal/ for more details.
+
+-->
+<!DOCTYPE test SYSTEM "dom2.dtd">
+<test
xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-2"
name="HTMLSelectElement20">
+<metadata>
+<title>HTMLSelectElement20</title>
+<creator>Curt Arnold</creator>
+<description>
+Attempting to add an new option using HTMLSelectElement.add before a node that is not a
child of the select
+element should raise a NOT_FOUND_ERR.
+</description>
+<date qualifier="created">2004-03-18</date>
+<subject
resource="http://www.w3.org/TR/DOM-Level-2-HTML/html#ID-14493106&quo...
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="doc" type="Document"/>
+<var name="optLength" type="int"/>
+<var name="selected" type="int"/>
+<var name="newOpt" type="Element"/>
+<var name="newOptText" type="Text"/>
+<var name="retNode" type="Node"/>
+<var name="options" type="HTMLCollection"/>
+<var name="otherSelect" type="Element"/>
+<var name="selectedNode" type="Node"/>
+<load var="doc" href="select"
willBeModified="true"/>
+<getElementsByTagName interface="Document" obj="doc"
var="nodeList" tagname='"select"'/>
+<assertSize collection="nodeList" size="3"
id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode"
index="0"/>
+<item interface="NodeList" obj="nodeList"
var="otherSelect" index="1"/>
+<createElement var="newOpt" obj="doc"
tagName='"option"'/>
+<createTextNode var="newOptText" obj="doc"
data='"EMP31415"'/>
+<appendChild var="retNode" obj="newOpt"
newChild="newOptText"/>
+<options var="options" obj="otherSelect"/>
+<item var="selectedNode" obj="options" index="0"
interface="HTMLCollection"/>
+<assertDOMException id="throw_NOT_FOUND_ERR">
+ <NOT_FOUND_ERR>
+ <add interface="HTMLSelectElement" obj="testNode"
element="newOpt" before="selectedNode"/>
+ </NOT_FOUND_ERR>
+</assertDOMException>
+</test>
diff --git a/test/testcases/tests/level2/html/HTMLSelectElement20.xml.kfail
b/test/testcases/tests/level2/html/HTMLSelectElement20.xml.kfail
deleted file mode 100644
index ddbe2f7..0000000
--- a/test/testcases/tests/level2/html/HTMLSelectElement20.xml.kfail
+++ /dev/null
@@ -1,56 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
-
-<!--
-
-Copyright (c) 2004 World Wide Web Consortium,
-(Massachusetts Institute of Technology, Institut National de
-Recherche en Informatique et en Automatique, Keio University). All
-Rights Reserved. This program is distributed under the W3C's Software
-Intellectual Property License. This program is distributed in the
-hope that it will be useful, but WITHOUT ANY WARRANTY; without even
-the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
-PURPOSE.
-
-See W3C License
http://www.w3.org/Consortium/Legal/ for more details.
-
--->
-<!DOCTYPE test SYSTEM "dom2.dtd">
-<test
xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-2"
name="HTMLSelectElement20">
-<metadata>
-<title>HTMLSelectElement20</title>
-<creator>Curt Arnold</creator>
-<description>
-Attempting to add an new option using HTMLSelectElement.add before a node that is not a
child of the select
-element should raise a NOT_FOUND_ERR.
-</description>
-<date qualifier="created">2004-03-18</date>
-<subject
resource="http://www.w3.org/TR/DOM-Level-2-HTML/html#ID-14493106&quo...
-</metadata>
-<var name="nodeList" type="NodeList"/>
-<var name="testNode" type="Node"/>
-<var name="doc" type="Document"/>
-<var name="optLength" type="int"/>
-<var name="selected" type="int"/>
-<var name="newOpt" type="Element"/>
-<var name="newOptText" type="Text"/>
-<var name="retNode" type="Node"/>
-<var name="options" type="HTMLCollection"/>
-<var name="otherSelect" type="Element"/>
-<var name="selectedNode" type="Node"/>
-<load var="doc" href="select"
willBeModified="true"/>
-<getElementsByTagName interface="Document" obj="doc"
var="nodeList" tagname='"select"'/>
-<assertSize collection="nodeList" size="3"
id="Asize"/>
-<item interface="NodeList" obj="nodeList" var="testNode"
index="0"/>
-<item interface="NodeList" obj="nodeList"
var="otherSelect" index="1"/>
-<createElement var="newOpt" obj="doc"
tagName='"option"'/>
-<createTextNode var="newOptText" obj="doc"
data='"EMP31415"'/>
-<appendChild var="retNode" obj="newOpt"
newChild="newOptText"/>
-<options var="options" obj="otherSelect"/>
-<item var="selectedNode" obj="options" index="0"
interface="HTMLCollection"/>
-<assertDOMException id="throw_NOT_FOUND_ERR">
- <NOT_FOUND_ERR>
- <add interface="HTMLSelectElement" obj="testNode"
element="newOpt" before="selectedNode"/>
- </NOT_FOUND_ERR>
-</assertDOMException>
-</test>
diff --git a/test/testcases/tests/level2/html/files/select.html
b/test/testcases/tests/level2/html/files/select.html
new file mode 100644
index 0000000..7820624
--- /dev/null
+++ b/test/testcases/tests/level2/html/files/select.html
@@ -0,0 +1,44 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+<META HTTP-EQUIV="Content-Type" CONTENT="text/html;
CHARSET=utf-8">
+<TITLE>NIST DOM HTML Test - SELECT</TITLE>
+</HEAD>
+<BODY onload="parent.loadComplete()">
+<FORM ID="form1" ACTION="./files/getData.pl"
METHOD="post">
+<P>
+<SELECT ID="selectId" DIR="ltr" TABINDEX="7"
NAME="select1" MULTIPLE="multiple" SIZE="1">
+<OPTION SELECTED="selected"
value="EMP1">EMP10001</OPTION>
+<OPTION>EMP10002</OPTION>
+<OPTION>EMP10003</OPTION>
+<OPTION>EMP10004</OPTION>
+<OPTION>EMP10005</OPTION>
+</SELECT>
+</P>
+</FORM>
+<P>
+<SELECT NAME="select2">
+<OPTION>EMP20001</OPTION>
+<OPTION>EMP20002</OPTION>
+<OPTION>EMP20003</OPTION>
+<OPTION>EMP20004</OPTION>
+<OPTION>EMP20005</OPTION>
+</SELECT>
+</P>
+<P>
+<SELECT NAME="select3" DISABLED="disabled"
TABINDEX="1">
+<OPTION>EMP30001</OPTION>
+<OPTION>EMP30002</OPTION>
+<OPTION>EMP30003</OPTION>
+<OPTION>EMP30004</OPTION>
+<OPTION>EMP30005</OPTION>
+</SELECT>
+</P>
+</BODY>
+</HTML>
+
+
+
+
+
+
diff --git a/test/testcases/tests/level2/html/files/select.xhtml
b/test/testcases/tests/level2/html/files/select.xhtml
new file mode 100644
index 0000000..491a74c
--- /dev/null
+++ b/test/testcases/tests/level2/html/files/select.xhtml
@@ -0,0 +1,41 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE html
+ PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
+ "xhtml1-transitional.dtd">
+<html
xmlns='http://www.w3.org/1999/xhtml'>
+<head>
+<title>NIST DOM HTML Test - SELECT</title>
+</head>
+<body onload="parent.loadComplete()">
+<form id="form1" action="./files/getData.pl"
method="post">
+<p>
+<select id="selectId" dir="ltr" tabindex="7"
name="select1" multiple="multiple" size="1">
+<option selected="selected"
value="EMP1">EMP10001</option>
+<option>EMP10002</option>
+<option>EMP10003</option>
+<option>EMP10004</option>
+<option>EMP10005</option>
+</select>
+</p>
+</form>
+<p>
+<select name="select2">
+<option>EMP20001</option>
+<option>EMP20002</option>
+<option>EMP20003</option>
+<option>EMP20004</option>
+<option>EMP20005</option>
+</select>
+</p>
+<p>
+<select name="select3" disabled="disabled"
tabindex="1">
+<option>EMP30001</option>
+<option>EMP30002</option>
+<option>EMP30003</option>
+<option>EMP30004</option>
+<option>EMP30005</option>
+</select>
+</p>
+</body>
+</html>
+
diff --git a/test/testcases/tests/level2/html/files/select.xml
b/test/testcases/tests/level2/html/files/select.xml
new file mode 100644
index 0000000..491a74c
--- /dev/null
+++ b/test/testcases/tests/level2/html/files/select.xml
@@ -0,0 +1,41 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE html
+ PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
+ "xhtml1-transitional.dtd">
+<html
xmlns='http://www.w3.org/1999/xhtml'>
+<head>
+<title>NIST DOM HTML Test - SELECT</title>
+</head>
+<body onload="parent.loadComplete()">
+<form id="form1" action="./files/getData.pl"
method="post">
+<p>
+<select id="selectId" dir="ltr" tabindex="7"
name="select1" multiple="multiple" size="1">
+<option selected="selected"
value="EMP1">EMP10001</option>
+<option>EMP10002</option>
+<option>EMP10003</option>
+<option>EMP10004</option>
+<option>EMP10005</option>
+</select>
+</p>
+</form>
+<p>
+<select name="select2">
+<option>EMP20001</option>
+<option>EMP20002</option>
+<option>EMP20003</option>
+<option>EMP20004</option>
+<option>EMP20005</option>
+</select>
+</p>
+<p>
+<select name="select3" disabled="disabled"
tabindex="1">
+<option>EMP30001</option>
+<option>EMP30002</option>
+<option>EMP30003</option>
+<option>EMP30004</option>
+<option>EMP30005</option>
+</select>
+</p>
+</body>
+</html>
+
commitdiff
http://git.netsurf-browser.org/libdom.git/commit/?id=47847ac9ba3d26771e80...
commit 47847ac9ba3d26771e8007761e5da50e61daf734
Author: rsk1994 <rsk1coder99(a)gmail.com>
Commit: Rupinder Singh Khokhar <rsk1coder99(a)gmail.com>
Style Element
diff --git a/Makefile b/Makefile
index adb8d59..9b47c36 100644
--- a/Makefile
+++ b/Makefile
@@ -129,6 +129,8 @@ INSTALL_ITEMS := $(INSTALL_ITEMS) $(I):$(Is)/html_tablecol_element.h
INSTALL_ITEMS := $(INSTALL_ITEMS) $(I):$(Is)/html_tablesection_element.h
INSTALL_ITEMS := $(INSTALL_ITEMS) $(I):$(Is)/html_table_element.h
INSTALL_ITEMS := $(INSTALL_ITEMS) $(I):$(Is)/html_tablerow_element.h
+INSTALL_ITEMS := $(INSTALL_ITEMS) $(I):$(Is)/html_base_element.h
+INSTALL_ITEMS := $(INSTALL_ITEMS) $(I):$(Is)/html_style_element.h
INSTALL_ITEMS := $(INSTALL_ITEMS) /$(LIBDIR)/pkgconfig:lib$(COMPONENT).pc.in
INSTALL_ITEMS := $(INSTALL_ITEMS) /$(LIBDIR):$(OUTPUT)
diff --git a/include/dom/dom.h b/include/dom/dom.h
index 2c312f4..68ae227 100644
--- a/include/dom/dom.h
+++ b/include/dom/dom.h
@@ -89,6 +89,7 @@
#include <dom/html/html_table_element.h>
#include <dom/html/html_tablerow_element.h>
#include <dom/html/html_base_element.h>
+#include <dom/html/html_style_element.h>
/* DOM Events header */
#include <dom/events/events.h>
diff --git a/include/dom/html/html_isindex_element.h
b/include/dom/html/html_isindex_element.h
index 4961ccc..966b2d2 100644
--- a/include/dom/html/html_isindex_element.h
+++ b/include/dom/html/html_isindex_element.h
@@ -22,5 +22,10 @@ typedef struct dom_html_isindex_element dom_html_isindex_element;
dom_exception dom_html_isindex_element_get_form(dom_html_isindex_element *ele,
struct dom_html_form_element **form);
+dom_exception dom_html_isindex_element_get_prompt(dom_html_isindex_element *ele,
+ dom_string **prompt);
+
+dom_exception dom_html_isindex_element_set_prompt(dom_html_isindex_element *ele,
+ dom_string *prompt);
#endif
diff --git a/include/dom/html/html_style_element.h
b/include/dom/html/html_style_element.h
index 868a043..5b3cd41 100644
--- a/include/dom/html/html_style_element.h
+++ b/include/dom/html/html_style_element.h
@@ -10,6 +10,7 @@
#include <stdbool.h>
#include <dom/core/exceptions.h>
+#include <dom/core/string.h>
typedef struct dom_html_style_element dom_html_style_element;
@@ -19,5 +20,17 @@ dom_exception
dom_html_style_element_get_disabled(dom_html_style_element *ele,
dom_exception dom_html_style_element_set_disabled(dom_html_style_element *ele,
bool disabled);
+dom_exception dom_html_style_element_get_media(dom_html_style_element *ele,
+ dom_string **media);
+
+dom_exception dom_html_style_element_set_media(dom_html_style_element *ele,
+ dom_string *media);
+
+dom_exception dom_html_style_element_get_type(dom_html_style_element *ele,
+ dom_string **type);
+
+dom_exception dom_html_style_element_set_type(dom_html_style_element *ele,
+ dom_string *type);
+
#endif
diff --git a/src/html/TODO b/src/html/TODO
index 97eab8e..d817e68 100644
--- a/src/html/TODO
+++ b/src/html/TODO
@@ -9,7 +9,7 @@ HTMLTitleElement html_title_element DONE
HTMLMetaElement html_meta_element DONE
HTMLBaseElement html_base_element DONE
HTMLIsIndexElement html_isindex_element MISSING
-HTMLStyleElement html_style_element MISSING
+HTMLStyleElement html_style_element DONE
HTMLBodyElement html_body_element MISSING
HTMLFormElement html_form_element DONE
HTMLSelectElement html_select_element MISSING
diff --git a/src/html/html_document.c b/src/html/html_document.c
index 25abca3..0e39f77 100644
--- a/src/html/html_document.c
+++ b/src/html/html_document.c
@@ -56,6 +56,7 @@
#include "html/html_tablesection_element.h"
#include "html/html_table_element.h"
#include "html/html_tablerow_element.h"
+#include "html/html_style_element.h"
#include "core/attr.h"
#include "core/string.h"
@@ -361,6 +362,9 @@ _dom_html_document_create_element_internal(dom_html_document *html,
} else if (dom_string_caseless_isequal(tag_name, html->memoised[hds_TD])) {
exc = _dom_html_table_row_element_create(html, namespace, prefix,
(dom_html_table_row_element **) result);
+ } else if (dom_string_caseless_isequal(tag_name, html->memoised[hds_STYLE])) {
+ exc = _dom_html_style_element_create(html,
+ (dom_html_style_element **) result);
} else {
exc = _dom_html_element_create(html, tag_name, namespace,
prefix, result);
diff --git a/src/html/html_document_strings.h b/src/html/html_document_strings.h
index 8ded892..5d5ddaf 100644
--- a/src/html/html_document_strings.h
+++ b/src/html/html_document_strings.h
@@ -105,6 +105,7 @@ HTML_DOCUMENT_STRINGS_ACTION1(scope)
HTML_DOCUMENT_STRINGS_ACTION1(frame)
HTML_DOCUMENT_STRINGS_ACTION1(rules)
HTML_DOCUMENT_STRINGS_ACTION1(summary)
+HTML_DOCUMENT_STRINGS_ACTION1(prompt)
HTML_DOCUMENT_STRINGS_ACTION(tab_index,tabindex)
HTML_DOCUMENT_STRINGS_ACTION(html_for,for)
HTML_DOCUMENT_STRINGS_ACTION(date_time,datetime)
diff --git a/src/html/html_style_element.c b/src/html/html_style_element.c
index 98eb79b..3b295f1 100644
--- a/src/html/html_style_element.c
+++ b/src/html/html_style_element.c
@@ -8,6 +8,7 @@
#include <stdlib.h>
#include "html/html_style_element.h"
+#include "html/html_document.h"
#include "core/node.h"
#include "utils/utils.h"
@@ -54,13 +55,20 @@ dom_exception _dom_html_style_element_initialise(struct
dom_html_document *doc,
struct dom_html_style_element *ele)
{
dom_string *name = NULL;
+ dom_string *media_default = NULL;
dom_exception err;
err = dom_string_create((const uint8_t *) "STYLE", SLEN("STYLE"),
&name);
if (err != DOM_NO_ERR)
return err;
+
+ err = dom_string_create((const uint8_t *) "screen", SLEN("screen"),
+ &media_default);
+ if (err != DOM_NO_ERR)
+ return err;
+ ele->media = media_default;
err = _dom_html_element_initialise(doc, &ele->base, name, NULL, NULL);
dom_string_unref(name);
@@ -119,9 +127,49 @@ dom_exception _dom_html_style_element_copy(dom_node_internal *old,
return _dom_html_element_copy(old, copy);
}
+
/*-----------------------------------------------------------------------*/
/* Public APIs */
+#define SIMPLE_GET(attr) \
+ dom_exception dom_html_style_element_get_##attr( \
+ dom_html_style_element *element, \
+ dom_string **attr) \
+ { \
+ dom_exception ret; \
+ dom_string *_memo_##attr; \
+ \
+ _memo_##attr = \
+ ((struct dom_html_document *) \
+ ((struct dom_node_internal *)element)->owner)->\
+ memoised[hds_##attr]; \
+ \
+ ret = dom_element_get_attribute(element, _memo_##attr, attr); \
+ \
+ return ret; \
+ }
+#define SIMPLE_SET(attr) \
+dom_exception dom_html_style_element_set_##attr( \
+ dom_html_style_element *element, \
+ dom_string *attr) \
+ { \
+ dom_exception ret; \
+ dom_string *_memo_##attr; \
+ \
+ _memo_##attr = \
+ ((struct dom_html_document *) \
+ ((struct dom_node_internal *)element)->owner)->\
+ memoised[hds_##attr]; \
+ \
+ ret = dom_element_set_attribute(element, _memo_##attr, attr); \
+ \
+ return ret; \
+ }
+
+#define SIMPLE_GET_SET(attr) SIMPLE_GET(attr) SIMPLE_SET(attr)
+SIMPLE_GET_SET(type);
+SIMPLE_SET(media);
+
/**
* Get the disabled property
*
@@ -150,3 +198,36 @@ dom_exception
dom_html_style_element_set_disabled(dom_html_style_element *ele,
SLEN("disabled"), disabled);
}
+/**
+ * Get the media property
+ *
+ * \param ele The dom_html_style_element object
+ * \param media The returned status
+ * \return DOM_NO_ERR on success, appropriate dom_exception on failure.
+ */
+dom_exception dom_html_style_element_get_media(dom_html_style_element *ele,
+ dom_string **media)
+{
+ dom_html_document *doc;
+ bool has_value = false;
+ dom_exception err;
+
+ doc = (dom_html_document *) ((dom_node_internal *) ele)->owner;
+
+ err = dom_element_has_attribute(ele,
+ doc->memoised[hds_media], &has_value);
+ if(err !=DOM_NO_ERR)
+ return err;
+
+ if(has_value) {
+ return dom_element_get_attribute(ele,
+ doc->memoised[hds_media], media);
+ }
+
+ *media = ele->media;
+ if (*media != NULL)
+ dom_string_ref(*media);
+ return DOM_NO_ERR;
+
+}
+
diff --git a/src/html/html_style_element.h b/src/html/html_style_element.h
index e7a47e5..285da94 100644
--- a/src/html/html_style_element.h
+++ b/src/html/html_style_element.h
@@ -15,6 +15,8 @@
struct dom_html_style_element {
struct dom_html_element base;
/**< The base class */
+ dom_string *media;
+ /**< The default string value for the media attribute*/
};
/* Create a dom_html_style_element object */
diff --git a/test/testcases/tests/level1/html/HTMLBaseElement01.xml
b/test/testcases/tests/level1/html/HTMLBaseElement01.xml
new file mode 100644
index 0000000..fa6eacc
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLBaseElement01.xml
@@ -0,0 +1,42 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, Institut National de
+Recherche en Informatique et en Automatique, Keio University). All
+Rights Reserved. This program is distributed under the W3C's Software
+Intellectual Property License. This program is distributed in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
+PURPOSE.
+
+See W3C License
http://www.w3.org/Consortium/Legal/ for more details.
+
+-->
+<!DOCTYPE test SYSTEM "dom1.dtd">
+<test
xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1"
name="HTMLBaseElement01">
+<metadata>
+<title>HTMLBaseElement01</title>
+<creator>NIST</creator>
+<description>
+ The href attribute specifies the base URI.
+
+ Retrieve the href attribute and examine its value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject
resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-o...
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vhref" type="DOMString" />
+<var name="doc" type="Document"/>
+<load var="doc" href="base" willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc"
var="nodeList" tagname='"base"'/>
+<assertSize collection="nodeList" size="1"
id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode"
index="0"/>
+<href interface="HTMLBaseElement" obj="testNode"
var="vhref"/>
+<assertEquals actual="vhref" expected='"about:blank"'
id="hrefLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLBaseElement02.xml
b/test/testcases/tests/level1/html/HTMLBaseElement02.xml
new file mode 100644
index 0000000..d2a20a5
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLBaseElement02.xml
@@ -0,0 +1,42 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 World Wide Web Consortium,
+(Massachusetts Institute of Technology, Institut National de
+Recherche en Informatique et en Automatique, Keio University). All
+Rights Reserved. This program is distributed under the W3C's Software
+Intellectual Property License. This program is distributed in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
+PURPOSE.
+
+See W3C License
http://www.w3.org/Consortium/Legal/ for more details.
+
+-->
+<!DOCTYPE test SYSTEM "dom1.dtd">
+<test
xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1"
name="HTMLBaseElement02">
+<metadata>
+<title>HTMLBaseElement02</title>
+<creator>NIST</creator>
+<description>
+ The target attribute specifies the default target frame.
+
+ Retrieve the target attribute and examine its value.
+</description>
+<contributor>Rick Rivello</contributor>
+<date qualifier="created">2002-07-18</date>
+<subject
resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-o...
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vtarget" type="DOMString" />
+<var name="doc" type="Document"/>
+<load var="doc" href="base2"
willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc"
var="nodeList" tagname='"base"'/>
+<assertSize collection="nodeList" size="1"
id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode"
index="0"/>
+<target interface="HTMLBaseElement" obj="testNode"
var="vtarget"/>
+<assertEquals actual="vtarget" expected='"Frame1"'
id="targetLink" ignoreCase="false"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLStyleElement01.xml
b/test/testcases/tests/level1/html/HTMLStyleElement01.xml
new file mode 100644
index 0000000..60c2e57
--- /dev/null
+++ b/test/testcases/tests/level1/html/HTMLStyleElement01.xml
@@ -0,0 +1,42 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001 World Wide Web Consortium,
+(Massachusetts Institute of Technology, Institut National de
+Recherche en Informatique et en Automatique, Keio University). All
+Rights Reserved. This program is distributed under the W3C's Software
+Intellectual Property License. This program is distributed in the
+hope that it will be useful, but WITHOUT ANY WARRANTY; without even
+the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
+PURPOSE.
+
+See W3C License
http://www.w3.org/Consortium/Legal/ for more details.
+
+-->
+<!DOCTYPE test SYSTEM "dom1.dtd">
+<test
xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-1"
name="HTMLStyleElement01">
+<metadata>
+<title>HTMLStyleElement01</title>
+<creator>NIST</creator>
+<description>
+ The disabled attribute enables/disables the stylesheet.
+
+ Retrieve the disabled attribute and examine its value.
+</description>
+<contributor>Mary Brady</contributor>
+<date qualifier="created">2002-02-22</date>
+<subject
resource="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-o...
+</metadata>
+<var name="nodeList" type="NodeList"/>
+<var name="testNode" type="Node"/>
+<var name="vdisabled" type="boolean" />
+<var name="doc" type="Document"/>
+<load var="doc" href="style"
willBeModified="false"/>
+<getElementsByTagName interface="Document" obj="doc"
var="nodeList" tagname='"style"'/>
+<assertSize collection="nodeList" size="1"
id="Asize"/>
+<item interface="NodeList" obj="nodeList" var="testNode"
index="0"/>
+<disabled interface="HTMLStyleElement" obj="testNode"
var="vdisabled"/>
+<assertFalse actual="vdisabled" id="disabledLink"/>
+</test>
diff --git a/test/testcases/tests/level1/html/HTMLStyleElement01.xml.kfail
b/test/testcases/tests/level1/html/HTMLStyleElement01.xml.kfail
deleted file mode 100644
index 60c2e57..0000000
--- a/test/testcases/tests/level1/html/HTMLStyleElement01.xml.kfail
+++ /dev/null
@@ -1,42 +0,0