using ClaudeDo.Worker.Tickets;
namespace ClaudeDo.Worker.Tests.Tickets;
public sealed class TicketHtmlToMarkdownTests
{
[Fact]
public void Paragraphs_breaks_and_entities_become_markdown_paragraphs()
{
var md = TicketImportService.HtmlToMarkdown(
"
Lager -> Adressprüfung aus
Zeile 1
Zeile 2
Ende
");
Assert.Equal("Lager -> Adressprüfung aus\n\nZeile 1\n\nZeile 2\n\nEnde", md);
}
[Fact]
public void Lists_and_inline_formatting_map_to_the_MarkdownView_subset()
{
var md = TicketImportService.HtmlToMarkdown(
"Offene Punkte:
" +
"- Erst
- Dann
Link");
Assert.Equal(
"Offene Punkte:\n\n- **Band** sync\n- Waage\n\n1. Erst\n2. *Dann*\n\nLink (http://x)", md);
}
[Fact]
public void Plain_text_passes_through()
=> Assert.Equal("Ticket ohne HTML", TicketImportService.HtmlToMarkdown(" Ticket ohne HTML "));
}