This repository has been archived on 2023-03-18. You can view files and clone it, but cannot push or open issues or pull requests.
osr-discourse-src/app/assets/javascripts/discourse/tests/acceptance/plugin-outlet-multi-template-test.js
Robin Ward dab2f2fdf4 REFACTOR: We can't use Ember.HTMLBars.compile in Ember CLI
Instead we use the inline `hbs` helper. Note in the non-Ember CLI
version this will not actually inline compile, but it will still work
for all our tests.
2020-11-26 09:27:20 -05:00

47 lines
1.4 KiB
JavaScript

import { queryAll } from "discourse/tests/helpers/qunit-helpers";
import { visit } from "@ember/test-helpers";
import { test } from "qunit";
import { acceptance } from "discourse/tests/helpers/qunit-helpers";
import { clearCache } from "discourse/lib/plugin-connectors";
import hbs from "htmlbars-inline-precompile";
const HELLO = "javascripts/multi-test/connectors/user-profile-primary/hello";
const GOODBYE =
"javascripts/multi-test/connectors/user-profile-primary/goodbye";
acceptance("Plugin Outlet - Multi Template", function (needs) {
needs.hooks.beforeEach(() => {
clearCache();
Ember.TEMPLATES[HELLO] = hbs`<span class='hello-span'>Hello</span>`;
Ember.TEMPLATES[GOODBYE] = hbs`<span class='bye-span'>Goodbye</span>`;
});
needs.hooks.afterEach(() => {
delete Ember.TEMPLATES[HELLO];
delete Ember.TEMPLATES[GOODBYE];
clearCache();
});
test("Renders a template into the outlet", async function (assert) {
await visit("/u/eviltrout");
assert.ok(
queryAll(".user-profile-primary-outlet.hello").length === 1,
"it has class names"
);
assert.ok(
queryAll(".user-profile-primary-outlet.goodbye").length === 1,
"it has class names"
);
assert.equal(
queryAll(".hello-span").text(),
"Hello",
"it renders into the outlet"
);
assert.equal(
queryAll(".bye-span").text(),
"Goodbye",
"it renders into the outlet"
);
});
});