fix: перевод строки после открывающего ``` — иначе markdown съедает первую строку
В Pachca/Telegram текст сразу после открывающих тройных бэктиков трактуется как указатель языка code-блока и не отображается. Из-за этого пропадала первая строка уведомления — [время] METHOD host/URI, то есть путь и метод запроса не были видны. Добавлен \n после фенса; тест теперь проверяет перевод строки и наличие URI в выводе. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
This commit is contained in:
@@ -39,7 +39,7 @@ func formatPlain(d RequestData) string {
|
||||
|
||||
// formatMarkdown — обёртка в код-блок для Telegram/Pachca.
|
||||
func formatMarkdown(d RequestData) string {
|
||||
return "```" + formatPlain(d) + "```"
|
||||
return "```\n" + formatPlain(d) + "```"
|
||||
}
|
||||
|
||||
// formatHTML — обёртка в <pre> с экранированием для Email.
|
||||
|
||||
@@ -25,8 +25,14 @@ func sampleData() RequestData {
|
||||
|
||||
func TestFormatMarkdown(t *testing.T) {
|
||||
out := formatMarkdown(sampleData())
|
||||
if !strings.HasPrefix(out, "```") || !strings.HasSuffix(out, "```") {
|
||||
t.Fatalf("expected ``` wrapping, got: %q", out)
|
||||
if !strings.HasPrefix(out, "```\n") || !strings.HasSuffix(out, "```") {
|
||||
// Перевод строки после открывающего фенса обязателен: иначе markdown
|
||||
// в Pachca/Telegram съедает первую строку как указатель языка, и путь
|
||||
// запроса (METHOD host/url) пропадает из уведомления.
|
||||
t.Fatalf("expected ```\\n wrapping, got: %q", out)
|
||||
}
|
||||
if !strings.Contains(out, "/telegram") {
|
||||
t.Errorf("missing request path/url: %q", out)
|
||||
}
|
||||
if !strings.Contains(out, "POST") || !strings.Contains(out, "1.2.3.4") {
|
||||
t.Errorf("missing fields: %q", out)
|
||||
|
||||
Reference in New Issue
Block a user