@@ -5,6 +5,7 @@ package markdown_test
55
66import (
77 "context"
8+ "html/template"
89 "os"
910 "strings"
1011 "testing"
@@ -56,7 +57,7 @@ func TestRender_StandardLinks(t *testing.T) {
5657 },
5758 }, input )
5859 assert .NoError (t , err )
59- assert .Equal (t , strings .TrimSpace (expected ), strings .TrimSpace (buffer ))
60+ assert .Equal (t , strings .TrimSpace (expected ), strings .TrimSpace (string ( buffer ) ))
6061
6162 buffer , err = markdown .RenderString (& markup.RenderContext {
6263 Ctx : git .DefaultContext ,
@@ -66,7 +67,7 @@ func TestRender_StandardLinks(t *testing.T) {
6667 IsWiki : true ,
6768 }, input )
6869 assert .NoError (t , err )
69- assert .Equal (t , strings .TrimSpace (expectedWiki ), strings .TrimSpace (buffer ))
70+ assert .Equal (t , strings .TrimSpace (expectedWiki ), strings .TrimSpace (string ( buffer ) ))
7071 }
7172
7273 googleRendered := `<p><a href="https://google.com/" rel="nofollow">https://google.com/</a></p>`
@@ -90,7 +91,7 @@ func TestRender_Images(t *testing.T) {
9091 },
9192 }, input )
9293 assert .NoError (t , err )
93- assert .Equal (t , strings .TrimSpace (expected ), strings .TrimSpace (buffer ))
94+ assert .Equal (t , strings .TrimSpace (expected ), strings .TrimSpace (string ( buffer ) ))
9495 }
9596
9697 url := "../../.images/src/02/train.jpg"
@@ -299,7 +300,7 @@ func TestTotal_RenderWiki(t *testing.T) {
299300 IsWiki : true ,
300301 }, sameCases [i ])
301302 assert .NoError (t , err )
302- assert .Equal (t , answers [i ], line )
303+ assert .Equal (t , template . HTML ( answers [i ]) , line )
303304 }
304305
305306 testCases := []string {
@@ -324,7 +325,7 @@ func TestTotal_RenderWiki(t *testing.T) {
324325 IsWiki : true ,
325326 }, testCases [i ])
326327 assert .NoError (t , err )
327- assert .Equal (t , testCases [i + 1 ], line )
328+ assert .Equal (t , template . HTML ( testCases [i + 1 ]) , line )
328329 }
329330}
330331
@@ -343,7 +344,7 @@ func TestTotal_RenderString(t *testing.T) {
343344 Metas : localMetas ,
344345 }, sameCases [i ])
345346 assert .NoError (t , err )
346- assert .Equal (t , answers [i ], line )
347+ assert .Equal (t , template . HTML ( answers [i ]) , line )
347348 }
348349
349350 testCases := []string {}
@@ -356,7 +357,7 @@ func TestTotal_RenderString(t *testing.T) {
356357 },
357358 }, testCases [i ])
358359 assert .NoError (t , err )
359- assert .Equal (t , testCases [i + 1 ], line )
360+ assert .Equal (t , template . HTML ( testCases [i + 1 ]) , line )
360361 }
361362}
362363
@@ -423,7 +424,7 @@ func TestRenderEmojiInLinks_Issue12331(t *testing.T) {
423424`
424425 res , err := markdown .RenderString (& markup.RenderContext {Ctx : git .DefaultContext }, testcase )
425426 assert .NoError (t , err )
426- assert .Equal (t , expected , res )
427+ assert .Equal (t , template . HTML ( expected ) , res )
427428}
428429
429430func TestColorPreview (t * testing.T ) {
@@ -457,7 +458,7 @@ func TestColorPreview(t *testing.T) {
457458 for _ , test := range positiveTests {
458459 res , err := markdown .RenderString (& markup.RenderContext {Ctx : git .DefaultContext }, test .testcase )
459460 assert .NoError (t , err , "Unexpected error in testcase: %q" , test .testcase )
460- assert .Equal (t , test .expected , res , "Unexpected result in testcase %q" , test .testcase )
461+ assert .Equal (t , template . HTML ( test .expected ) , res , "Unexpected result in testcase %q" , test .testcase )
461462
462463 }
463464
@@ -524,7 +525,7 @@ func TestMathBlock(t *testing.T) {
524525 for _ , test := range testcases {
525526 res , err := markdown .RenderString (& markup.RenderContext {Ctx : git .DefaultContext }, test .testcase )
526527 assert .NoError (t , err , "Unexpected error in testcase: %q" , test .testcase )
527- assert .Equal (t , test .expected , res , "Unexpected result in testcase %q" , test .testcase )
528+ assert .Equal (t , template . HTML ( test .expected ) , res , "Unexpected result in testcase %q" , test .testcase )
528529
529530 }
530531}
@@ -562,12 +563,12 @@ foo: bar
562563 for _ , test := range testcases {
563564 res , err := markdown .RenderString (& markup.RenderContext {Ctx : git .DefaultContext }, test .testcase )
564565 assert .NoError (t , err , "Unexpected error in testcase: %q" , test .testcase )
565- assert .Equal (t , test .expected , res , "Unexpected result in testcase %q" , test .testcase )
566+ assert .Equal (t , template . HTML ( test .expected ) , res , "Unexpected result in testcase %q" , test .testcase )
566567 }
567568}
568569
569570func TestRenderLinks (t * testing.T ) {
570- input := ` space @mention-user
571+ input := ` space @mention-user${SPACE}${SPACE}
571572/just/a/path.bin
572573https://example.com/file.bin
573574[local link](file.bin)
@@ -588,8 +589,9 @@ com 88fc37a3c0a4dda553bdcfc80c178a58247f42fb mit
588589589590@mention-user test
590591#123
591- space
592+ space${SPACE}${SPACE}
592593`
594+ input = strings .ReplaceAll (input , "${SPACE}" , " " ) // replace ${SPACE} with " ", to avoid some editor's auto-trimming
593595 cases := []struct {
594596 Links markup.Links
595597 IsWiki bool
@@ -952,6 +954,6 @@ space</p>
952954 for i , c := range cases {
953955 result , err := markdown .RenderString (& markup.RenderContext {Ctx : context .Background (), Links : c .Links , IsWiki : c .IsWiki }, input )
954956 assert .NoError (t , err , "Unexpected error in testcase: %v" , i )
955- assert .Equal (t , c .Expected , result , "Unexpected result in testcase %v" , i )
957+ assert .Equal (t , template . HTML ( c .Expected ) , result , "Unexpected result in testcase %v" , i )
956958 }
957959}
0 commit comments