/*
* Famedly Matrix SDK
* Copyright (C) 2019, 2020 Famedly GmbH
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU Affero General Public License as
* published by the Free Software Foundation, either version 3 of the
* License, or (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU Affero General Public License for more details.
*
* You should have received a copy of the GNU Affero General Public License
* along with this program. If not, see strike works!');
});
test('spoilers', () {
expect(markdown('Snape killed ||Dumbledoor||'),
'Snape killed Dumbledoor');
expect(markdown('Snape killed ||Story|Dumbledoor||'),
'Snape killed Dumbledoor');
expect(markdown('Snape killed ||Some dumb loser|Dumbledoor||'),
'Snape killed Dumbledoor');
expect(markdown('Snape killed ||Some dumb loser|Dumbledoor **bold**||'),
'Snape killed Dumbledoor bold');
expect(markdown('Snape killed ||Dumbledoor **bold**||'),
'Snape killed Dumbledoor bold');
});
test('multiple paragraphs', () {
expect(markdown('Heya!\n\nBeep'), '
Heya!
Beep
'); }); test('Other block elements', () { expect(markdown('# blah\n\nblubb'), 'blubb
'); }); test('linebreaks', () { expect(markdown('foxies\ncute'), 'foxiesSo we have:
\\frac{2}{3}');
expect(markdown('meep \$hmm *yay*\$'),
'meep hmm *yay*');
expect(markdown('you have \$somevar and \$someothervar'),
'you have \$somevar and \$someothervar');
expect(markdown('meep ||\$\\frac{2}{3}\$||'),
'meep \\frac{2}{3}');
expect(markdown('meep `\$\\frac{2}{3}\$`'),
'meep \$\\frac{2}{3}\$');
});
test('Code blocks', () {
expect(
markdown(
'```dart\nvoid main(){\nprint(something);\n}\n```',
convertLinebreaks: true,
),
'void main(){\nprint(something);\n}\n',
);
expect(
markdown(
'The first \n codeblock\n```dart\nvoid main(){\nprint(something);\n}\n```\nAnd the second code block\n```js\nmeow\nmeow\n```',
convertLinebreaks: true,
),
'The first
codeblock
void main(){\nprint(something);\n}\nAnd the second code block
meow\nmeow\n',
);
});
});
}