diff --git a/internal/resolver/resolver_test.go b/internal/resolver/resolver_test.go index 1e33837a9..11b636d60 100644 --- a/internal/resolver/resolver_test.go +++ b/internal/resolver/resolver_test.go @@ -137,9 +137,22 @@ func TestResolve(t *testing.T) { }, err: true, }, + { + name: "charts with same name but different repo", + req: []*chart.Dependency{ + {Name: "alpine", Repository: "repository-1", Version: "0.1.0"}, + {Name: "alpine", Repository: "repository-2", Version: "0.3.0", Alias: "alpine-alias"}, + }, + expect: &chart.Lock{ + Dependencies: []*chart.Dependency{ + {Name: "alpine", Repository: "repository-1", Version: "0.1.0"}, + {Name: "alpine", Repository: "repository-2", Version: "0.3.0"}, + }, + }, + }, } - repoNames := map[string]string{"alpine": "kubernetes-charts", "redis": "kubernetes-charts"} + repoNames := map[string]string{"alpine": "repository-1", "redis": "repository-1", "alpine-alias": "repository-2"} registryClient, _ := registry.NewClient() r := New("testdata/chartpath", "testdata/repository", registryClient) for _, tt := range tests { diff --git a/internal/resolver/testdata/repository/kubernetes-charts-index.yaml b/internal/resolver/testdata/repository/repository-1-index.yaml similarity index 100% rename from internal/resolver/testdata/repository/kubernetes-charts-index.yaml rename to internal/resolver/testdata/repository/repository-1-index.yaml diff --git a/internal/resolver/testdata/repository/repository-2-index.yaml b/internal/resolver/testdata/repository/repository-2-index.yaml new file mode 100644 index 000000000..daa3591bb --- /dev/null +++ b/internal/resolver/testdata/repository/repository-2-index.yaml @@ -0,0 +1,16 @@ +apiVersion: v1 +entries: + alpine: + - name: alpine + urls: + - https://charts.helm.sh/stable/alpine-0.1.0.tgz + checksum: 0e6661f193211d7a5206918d42f5c2a9470b737d + home: https://helm.sh/helm + sources: + - https://github.com/helm/helm + version: 0.3.0 + description: Deploy a basic Alpine Linux pod + keywords: [] + maintainers: [] + icon: "" + apiVersion: v2