import { module } from "qunit"; import setupPretender, { response } from "../pretender"; import startApp from "../helpers/start-app"; let server; let app; function acceptance(name, requests, cb) { module(`Acceptance: ${name}`, function (hooks) { hooks.beforeEach(function () { server = setupPretender(function (pretender) { requests.forEach((req) => { pretender[req.verb](req.path, () => response(req.status, req.response) ); }); return pretender; }); app = startApp(); }); hooks.afterEach(function () { app.destroy(); server.shutdown(); }); cb(hooks); }); } export default acceptance; export { server }; // The discourse/test/helpers/qunit-helpers file has many functions and imports // we don't need, so there will be some duplciation here. export function queryAll(selector, context) { context = context || "#ember-testing"; return $(selector, context); } export function query() { return document.querySelector("#ember-testing").querySelector(...arguments); } export function visible(selector) { return queryAll(selector + ":visible").length > 0; } export function count(selector) { return queryAll(selector).length; }