summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMaciek Baron <thebezet@gmail.com>2018-07-05 11:19:38 +0100
committerYamagishi Kazutoshi <ykzts@desire.sh>2018-07-05 19:19:38 +0900
commit1e65cdf8213f9da93d97f363bef2d6104278e542 (patch)
tree53973554ff050903ad2750e62e62a6f6fafc4ff2
parentcdfe51e3253edc219116e9276f9416cda95c4461 (diff)
Add comment, test to unescapeHTML (#7949)
-rw-r--r--app/javascript/mastodon/utils/__tests__/html-test.js10
-rw-r--r--app/javascript/mastodon/utils/html.js1
2 files changed, 11 insertions, 0 deletions
diff --git a/app/javascript/mastodon/utils/__tests__/html-test.js b/app/javascript/mastodon/utils/__tests__/html-test.js
new file mode 100644
index 00000000000..ef9296e6c32
--- /dev/null
+++ b/app/javascript/mastodon/utils/__tests__/html-test.js
@@ -0,0 +1,10 @@
+import * as html from '../html';
+
+describe('html', () => {
+ describe('unsecapeHTML', () => {
+ it('returns unescaped HTML', () => {
+ const output = html.unescapeHTML('<p>lorem</p><p>ipsum</p><br>&lt;br&gt;');
+ expect(output).toEqual('lorem\n\nipsum\n<br>');
+ });
+ });
+});
diff --git a/app/javascript/mastodon/utils/html.js b/app/javascript/mastodon/utils/html.js
index 5159df9db75..247e98c88a7 100644
--- a/app/javascript/mastodon/utils/html.js
+++ b/app/javascript/mastodon/utils/html.js
@@ -1,3 +1,4 @@
+// NB: This function can still return unsafe HTML
export const unescapeHTML = (html) => {
const wrapper = document.createElement('div');
wrapper.innerHTML = html.replace(/<br\s*\/?>/g, '\n').replace(/<\/p><p>/g, '\n\n').replace(/<[^>]*>/g, '');