mirror of
https://github.com/lukaszraczylo/harness-sync.git
synced 2026-10-12 00:45:22 +00:00
44 lines
1.0 KiB
Go
44 lines
1.0 KiB
Go
package gitx
|
|
|
|
import (
|
|
"os"
|
|
"path/filepath"
|
|
"testing"
|
|
|
|
"github.com/stretchr/testify/assert"
|
|
"github.com/stretchr/testify/require"
|
|
)
|
|
|
|
func TestInitAddCommit(t *testing.T) {
|
|
dir := t.TempDir()
|
|
r := New(dir)
|
|
|
|
require.NoError(t, r.Init())
|
|
require.NoError(t, r.Configure("nobody", "[email protected]"))
|
|
|
|
require.NoError(t, os.WriteFile(filepath.Join(dir, "a.txt"), []byte("hi"), 0o600))
|
|
require.NoError(t, r.AddAll())
|
|
require.NoError(t, r.Commit("initial"))
|
|
|
|
head, err := r.HeadCommit()
|
|
require.NoError(t, err)
|
|
assert.NotEmpty(t, head)
|
|
}
|
|
|
|
func TestShowFileAtHead(t *testing.T) {
|
|
dir := t.TempDir()
|
|
r := New(dir)
|
|
require.NoError(t, r.Init())
|
|
require.NoError(t, r.Configure("nobody", "[email protected]"))
|
|
require.NoError(t, os.WriteFile(filepath.Join(dir, "a.txt"), []byte("v1"), 0o600))
|
|
require.NoError(t, r.AddAll())
|
|
require.NoError(t, r.Commit("v1"))
|
|
|
|
body, err := r.ShowFileAtHead("a.txt")
|
|
require.NoError(t, err)
|
|
assert.Equal(t, "v1", string(body))
|
|
|
|
_, err = r.ShowFileAtHead("nope.txt")
|
|
assert.Error(t, err)
|
|
}
|