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

Function TestManager_UpgradeExtension_GitExtension

pkg/cmd/extension/manager_test.go:431–455  ·  view source on GitHub ↗
(t *testing.T)

Source from the content-addressed store, hash-verified

429}
430
431func TestManager_UpgradeExtension_GitExtension(t *testing.T) {
432 dataDir := t.TempDir()
433 updateDir := t.TempDir()
434 extensionDir := filepath.Join(dataDir, "extensions", "gh-remote")
435 assert.NoError(t, stubExtension(filepath.Join(dataDir, "extensions", "gh-remote", "gh-remote")))
436 ios, _, stdout, stderr := iostreams.Test()
437 gc, gcOne := &mockGitClient{}, &mockGitClient{}
438 gc.On("ForRepo", extensionDir).Return(gcOne).Times(3)
439 gcOne.On("Remotes").Return(nil, nil).Once()
440 gcOne.On("Pull", "", "").Return(nil).Once()
441
442 m := newTestManager(dataDir, updateDir, nil, gc, ios)
443 exts, err := m.list(false)
444 assert.NoError(t, err)
445 assert.Equal(t, 1, len(exts))
446 ext := exts[0]
447 ext.currentVersion = "old version"
448 ext.latestVersion = "new version"
449 err = m.upgradeExtension(ext, false)
450 assert.NoError(t, err)
451 assert.Equal(t, "", stdout.String())
452 assert.Equal(t, "", stderr.String())
453 gc.AssertExpectations(t)
454 gcOne.AssertExpectations(t)
455}
456
457func TestManager_UpgradeExtension_GitExtension_DryRun(t *testing.T) {
458 dataDir := t.TempDir()

Callers

nothing calls this directly

Calls 8

TestFunction · 0.92
stubExtensionFunction · 0.85
newTestManagerFunction · 0.85
JoinMethod · 0.80
listMethod · 0.80
EqualMethod · 0.80
upgradeExtensionMethod · 0.80
StringMethod · 0.65

Tested by

no test coverage detected