shithub: furgit

ref: cf02f2958c191bea02126faf8daf72a7aae76bd9
dir: /internal/testgit/repo_open_object_store.go/

View raw version
package testgit

import (
	"testing"

	"codeberg.org/lindenii/furgit/objectstore"
	"codeberg.org/lindenii/furgit/repository"
)

// OpenObjectStore opens the repository object store and registers cleanup on
// the caller.
//
//nolint:ireturn
func (testRepo *TestRepo) OpenObjectStore(tb testing.TB) objectstore.Store {
	tb.Helper()

	root := testRepo.OpenGitRoot(tb)

	repo, err := repository.Open(root)
	if err != nil {
		tb.Fatalf("repository.Open: %v", err)
	}

	tb.Cleanup(func() {
		_ = repo.Close()
	})

	return repo.Objects()
}