Title: [130442] trunk
Revision
130442
Author
ad...@chromium.org
Date
2012-10-04 18:02:29 -0700 (Thu, 04 Oct 2012)

Log Message

MutationRecord attributeName should be null for non attribute changes
https://bugs.webkit.org/show_bug.cgi?id=98438

Reviewed by Ojan Vafai.

Source/WebCore:

Test: fast/mutation/mutation-record-nullity.html

* dom/MutationRecord.idl:

LayoutTests:

* fast/mutation/mutation-record-nullity-expected.txt: Added.
* fast/mutation/mutation-record-nullity.html: Added.

Modified Paths

Added Paths

Diff

Modified: trunk/LayoutTests/ChangeLog (130441 => 130442)


--- trunk/LayoutTests/ChangeLog	2012-10-05 00:54:12 UTC (rev 130441)
+++ trunk/LayoutTests/ChangeLog	2012-10-05 01:02:29 UTC (rev 130442)
@@ -1,3 +1,13 @@
+2012-10-04  Adam Klein  <ad...@chromium.org>
+
+        MutationRecord attributeName should be null for non attribute changes
+        https://bugs.webkit.org/show_bug.cgi?id=98438
+
+        Reviewed by Ojan Vafai.
+
+        * fast/mutation/mutation-record-nullity-expected.txt: Added.
+        * fast/mutation/mutation-record-nullity.html: Added.
+
 2012-10-04  Ryosuke Niwa  <rn...@webkit.org>
 
         More Qt rebaselines after r130411.

Added: trunk/LayoutTests/fast/mutation/mutation-record-nullity-expected.txt (0 => 130442)


--- trunk/LayoutTests/fast/mutation/mutation-record-nullity-expected.txt	                        (rev 0)
+++ trunk/LayoutTests/fast/mutation/mutation-record-nullity-expected.txt	2012-10-05 01:02:29 UTC (rev 130442)
@@ -0,0 +1,30 @@
+Non-relevant properties on mutation records should be null
+
+On success, you will see a series of "PASS" messages, followed by "TEST COMPLETE".
+
+
+characterData record:
+PASS record.attributeName is null
+PASS record.attributeNamespace is null
+PASS record.oldValue is null
+PASS record.addedNodes is null
+PASS record.removedNodes is null
+PASS record.previousSibling is null
+PASS record.nextSibling is null
+
+childList record:
+PASS record.attributeName is null
+PASS record.attributeNamespace is null
+PASS record.oldValue is null
+
+attributes record:
+PASS record.attributeNamespace is null
+PASS record.oldValue is null
+PASS record.addedNodes is null
+PASS record.removedNodes is null
+PASS record.previousSibling is null
+PASS record.nextSibling is null
+PASS successfullyParsed is true
+
+TEST COMPLETE
+

Added: trunk/LayoutTests/fast/mutation/mutation-record-nullity.html (0 => 130442)


--- trunk/LayoutTests/fast/mutation/mutation-record-nullity.html	                        (rev 0)
+++ trunk/LayoutTests/fast/mutation/mutation-record-nullity.html	2012-10-05 01:02:29 UTC (rev 130442)
@@ -0,0 +1,40 @@
+<!DOCTYPE html>
+<script src=""
+<script>
+description('Non-relevant properties on mutation records should be null');
+var observer = new WebKitMutationObserver(function() {});
+
+var text = document.createTextNode('something');
+observer.observe(text, {characterData: true});
+text.data = '';
+var record = observer.takeRecords()[0];
+debug('characterData record:');
+shouldBeNull('record.attributeName');
+shouldBeNull('record.attributeNamespace');
+shouldBeNull('record.oldValue');
+shouldBeNull('record.addedNodes');
+shouldBeNull('record.removedNodes');
+shouldBeNull('record.previousSibling');
+shouldBeNull('record.nextSibling');
+
+var div = document.createElement('div');
+observer.observe(div, {childList: true});
+div.appendChild(document.createElement('span'));
+record = observer.takeRecords()[0];
+debug('\nchildList record:');
+shouldBeNull('record.attributeName');
+shouldBeNull('record.attributeNamespace');
+shouldBeNull('record.oldValue');
+
+observer.observe(div, {attributes: true});
+div.setAttribute('data-foo', 'bar');
+record = observer.takeRecords()[0];
+debug('\nattributes record:');
+shouldBeNull('record.attributeNamespace');
+shouldBeNull('record.oldValue');
+shouldBeNull('record.addedNodes');
+shouldBeNull('record.removedNodes');
+shouldBeNull('record.previousSibling');
+shouldBeNull('record.nextSibling');
+</script>
+<script src=""

Modified: trunk/Source/WebCore/ChangeLog (130441 => 130442)


--- trunk/Source/WebCore/ChangeLog	2012-10-05 00:54:12 UTC (rev 130441)
+++ trunk/Source/WebCore/ChangeLog	2012-10-05 01:02:29 UTC (rev 130442)
@@ -1,3 +1,14 @@
+2012-10-04  Adam Klein  <ad...@chromium.org>
+
+        MutationRecord attributeName should be null for non attribute changes
+        https://bugs.webkit.org/show_bug.cgi?id=98438
+
+        Reviewed by Ojan Vafai.
+
+        Test: fast/mutation/mutation-record-nullity.html
+
+        * dom/MutationRecord.idl:
+
 2012-10-04  Simon Fraser  <simon.fra...@apple.com>
 
         Final part of "sync" to "flush" renaming

Modified: trunk/Source/WebCore/dom/MutationRecord.idl (130441 => 130442)


--- trunk/Source/WebCore/dom/MutationRecord.idl	2012-10-05 00:54:12 UTC (rev 130441)
+++ trunk/Source/WebCore/dom/MutationRecord.idl	2012-10-05 01:02:29 UTC (rev 130442)
@@ -40,7 +40,7 @@
         readonly attribute Node previousSibling;
         readonly attribute Node nextSibling;
 
-        readonly attribute DOMString attributeName;
+        readonly attribute [TreatReturnedNullStringAs=Null] DOMString attributeName;
         readonly attribute [TreatReturnedNullStringAs=Null] DOMString attributeNamespace;
 
         readonly attribute [TreatReturnedNullStringAs=Null] DOMString oldValue;
_______________________________________________
webkit-changes mailing list
webkit-changes@lists.webkit.org
http://lists.webkit.org/mailman/listinfo/webkit-changes

Reply via email to