Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

gitindex: include environ for git tests #760

Merged
merged 2 commits into from
Apr 21, 2024
Merged
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
27 changes: 13 additions & 14 deletions gitindex/index_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -526,16 +526,13 @@ func TestIndexDeltaBasic(t *testing.T) {
repositoryDir := t.TempDir()

// setup: initialize the repository and all of its branches
runGitScript := func(t *testing.T, dir, script string) {
runScript(t, dir, script, "GIT_CONFIG_GLOBAL=", "GIT_CONFIG_SYSTEM=")
}
runGitScript(t, repositoryDir, "git init -b master")
runGitScript(t, repositoryDir, fmt.Sprintf("git config user.email %q", "[email protected]"))
runGitScript(t, repositoryDir, fmt.Sprintf("git config user.name %q", "Your Name"))
runScript(t, repositoryDir, "git init -b master")
runScript(t, repositoryDir, fmt.Sprintf("git config user.email %q", "[email protected]"))
runScript(t, repositoryDir, fmt.Sprintf("git config user.name %q", "Your Name"))

for _, b := range test.branches {
runGitScript(t, repositoryDir, fmt.Sprintf("git checkout -b %q", b))
runGitScript(t, repositoryDir, fmt.Sprintf("git commit --allow-empty -m %q", "empty commit"))
runScript(t, repositoryDir, fmt.Sprintf("git checkout -b %q", b))
runScript(t, repositoryDir, fmt.Sprintf("git commit --allow-empty -m %q", "empty commit"))
}

for _, step := range test.steps {
Expand All @@ -545,7 +542,7 @@ func TestIndexDeltaBasic(t *testing.T) {

hadChange := false

runGitScript(t, repositoryDir, fmt.Sprintf("git checkout %q", b))
runScript(t, repositoryDir, fmt.Sprintf("git checkout %q", b))

for _, d := range step.deletedDocuments[b] {
hadChange = true
Expand All @@ -557,7 +554,7 @@ func TestIndexDeltaBasic(t *testing.T) {
t.Fatalf("deleting file %q: %s", d.Name, err)
}

runGitScript(t, repositoryDir, fmt.Sprintf("git add %q", file))
runScript(t, repositoryDir, fmt.Sprintf("git add %q", file))
}

for _, d := range step.addedDocuments[b] {
Expand All @@ -575,14 +572,14 @@ func TestIndexDeltaBasic(t *testing.T) {
t.Fatalf("writing file %q: %s", d.Name, err)
}

runGitScript(t, repositoryDir, fmt.Sprintf("git add %q", file))
runScript(t, repositoryDir, fmt.Sprintf("git add %q", file))
}

if !hadChange {
continue
}

runGitScript(t, repositoryDir, fmt.Sprintf("git commit -m %q", step.name))
runScript(t, repositoryDir, fmt.Sprintf("git commit -m %q", step.name))
}

// setup: prepare indexOptions with given overrides
Expand Down Expand Up @@ -755,15 +752,17 @@ func TestRepoPathRanks(t *testing.T) {
}
}

func runScript(t *testing.T, cwd string, script string, env ...string) {
func runScript(t *testing.T, cwd string, script string) {
t.Helper()

err := os.MkdirAll(cwd, 0o755)
if err != nil {
t.Fatalf("ensuring path %q exists: %s", cwd, err)
}

cmd := exec.Command("sh", "-euxc", script)
cmd.Dir = cwd
cmd.Env = env
cmd.Env = append([]string{"GIT_CONFIG_GLOBAL=", "GIT_CONFIG_SYSTEM="}, os.Environ()...)

if out, err := cmd.CombinedOutput(); err != nil {
t.Fatalf("execution error: %v, output %s", err, out)
Expand Down
Loading