diff options
Diffstat (limited to 'modules/markdown/markdown_test.go')
-rw-r--r-- | modules/markdown/markdown_test.go | 78 |
1 files changed, 26 insertions, 52 deletions
diff --git a/modules/markdown/markdown_test.go b/modules/markdown/markdown_test.go index cfe9c5421a..4506a29b1e 100644 --- a/modules/markdown/markdown_test.go +++ b/modules/markdown/markdown_test.go @@ -209,13 +209,15 @@ func TestRender_AutoLink(t *testing.T) { numericIssueLink(URLJoin(setting.AppSubURL, "issues"), 3333)) // render external issue URLs - tmp := "http://1111/2222/ssss-issues/3333?param=blah&blahh=333" - test(tmp, "<a href=\""+tmp+"\">#3333 <i class='comment icon'></i></a>") - test("http://test.com/issues/33333", numericIssueLink("http://test.com/issues", 33333)) - test("https://issues/333", numericIssueLink("https://issues", 333)) + for _, externalURL := range []string{ + "http://1111/2222/ssss-issues/3333?param=blah&blahh=333", + "http://test.com/issues/33333", + "https://issues/333"} { + test(externalURL, externalURL) + } // render valid commit URLs - tmp = URLJoin(AppSubURL, "commit", "d8a994ef243349f321568f9e36d5c3f444b99cae") + tmp := URLJoin(AppSubURL, "commit", "d8a994ef243349f321568f9e36d5c3f444b99cae") test(tmp, "<a href=\""+tmp+"\">d8a994ef24</a>") tmp += "#diff-2" test(tmp, "<a href=\""+tmp+"\">d8a994ef24 (diff-2)</a>") @@ -368,6 +370,22 @@ func TestRender_CrossReferences(t *testing.T) { `<p><a href="`+URLJoin(AppURL, "gogits", "gogs", "issues", "12345")+`" rel="nofollow">gogits/gogs#12345</a></p>`) } +func TestRender_FullIssueURLs(t *testing.T) { + setting.AppURL = AppURL + setting.AppSubURL = AppSubURL + + test := func(input, expected string) { + result := RenderFullIssuePattern([]byte(input)) + assert.Equal(t, expected, string(result)) + } + test("Here is a link https://git.osgeo.org/gogs/postgis/postgis/pulls/6", + "Here is a link https://git.osgeo.org/gogs/postgis/postgis/pulls/6") + test("Look here http://localhost:3000/person/repo/issues/4", + `Look here <a href="http://localhost:3000/person/repo/issues/4">#4</a>`) + test("http://localhost:3000/person/repo/issues/4#issuecomment-1234", + `<a href="http://localhost:3000/person/repo/issues/4#issuecomment-1234">#4</a>`) +} + func TestRegExp_MentionPattern(t *testing.T) { trueTestCases := []string{ "@Unknwon", @@ -558,50 +576,6 @@ func TestRegExp_AnySHA1Pattern(t *testing.T) { } } -func TestRegExp_IssueFullPattern(t *testing.T) { - testCases := map[string][]string{ - "https://github.com/gogits/gogs/pull/3244": { - "https", - "github.com/gogits/gogs/pull/", - "3244", - "", - "", - }, - "https://github.com/gogits/gogs/issues/3247#issuecomment-231517079": { - "https", - "github.com/gogits/gogs/issues/", - "3247", - "#issuecomment-231517079", - "", - }, - "https://try.gogs.io/gogs/gogs/issues/4#issue-685": { - "https", - "try.gogs.io/gogs/gogs/issues/", - "4", - "#issue-685", - "", - }, - "https://youtrack.jetbrains.com/issue/JT-36485": { - "https", - "youtrack.jetbrains.com/issue/", - "JT-36485", - "", - "", - }, - "https://youtrack.jetbrains.com/issue/JT-36485#comment=27-1508676": { - "https", - "youtrack.jetbrains.com/issue/", - "JT-36485", - "#comment=27-1508676", - "", - }, - } - - for k, v := range testCases { - assert.Equal(t, IssueFullPattern.FindStringSubmatch(k)[1:], v) - } -} - func TestMisc_IsMarkdownFile(t *testing.T) { setting.Markdown.FileExtensions = []string{".md", ".markdown", ".mdown", ".mkd"} trueTestCases := []string{ @@ -645,7 +619,7 @@ var sameCases = []string{ Ideas and codes -- Bezier widget (by @r-lyeh) https://github.com/ocornut/imgui/issues/786 +- Bezier widget (by @r-lyeh) ` + AppURL + `ocornut/imgui/issues/786 - Node graph editors https://github.com/ocornut/imgui/issues/306 - [[Memory Editor|memory_editor_example]] - [[Plot var helper|plot_var_example]]`, @@ -681,8 +655,8 @@ func testAnswers(baseURLContent, baseURLImages string) []string { <p>Ideas and codes</p> <ul> -<li>Bezier widget (by <a href="` + AppURL + `r-lyeh" rel="nofollow">@r-lyeh</a>)<a href="https://github.com/ocornut/imgui/issues/786" rel="nofollow">#786</a></li> -<li>Node graph editors<a href="https://github.com/ocornut/imgui/issues/306" rel="nofollow">#306</a></li> +<li>Bezier widget (by <a href="` + AppURL + `r-lyeh" rel="nofollow">@r-lyeh</a>) <a href="http://localhost:3000/ocornut/imgui/issues/786" rel="nofollow">#786</a></li> +<li>Node graph editors https://github.com/ocornut/imgui/issues/306</li> <li><a href="` + baseURLContent + `/memory_editor_example" rel="nofollow">Memory Editor</a></li> <li><a href="` + baseURLContent + `/plot_var_example" rel="nofollow">Plot var helper</a></li> </ul> |