[gitfame] Test that HEAD is not modified.

This commit is contained in:
Arseny Balobanov 2021-03-03 01:18:30 +03:00
parent 1a6de3a37b
commit 976cc94007

View file

@ -51,6 +51,7 @@ func TestGitFame(t *testing.T) {
args = append(args, tc.Args...) args = append(args, tc.Args...)
Unbundle(t, filepath.Join(bundlesDir, tc.Bundle), dir) Unbundle(t, filepath.Join(bundlesDir, tc.Bundle), dir)
headRef := GetHEADRef(t)
cmd := exec.Command(binary, args...) cmd := exec.Command(binary, args...)
cmd.Stderr = ioutil.Discard cmd.Stderr = ioutil.Discard
@ -59,6 +60,8 @@ func TestGitFame(t *testing.T) {
if !tc.Error { if !tc.Error {
require.NoError(t, err) require.NoError(t, err)
CompareResults(t, tc.Expected, output, tc.Format) CompareResults(t, tc.Expected, output, tc.Format)
newHEADRef := GetHEADRef(t)
require.Equal(t, headRef, newHEADRef)
} else { } else {
require.Error(t, err) require.Error(t, err)
_, ok := err.(*exec.ExitError) _, ok := err.(*exec.ExitError)
@ -174,3 +177,13 @@ func CompareJSONLines(t *testing.T, expected, actual []byte) {
func ParseJSONLines(data []byte) [][]byte { func ParseJSONLines(data []byte) [][]byte {
return bytes.Split(bytes.TrimSpace(data), []byte("\n")) return bytes.Split(bytes.TrimSpace(data), []byte("\n"))
} }
func GetHEADRef(t *testing.T) string {
t.Helper()
cmd := exec.Command("git", "show-ref", "HEAD")
out, err := cmd.Output()
require.NoError(t, err)
return string(out)
}