This is long overdue. We had a lot of (not linted) code to initialize our test suite as part of the Ruby `test_helper.js` bundle. This refactor moves that out to a `setup-tests` module, which imports all the modules properly, rather than using `require`. It also removes the global `server` variable which some tests were using for pretender. Those tests are fixed, and in the case of widget tests, support for a `pretend()` was added, which mimics our acceptance tests. One problematic test was removed, which overwrites `/posts` - this could break tons of other tests depending on order.
22 lines
596 B
JavaScript
22 lines
596 B
JavaScript
import { moduleForComponent } from "ember-qunit";
|
|
import componentTest from "discourse/tests/helpers/component-test";
|
|
import { addPretenderCallback } from "discourse/tests/helpers/qunit-helpers";
|
|
|
|
export function moduleForWidget(name, options = {}) {
|
|
let fullName = `widget:${name}`;
|
|
addPretenderCallback(fullName, options.pretend);
|
|
|
|
moduleForComponent(
|
|
name,
|
|
fullName,
|
|
Object.assign(
|
|
{ integration: true },
|
|
{ beforeEach: options.beforeEach, afterEach: options.afterEach }
|
|
)
|
|
);
|
|
}
|
|
|
|
export function widgetTest(name, opts) {
|
|
return componentTest(name, opts);
|
|
}
|