code.gitea.io/gitea@v1.22.3/modules/markup/csv/csv_test.go (about) 1 // Copyright 2018 The Gitea Authors. All rights reserved. 2 // SPDX-License-Identifier: MIT 3 4 package markup 5 6 import ( 7 "bufio" 8 "bytes" 9 "strings" 10 "testing" 11 12 "code.gitea.io/gitea/modules/git" 13 "code.gitea.io/gitea/modules/markup" 14 15 "github.com/stretchr/testify/assert" 16 ) 17 18 func TestRenderCSV(t *testing.T) { 19 var render Renderer 20 kases := map[string]string{ 21 "a": "<table class=\"data-table\"><tr><th class=\"line-num\">1</th><th>a</th></tr></table>", 22 "1,2": "<table class=\"data-table\"><tr><th class=\"line-num\">1</th><th>1</th><th>2</th></tr></table>", 23 "1;2\n3;4": "<table class=\"data-table\"><tr><th class=\"line-num\">1</th><th>1</th><th>2</th></tr><tr><td class=\"line-num\">2</td><td>3</td><td>4</td></tr></table>", 24 "<br/>": "<table class=\"data-table\"><tr><th class=\"line-num\">1</th><th><br/></th></tr></table>", 25 } 26 27 for k, v := range kases { 28 var buf strings.Builder 29 err := render.Render(&markup.RenderContext{Ctx: git.DefaultContext}, 30 strings.NewReader(k), &buf) 31 assert.NoError(t, err) 32 assert.EqualValues(t, v, buf.String()) 33 } 34 35 t.Run("fallbackRender", func(t *testing.T) { 36 var buf bytes.Buffer 37 err := render.fallbackRender(strings.NewReader("1,<a>\n2,<b>"), bufio.NewWriter(&buf)) 38 assert.NoError(t, err) 39 want := "<pre>1,<a>\n2,<b></pre>" 40 assert.Equal(t, want, buf.String()) 41 }) 42 }