From f5d668ec33e0bdc5c11eba3726a7fa3ee0b8262a Mon Sep 17 00:00:00 2001 From: Sophie Wigmore Date: Mon, 31 Jan 2022 11:52:34 -0500 Subject: [PATCH] replace ioutil package calls with os --- build_test.go | 13 ++++++------- buildpack_yml_parser_test.go | 5 ++--- gemfile_lock_parser_test.go | 5 ++--- integration/reuse_layer_rebuild_test.go | 19 ++++--------------- version_shimmer.go | 3 +-- version_shimmer_test.go | 19 +++++++++---------- 6 files changed, 24 insertions(+), 40 deletions(-) diff --git a/build_test.go b/build_test.go index 54275327..eb8b3bfb 100644 --- a/build_test.go +++ b/build_test.go @@ -3,7 +3,6 @@ package bundler_test import ( "bytes" "errors" - "io/ioutil" "os" "path/filepath" "testing" @@ -42,13 +41,13 @@ func testBuild(t *testing.T, context spec.G, it spec.S) { it.Before(func() { var err error - layersDir, err = ioutil.TempDir("", "layers") + layersDir, err = os.MkdirTemp("", "layers") Expect(err).NotTo(HaveOccurred()) - cnbDir, err = ioutil.TempDir("", "cnb") + cnbDir, err = os.MkdirTemp("", "cnb") Expect(err).NotTo(HaveOccurred()) - err = ioutil.WriteFile(filepath.Join(cnbDir, "buildpack.toml"), []byte(`api = "0.2" + err = os.WriteFile(filepath.Join(cnbDir, "buildpack.toml"), []byte(`api = "0.2" [buildpack] id = "org.some-org.some-buildpack" name = "Some Buildpack" @@ -268,7 +267,7 @@ func testBuild(t *testing.T, context spec.G, it spec.S) { it.Before(func() { var err error - workingDir, err = ioutil.TempDir("", "working-dir") + workingDir, err = os.MkdirTemp("", "working-dir") Expect(err).NotTo(HaveOccurred()) entryResolver.ResolveCall.Returns.BuildpackPlanEntry = packit.BuildpackPlanEntry{ @@ -353,7 +352,7 @@ func testBuild(t *testing.T, context spec.G, it spec.S) { it.Before(func() { var err error - workingDir, err = ioutil.TempDir("", "working-dir") + workingDir, err = os.MkdirTemp("", "working-dir") Expect(err).NotTo(HaveOccurred()) entryResolver.ResolveCall.Returns.BuildpackPlanEntry = packit.BuildpackPlanEntry{ @@ -437,7 +436,7 @@ func testBuild(t *testing.T, context spec.G, it spec.S) { entryResolver.MergeLayerTypesCall.Returns.Launch = false entryResolver.MergeLayerTypesCall.Returns.Build = true - err := ioutil.WriteFile(filepath.Join(layersDir, "bundler.toml"), []byte("[metadata]\ndependency-sha = \"some-sha\"\n"), 0600) + err := os.WriteFile(filepath.Join(layersDir, "bundler.toml"), []byte("[metadata]\ndependency-sha = \"some-sha\"\n"), 0600) Expect(err).NotTo(HaveOccurred()) dependencyManager.ResolveCall.Returns.Dependency = postal.Dependency{ diff --git a/buildpack_yml_parser_test.go b/buildpack_yml_parser_test.go index d696df2c..d8118e57 100644 --- a/buildpack_yml_parser_test.go +++ b/buildpack_yml_parser_test.go @@ -1,7 +1,6 @@ package bundler_test import ( - "io/ioutil" "os" "testing" @@ -20,7 +19,7 @@ func testBuildpackYMLParser(t *testing.T, context spec.G, it spec.S) { ) it.Before(func() { - file, err := ioutil.TempFile("", "buildpack.yml") + file, err := os.CreateTemp("", "buildpack.yml") Expect(err).NotTo(HaveOccurred()) defer file.Close() @@ -76,7 +75,7 @@ bundler: context("when the contents of the buildpack.yml file are malformed", func() { it.Before(func() { - err := ioutil.WriteFile(path, []byte("%%%"), 0644) + err := os.WriteFile(path, []byte("%%%"), 0644) Expect(err).NotTo(HaveOccurred()) }) diff --git a/gemfile_lock_parser_test.go b/gemfile_lock_parser_test.go index e4c671a0..0a01810f 100644 --- a/gemfile_lock_parser_test.go +++ b/gemfile_lock_parser_test.go @@ -1,7 +1,6 @@ package bundler_test import ( - "io/ioutil" "os" "testing" @@ -20,7 +19,7 @@ func testGemfileLockParser(t *testing.T, context spec.G, it spec.S) { ) it.Before(func() { - file, err := ioutil.TempFile("", "Gemfile.lock") + file, err := os.CreateTemp("", "Gemfile.lock") Expect(err).NotTo(HaveOccurred()) defer file.Close() @@ -83,7 +82,7 @@ BUNDLED WITH context("when the bundler version is not valid semver", func() { it.Before(func() { - err := ioutil.WriteFile(path, []byte(`GEM + err := os.WriteFile(path, []byte(`GEM remote: https://rubygems.org/ specs: diff --git a/integration/reuse_layer_rebuild_test.go b/integration/reuse_layer_rebuild_test.go index 2fee00e4..6252da36 100644 --- a/integration/reuse_layer_rebuild_test.go +++ b/integration/reuse_layer_rebuild_test.go @@ -2,8 +2,6 @@ package integration_test import ( "fmt" - "io/ioutil" - "net/http" "os" "path/filepath" "regexp" @@ -153,16 +151,8 @@ func testReusingLayerRebuild(t *testing.T, context spec.G, it spec.S) { containerIDs[secondContainer.ID] = struct{}{} Eventually(secondContainer).Should(BeAvailable()) - - response, err := http.Get(fmt.Sprintf("http://localhost:%s", secondContainer.HostPort("8080"))) - Expect(err).NotTo(HaveOccurred()) - Expect(response.StatusCode).To(Equal(http.StatusOK)) - - content, err := ioutil.ReadAll(response.Body) - Expect(err).NotTo(HaveOccurred()) - - Expect(string(content)).To(ContainSubstring(fmt.Sprintf("/layers/%s/bundler/bin/bundler", strings.ReplaceAll(settings.Buildpack.ID, "/", "_")))) - Expect(string(content)).To(MatchRegexp(`Bundler version 2\.\d+\.\d+`)) + Eventually(secondContainer).Should(Serve(ContainSubstring(fmt.Sprintf("/layers/%s/bundler/bin/bundler", strings.ReplaceAll(settings.Buildpack.ID, "/", "_")))).OnPort(8080)) + Eventually(secondContainer).Should(Serve(MatchRegexp(`Bundler version 2\.\d+\.\d+`))) Expect(secondImage.Buildpacks[1].Layers["bundler"].Metadata["built_at"]).To(Equal(firstImage.Buildpacks[1].Layers["bundler"].Metadata["built_at"])) }) @@ -232,11 +222,11 @@ func testReusingLayerRebuild(t *testing.T, context spec.G, it spec.S) { Eventually(firstContainer).Should(BeAvailable()) - contents, err := ioutil.ReadFile(filepath.Join(source, "Gemfile.lock")) + contents, err := os.ReadFile(filepath.Join(source, "Gemfile.lock")) Expect(err).NotTo(HaveOccurred()) re := regexp.MustCompile(`BUNDLED WITH\s+\d+\.\d+\.\d+`) - err = ioutil.WriteFile(filepath.Join(source, "Gemfile.lock"), re.ReplaceAll(contents, []byte("BUNDLED WITH\n 2.1.4")), 0644) + err = os.WriteFile(filepath.Join(source, "Gemfile.lock"), re.ReplaceAll(contents, []byte("BUNDLED WITH\n 2.1.4")), 0644) Expect(err).NotTo(HaveOccurred()) // Second pack build @@ -279,7 +269,6 @@ func testReusingLayerRebuild(t *testing.T, context spec.G, it spec.S) { containerIDs[secondContainer.ID] = struct{}{} - Eventually(secondContainer).Should(BeAvailable()) Eventually(secondContainer).Should(Serve(ContainSubstring(fmt.Sprintf("/layers/%s/bundler/bin/bundler", strings.ReplaceAll(settings.Buildpack.ID, "/", "_")))).OnPort(8080)) Eventually(secondContainer).Should(Serve(MatchRegexp(`Bundler version 2\.\d+\.\d+`)).OnPort(8080)) diff --git a/version_shimmer.go b/version_shimmer.go index 430ade19..8412e0d1 100644 --- a/version_shimmer.go +++ b/version_shimmer.go @@ -2,7 +2,6 @@ package bundler import ( "fmt" - "io/ioutil" "os" "path/filepath" @@ -50,7 +49,7 @@ func (s VersionShimmer) Shim(dir, version string) error { content := fmt.Sprintf(VersionShimTemplate, original, version) - err = ioutil.WriteFile(file, []byte(content), 0755) + err = os.WriteFile(file, []byte(content), 0755) if err != nil { return fmt.Errorf("failed to rewrite bundler executables: %w", err) } diff --git a/version_shimmer_test.go b/version_shimmer_test.go index c2f2daea..b15307f7 100644 --- a/version_shimmer_test.go +++ b/version_shimmer_test.go @@ -2,7 +2,6 @@ package bundler_test import ( "fmt" - "io/ioutil" "os" "path/filepath" "testing" @@ -23,16 +22,16 @@ func testVersionShimmer(t *testing.T, context spec.G, it spec.S) { it.Before(func() { var err error - dir, err = ioutil.TempDir("", "bin") + dir, err = os.MkdirTemp("", "bin") Expect(err).NotTo(HaveOccurred()) - err = ioutil.WriteFile(filepath.Join(dir, "first"), []byte("first"), 0755) + err = os.WriteFile(filepath.Join(dir, "first"), []byte("first"), 0755) Expect(err).NotTo(HaveOccurred()) - err = ioutil.WriteFile(filepath.Join(dir, "second"), []byte("second"), 0755) + err = os.WriteFile(filepath.Join(dir, "second"), []byte("second"), 0755) Expect(err).NotTo(HaveOccurred()) - err = ioutil.WriteFile(filepath.Join(dir, "third"), []byte("third"), 0644) + err = os.WriteFile(filepath.Join(dir, "third"), []byte("third"), 0644) Expect(err).NotTo(HaveOccurred()) err = os.Mkdir(filepath.Join(dir, "fourth"), os.ModePerm) @@ -66,7 +65,7 @@ func testVersionShimmer(t *testing.T, context spec.G, it spec.S) { Expect(err).NotTo(HaveOccurred()) defer first.Close() - content, err := ioutil.ReadAll(first) + content, err := os.ReadFile(first.Name()) Expect(err).NotTo(HaveOccurred()) Expect(string(content)).To(Equal("first")) @@ -78,7 +77,7 @@ func testVersionShimmer(t *testing.T, context spec.G, it spec.S) { Expect(err).NotTo(HaveOccurred()) defer firstShim.Close() - content, err = ioutil.ReadAll(firstShim) + content, err = os.ReadFile(firstShim.Name()) Expect(err).NotTo(HaveOccurred()) Expect(string(content)).To(Equal(fmt.Sprintf("#!/usr/bin/env sh\nexec %s _some-version_ ${@:-}", filepath.Join(dir, "_first")))) @@ -90,7 +89,7 @@ func testVersionShimmer(t *testing.T, context spec.G, it spec.S) { Expect(err).NotTo(HaveOccurred()) defer second.Close() - content, err = ioutil.ReadAll(second) + content, err = os.ReadFile(second.Name()) Expect(err).NotTo(HaveOccurred()) Expect(string(content)).To(Equal("second")) @@ -102,7 +101,7 @@ func testVersionShimmer(t *testing.T, context spec.G, it spec.S) { Expect(err).NotTo(HaveOccurred()) defer secondShim.Close() - content, err = ioutil.ReadAll(secondShim) + content, err = os.ReadFile(secondShim.Name()) Expect(err).NotTo(HaveOccurred()) Expect(string(content)).To(Equal(fmt.Sprintf("#!/usr/bin/env sh\nexec %s _some-version_ ${@:-}", filepath.Join(dir, "_second")))) @@ -114,7 +113,7 @@ func testVersionShimmer(t *testing.T, context spec.G, it spec.S) { Expect(err).NotTo(HaveOccurred()) defer third.Close() - content, err = ioutil.ReadAll(third) + content, err = os.ReadFile(third.Name()) Expect(err).NotTo(HaveOccurred()) Expect(string(content)).To(Equal("third"))