aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--Gruntfile.js11
-rw-r--r--tests/lib/grunt-contrib-qunit-bridges/bridge-wrapper.js.intro20
-rw-r--r--tests/lib/grunt-contrib-qunit-bridges/bridge-wrapper.js.outro2
3 files changed, 29 insertions, 4 deletions
diff --git a/Gruntfile.js b/Gruntfile.js
index 3456e0064..6c29ebe9e 100644
--- a/Gruntfile.js
+++ b/Gruntfile.js
@@ -209,15 +209,18 @@ grunt.initConfig( {
} ),
options: {
puppeteer: {
- ignoreDefaultArgs: true,
args: [
- "--headless",
- "--disable-web-security",
"--allow-file-access-from-files"
]
},
inject: [
- require.resolve( "grunt-contrib-qunit/chrome/bridge" )
+ require.resolve(
+ "./tests/lib/grunt-contrib-qunit-bridges/bridge-wrapper.js.intro"
+ ),
+ require.resolve( "grunt-contrib-qunit/chrome/bridge" ),
+ require.resolve(
+ "./tests/lib/grunt-contrib-qunit-bridges/bridge-wrapper.js.outro"
+ )
],
page: {
viewportSize: { width: 700, height: 500 }
diff --git a/tests/lib/grunt-contrib-qunit-bridges/bridge-wrapper.js.intro b/tests/lib/grunt-contrib-qunit-bridges/bridge-wrapper.js.intro
new file mode 100644
index 000000000..227aa6c3e
--- /dev/null
+++ b/tests/lib/grunt-contrib-qunit-bridges/bridge-wrapper.js.intro
@@ -0,0 +1,20 @@
+// The bridge in `node_modules/grunt-contrib-qunit/chrome/bridge.js` is injected
+// into every iframe, even an empty one injected during QUnit tests. The bridge,
+// in turn, requires QUnit to be present on the page, throwing errors otherwise.
+// To workaround that, add another wrapper which detects a missing QUnit and skips
+// the whole logic.
+
+( function ( factory ) {
+ if ( typeof define === 'function' && define.amd ) {
+ require( [ 'qunit' ], factory );
+ } else {
+ factory( window.QUnit );
+ }
+} )( function( QUnit ) {
+
+if ( !QUnit ) {
+
+ // No QUnit => possibly an empty iframe injected in tests; ignore.
+ return;
+}
+
diff --git a/tests/lib/grunt-contrib-qunit-bridges/bridge-wrapper.js.outro b/tests/lib/grunt-contrib-qunit-bridges/bridge-wrapper.js.outro
new file mode 100644
index 000000000..647170adb
--- /dev/null
+++ b/tests/lib/grunt-contrib-qunit-bridges/bridge-wrapper.js.outro
@@ -0,0 +1,2 @@
+
+} );