From cfed6505d5efb4e0501a08bb46540599eda358ae Mon Sep 17 00:00:00 2001 From: Brad Date: Sat, 7 Jun 2014 13:33:34 -0700 Subject: [PATCH] altered database code to use repo_host instead of repo_remote --- server/database/schema.go | 2 +- server/database/testdata/testdata.go | 2 +- server/resource/repo/manager.go | 2 +- server/resource/repo/manager_test.go | 9 +++++++-- 4 files changed, 10 insertions(+), 5 deletions(-) diff --git a/server/database/schema.go b/server/database/schema.go index 46c18bb40..2655d9f2e 100644 --- a/server/database/schema.go +++ b/server/database/schema.go @@ -59,7 +59,7 @@ var stmts = []string{` ,repo_timeout INTEGER ,repo_created INTEGER ,repo_updated INTEGER - ,UNIQUE(repo_remote, repo_owner, repo_name) + ,UNIQUE(repo_host, repo_owner, repo_name) );`, ` CREATE TABLE IF NOT EXISTS commits ( commit_id INTEGER PRIMARY KEY AUTOINCREMENT diff --git a/server/database/testdata/testdata.go b/server/database/testdata/testdata.go index 512f992e1..8e6bcd26b 100644 --- a/server/database/testdata/testdata.go +++ b/server/database/testdata/testdata.go @@ -15,7 +15,7 @@ var stmts = []string{ // insert repository entries "insert into repos values (1, 0, 'github.com', 'github.com', 'lhofstadter', 'lenwoloppali', '', 'git://github.com/lhofstadter/lenwoloppali.git', '', '', 1, 1, 1, 1, 1, 'publickey', 'privatekey', 'params', 900, 1398065343, 1398065344);", "insert into repos values (2, 0, 'github.com', 'github.com', 'browndynamite', 'lenwoloppali', '', 'git://github.com/browndynamite/lenwoloppali.git', '', '', 1, 1, 1, 1, 1, 'publickey', 'privatekey', 'params', 900, 1398065343, 1398065344);", - "insert into repos values (3, 0, 'gitlab.com', 'github.com', 'browndynamite', 'lenwoloppali', '', 'git://gitlab.com/browndynamite/lenwoloppali.git', '', '', 1, 1, 1, 1, 1, 'publickey', 'privatekey', 'params', 900, 1398065343, 1398065344);", + "insert into repos values (3, 0, 'gitlab.com', 'gitlab.com', 'browndynamite', 'lenwoloppali', '', 'git://gitlab.com/browndynamite/lenwoloppali.git', '', '', 1, 1, 1, 1, 1, 'publickey', 'privatekey', 'params', 900, 1398065343, 1398065344);", // insert user + repository permission entries "insert into perms values (1, 101, 200, 1, 1, 1, 1398065343, 1398065344);", diff --git a/server/resource/repo/manager.go b/server/resource/repo/manager.go index 8c7a50a28..87c8cc7b5 100644 --- a/server/resource/repo/manager.go +++ b/server/resource/repo/manager.go @@ -46,7 +46,7 @@ func (db *repoManager) Find(id int64) (*Repo, error) { } func (db *repoManager) FindName(remote, owner, name string) (*Repo, error) { - const query = "select * from repos where repo_remote = ? and repo_owner = ? and repo_name = ?" + const query = "select * from repos where repo_host = ? and repo_owner = ? and repo_name = ?" var repo = Repo{} var err = meddler.QueryRow(db, &repo, query, remote, owner, name) return &repo, err diff --git a/server/resource/repo/manager_test.go b/server/resource/repo/manager_test.go index bce3d6ff8..c5086e77c 100644 --- a/server/resource/repo/manager_test.go +++ b/server/resource/repo/manager_test.go @@ -80,8 +80,8 @@ func TestInsert(t *testing.T) { } // verify unique remote + owner + name login constraint - var err = repos.Insert(&Repo{Remote: repo.Remote, Owner: repo.Owner, Name: repo.Name}) - if err == nil || !strings.Contains(err.Error(), "repo_remote, repo_owner, repo_name are not unique") { + var err = repos.Insert(&Repo{Host: repo.Host, Owner: repo.Owner, Name: repo.Name}) + if err == nil || !strings.Contains(err.Error(), "repo_host, repo_owner, repo_name are not unique") { t.Errorf("Want unique constraint violated, got %s", err) } } @@ -162,6 +162,11 @@ func testRepo(t *testing.T, repo *Repo) { t.Errorf("Want Remote %v, got %v", want, got) } + got, want = repo.Host, "github.com" + if got != want { + t.Errorf("Want Host %v, got %v", want, got) + } + got, want = repo.Owner, "lhofstadter" if got != want { t.Errorf("Want Owner %v, got %v", want, got)