MCPcopy Create free account
hub / github.com/cli/cli / TestUpdateBranchInSingleWorktreeRepository

Function TestUpdateBranchInSingleWorktreeRepository

pkg/cmd/repo/sync/sync_test.go:223–247  ·  view source on GitHub ↗
(t *testing.T)

Source from the content-addressed store, hash-verified

221}
222
223func TestUpdateBranchInSingleWorktreeRepository(t *testing.T) {
224 git.IsolateConfig(t)
225
226 repoDir := t.TempDir()
227
228 runGit(t, repoDir, "init", "--quiet", "--initial-branch=trunk")
229 runGit(t, repoDir, "config", "user.name", "Test User")
230 runGit(t, repoDir, "config", "user.email", "test@example.com")
231 require.NoError(t, os.WriteFile(filepath.Join(repoDir, "file.txt"), []byte("old\n"), 0o600))
232 runGit(t, repoDir, "add", "file.txt")
233 runGit(t, repoDir, "commit", "--quiet", "--message=initial")
234 runGit(t, repoDir, "switch", "--quiet", "--create", "test")
235 require.NoError(t, os.WriteFile(filepath.Join(repoDir, "file.txt"), []byte("new\n"), 0o600))
236 runGit(t, repoDir, "commit", "--quiet", "--all", "--message=upstream")
237 runGit(t, repoDir, "fetch", "--quiet", ".", "test")
238
239 gitClient := &git.Client{RepoDir: repoDir}
240 executer := &gitExecuter{client: gitClient}
241
242 err := executer.UpdateBranch("trunk", "FETCH_HEAD")
243 require.NoError(t, err)
244 require.Equal(t, runGit(t, repoDir, "rev-parse", "FETCH_HEAD"), runGit(t, repoDir, "rev-parse", "trunk"))
245 require.Equal(t, "test", runGit(t, repoDir, "branch", "--show-current"))
246 require.Empty(t, runGit(t, repoDir, "status", "--porcelain"))
247}
248
249func runGit(t *testing.T, repoDir string, args ...string) string {
250 t.Helper()

Callers

nothing calls this directly

Calls 6

UpdateBranchMethod · 0.95
IsolateConfigFunction · 0.92
runGitFunction · 0.85
JoinMethod · 0.80
EqualMethod · 0.80
EmptyMethod · 0.80

Tested by

no test coverage detected