From 4e9f6420ff8cec8aca18deabdd60484ffc957b47 Mon Sep 17 00:00:00 2001 From: Rajesh Taneja Date: Fri, 30 Sep 2016 10:19:09 +0800 Subject: [PATCH] MDL-56210 behat: Ensure behat waits for dependancy manager --- lib/form/form.js | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/lib/form/form.js b/lib/form/form.js index 268fba2143c..8ba4ff579e3 100644 --- a/lib/form/form.js +++ b/lib/form/form.js @@ -23,6 +23,9 @@ if (typeof M.form.dependencyManager === 'undefined') { this._hides = {}; this._dirty = {}; + // Let behat know that JS is pending. + M.util.js_pending('mform-dependency-manager-' + this.get('form').get('id')); + // Setup event handlers. Y.Object.each(this.get('dependencies'), function(value, i) { var elements = this.elementsByName(i); @@ -56,6 +59,9 @@ if (typeof M.form.dependencyManager === 'undefined') { }, this); this.updateAllDependencies(); + + // Let behat know that JS is complete. + M.util.js_complete('mform-dependency-manager-' + this.get('form').get('id')); }, /** @@ -587,6 +593,12 @@ M.form.initFormDependencies = function(Y, formid, dependencies) { */ M.form.updateFormState = function(formid) { if (formid in M.form.dependencyManagers) { + // Let behat know that JS is pending. + M.util.js_pending('mform-dependency-manager-' + formid); + M.form.dependencyManagers[formid].updateAllDependencies(); + + // Let behat know that JS is complete. + M.util.js_complete('mform-dependency-manager-' + formid); } };