summaryrefslogtreecommitdiffstats
path: root/modules
diff options
context:
space:
mode:
authorChaz Reid <charlesreid1@Gmail.com>2018-03-05 10:39:12 -0800
committerLauris BH <lauris@nix.lv>2018-03-05 20:39:12 +0200
commit69ea5e438538863056af3bd70d182096b68f0d4a (patch)
tree5d2458548e45798ddde4edb9b32572b13f55177b /modules
parent171914e9a75de4d03beb1f9f365c03ac1aeeb3b5 (diff)
downloadgitea-69ea5e438538863056af3bd70d182096b68f0d4a.tar.gz
gitea-69ea5e438538863056af3bd70d182096b68f0d4a.zip
Fix wiki inter-links with cases and add tests for this case (#3560)
Diffstat (limited to 'modules')
-rw-r--r--modules/markup/html.go6
-rw-r--r--modules/markup/html_test.go16
2 files changed, 16 insertions, 6 deletions
diff --git a/modules/markup/html.go b/modules/markup/html.go
index 53f57af1e0..4f9d02a8ff 100644
--- a/modules/markup/html.go
+++ b/modules/markup/html.go
@@ -464,7 +464,11 @@ func shortLinkProcessorFull(ctx *postProcessCtx, node *html.Node, noLink bool) {
childNode.Parent = linkNode
absoluteLink := isLinkStr(link)
if !absoluteLink {
- link = strings.Replace(link, " ", "+", -1)
+ if image {
+ link = strings.Replace(link, " ", "+", -1)
+ } else {
+ link = strings.Replace(link, " ", "-", -1)
+ }
}
urlPrefix := ctx.urlPrefix
if image {
diff --git a/modules/markup/html_test.go b/modules/markup/html_test.go
index 203db243dc..fc11532d1e 100644
--- a/modules/markup/html_test.go
+++ b/modules/markup/html_test.go
@@ -81,11 +81,13 @@ func TestRender_ShortLinks(t *testing.T) {
rawtree := util.URLJoin(AppSubURL, "raw", "master")
url := util.URLJoin(tree, "Link")
- otherURL := util.URLJoin(tree, "OtherLink")
+ otherURL := util.URLJoin(tree, "Other-Link")
imgurl := util.URLJoin(rawtree, "Link.jpg")
+ otherImgurl := util.URLJoin(rawtree, "Link+Other.jpg")
urlWiki := util.URLJoin(AppSubURL, "wiki", "Link")
- otherURLWiki := util.URLJoin(AppSubURL, "wiki", "OtherLink")
+ otherURLWiki := util.URLJoin(AppSubURL, "wiki", "Other-Link")
imgurlWiki := util.URLJoin(AppSubURL, "wiki", "raw", "Link.jpg")
+ otherImgurlWiki := util.URLJoin(AppSubURL, "wiki", "raw", "Link+Other.jpg")
favicon := "http://google.com/favicon.ico"
test(
@@ -125,7 +127,11 @@ func TestRender_ShortLinks(t *testing.T) {
`<p><a href="`+imgurl+`" rel="nofollow"><img src="`+imgurl+`" title="Title" alt="AltName"/></a></p>`,
`<p><a href="`+imgurlWiki+`" rel="nofollow"><img src="`+imgurlWiki+`" title="Title" alt="AltName"/></a></p>`)
test(
- "[[Link]] [[OtherLink]]",
- `<p><a href="`+url+`" rel="nofollow">Link</a> <a href="`+otherURL+`" rel="nofollow">OtherLink</a></p>`,
- `<p><a href="`+urlWiki+`" rel="nofollow">Link</a> <a href="`+otherURLWiki+`" rel="nofollow">OtherLink</a></p>`)
+ "[[Name|Link Other.jpg|alt=\"AltName\"|title='Title']]",
+ `<p><a href="`+otherImgurl+`" rel="nofollow"><img src="`+otherImgurl+`" title="Title" alt="AltName"/></a></p>`,
+ `<p><a href="`+otherImgurlWiki+`" rel="nofollow"><img src="`+otherImgurlWiki+`" title="Title" alt="AltName"/></a></p>`)
+ test(
+ "[[Link]] [[Other Link]]",
+ `<p><a href="`+url+`" rel="nofollow">Link</a> <a href="`+otherURL+`" rel="nofollow">Other Link</a></p>`,
+ `<p><a href="`+urlWiki+`" rel="nofollow">Link</a> <a href="`+otherURLWiki+`" rel="nofollow">Other Link</a></p>`)
}