diff options
| author | Shulhan <ms@kilabit.info> | 2026-01-05 21:47:09 +0700 |
|---|---|---|
| committer | Shulhan <ms@kilabit.info> | 2026-01-06 14:56:07 +0700 |
| commit | f9567f0d4fc5cf6d0e1cea2d22289250c6b1cb2b (patch) | |
| tree | 452d58882f84b694f56ff3bd9de1fdea2c55c246 /lib/git/git_test.go | |
| parent | 18be916ab6f8911fd23d8f0a91f5a26f3c07f636 (diff) | |
| download | pakakeh.go-f9567f0d4fc5cf6d0e1cea2d22289250c6b1cb2b.tar.xz | |
lib/git: implement Equaler interface on Git
The Equaler interface provide the method Equal that when implemented
can be used to compare two instances of struct.
Diffstat (limited to 'lib/git/git_test.go')
| -rw-r--r-- | lib/git/git_test.go | 48 |
1 files changed, 48 insertions, 0 deletions
diff --git a/lib/git/git_test.go b/lib/git/git_test.go index 70a9ccca..65fe572d 100644 --- a/lib/git/git_test.go +++ b/lib/git/git_test.go @@ -134,6 +134,35 @@ Use '--' to separate paths from revisions, like this: } } +func TestGit_Equal(t *testing.T) { + type testCase struct { + v any + exp bool + } + var nilgit *Git + var listCase = []testCase{{ + v: nil, + }, { + v: os.ErrExist, + }, { + v: nilgit, + }} + + var agit *Git + var err error + agit, err = New(`testdata/Equal`) + if err != nil { + t.Fatal(err) + } + + var tc testCase + var got bool + for _, tc = range listCase { + got = agit.Equal(tc.v) + test.Assert(t, fmt.Sprintf(`%T`, tc.v), tc.exp, got) + } +} + func TestGetRemoteURL(t *testing.T) { cases := []struct { desc string @@ -393,3 +422,22 @@ func TestRemoteChange(t *testing.T) { test.Assert(t, "stdout", c.expStdout, mockStdout.String()) } } + +func TestGit_String(t *testing.T) { + var agit *Git + var err error + agit, err = New(`testdata/Equal`) + if err != nil { + t.Fatal(err) + } + + var wd string + wd, err = os.Getwd() + if err != nil { + t.Fatal(err) + } + + var exp = fmt.Sprintf(`git+file://%s/testdata/Equal`, wd) + var got = agit.String() + test.Assert(t, `String`, exp, got) +} |
