diff --git a/tools/fuzz.go b/tools/fuzz.go index 6ed1b4000..4b5b72d1d 100644 --- a/tools/fuzz.go +++ b/tools/fuzz.go @@ -7,6 +7,9 @@ package fuzz import ( + "bytes" + "io" + "code.gitea.io/gitea/modules/markup" "code.gitea.io/gitea/modules/markup/markdown" ) @@ -18,17 +21,26 @@ import ( // (for example, the input is lexically correct and was parsed successfully). // -1 if the input must not be added to corpus even if gives new coverage and 0 otherwise. +var ( + renderContext = markup.RenderContext{ + URLPrefix: "https://example.com", + Metas: map[string]string{ + "user": "go-gitea", + "repo": "gitea", + }, + } +) + func FuzzMarkdownRenderRaw(data []byte) int { - _ = markdown.RenderRaw(data, "", false) + err := markdown.RenderRaw(&renderContext, bytes.NewReader(data), io.Discard) + if err != nil { + return 0 + } return 1 } func FuzzMarkupPostProcess(data []byte) int { - var localMetas = map[string]string{ - "user": "go-gitea", - "repo": "gitea", - } - _, err := markup.PostProcess(data, "https://example.com", localMetas, false) + err := markup.PostProcess(&renderContext, bytes.NewReader(data), io.Discard) if err != nil { return 0 }