38 lines
1.5 KiB
Plaintext
38 lines
1.5 KiB
Plaintext
Tests for replacing exactly one Text node. The optimization to update its data should not be observable.
|
|
|
|
On success, you will see a series of "PASS" messages, followed by "TEST COMPLETE".
|
|
|
|
|
|
Keeping a reference
|
|
container = createElementWithText("old"); textNode = container.firstChild
|
|
PASS container.innerHTML = "new"; container.firstChild is not textNode
|
|
|
|
Mutation observer
|
|
container = createElementWithText("old"); mutationObserver.observe(container, {childList: true});
|
|
PASS container.innerHTML = "new"; records = mutationObserver.takeRecords(); records.length is 1
|
|
PASS records[0].type is "childList"
|
|
PASS records[0].removedNodes.length is 1
|
|
PASS records[0].removedNodes[0].data is "old"
|
|
PASS records[0].addedNodes.length is 1
|
|
PASS records[0].addedNodes[0].data is "new"
|
|
|
|
DOMSubtreeModified event
|
|
PASS container = createElementWithText("old"); countEvent(container, "DOMSubtreeModified"); eventCount is 0
|
|
PASS container.innerHTML = "new"; eventCount > 0 is true
|
|
|
|
DOMNodeInserted event
|
|
PASS container = createElementWithText("old"); countEvent(container, "DOMNodeInserted"); eventCount is 0
|
|
PASS container.innerHTML = "new"; eventCount is 1
|
|
|
|
DOMNodeRemoved event
|
|
PASS container = createElementWithText("old"); countEvent(container, "DOMNodeRemoved"); eventCount is 0
|
|
PASS container.innerHTML = "new"; eventCount is 1
|
|
|
|
DOMCharacterDataModified event
|
|
PASS container = createElementWithText("old"); countEvent(container, "DOMCharacterDataModified"); eventCount is 0
|
|
PASS container.innerHTML = "new"; eventCount is 0
|
|
PASS successfullyParsed is true
|
|
|
|
TEST COMPLETE
|
|
|