mirror of
https://github.com/hanzoai/forum.git
synced 2026-09-30 21:51:19 +00:00
40 lines
1.2 KiB
JavaScript
40 lines
1.2 KiB
JavaScript
import { click, visit, waitUntil } from "@ember/test-helpers";
|
|
import { test } from "qunit";
|
|
import { acceptance } from "discourse/tests/helpers/qunit-helpers";
|
|
|
|
acceptance("Admin - email-preview", function (needs) {
|
|
needs.user();
|
|
needs.pretender((server, helper) => {
|
|
server.get("/admin/email/preview-digest.json", () =>
|
|
helper.response(200, {
|
|
html_content: "<span>Hello world</span>",
|
|
text_content: "<span>Not actually html</span>",
|
|
})
|
|
);
|
|
});
|
|
|
|
test("preview rendering", async function (assert) {
|
|
await visit("/admin/email/preview-digest");
|
|
const iframe = document.querySelector(".preview-output iframe");
|
|
|
|
// Rendered as a separate document, so Ember's built-in waiters don't work properly
|
|
await waitUntil(() =>
|
|
iframe.contentWindow.document.body?.querySelector("span")
|
|
);
|
|
|
|
const iframeBody = iframe.contentWindow.document.body;
|
|
|
|
assert
|
|
.dom("span", iframeBody)
|
|
.hasText("Hello world", "html content is rendered inside iframe");
|
|
|
|
await click("a.show-text-link");
|
|
assert
|
|
.dom(".preview-output pre")
|
|
.hasText(
|
|
"<span>Not actually html</span>",
|
|
"text content is escaped correctly"
|
|
);
|
|
});
|
|
});
|