From 304bbd3f251bf158ca437472e860d7b18d5483a3 Mon Sep 17 00:00:00 2001 From: Lunny Xiao Date: Fri, 25 Nov 2016 09:58:05 +0800 Subject: [PATCH 1/2] golint fixed for modules/markdown --- models/repo.go | 8 ++++---- modules/markdown/markdown.go | 20 +++++++++++--------- 2 files changed, 15 insertions(+), 13 deletions(-) diff --git a/models/repo.go b/models/repo.go index 20671cb01..b3e08a93e 100644 --- a/models/repo.go +++ b/models/repo.go @@ -224,7 +224,7 @@ func (repo *Repository) AfterSet(colName string, _ xorm.Cell) { repo.NumOpenMilestones = repo.NumMilestones - repo.NumClosedMilestones case "external_tracker_style": if len(repo.ExternalTrackerStyle) == 0 { - repo.ExternalTrackerStyle = markdown.ISSUE_NAME_STYLE_NUMERIC + repo.ExternalTrackerStyle = markdown.IssueNameStyleNumeric } case "created_unix": repo.Created = time.Unix(repo.CreatedUnix, 0).Local() @@ -310,10 +310,10 @@ func (repo *Repository) ComposeMetas() map[string]string { "repo": repo.Name, } switch repo.ExternalTrackerStyle { - case markdown.ISSUE_NAME_STYLE_ALPHANUMERIC: - repo.ExternalMetas["style"] = markdown.ISSUE_NAME_STYLE_ALPHANUMERIC + case markdown.IssueNameStyleAlphanumeric: + repo.ExternalMetas["style"] = markdown.IssueNameStyleAlphanumeric default: - repo.ExternalMetas["style"] = markdown.ISSUE_NAME_STYLE_NUMERIC + repo.ExternalMetas["style"] = markdown.IssueNameStyleNumeric } } diff --git a/modules/markdown/markdown.go b/modules/markdown/markdown.go index 58bb8f417..e46f172d3 100644 --- a/modules/markdown/markdown.go +++ b/modules/markdown/markdown.go @@ -22,11 +22,13 @@ import ( "code.gitea.io/gitea/modules/setting" ) +// Issue name styles const ( - ISSUE_NAME_STYLE_NUMERIC = "numeric" - ISSUE_NAME_STYLE_ALPHANUMERIC = "alphanumeric" + IssueNameStyleNumeric = "numeric" + IssueNameStyleAlphanumeric = "alphanumeric" ) +// Sanitizer markdown sanitizer var Sanitizer = bluemonday.UGCPolicy() // BuildSanitizer initializes sanitizer with allowed attributes based on settings. @@ -163,7 +165,7 @@ func (r *Renderer) AutoLink(out *bytes.Buffer, link []byte, kind int) { } // ListItem defines how list items should be processed to produce corresponding HTML elements. -func (options *Renderer) ListItem(out *bytes.Buffer, text []byte, flags int) { +func (r *Renderer) ListItem(out *bytes.Buffer, text []byte, flags int) { // Detect procedures to draw checkboxes. switch { case bytes.HasPrefix(text, []byte("[ ] ")): @@ -171,7 +173,7 @@ func (options *Renderer) ListItem(out *bytes.Buffer, text []byte, flags int) { case bytes.HasPrefix(text, []byte("[x] ")): text = append([]byte(``), text[3:]...) } - options.Renderer.ListItem(out, text, flags) + r.Renderer.ListItem(out, text, flags) } // Note: this section is for purpose of increase performance and @@ -235,7 +237,7 @@ func RenderIssueIndexPattern(rawBytes []byte, urlPrefix string, metas map[string urlPrefix = cutoutVerbosePrefix(urlPrefix) pattern := IssueNumericPattern - if metas["style"] == ISSUE_NAME_STYLE_ALPHANUMERIC { + if metas["style"] == IssueNameStyleAlphanumeric { pattern = IssueAlphanumericPattern } @@ -249,7 +251,7 @@ func RenderIssueIndexPattern(rawBytes []byte, urlPrefix string, metas map[string link = fmt.Sprintf(`%s`, urlPrefix, m[1:], m) } else { // Support for external issue tracker - if metas["style"] == ISSUE_NAME_STYLE_ALPHANUMERIC { + if metas["style"] == IssueNameStyleAlphanumeric { metas["index"] = string(m) } else { metas["index"] = string(m[1:]) @@ -322,10 +324,10 @@ var noEndTags = []string{"img", "input", "br", "hr"} // PostProcess treats different types of HTML differently, // and only renders special links for plain text blocks. -func PostProcess(rawHtml []byte, urlPrefix string, metas map[string]string) []byte { +func PostProcess(rawHTML []byte, urlPrefix string, metas map[string]string) []byte { startTags := make([]string, 0, 5) var buf bytes.Buffer - tokenizer := html.NewTokenizer(bytes.NewReader(rawHtml)) + tokenizer := html.NewTokenizer(bytes.NewReader(rawHTML)) OUTER_LOOP: for html.ErrorToken != tokenizer.Next() { @@ -387,7 +389,7 @@ OUTER_LOOP: // If we are not at the end of the input, then some other parsing error has occurred, // so return the input verbatim. - return rawHtml + return rawHTML } // Render renders Markdown to HTML with special links. From 76604d8f9008dd4e42500a6febd09475483d4057 Mon Sep 17 00:00:00 2001 From: Lunny Xiao Date: Fri, 25 Nov 2016 16:02:10 +0800 Subject: [PATCH 2/2] fixed test build error --- models/repo_test.go | 12 ++++++------ modules/markdown/markdown_test.go | 4 ++-- 2 files changed, 8 insertions(+), 8 deletions(-) diff --git a/models/repo_test.go b/models/repo_test.go index fdf3a07ba..70ad1c1f0 100644 --- a/models/repo_test.go +++ b/models/repo_test.go @@ -24,7 +24,7 @@ func TestRepo(t *testing.T) { Convey("It should be nil even if other settings are present", func() { repo.EnableExternalTracker = false repo.ExternalTrackerFormat = "http://someurl.com/{user}/{repo}/{issue}" - repo.ExternalTrackerStyle = markdown.ISSUE_NAME_STYLE_NUMERIC + repo.ExternalTrackerStyle = markdown.IssueNameStyleNumeric So(repo.ComposeMetas(), ShouldEqual, map[string]string(nil)) }) }) @@ -33,17 +33,17 @@ func TestRepo(t *testing.T) { repo.EnableExternalTracker = true Convey("It should default to numeric issue style", func() { metas := repo.ComposeMetas() - So(metas["style"], ShouldEqual, markdown.ISSUE_NAME_STYLE_NUMERIC) + So(metas["style"], ShouldEqual, markdown.IssueNameStyleNumeric) }) Convey("It should pass through numeric issue style setting", func() { - repo.ExternalTrackerStyle = markdown.ISSUE_NAME_STYLE_NUMERIC + repo.ExternalTrackerStyle = markdown.IssueNameStyleNumeric metas := repo.ComposeMetas() - So(metas["style"], ShouldEqual, markdown.ISSUE_NAME_STYLE_NUMERIC) + So(metas["style"], ShouldEqual, markdown.IssueNameStyleNumeric) }) Convey("It should pass through alphanumeric issue style setting", func() { - repo.ExternalTrackerStyle = markdown.ISSUE_NAME_STYLE_ALPHANUMERIC + repo.ExternalTrackerStyle = markdown.IssueNameStyleAlphanumeric metas := repo.ComposeMetas() - So(metas["style"], ShouldEqual, markdown.ISSUE_NAME_STYLE_ALPHANUMERIC) + So(metas["style"], ShouldEqual, markdown.IssueNameStyleAlphanumeric) }) Convey("It should contain the user name", func() { metas := repo.ComposeMetas() diff --git a/modules/markdown/markdown_test.go b/modules/markdown/markdown_test.go index 9a7bc25fa..3fc260bf1 100644 --- a/modules/markdown/markdown_test.go +++ b/modules/markdown/markdown_test.go @@ -95,7 +95,7 @@ func TestMarkdown(t *testing.T) { metas["format"] = "https://someurl.com/{user}/{repo}/{index}" metas["user"] = "someuser" metas["repo"] = "somerepo" - metas["style"] = ISSUE_NAME_STYLE_NUMERIC + metas["style"] = IssueNameStyleNumeric Convey("should not render anything when there are no mentions", func() { testCases := []string{ @@ -167,7 +167,7 @@ func TestMarkdown(t *testing.T) { metas["format"] = "https://someurl.com/{user}/{repo}/?b={index}" metas["user"] = "someuser" metas["repo"] = "somerepo" - metas["style"] = ISSUE_NAME_STYLE_ALPHANUMERIC + metas["style"] = IssueNameStyleAlphanumeric Convey("It should not render anything when there are no mentions", func() { testCases := []string{ "",