2016-07-19 15:20:59 -05:00
|
|
|
import { default as PrettyText, buildOptions } from 'pretty-text/pretty-text';
|
|
|
|
|
|
|
|
module("lib:details-cooked-test");
|
|
|
|
|
|
|
|
const defaultOpts = buildOptions({
|
|
|
|
siteSettings: {
|
|
|
|
enable_emoji: true,
|
|
|
|
emoji_set: 'emoji_one',
|
|
|
|
highlighted_languages: 'json|ruby|javascript',
|
|
|
|
default_code_lang: 'auto',
|
|
|
|
censored_words: 'shucks|whiz|whizzer'
|
|
|
|
},
|
|
|
|
getURL: url => url
|
|
|
|
});
|
|
|
|
|
|
|
|
|
2017-06-14 12:57:58 -05:00
|
|
|
test("details", assert => {
|
|
|
|
const cooked = (input, expected, text) => {
|
|
|
|
assert.equal(new PrettyText(defaultOpts).cook(input), expected.replace(/\/>/g, ">"), text);
|
|
|
|
};
|
2016-07-19 15:20:59 -05:00
|
|
|
cooked(`<details><summary>Info</summary>coucou</details>`,
|
|
|
|
`<details><summary>Info</summary>\n\n<p>coucou</p>\n\n</details>`,
|
|
|
|
"manual HTML for details");
|
|
|
|
cooked(` <details><summary>Info</summary>coucou</details>`,
|
|
|
|
`<details><summary>Info</summary>\n\n<p>coucou</p>\n\n</details>`,
|
|
|
|
"manual HTML for details with a space");
|
|
|
|
|
2016-07-20 12:26:23 -05:00
|
|
|
cooked(`<details open="open"><summary>Info</summary>coucou</details>`,
|
|
|
|
`<details open="open"><summary>Info</summary>\n\n<p>coucou</p>\n\n</details>`,
|
|
|
|
"open attribute");
|
2016-07-20 12:30:36 -05:00
|
|
|
|
|
|
|
cooked(`<details open><summary>Info</summary>coucou</details>`,
|
|
|
|
`<details open><summary>Info</summary>\n\n<p>coucou</p>\n\n</details>`,
|
|
|
|
"open attribute");
|
2016-07-20 12:26:23 -05:00
|
|
|
});
|