test_code_bbcode.py 1.1 KB

12345678910111213141516171819202122232425262728293031323334353637
  1. from ..parser import parse
  2. def test_single_line_code(request_mock, user, snapshot):
  3. text = '[code]echo("Hello!");[/code]'
  4. result = parse(text, request_mock, user, minify=False)
  5. snapshot.assert_match(result["parsed_text"])
  6. def test_multi_line_code(request_mock, user, snapshot):
  7. text = """
  8. [code]
  9. <script>
  10. alert("!")
  11. </script>
  12. [/code]
  13. """
  14. result = parse(text, request_mock, user, minify=False)
  15. snapshot.assert_match(result["parsed_text"])
  16. def test_code_with_language_parameter(request_mock, user, snapshot):
  17. text = '[code=php]echo("Hello!");[/code]'
  18. result = parse(text, request_mock, user, minify=False)
  19. snapshot.assert_match(result["parsed_text"])
  20. def test_code_with_quoted_language_parameter(request_mock, user, snapshot):
  21. text = '[code="php"]echo("Hello!");[/code]'
  22. result = parse(text, request_mock, user, minify=False)
  23. snapshot.assert_match(result["parsed_text"])
  24. def test_code_block_disables_parsing(request_mock, user, snapshot):
  25. text = "[code]Dolor [b]met.[/b][/code]"
  26. result = parse(text, request_mock, user, minify=False)
  27. snapshot.assert_match(result["parsed_text"])