discourse/plugins/spoiler-alert/test/javascripts/unit/lib/to-markdown-test.js
2023-10-23 15:14:58 -06:00

31 lines
1.0 KiB
JavaScript

import { test } from "qunit";
import { withPluginApi } from "discourse/lib/plugin-api";
import toMarkdown from "discourse/lib/to-markdown";
import { discourseModule } from "discourse/tests/helpers/qunit-helpers";
import { initializeSpoiler } from "discourse/plugins/spoiler-alert/initializers/spoiler-alert";
discourseModule("Spoiler Alert | Unit | to-markdown", function (hooks) {
hooks.beforeEach(function () {
withPluginApi("0.5", initializeSpoiler);
});
test("handles spoiler tags", function (assert) {
let html = `<div>Text with a</div><div class="spoiled">spoiled</div><div>word.</div>`;
let markdown = `Text with a\n\n[spoiler]spoiled[/spoiler]\n\nword.`;
assert.strictEqual(
toMarkdown(html),
markdown,
"it should create block spoiler tag"
);
html = `Inline <span class="spoiled">spoiled</span> word.`;
markdown = `Inline [spoiler]spoiled[/spoiler] word.`;
assert.strictEqual(
toMarkdown(html),
markdown,
"it should create inline spoiler tag"
);
});
});