Skip to content

Commit a2e7eaf

Browse files
author
vilmibm
committed
test update available for binary ext in list
1 parent ef08712 commit a2e7eaf

File tree

1 file changed

+38
-0
lines changed

1 file changed

+38
-0
lines changed

pkg/cmd/extension/manager_test.go

Lines changed: 38 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -76,6 +76,44 @@ func TestManager_List(t *testing.T) {
7676
assert.Equal(t, "two", exts[2].Name())
7777
}
7878

79+
func TestManager_List_binary_update(t *testing.T) {
80+
tempDir := t.TempDir()
81+
82+
assert.NoError(t, stubBinaryExtension(
83+
filepath.Join(tempDir, "extensions", "gh-bin-ext"),
84+
binManifest{
85+
Owner: "owner",
86+
Name: "gh-bin-ext",
87+
Host: "example.com",
88+
Tag: "v1.0.1",
89+
}))
90+
91+
reg := httpmock.Registry{}
92+
defer reg.Verify(t)
93+
client := http.Client{Transport: &reg}
94+
95+
reg.Register(
96+
httpmock.REST("GET", "api/v3/repos/owner/gh-bin-ext/releases/latest"),
97+
httpmock.JSONResponse(
98+
release{
99+
Tag: "v1.0.2",
100+
Assets: []releaseAsset{
101+
{
102+
Name: "gh-bin-ext-windows-amd64",
103+
APIURL: "https://example.com/release/cool2",
104+
},
105+
},
106+
}))
107+
108+
m := newTestManager(tempDir, &client, nil)
109+
110+
exts := m.List(true)
111+
assert.Equal(t, 1, len(exts))
112+
assert.Equal(t, "bin-ext", exts[0].Name())
113+
assert.True(t, exts[0].UpdateAvailable())
114+
assert.Equal(t, "https://example.com/owner/gh-bin-ext", exts[0].URL())
115+
}
116+
79117
func TestManager_Dispatch(t *testing.T) {
80118
tempDir := t.TempDir()
81119
extPath := filepath.Join(tempDir, "extensions", "gh-hello", "gh-hello")

0 commit comments

Comments
 (0)