| <!DOCTYPE html> |
| <script src="../../../resources/js-test.js"></script> |
| <script> |
| |
| description('Test MutationObserver.observe options related to attributes'); |
| |
| var observer = new MutationObserver(function() {}); |
| var element = document.createElement('div'); |
| element.setAttribute('data-test', '1'); |
| |
| observer.observe(element, {attributeOldValue: true}); |
| element.setAttribute('data-test', '1'); |
| var records = observer.takeRecords(); |
| shouldBe('records.length', '1'); |
| shouldBeEqualToString('records[0].oldValue', '1'); |
| observer.disconnect(); |
| |
| observer.observe(element, {attributeOldValue: false}); |
| element.setAttribute('data-test', '1'); |
| var records = observer.takeRecords(); |
| shouldBe('records.length', '1'); |
| shouldBeNull('records[0].oldValue'); |
| observer.disconnect(); |
| |
| observer.observe(element, {attributeFilter: ['data-test']}); |
| element.setAttribute('data-test', '2'); |
| var records = observer.takeRecords(); |
| shouldBe('records.length', '1'); |
| shouldBeNull('records[0].oldValue'); |
| observer.disconnect(); |
| |
| </script> |