1
0
favro-sync/test/test_markdown_parsing.py

76 lines
1.5 KiB
Python
Raw Normal View History

from favro_sync.favro_markdown import CardFileFormatter
2024-09-27 14:13:03 +00:00
EXAMPLE_TEXT_1 = """
---
aliases:
2024-09-28 12:27:59 +00:00
- Hello World
---
2024-09-27 14:13:03 +00:00
# Hello World
2024-09-27 14:13:03 +00:00
Test description
## Other header
1. Derp
2. Derp
3. Derp
""".strip()
2024-09-27 14:13:03 +00:00
2024-09-28 11:21:11 +00:00
EXAMPLE_TEXT_2 = """
---
aliases:
2024-09-28 12:27:59 +00:00
- Name of Card
2024-09-28 11:21:11 +00:00
assignments:
2024-09-28 12:27:59 +00:00
- '[[Gunnar Gunnarson]]'
- '[[Alice Alicedottor]]'
2024-09-28 12:10:13 +00:00
dependencies:
2024-09-28 12:27:59 +00:00
- '[[PAR-9999]]'
tags:
- tag1
- tag2
2024-09-28 11:21:11 +00:00
---
# Name of Card
2024-09-28 11:21:11 +00:00
Great news everyone! My weird program actually works!
""".strip()
2024-09-28 12:27:59 +00:00
EXAMPLE_TEXT_3 = """
---
aliases:
- 'Card: The Adventure of Card'
---
# Card: The Adventure of Card
Description of Card.
""".strip()
2024-09-28 11:21:11 +00:00
FORMATTER = CardFileFormatter()
2024-09-28 12:13:51 +00:00
2024-09-27 14:13:03 +00:00
def test_parse_and_render():
card_contents = FORMATTER.parse_card_contents(EXAMPLE_TEXT_1)
assert card_contents.name == 'Hello World'
assert '---' not in card_contents.description
assert FORMATTER.format_card_contents(card_contents) == EXAMPLE_TEXT_1
2024-09-28 11:21:11 +00:00
2024-09-28 12:13:51 +00:00
2024-09-28 11:21:11 +00:00
def test_parse_and_render_2():
card_contents = FORMATTER.parse_card_contents(EXAMPLE_TEXT_2)
print(card_contents)
2024-09-28 12:10:13 +00:00
assert card_contents.name == 'Name of Card'
2024-09-28 11:21:11 +00:00
assert '---' not in card_contents.description
assert FORMATTER.format_card_contents(card_contents) == EXAMPLE_TEXT_2
2024-09-28 12:27:59 +00:00
def test_parse_and_render_3():
card_contents = FORMATTER.parse_card_contents(EXAMPLE_TEXT_3)
print(card_contents)
assert card_contents.name == 'Card: The Adventure of Card'
assert '---' not in card_contents.description
assert FORMATTER.format_card_contents(card_contents) == EXAMPLE_TEXT_3