code.gitea.io/gitea@v1.19.3/modules/markup/orgmode/orgmode_test.go (about) 1 // Copyright 2017 The Gitea Authors. All rights reserved. 2 // SPDX-License-Identifier: MIT 3 4 package markup 5 6 import ( 7 "strings" 8 "testing" 9 10 "code.gitea.io/gitea/modules/git" 11 "code.gitea.io/gitea/modules/markup" 12 "code.gitea.io/gitea/modules/setting" 13 "code.gitea.io/gitea/modules/util" 14 15 "github.com/stretchr/testify/assert" 16 ) 17 18 const ( 19 AppURL = "http://localhost:3000/" 20 Repo = "gogits/gogs" 21 AppSubURL = AppURL + Repo + "/" 22 ) 23 24 func TestRender_StandardLinks(t *testing.T) { 25 setting.AppURL = AppURL 26 setting.AppSubURL = AppSubURL 27 28 test := func(input, expected string) { 29 buffer, err := RenderString(&markup.RenderContext{ 30 Ctx: git.DefaultContext, 31 URLPrefix: setting.AppSubURL, 32 }, input) 33 assert.NoError(t, err) 34 assert.Equal(t, strings.TrimSpace(expected), strings.TrimSpace(buffer)) 35 } 36 37 googleRendered := "<p><a href=\"https://google.com/\" title=\"https://google.com/\">https://google.com/</a></p>" 38 test("[[https://google.com/]]", googleRendered) 39 40 lnk := util.URLJoin(AppSubURL, "WikiPage") 41 test("[[WikiPage][WikiPage]]", 42 "<p><a href=\""+lnk+"\" title=\"WikiPage\">WikiPage</a></p>") 43 } 44 45 func TestRender_Images(t *testing.T) { 46 setting.AppURL = AppURL 47 setting.AppSubURL = AppSubURL 48 49 test := func(input, expected string) { 50 buffer, err := RenderString(&markup.RenderContext{ 51 Ctx: git.DefaultContext, 52 URLPrefix: setting.AppSubURL, 53 }, input) 54 assert.NoError(t, err) 55 assert.Equal(t, strings.TrimSpace(expected), strings.TrimSpace(buffer)) 56 } 57 58 url := "../../.images/src/02/train.jpg" 59 result := util.URLJoin(AppSubURL, url) 60 61 test("[[file:"+url+"]]", 62 "<p><img src=\""+result+"\" alt=\""+result+"\" title=\""+result+"\" /></p>") 63 } 64 65 func TestRender_Source(t *testing.T) { 66 setting.AppURL = AppURL 67 setting.AppSubURL = AppSubURL 68 69 test := func(input, expected string) { 70 buffer, err := RenderString(&markup.RenderContext{ 71 Ctx: git.DefaultContext, 72 URLPrefix: setting.AppSubURL, 73 }, input) 74 assert.NoError(t, err) 75 assert.Equal(t, strings.TrimSpace(expected), strings.TrimSpace(buffer)) 76 } 77 78 test(`#+begin_src go 79 // HelloWorld prints "Hello World" 80 func HelloWorld() { 81 fmt.Println("Hello World") 82 } 83 #+end_src 84 `, `<div class="src src-go"> 85 <pre><code class="chroma language-go"><span class="c1">// HelloWorld prints "Hello World" 86 </span><span class="c1"></span><span class="kd">func</span> <span class="nf">HelloWorld</span><span class="p">()</span> <span class="p">{</span> 87 <span class="nx">fmt</span><span class="p">.</span><span class="nf">Println</span><span class="p">(</span><span class="s">"Hello World"</span><span class="p">)</span> 88 <span class="p">}</span></code></pre> 89 </div>`) 90 }