import { module, test } from "qunit"; import { setupRenderingTest } from "discourse/tests/helpers/component-test"; import { query } from "discourse/tests/helpers/qunit-helpers"; import { render } from "@ember/test-helpers"; import { cloneJSON, deepMerge } from "discourse-common/lib/object"; import { hbs } from "ember-cli-htmlbars"; import PrivateMessagesFixture from "discourse/tests/fixtures/private-messages-fixtures"; function getMessage(overrides = {}) { const data = cloneJSON( PrivateMessagesFixture["/topics/private-messages/eviltrout.json"].topic_list .topics[0] ); return deepMerge(data, overrides); } module("Integration | Component | user-menu | message-item", function (hooks) { setupRenderingTest(hooks); const template = hbs``; test("item description is the fancy title of the message", async function (assert) { this.set( "message", getMessage({ fancy_title: "This is a safe title!" }) ); await render(template); assert.strictEqual( query("li.message .item-description").textContent.trim(), "This is a safe title!" ); assert.strictEqual( query("li.message .item-description b").textContent.trim(), "safe", "fancy title is not escaped" ); }); });