[Webkit-unassigned] [Bug 16744] New: Acid3 expects different exception handling in NodeIterator

bugzilla-daemon at webkit.org bugzilla-daemon at webkit.org
Sat Jan 5 14:01:13 PST 2008


http://bugs.webkit.org/show_bug.cgi?id=16744

           Summary: Acid3 expects different exception handling in
                    NodeIterator
           Product: WebKit
           Version: 525+ (Nightly build)
          Platform: Macintosh
        OS/Version: Mac OS X 10.4
            Status: NEW
          Severity: Normal
          Priority: P2
         Component: New Bugs
        AssignedTo: webkit-unassigned at lists.webkit.org
        ReportedBy: eric at webkit.org
 BugsThisDependsOn: 16743


This might be a dup of bug 16743.

We fail Acid3 test 6:

    function () {
      // test 6: Removing nodes during iteration
      var count = 0;
      var expect = function(n, node1, node2) {
        count += 1;
        assert(n == count, "reached expectation " + n + " when expecting
expectation " + count);
        assert(node1 == node2, "expectation " + count + " failed");
      };
      var doc = getTestDocument();
      var t1 = doc.body.appendChild(doc.createElement('t1'));
      var t2 = doc.body.appendChild(doc.createElement('t2'));
      var t3 = doc.body.appendChild(doc.createElement('t3'));
      var t4 = doc.body.appendChild(doc.createElement('t4'));
      var callCount = 0;
      var filterFunctions = [
        function (node) { expect(1, node, doc.body); return true; }, // filter
0
        function (node) { expect(3, node, t1); return true; }, // filter 1
        function (node) { expect(5, node, t2); return true; }, // filter 2
        function (node) { expect(7, node, t3); doc.body.removeChild(t4); return
true; }, // filter 3
        function (node) { expect(9, node, t3); doc.body.appendChild(t4); return
true; }, // filter 4
        function (node) { expect(11, node, t4); return true; }, // filter 5
        function (node) { expect(13, node, t4); doc.body.removeChild(t4);
return false; }, // filter 6
        function (node) { expect(14, node, t3); return true; }, // filter 7
        function (node) { expect(16, node, t2); doc.body.removeChild(t2);
return true; }, // filter 8
        function (node) { expect(18, node, t1); return true; }, // filter 9
      ];
      var i = doc.createNodeIterator(doc.documentElement.lastChild, 0xFFFFFFFF,
function (node) { return filterFunctions[callCount++](node); }, true);
      // * B 1 2 3 4
      expect(2, i.nextNode(), doc.body); // filter 0
      // [B] * 1 2 3 4     
      expect(4, i.nextNode(), t1); // filter 1
      // B [1] * 2 3 4
      expect(6, i.nextNode(), t2); // filter 2
      // B 1 [2] * 3 4
      expect(8, i.nextNode(), t3); // filter 3
      // B 1 2 [3] *
      expect(10, i.nextNode(), t3); // filter 4
      // B 1 2 [3] * 4
      expect(12, i.nextNode(), t4); // filter 5
      // B 1 2 3 [4] *
      expect(15, i.previousNode(), t4); // filters 6, 7
        // B 1 2 3 * (4) // filter 6
        // B 1 2 [3] *   // between 6 and 7
        // B 1 2 * (3)   // filter 7
      // B 1 2 * [3]
      expect(17, i.previousNode(), t2); // filter 8
        // B 1 * (2) 3
      // B * [1] 3
      expect(19, i.previousNode(), t1); // filter 9
      return 1;
    },


-- 
Configure bugmail: http://bugs.webkit.org/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the assignee for the bug, or are watching the assignee.



More information about the webkit-unassigned mailing list