[FIX] web: MacroEngine: stop observing mutations in iframe

The MacroEngine has a stop function that allows to completely
disable it. Before this commit, it correctly disconnected the
"main" mutation observer, but it didn't disconnect the mutation
observer for iframes.

In web_tour tests, we mock the MacroEngine to stop it at the end
of tests, but this didn't stop the iframe mutation observer.

This had an highly undesirable side-effect in tests: the qunit
suite stopped during mass_mailing tests, because the iframe
mutation observer detected a change which produced the log of
"test successful", which ended the whole suite. Some tests were
thus never run anymore (fortunately, we're only talking about a
few qunit modules).

closes odoo/odoo#141143

Signed-off-by: Christophe Monniez (moc) <moc@odoo.com>
This commit is contained in:
Aaron Bohy
2023-11-06 09:46:11 +00:00
parent 493c391533
commit b2202cf711
+1
View File
@@ -221,6 +221,7 @@ export class MacroEngine {
browser.clearTimeout(this.timeout);
this.timeout = null;
this.observer.disconnect();
this.iframeObserver.disconnect();
}
}