fix: Fix the panic when ssh remote lfs endpoint parsing failure (#38026) (#38158)

Fix #38016
Backport #38026
This commit is contained in:
Lunny Xiao
2026-06-18 01:34:58 -07:00
committed by GitHub
parent 6fb96fcfdf
commit 0b9623e188
7 changed files with 74 additions and 12 deletions
+13 -2
View File
@@ -12,10 +12,21 @@ import (
func TestNewClient(t *testing.T) {
u, _ := url.Parse("file:///test")
c := NewClient(u, nil)
c := newClient(u, nil)
assert.IsType(t, &FilesystemClient{}, c)
u, _ = url.Parse("https://test.com/lfs")
c = NewClient(u, nil)
c = newClient(u, nil)
assert.IsType(t, &HTTPClient{}, c)
}
func TestNewClientFromEndpoint(t *testing.T) {
client, err := NewClientFromEndpoint("ssh://git@example.com/owner/repo.git", "", nil)
assert.NoError(t, err)
assert.NotNil(t, client)
client, err = NewClientFromEndpoint("ftp://example.com/owner/repo.git", "", nil)
assert.Nil(t, client)
assert.Error(t, err)
assert.Contains(t, err.Error(), "unable to determine LFS endpoint")
}