Skip to content

Commit cc71517

Browse files
committed
tests: ensure proper garbage collection
- Ensure the proper path is garbage collected for libgit2 repositories, as the `Path` method on the repository object returns the `.git` directory, and not the root path. - Ensure the Helm test server does not get swapped during tests, with as side-effect that no obsolete temporary directories remain. Signed-off-by: Hidde Beydals <hello@hidde.co>
1 parent 448d5e7 commit cc71517

File tree

3 files changed

+18
-13
lines changed

3 files changed

+18
-13
lines changed

controllers/helmchart_controller_test.go

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -79,8 +79,8 @@ var _ = Describe("HelmChartReconciler", func() {
7979
})
8080

8181
AfterEach(func() {
82-
os.RemoveAll(helmServer.Root())
8382
helmServer.Stop()
83+
os.RemoveAll(helmServer.Root())
8484

8585
err = k8sClient.Delete(context.Background(), namespace)
8686
Expect(err).NotTo(HaveOccurred(), "failed to delete test namespace")
@@ -995,8 +995,8 @@ var _ = Describe("HelmChartReconciler", func() {
995995
gitServer.StopHTTP()
996996
os.RemoveAll(gitServer.Root())
997997

998-
os.RemoveAll(helmServer.Root())
999998
helmServer.Stop()
999+
os.RemoveAll(helmServer.Root())
10001000

10011001
err = k8sClient.Delete(context.Background(), namespace)
10021002
Expect(err).NotTo(HaveOccurred(), "failed to delete test namespace")

controllers/helmrepository_controller_test.go

Lines changed: 1 addition & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -64,8 +64,8 @@ var _ = Describe("HelmRepositoryReconciler", func() {
6464
})
6565

6666
AfterEach(func() {
67-
os.RemoveAll(helmServer.Root())
6867
helmServer.Stop()
68+
os.RemoveAll(helmServer.Root())
6969

7070
Eventually(func() error {
7171
return k8sClient.Delete(context.Background(), namespace)
@@ -207,9 +207,6 @@ var _ = Describe("HelmRepositoryReconciler", func() {
207207
})
208208

209209
It("Authenticates when basic auth credentials are provided", func() {
210-
helmServer, err = helmtestserver.NewTempHelmServer()
211-
Expect(err).NotTo(HaveOccurred())
212-
213210
var username, password = "john", "doe"
214211
helmServer.WithMiddleware(func(handler http.Handler) http.Handler {
215212
return http.HandlerFunc(func(w http.ResponseWriter, r *http.Request) {
@@ -221,8 +218,6 @@ var _ = Describe("HelmRepositoryReconciler", func() {
221218
handler.ServeHTTP(w, r)
222219
})
223220
})
224-
defer os.RemoveAll(helmServer.Root())
225-
defer helmServer.Stop()
226221
helmServer.Start()
227222

228223
Expect(helmServer.PackageChart(path.Join("testdata/charts/helmchart"))).Should(Succeed())

pkg/git/libgit2/checkout_test.go

Lines changed: 15 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -34,6 +34,8 @@ func TestCheckoutBranch_Checkout(t *testing.T) {
3434
if err != nil {
3535
t.Fatal(err)
3636
}
37+
defer repo.Free()
38+
defer os.RemoveAll(filepath.Join(repo.Path(), ".."))
3739

3840
firstCommit, err := commitFile(repo, "branch", "init", time.Now())
3941
if err != nil {
@@ -131,6 +133,8 @@ func TestCheckoutTag_Checkout(t *testing.T) {
131133
if err != nil {
132134
t.Fatal(err)
133135
}
136+
defer repo.Free()
137+
defer os.RemoveAll(filepath.Join(repo.Path(), ".."))
134138

135139
var commit *git2go.Commit
136140
if tt.tag != "" {
@@ -177,7 +181,7 @@ func TestCheckoutCommit_Checkout(t *testing.T) {
177181
t.Fatal(err)
178182
}
179183
defer repo.Free()
180-
defer os.RemoveAll(repo.Path())
184+
defer os.RemoveAll(filepath.Join(repo.Path(), ".."))
181185

182186
c, err := commitFile(repo, "commit", "init", time.Now())
183187
if err != nil {
@@ -190,7 +194,10 @@ func TestCheckoutCommit_Checkout(t *testing.T) {
190194
commit := CheckoutCommit{
191195
Commit: c.String(),
192196
}
193-
tmpDir, _ := os.MkdirTemp("", "git2go")
197+
tmpDir, err := os.MkdirTemp("", "git2go")
198+
if err != nil {
199+
t.Fatal(err)
200+
}
194201
defer os.RemoveAll(tmpDir)
195202

196203
cc, err := commit.Checkout(context.TODO(), tmpDir, repo.Path(), nil)
@@ -203,8 +210,11 @@ func TestCheckoutCommit_Checkout(t *testing.T) {
203210
commit = CheckoutCommit{
204211
Commit: "4dc3185c5fc94eb75048376edeb44571cece25f4",
205212
}
206-
tmpDir2, _ := os.MkdirTemp("", "git2go")
207-
defer os.RemoveAll(tmpDir)
213+
tmpDir2, err := os.MkdirTemp("", "git2go")
214+
if err != nil {
215+
t.Fatal(err)
216+
}
217+
defer os.RemoveAll(tmpDir2)
208218

209219
cc, err = commit.Checkout(context.TODO(), tmpDir2, repo.Path(), nil)
210220
g.Expect(err).To(HaveOccurred())
@@ -279,7 +289,7 @@ func TestCheckoutTagSemVer_Checkout(t *testing.T) {
279289
t.Fatal(err)
280290
}
281291
defer repo.Free()
282-
defer os.RemoveAll(repo.Path())
292+
defer os.RemoveAll(filepath.Join(repo.Path(), ".."))
283293

284294
refs := make(map[string]string, len(tags))
285295
for _, tt := range tags {

0 commit comments

Comments
 (0)