Skip to content

Commit 3f7e7bf

Browse files
committed
cli/command: remove deprecated io/ioutil and use t.TempDir()
Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
1 parent cca73bf commit 3f7e7bf

File tree

4 files changed

+20
-37
lines changed

4 files changed

+20
-37
lines changed

cli/command/cli.go

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,6 @@ package command
33
import (
44
"context"
55
"io"
6-
"io/ioutil"
76
"os"
87
"path/filepath"
98
"runtime"
@@ -275,7 +274,7 @@ func NewAPIClientFromFlags(opts *cliflags.CommonOptions, configFile *configfile.
275274
store := &ContextStoreWithDefault{
276275
Store: store.New(cliconfig.ContextStoreDir(), storeConfig),
277276
Resolver: func() (*DefaultContext, error) {
278-
return ResolveDefaultContext(opts, configFile, storeConfig, ioutil.Discard)
277+
return ResolveDefaultContext(opts, configFile, storeConfig, io.Discard)
279278
},
280279
}
281280
contextName, err := resolveContextName(opts, configFile, store)

cli/command/cli_test.go

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@ import (
44
"bytes"
55
"context"
66
"fmt"
7-
"io/ioutil"
7+
"io"
88
"net/http"
99
"net/http/httptest"
1010
"os"
@@ -225,23 +225,23 @@ func TestNewDockerCliAndOperators(t *testing.T) {
225225
outbuf := bytes.NewBuffer(nil)
226226
errbuf := bytes.NewBuffer(nil)
227227
err = cli.Apply(
228-
WithInputStream(ioutil.NopCloser(inbuf)),
228+
WithInputStream(io.NopCloser(inbuf)),
229229
WithOutputStream(outbuf),
230230
WithErrorStream(errbuf),
231231
)
232232
assert.NilError(t, err)
233233
// Check input stream
234-
inputStream, err := ioutil.ReadAll(cli.In())
234+
inputStream, err := io.ReadAll(cli.In())
235235
assert.NilError(t, err)
236236
assert.Equal(t, string(inputStream), "input")
237237
// Check output stream
238238
fmt.Fprintf(cli.Out(), "output")
239-
outputStream, err := ioutil.ReadAll(outbuf)
239+
outputStream, err := io.ReadAll(outbuf)
240240
assert.NilError(t, err)
241241
assert.Equal(t, string(outputStream), "output")
242242
// Check error stream
243243
fmt.Fprintf(cli.Err(), "error")
244-
errStream, err := ioutil.ReadAll(errbuf)
244+
errStream, err := io.ReadAll(errbuf)
245245
assert.NilError(t, err)
246246
assert.Equal(t, string(errStream), "error")
247247
}

cli/command/defaultcontextstore_test.go

Lines changed: 11 additions & 24 deletions
Original file line numberDiff line numberDiff line change
@@ -2,8 +2,6 @@ package command
22

33
import (
44
"crypto/rand"
5-
"io/ioutil"
6-
"os"
75
"testing"
86

97
"github.com/docker/cli/cli/config/configfile"
@@ -39,21 +37,17 @@ func testDefaultMetadata() store.Metadata {
3937
}
4038
}
4139

42-
func testStore(t *testing.T, meta store.Metadata, tls store.ContextTLSData) (store.Store, func()) {
43-
testDir, err := ioutil.TempDir("", t.Name())
44-
assert.NilError(t, err)
45-
s := &ContextStoreWithDefault{
46-
Store: store.New(testDir, testCfg),
40+
func testStore(t *testing.T, meta store.Metadata, tls store.ContextTLSData) store.Store {
41+
t.Helper()
42+
return &ContextStoreWithDefault{
43+
Store: store.New(t.TempDir(), testCfg),
4744
Resolver: func() (*DefaultContext, error) {
4845
return &DefaultContext{
4946
Meta: meta,
5047
TLS: tls,
5148
}, nil
5249
},
5350
}
54-
return s, func() {
55-
_ = os.RemoveAll(testDir)
56-
}
5751
}
5852

5953
func TestDefaultContextInitializer(t *testing.T) {
@@ -78,7 +72,7 @@ func TestExportDefaultImport(t *testing.T) {
7872
rand.Read(file1)
7973
file2 := make([]byte, 3700)
8074
rand.Read(file2)
81-
s, cleanup := testStore(t, testDefaultMetadata(), store.ContextTLSData{
75+
s := testStore(t, testDefaultMetadata(), store.ContextTLSData{
8276
Endpoints: map[string]store.EndpointTLSData{
8377
"ep2": {
8478
Files: map[string][]byte{
@@ -88,7 +82,6 @@ func TestExportDefaultImport(t *testing.T) {
8882
},
8983
},
9084
})
91-
defer cleanup()
9285
r := store.Export("default", s)
9386
defer r.Close()
9487
err := store.Import("dest", s, r)
@@ -127,26 +120,23 @@ func TestExportDefaultImport(t *testing.T) {
127120

128121
func TestListDefaultContext(t *testing.T) {
129122
meta := testDefaultMetadata()
130-
s, cleanup := testStore(t, meta, store.ContextTLSData{})
131-
defer cleanup()
123+
s := testStore(t, meta, store.ContextTLSData{})
132124
result, err := s.List()
133125
assert.NilError(t, err)
134126
assert.Equal(t, 1, len(result))
135127
assert.DeepEqual(t, meta, result[0])
136128
}
137129

138130
func TestGetDefaultContextStorageInfo(t *testing.T) {
139-
s, cleanup := testStore(t, testDefaultMetadata(), store.ContextTLSData{})
140-
defer cleanup()
131+
s := testStore(t, testDefaultMetadata(), store.ContextTLSData{})
141132
result := s.GetStorageInfo(DefaultContextName)
142133
assert.Equal(t, "<IN MEMORY>", result.MetadataPath)
143134
assert.Equal(t, "<IN MEMORY>", result.TLSPath)
144135
}
145136

146137
func TestGetDefaultContextMetadata(t *testing.T) {
147138
meta := testDefaultMetadata()
148-
s, cleanup := testStore(t, meta, store.ContextTLSData{})
149-
defer cleanup()
139+
s := testStore(t, meta, store.ContextTLSData{})
150140
result, err := s.GetMetadata(DefaultContextName)
151141
assert.NilError(t, err)
152142
assert.Equal(t, DefaultContextName, result.Name)
@@ -156,8 +146,7 @@ func TestGetDefaultContextMetadata(t *testing.T) {
156146

157147
func TestErrCreateDefault(t *testing.T) {
158148
meta := testDefaultMetadata()
159-
s, cleanup := testStore(t, meta, store.ContextTLSData{})
160-
defer cleanup()
149+
s := testStore(t, meta, store.ContextTLSData{})
161150
err := s.CreateOrUpdate(store.Metadata{
162151
Endpoints: map[string]interface{}{
163152
"ep1": endpoint{Foo: "bar"},
@@ -170,16 +159,14 @@ func TestErrCreateDefault(t *testing.T) {
170159

171160
func TestErrRemoveDefault(t *testing.T) {
172161
meta := testDefaultMetadata()
173-
s, cleanup := testStore(t, meta, store.ContextTLSData{})
174-
defer cleanup()
162+
s := testStore(t, meta, store.ContextTLSData{})
175163
err := s.Remove("default")
176164
assert.Error(t, err, "default context cannot be removed")
177165
}
178166

179167
func TestErrTLSDataError(t *testing.T) {
180168
meta := testDefaultMetadata()
181-
s, cleanup := testStore(t, meta, store.ContextTLSData{})
182-
defer cleanup()
169+
s := testStore(t, meta, store.ContextTLSData{})
183170
_, err := s.GetTLSData("default", "noop", "noop")
184171
assert.Check(t, store.IsErrTLSDataDoesNotExist(err))
185172
}

cli/command/utils_test.go

Lines changed: 3 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,6 @@
11
package command
22

33
import (
4-
"io/ioutil"
54
"os"
65
"path/filepath"
76
"testing"
@@ -37,15 +36,13 @@ func TestStringSliceReplaceAt(t *testing.T) {
3736
}
3837

3938
func TestValidateOutputPath(t *testing.T) {
40-
basedir, err := ioutil.TempDir("", "TestValidateOutputPath")
41-
assert.NilError(t, err)
42-
defer os.RemoveAll(basedir)
39+
basedir := t.TempDir()
4340
dir := filepath.Join(basedir, "dir")
4441
notexist := filepath.Join(basedir, "notexist")
45-
err = os.MkdirAll(dir, 0755)
42+
err := os.MkdirAll(dir, 0755)
4643
assert.NilError(t, err)
4744
file := filepath.Join(dir, "file")
48-
err = ioutil.WriteFile(file, []byte("hi"), 0644)
45+
err = os.WriteFile(file, []byte("hi"), 0644)
4946
assert.NilError(t, err)
5047
var testcases = []struct {
5148
path string

0 commit comments

Comments
 (0)