|
|
@@ -0,0 +1,41 @@
|
|
|
+import { decodeHtmlBrowser } from '../src/decodeHtmlBrowser'
|
|
|
+
|
|
|
+describe('decodeHtmlBrowser', () => {
|
|
|
+ it('should decode HTML correctly', () => {
|
|
|
+ expect(decodeHtmlBrowser(' abc 123 ')).toBe(' abc 123 ')
|
|
|
+
|
|
|
+ expect(decodeHtmlBrowser('&')).toBe('&')
|
|
|
+ expect(decodeHtmlBrowser('&')).toBe('&')
|
|
|
+ expect(decodeHtmlBrowser('&')).toBe('&')
|
|
|
+
|
|
|
+ expect(decodeHtmlBrowser('<')).toBe('<')
|
|
|
+ expect(decodeHtmlBrowser('<')).toBe('<')
|
|
|
+ expect(decodeHtmlBrowser('&lt;')).toBe('<')
|
|
|
+
|
|
|
+ expect(decodeHtmlBrowser('>')).toBe('>')
|
|
|
+ expect(decodeHtmlBrowser('>')).toBe('>')
|
|
|
+ expect(decodeHtmlBrowser('&gt;')).toBe('>')
|
|
|
+
|
|
|
+ expect(decodeHtmlBrowser(' ')).toBe('\u00a0')
|
|
|
+ expect(decodeHtmlBrowser('"')).toBe('"')
|
|
|
+ expect(decodeHtmlBrowser(''')).toBe("'")
|
|
|
+
|
|
|
+ expect(decodeHtmlBrowser('É')).toBe('\u00c9')
|
|
|
+ expect(decodeHtmlBrowser('É')).toBe('\u00c9')
|
|
|
+ expect(decodeHtmlBrowser('É')).toBe('\u00c9')
|
|
|
+
|
|
|
+ // #3001 html tags inside attribute values
|
|
|
+ expect(decodeHtmlBrowser('<strong>Text</strong>', true)).toBe(
|
|
|
+ '<strong>Text</strong>'
|
|
|
+ )
|
|
|
+ expect(decodeHtmlBrowser('<strong>&</strong>', true)).toBe(
|
|
|
+ '<strong>&</strong>'
|
|
|
+ )
|
|
|
+ expect(
|
|
|
+ decodeHtmlBrowser(
|
|
|
+ '<strong><strong>&</strong></strong>',
|
|
|
+ true
|
|
|
+ )
|
|
|
+ ).toBe('<strong><strong>&</strong></strong>')
|
|
|
+ })
|
|
|
+})
|