From 01c8df01ec0608f1f25b2f1444adabb98fa5ee8a Mon Sep 17 00:00:00 2001 From: Unknwon Date: Thu, 24 Oct 2019 01:51:46 -0700 Subject: internal: move packages under this directory (#5836) * Rename pkg -> internal * Rename routes -> route * Move route -> internal/route * Rename models -> db * Move db -> internal/db * Fix route2 -> route * Move cmd -> internal/cmd * Bump version --- internal/db/repo_test.go | 63 ++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 63 insertions(+) create mode 100644 internal/db/repo_test.go (limited to 'internal/db/repo_test.go') diff --git a/internal/db/repo_test.go b/internal/db/repo_test.go new file mode 100644 index 00000000..c239e74d --- /dev/null +++ b/internal/db/repo_test.go @@ -0,0 +1,63 @@ +package db_test + +import ( + "testing" + + . "github.com/smartystreets/goconvey/convey" + + "gogs.io/gogs/internal/db" + "gogs.io/gogs/internal/markup" +) + +func TestRepo(t *testing.T) { + Convey("The metas map", t, func() { + var repo = new(db.Repository) + repo.Name = "testrepo" + repo.Owner = new(db.User) + repo.Owner.Name = "testuser" + repo.ExternalTrackerFormat = "https://someurl.com/{user}/{repo}/{issue}" + + Convey("When no external tracker is configured", func() { + Convey("It should be nil", func() { + repo.EnableExternalTracker = false + So(repo.ComposeMetas(), ShouldEqual, map[string]string(nil)) + }) + 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 = markup.ISSUE_NAME_STYLE_NUMERIC + So(repo.ComposeMetas(), ShouldEqual, map[string]string(nil)) + }) + }) + + Convey("When an external issue tracker is configured", func() { + repo.EnableExternalTracker = true + Convey("It should default to numeric issue style", func() { + metas := repo.ComposeMetas() + So(metas["style"], ShouldEqual, markup.ISSUE_NAME_STYLE_NUMERIC) + }) + Convey("It should pass through numeric issue style setting", func() { + repo.ExternalTrackerStyle = markup.ISSUE_NAME_STYLE_NUMERIC + metas := repo.ComposeMetas() + So(metas["style"], ShouldEqual, markup.ISSUE_NAME_STYLE_NUMERIC) + }) + Convey("It should pass through alphanumeric issue style setting", func() { + repo.ExternalTrackerStyle = markup.ISSUE_NAME_STYLE_ALPHANUMERIC + metas := repo.ComposeMetas() + So(metas["style"], ShouldEqual, markup.ISSUE_NAME_STYLE_ALPHANUMERIC) + }) + Convey("It should contain the user name", func() { + metas := repo.ComposeMetas() + So(metas["user"], ShouldEqual, "testuser") + }) + Convey("It should contain the repo name", func() { + metas := repo.ComposeMetas() + So(metas["repo"], ShouldEqual, "testrepo") + }) + Convey("It should contain the URL format", func() { + metas := repo.ComposeMetas() + So(metas["format"], ShouldEqual, "https://someurl.com/{user}/{repo}/{issue}") + }) + }) + }) +} -- cgit v1.2.3