Render links for commit hashes followed by comma (#14224)
Regex test cases: https://regex101.com/r/mVbPxM/2/ fixes #14223
This commit is contained in:
		
							parent
							
								
									7576e37a65
								
							
						
					
					
						commit
						44ff1d6a1e
					
				
					 2 changed files with 7 additions and 1 deletions
				
			
		|  | @ -43,7 +43,7 @@ var ( | |||
| 	// sha1CurrentPattern matches string that represents a commit SHA, e.g. d8a994ef243349f321568f9e36d5c3f444b99cae
 | ||||
| 	// Although SHA1 hashes are 40 chars long, the regex matches the hash from 7 to 40 chars in length
 | ||||
| 	// so that abbreviated hash links can be used as well. This matches git and github useability.
 | ||||
| 	sha1CurrentPattern = regexp.MustCompile(`(?:\s|^|\(|\[)([0-9a-f]{7,40})(?:\s|$|\)|\]|\.(\s|$))`) | ||||
| 	sha1CurrentPattern = regexp.MustCompile(`(?:\s|^|\(|\[)([0-9a-f]{7,40})(?:\s|$|\)|\]|[.,](\s|$))`) | ||||
| 
 | ||||
| 	// shortLinkPattern matches short but difficult to parse [[name|link|arg=test]] syntax
 | ||||
| 	shortLinkPattern = regexp.MustCompile(`\[\[(.*?)\]\](\w*)`) | ||||
|  |  | |||
|  | @ -46,6 +46,12 @@ func TestRender_Commits(t *testing.T) { | |||
| 	test("/home/gitea/"+sha, "<p>/home/gitea/"+sha+"</p>") | ||||
| 	test("deadbeef", `<p>deadbeef</p>`) | ||||
| 	test("d27ace93", `<p>d27ace93</p>`) | ||||
| 	test(sha[:14]+".x", `<p>`+sha[:14]+`.x</p>`) | ||||
| 
 | ||||
| 	expected14 := `<a href="` + commit[:len(commit)-(40-14)] + `" rel="nofollow"><code>` + sha[:10] + `</code></a>` | ||||
| 	test(sha[:14]+".", `<p>`+expected14+`.</p>`) | ||||
| 	test(sha[:14]+",", `<p>`+expected14+`,</p>`) | ||||
| 	test("["+sha[:14]+"]", `<p>[`+expected14+`]</p>`) | ||||
| } | ||||
| 
 | ||||
| func TestRender_CrossReferences(t *testing.T) { | ||||
|  |  | |||
		Loading…
	
		Reference in a new issue