From 73434e1ef72c51b37825bf0a73c44f14dda14093 Mon Sep 17 00:00:00 2001 From: Rostislav Wolny Date: Wed, 12 Jun 2024 16:00:24 +0200 Subject: [PATCH] Workaround for legacy newsletter editor tests after updating chai Chain newly has to be imported as module and doesn't support CommonJs [MAILPOET-6008] --- mailpoet/RoboFile.php | 1 + .../tests/javascript-newsletter-editor/mocha-chai.mjs | 8 ++++++++ .../javascript-newsletter-editor/mocha-test-helper.js | 7 ------- 3 files changed, 9 insertions(+), 7 deletions(-) create mode 100644 mailpoet/tests/javascript-newsletter-editor/mocha-chai.mjs diff --git a/mailpoet/RoboFile.php b/mailpoet/RoboFile.php index 8a01f5666d..70c6e4d560 100644 --- a/mailpoet/RoboFile.php +++ b/mailpoet/RoboFile.php @@ -371,6 +371,7 @@ class RoboFile extends \Robo\Tasks { $command = join(' ', [ './node_modules/.bin/mocha', '-r tests/javascript-newsletter-editor/mocha-test-helper.js', + '-r tests/javascript-newsletter-editor/mocha-chai.mjs', 'tests/javascript-newsletter-editor/testBundles/**/*.js', '--exit', ]); diff --git a/mailpoet/tests/javascript-newsletter-editor/mocha-chai.mjs b/mailpoet/tests/javascript-newsletter-editor/mocha-chai.mjs new file mode 100644 index 0000000000..e502db9255 --- /dev/null +++ b/mailpoet/tests/javascript-newsletter-editor/mocha-chai.mjs @@ -0,0 +1,8 @@ +import * as chai from 'chai'; +import sinonChai from 'sinon-chai'; +import chaiJq from 'chai-jq'; + +chai.use(sinonChai); +chai.use(chaiJq); + +global.expect = chai.expect; diff --git a/mailpoet/tests/javascript-newsletter-editor/mocha-test-helper.js b/mailpoet/tests/javascript-newsletter-editor/mocha-test-helper.js index a79a0c7990..384681c55b 100644 --- a/mailpoet/tests/javascript-newsletter-editor/mocha-test-helper.js +++ b/mailpoet/tests/javascript-newsletter-editor/mocha-test-helper.js @@ -1,16 +1,9 @@ -var chai = require('chai'); var sinon = require('sinon'); -var sinonChai = require('sinon-chai'); -var chaiJq = require('chai-jq'); var _ = require('underscore'); var { JSDOM } = require('jsdom'); var URL = require('url').URL; var nodeCrypto = require('crypto'); -chai.use(sinonChai); -chai.use(chaiJq); - -global.expect = chai.expect; global.sinon = sinon; global.URL = URL;