Bug 1283754 - Part 3: Add setupSynchronousObserver to write synchronouse tests for MutaionObserver. r=boris

MozReview-Commit-ID: 1sV5QHVeEyw

--HG--
extra : rebase_source : 766a282f486a9b68c53771a7d56de3fe659b57ca
This commit is contained in:
Hiroyuki Ikezoe 2016-10-14 06:52:11 +09:00
Родитель 4e61e83811
Коммит 16b8fd8f57
1 изменённых файлов: 20 добавлений и 0 удалений

Просмотреть файл

@ -186,3 +186,23 @@ if (opener) {
opener.done(); opener.done();
} }
} }
/**
* Return a new MutaionObserver which started observing |target| element
* with { animations: true, subtree: |subtree| } option.
* NOTE: This observer should be used only with takeRecords(). If any of
* MutationRecords are observed in the callback of the MutationObserver,
* it will raise an assertion.
*/
function setupSynchronousObserver(t, target, subtree) {
var observer = new MutationObserver(records => {
assert_unreached("Any MutationRecords should not be observed in this " +
"callback");
});
t.add_cleanup(() => {
observer.disconnect();
});
observer.observe(target, { animations: true, subtree: subtree });
return observer;
}