1package commands
2
3import (
4 "bytes"
5 "testing"
6
7 "github.com/MichaelMure/git-bug/cache"
8 "github.com/MichaelMure/git-bug/repository"
9 "github.com/stretchr/testify/require"
10)
11
12type testEnv struct {
13 env *Env
14 out *bytes.Buffer
15}
16
17func newTestEnv(t *testing.T) *testEnv {
18 t.Helper()
19
20 repo := repository.CreateGoGitTestRepo(t, false)
21
22 buf := new(bytes.Buffer)
23
24 backend, stderr := cache.NewTestRepoCache(t, repo)
25 t.Cleanup(func() {
26 backend.Close()
27
28 require.Empty(t, stderr.String())
29 })
30
31 return &testEnv{
32 env: &Env{
33 repo: repo,
34 backend: backend,
35 out: out{Writer: buf},
36 err: out{Writer: buf},
37 },
38 out: buf,
39 }
40}