/** * @fileoverview Unit test for browser/lib/htmlTextHelper */ const test = require('ava') const htmlTextHelper = require('browser/lib/htmlTextHelper') // Unit test test('htmlTextHelper#decodeEntities should return encoded text (string)', t => { // [input, expected] const testCases = [ ['<a href=', 'Boostnote" ], ['<\\\\?php\n var = 'hoge';', "<\\\\?php\n var = 'hoge';"], ['&', '&'], ['a$'', "a\\$'"] ] testCases.forEach(testCase => { const [input, expected] = testCase t.is( htmlTextHelper.decodeEntities(input), expected, `Test for decodeEntities() input: ${input} expected: ${expected}` ) }) }) test('htmlTextHelper#decodeEntities() should return decoded text (string)', t => { // [input, expected] const testCases = [ ['Boostnote", '<a href='https://boostnote.io'>Boostnote' ], [" { const [input, expected] = testCase t.is( htmlTextHelper.encodeEntities(input), expected, `Test for encodeEntities() input: ${input} expected: ${expected}` ) }) }) // Integration test test(t => { const testCases = [ "var test = 'test'", "Boostnote", "" ] testCases.forEach(testCase => { const encodedText = htmlTextHelper.encodeEntities(testCase) const decodedText = htmlTextHelper.decodeEntities(encodedText) t.is( decodedText, testCase, 'Integration test through encodedText() and decodedText()' ) }) })