blob: 1bf0429aa8163dfde8995ca690bf8146c4ff6dd6 [file] [log] [blame]
package git
import (
"context"
"testing"
"github.com/stretchr/testify/require"
cipd_git "go.skia.org/infra/bazel/external/cipd/git"
"go.skia.org/infra/go/vfs/shared_tests"
)
func TestFS(t *testing.T) {
ctx := cipd_git.UseGitFinder(context.Background())
tmp := shared_tests.MakeTestFiles(t)
gd := GitDir(tmp)
_, err := gd.Git(ctx, "init")
require.NoError(t, err)
_, err = gd.Git(ctx, "add", ".")
require.NoError(t, err)
_, err = gd.Git(ctx, "commit", "-m", "initial commit")
require.NoError(t, err)
hash, err := gd.RevParse(ctx, "HEAD")
require.NoError(t, err)
fs, err := gd.VFS(ctx, hash)
require.NoError(t, err)
shared_tests.TestFS(ctx, t, fs)
}
func TestVFS_ReadOnly(t *testing.T) {
ctx := cipd_git.UseGitFinder(context.Background())
tmp := shared_tests.MakeTestFiles(t)
gd := GitDir(tmp)
_, err := gd.Git(ctx, "init")
require.NoError(t, err)
_, err = gd.Git(ctx, "add", ".")
require.NoError(t, err)
_, err = gd.Git(ctx, "commit", "-m", "initial commit")
require.NoError(t, err)
hash, err := gd.RevParse(ctx, "HEAD")
require.NoError(t, err)
fs, err := gd.VFS(ctx, hash)
require.NoError(t, err)
shared_tests.TestVFS_ReadOnly(t, fs)
}
// Skip the VFS tests which use Write, since that's unimplemented for this FS.