Title: [151288] trunk/Source
Revision
151288
Author
[email protected]
Date
2013-06-06 13:43:31 -0700 (Thu, 06 Jun 2013)

Log Message

[GTK] Parameter 'refChild' from function 'webkit_dom_node_insert_before' should be allowed to be NULL
https://bugs.webkit.org/show_bug.cgi?id=117303

Patch by Diego Pino Garcia <[email protected]> on 2013-06-06
Reviewed by Xan Lopez.

Source/WebCore:

Add parameter 'refChild' to the list of parameters that are allowed to
be NULL.

* bindings/scripts/CodeGeneratorGObject.pm:

Source/WebKit/gtk:

Add test for function 'webkit_dom_node_insert_before'.

* tests/testdomnode.c: Checks function dom_document_node_insert_before
(test_dom_node_insertion):

Modified Paths

Diff

Modified: trunk/Source/WebCore/ChangeLog (151287 => 151288)


--- trunk/Source/WebCore/ChangeLog	2013-06-06 20:43:24 UTC (rev 151287)
+++ trunk/Source/WebCore/ChangeLog	2013-06-06 20:43:31 UTC (rev 151288)
@@ -1,3 +1,15 @@
+2013-06-06  Diego Pino Garcia  <[email protected]>
+
+        [GTK] Parameter 'refChild' from function 'webkit_dom_node_insert_before' should be allowed to be NULL
+        https://bugs.webkit.org/show_bug.cgi?id=117303
+
+        Reviewed by Xan Lopez.
+
+        Add parameter 'refChild' to the list of parameters that are allowed to
+        be NULL.
+
+        * bindings/scripts/CodeGeneratorGObject.pm:
+
 2013-06-06  Bem Jones-Bey  <[email protected]>
 
         Fix formatting in BasicShapes.cpp

Modified: trunk/Source/WebCore/bindings/scripts/CodeGeneratorGObject.pm (151287 => 151288)


--- trunk/Source/WebCore/bindings/scripts/CodeGeneratorGObject.pm	2013-06-06 20:43:24 UTC (rev 151287)
+++ trunk/Source/WebCore/bindings/scripts/CodeGeneratorGObject.pm	2013-06-06 20:43:31 UTC (rev 151288)
@@ -47,7 +47,8 @@
 
 # List of function parameters that are allowed to be NULL
 my $canBeNullParams = {
-    'webkit_dom_document_evaluate' => ['inResult', 'resolver']
+    'webkit_dom_document_evaluate' => ['inResult', 'resolver'],
+    'webkit_dom_node_insert_before' => ['refChild']
 };
 
 # Default constructor

Modified: trunk/Source/WebKit/gtk/ChangeLog (151287 => 151288)


--- trunk/Source/WebKit/gtk/ChangeLog	2013-06-06 20:43:24 UTC (rev 151287)
+++ trunk/Source/WebKit/gtk/ChangeLog	2013-06-06 20:43:31 UTC (rev 151288)
@@ -1,5 +1,17 @@
 2013-06-06  Diego Pino Garcia  <[email protected]>
 
+        [GTK] Parameter 'refChild' from function 'webkit_dom_node_insert_before' should be allowed to be NULL
+        https://bugs.webkit.org/show_bug.cgi?id=117303
+
+        Reviewed by Xan Lopez.
+
+        Add test for function 'webkit_dom_node_insert_before'.
+
+        * tests/testdomnode.c: Checks function dom_document_node_insert_before
+        (test_dom_node_insertion):
+
+2013-06-06  Diego Pino Garcia  <[email protected]>
+
         [GTK] Parameters 'inResult' and 'resolver' from function 'webkit_dom_document_evaluate' should be allowed to be NULL
         https://bugs.webkit.org/show_bug.cgi?id=117129
 

Modified: trunk/Source/WebKit/gtk/tests/testdomnode.c (151287 => 151288)


--- trunk/Source/WebKit/gtk/tests/testdomnode.c	2013-06-06 20:43:24 UTC (rev 151287)
+++ trunk/Source/WebKit/gtk/tests/testdomnode.c	2013-06-06 20:43:31 UTC (rev 151288)
@@ -168,7 +168,32 @@
     g_assert_cmpint(webkit_dom_node_list_get_length(list), ==, 0);
     g_object_unref(list);
 
-    /* TODO: insert_before, which does not seem to be working correctly */
+    /* Test insert_before */
+
+    /* If refChild is null, insert newChild as last element of parent */
+    div = webkit_dom_document_create_element(document, "DIV", NULL);
+    webkit_dom_node_insert_before(WEBKIT_DOM_NODE(body), WEBKIT_DOM_NODE(div), NULL, NULL);
+    g_assert(webkit_dom_node_has_child_nodes(WEBKIT_DOM_NODE(body)));
+    list = webkit_dom_node_get_child_nodes(WEBKIT_DOM_NODE(body));
+    g_assert_cmpint(webkit_dom_node_list_get_length(list), ==, 1);
+    node = webkit_dom_node_list_item(list, 0);
+    g_assert(node);
+    g_assert(webkit_dom_node_is_same_node(WEBKIT_DOM_NODE(div), node));
+    g_object_unref(list);
+
+    /* Now insert a 'p' before 'div' */
+    p = webkit_dom_document_create_element(document, "P", NULL);
+    webkit_dom_node_insert_before(WEBKIT_DOM_NODE(body), WEBKIT_DOM_NODE(p), WEBKIT_DOM_NODE(div), NULL);
+    g_assert(webkit_dom_node_has_child_nodes(WEBKIT_DOM_NODE(body)));
+    list = webkit_dom_node_get_child_nodes(WEBKIT_DOM_NODE(body));
+    g_assert_cmpint(webkit_dom_node_list_get_length(list), ==, 2);
+    node = webkit_dom_node_list_item(list, 0);
+    g_assert(node);
+    g_assert(webkit_dom_node_is_same_node(WEBKIT_DOM_NODE(p), node));
+    node = webkit_dom_node_list_item(list, 1);
+    g_assert(node);
+    g_assert(webkit_dom_node_is_same_node(WEBKIT_DOM_NODE(div), node));
+    g_object_unref(list);
 }
 
 int main(int argc, char** argv)
_______________________________________________
webkit-changes mailing list
[email protected]
https://lists.webkit.org/mailman/listinfo/webkit-changes

Reply via email to