import { convertHtmlToLines } from 'src/services/html_converter/html_line_converter.service.js'
const mapOnlyText = (processor) => (input) => input.text ? processor(input.text) : input
describe('html_line_converter', () => {
describe('with processor that keeps original line should not make any changes to HTML when', () => {
const processorKeep = (line) => line
it('fed with regular HTML with newlines', () => {
const inputOutput = '1
2
3 4
5 \n 6 7
8
' const result = convertHtmlToLines(inputOutput) const comparableResult = result.map(mapOnlyText(processorKeep)).join('') expect(comparableResult).to.eql(inputOutput) }) it('fed with sorta valid HTML but tags aren\'t closed', () => { const inputOutput = 'just leaving a
p \nwithin
p!
and a3 4
5 \n 6 7
8
_
_\n__
_
' const output = '
_' const result = convertHtmlToLines(input) const comparableResult = result.map(mapOnlyText(processorReplace)).join('') expect(comparableResult).to.eql(output) }) it('fed with sorta valid HTML but tags aren\'t closed', () => { const input = 'just leaving a
p \nwithin
p!
and a_\n_
_
_> rei = "0"
'0'
> rei == 0
true
> rei == null
false
That, christian-like JS diagram but it’s evangelion instead.` const result = convertHtmlToLines(input) const comparableResult = result.map(mapOnlyText(processorReplace)).join('') expect(comparableResult).to.eql(input) }) it('Testing handling ignored blocks 2', () => { const input = `
An SSL error has happened.
Shakespeare
` const output = `An SSL error has happened.
_
` const result = convertHtmlToLines(input) const comparableResult = result.map(mapOnlyText(processorReplace)).join('') expect(comparableResult).to.eql(output) }) }) })