From feab9412dffe5772048aad29893c4cb01d566387 Mon Sep 17 00:00:00 2001 From: Michael Muré Date: Wed, 21 Nov 2018 18:56:12 +0100 Subject: WIP identity in git --- util/test/repo.go | 52 ++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 52 insertions(+) create mode 100644 util/test/repo.go (limited to 'util') diff --git a/util/test/repo.go b/util/test/repo.go new file mode 100644 index 00000000..8f0d2e5d --- /dev/null +++ b/util/test/repo.go @@ -0,0 +1,52 @@ +package test + +import ( + "io/ioutil" + "log" + + "github.com/MichaelMure/git-bug/misc/random_bugs" + "github.com/MichaelMure/git-bug/repository" +) + +func CreateRepo(bare bool) *repository.GitRepo { + dir, err := ioutil.TempDir("", "") + if err != nil { + log.Fatal(err) + } + + // fmt.Println("Creating repo:", dir) + + var creator func(string) (*repository.GitRepo, error) + + if bare { + creator = repository.InitBareGitRepo + } else { + creator = repository.InitGitRepo + } + + repo, err := creator(dir) + if err != nil { + log.Fatal(err) + } + + if err := repo.StoreConfig("user.name", "testuser"); err != nil { + log.Fatal("failed to set user.name for test repository: ", err) + } + if err := repo.StoreConfig("user.email", "testuser@example.com"); err != nil { + log.Fatal("failed to set user.email for test repository: ", err) + } + + return repo +} + +func CreateFilledRepo(bugNumber int) repository.ClockedRepo { + repo := CreateRepo(false) + + var seed int64 = 42 + options := random_bugs.DefaultOptions() + + options.BugNumber = bugNumber + + random_bugs.CommitRandomBugsWithSeed(repo, options, seed) + return repo +} -- cgit From d10c76469d40f13e27739fd363145e89bf74c3e0 Mon Sep 17 00:00:00 2001 From: Michael Muré Date: Sat, 19 Jan 2019 19:23:31 +0100 Subject: identity: somewhat getting closer ! --- util/git/hash.go | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'util') diff --git a/util/git/hash.go b/util/git/hash.go index 401e6edc..d9160d75 100644 --- a/util/git/hash.go +++ b/util/git/hash.go @@ -30,7 +30,7 @@ func (h *Hash) UnmarshalGQL(v interface{}) error { // MarshalGQL implement the Marshaler interface for gqlgen func (h Hash) MarshalGQL(w io.Writer) { - w.Write([]byte(`"` + h.String() + `"`)) + _, _ = w.Write([]byte(`"` + h.String() + `"`)) } // IsValid tell if the hash is valid -- cgit From cd7ed7ff9e3250c10e97fe16c934b5a6151527bb Mon Sep 17 00:00:00 2001 From: Michael Muré Date: Sat, 16 Feb 2019 13:48:46 +0100 Subject: identity: add more test for serialisation and push/pull/merge + fixes --- util/test/repo.go | 43 +++++++++++++++++++++++++++++++++++-------- 1 file changed, 35 insertions(+), 8 deletions(-) (limited to 'util') diff --git a/util/test/repo.go b/util/test/repo.go index 8f0d2e5d..c5d3c000 100644 --- a/util/test/repo.go +++ b/util/test/repo.go @@ -3,8 +3,9 @@ package test import ( "io/ioutil" "log" + "os" + "testing" - "github.com/MichaelMure/git-bug/misc/random_bugs" "github.com/MichaelMure/git-bug/repository" ) @@ -39,14 +40,40 @@ func CreateRepo(bare bool) *repository.GitRepo { return repo } -func CreateFilledRepo(bugNumber int) repository.ClockedRepo { - repo := CreateRepo(false) +func CleanupRepo(repo repository.Repo) error { + path := repo.GetPath() + // fmt.Println("Cleaning repo:", path) + return os.RemoveAll(path) +} - var seed int64 = 42 - options := random_bugs.DefaultOptions() +func SetupReposAndRemote(t testing.TB) (repoA, repoB, remote *repository.GitRepo) { + repoA = CreateRepo(false) + repoB = CreateRepo(false) + remote = CreateRepo(true) - options.BugNumber = bugNumber + remoteAddr := "file://" + remote.GetPath() - random_bugs.CommitRandomBugsWithSeed(repo, options, seed) - return repo + err := repoA.AddRemote("origin", remoteAddr) + if err != nil { + t.Fatal(err) + } + + err = repoB.AddRemote("origin", remoteAddr) + if err != nil { + t.Fatal(err) + } + + return repoA, repoB, remote +} + +func CleanupRepos(repoA, repoB, remote *repository.GitRepo) { + if err := CleanupRepo(repoA); err != nil { + log.Println(err) + } + if err := CleanupRepo(repoB); err != nil { + log.Println(err) + } + if err := CleanupRepo(remote); err != nil { + log.Println(err) + } } -- cgit From 475b7b4c490bc3729772932f2d7bbcabb8f781a7 Mon Sep 17 00:00:00 2001 From: Michael Muré Date: Sun, 24 Feb 2019 17:40:52 +0100 Subject: a round of cleanup --- util/text/text.go | 7 ------- 1 file changed, 7 deletions(-) (limited to 'util') diff --git a/util/text/text.go b/util/text/text.go index 81cc870b..87db8c30 100644 --- a/util/text/text.go +++ b/util/text/text.go @@ -323,10 +323,3 @@ func splitWord(word string, length int) (string, string) { return string(result), string(leftover) } - -func minInt(a, b int) int { - if a > b { - return b - } - return a -} -- cgit From c235d89d36500e58e3bcadda94e9cab06023dd55 Mon Sep 17 00:00:00 2001 From: Michael Muré Date: Sun, 24 Feb 2019 23:05:03 +0100 Subject: commands: show the last modification time in "user" --- util/timestamp/timestamp.go | 9 +++++++++ 1 file changed, 9 insertions(+) create mode 100644 util/timestamp/timestamp.go (limited to 'util') diff --git a/util/timestamp/timestamp.go b/util/timestamp/timestamp.go new file mode 100644 index 00000000..4f587cb4 --- /dev/null +++ b/util/timestamp/timestamp.go @@ -0,0 +1,9 @@ +package timestamp + +import "time" + +type Timestamp int64 + +func (t Timestamp) Time() time.Time { + return time.Unix(int64(t), 0) +} -- cgit