diff --git a/modules/markup/markdown/markdown_test.go b/modules/markup/markdown/markdown_test.go index 4c282901e5..61167dd0b7 100644 --- a/modules/markup/markdown/markdown_test.go +++ b/modules/markup/markdown/markdown_test.go @@ -546,6 +546,204 @@ func TestMathBlock(t *testing.T) { } } +func TestFootnote(t *testing.T) { + testcases := []struct { + testcase string + expected string + }{ + { + `Citation needed[^0]. +[^0]: Source`, + `
Citation needed1.
+Source ↩︎
+Citation needed[^0]
+`, + }, + { + `Citation needed[^1], Citation needed twice[^3] +[^3]: Source`, + `Citation needed[^1], Citation needed twice1
+Source ↩︎
+Citation needed[^0]
+`, + }, + { + `Citation needed[^0] +[^0]: Source 1 +[^0]: Source 2`, + `Citation needed1
+Source 1 ↩︎
+Citation needed1
+Source ↩︎
+Trigger [^
+`, + }, + { + `Trigger 2 [^0`, + `Trigger 2 [^0
+`, + }, + { + `Citation needed[^0] +[^0]: Source with citation needed[^1] +[^1]: Source`, + `Citation needed1
+ +`, + }, + { + `Citation needed[^#] +[^#]: Source`, + `Citation needed1
+Source ↩︎
+Citation needed[^0]
+[^0]: Source
Citation needed1.
+Source ↩︎
+Citation needed[^]
+[^]: Source
Citation needed[^0]
+[^0] Source
Citation needed[^0]
+[^0 Source
Citation needed[^0] [^0]: Source
+`, + }, + { + `Citation needed[^Source here 0 # 9-3] +[^Source here 0 # 9-3]: Source`, + `Citation needed1
+Source ↩︎
+Citation needed1
+