summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--api/server/middleware/debug_test.go5
-rw-r--r--api/server/middleware/version_test.go21
-rw-r--r--api/types/filters/parse_test.go15
-rw-r--r--builder/dockerfile/buildargs_test.go17
-rw-r--r--builder/dockerfile/builder_test.go9
-rw-r--r--builder/dockerfile/copy_test.go9
-rw-r--r--builder/dockerfile/dispatchers_test.go150
-rw-r--r--builder/dockerfile/instructions/parse_test.go28
-rw-r--r--builder/dockerfile/internals_linux_test.go10
-rw-r--r--builder/dockerfile/internals_test.go16
-rw-r--r--builder/dockerfile/internals_windows_test.go7
-rw-r--r--builder/dockerfile/parser/line_parsers_test.go15
-rw-r--r--builder/dockerfile/parser/parser_test.go48
-rw-r--r--builder/dockerfile/shell/lex_test.go13
-rw-r--r--builder/fscache/fscache_test.go75
-rw-r--r--builder/remotecontext/git/gitutils_test.go110
-rw-r--r--builder/remotecontext/mimetype_test.go8
-rw-r--r--builder/remotecontext/remote_test.go18
-rw-r--r--client/client_test.go44
-rw-r--r--client/config_create_test.go5
-rw-r--r--client/config_inspect_test.go5
-rw-r--r--client/config_list_test.go5
-rw-r--r--client/config_remove_test.go5
-rw-r--r--client/config_update_test.go5
-rw-r--r--client/container_prune_test.go13
-rw-r--r--client/container_remove_test.go11
-rw-r--r--client/distribution_inspect_test.go5
-rw-r--r--client/image_prune_test.go13
-rw-r--r--client/image_remove_test.go9
-rw-r--r--client/network_inspect_test.go11
-rw-r--r--client/network_prune_test.go9
-rw-r--r--client/ping_test.go27
-rw-r--r--client/request_test.go6
-rw-r--r--client/secret_create_test.go5
-rw-r--r--client/secret_inspect_test.go5
-rw-r--r--client/secret_list_test.go5
-rw-r--r--client/secret_remove_test.go5
-rw-r--r--client/secret_update_test.go5
-rw-r--r--client/service_create_test.go11
-rw-r--r--client/service_remove_test.go9
-rw-r--r--client/swarm_get_unlock_key_test.go8
-rw-r--r--client/volume_inspect_test.go10
-rw-r--r--cmd/dockerd/config_unix_test.go9
-rw-r--r--cmd/dockerd/daemon_test.go82
-rw-r--r--cmd/dockerd/daemon_unix_test.go58
-rw-r--r--cmd/dockerd/options_test.go19
-rw-r--r--container/container_unit_test.go18
-rw-r--r--container/view_test.go51
-rw-r--r--daemon/cluster/convert/service_test.go8
-rw-r--r--daemon/cluster/executor/container/container_test.go4
-rw-r--r--daemon/config/config_test.go19
-rw-r--r--daemon/config/config_unix_test.go24
-rw-r--r--daemon/config/config_windows_test.go12
-rw-r--r--daemon/container_unix_test.go6
-rw-r--r--daemon/create_test.go4
-rw-r--r--daemon/daemon_linux_test.go12
-rw-r--r--daemon/daemon_test.go7
-rw-r--r--daemon/daemon_unix_test.go6
-rw-r--r--daemon/delete_test.go4
-rw-r--r--daemon/discovery/discovery_test.go20
-rw-r--r--daemon/graphdriver/aufs/aufs_test.go38
-rw-r--r--daemon/graphdriver/copy/copy_test.go78
-rw-r--r--daemon/graphdriver/driver_test.go19
-rw-r--r--daemon/graphdriver/graphtest/graphbench_unix.go4
-rw-r--r--daemon/graphdriver/graphtest/graphtest_unix.go26
-rw-r--r--daemon/graphdriver/graphtest/testutil_unix.go36
-rw-r--r--daemon/graphdriver/quota/projectquota_test.go42
-rw-r--r--daemon/info_unix_test.go9
-rw-r--r--daemon/inspect_test.go8
-rw-r--r--daemon/logger/adapter_test.go25
-rw-r--r--daemon/logger/awslogs/cloudwatchlogs_test.go85
-rw-r--r--daemon/logger/jsonfilelog/jsonfilelog_test.go22
-rw-r--r--daemon/logger/jsonfilelog/jsonlog/jsonlogbytes_test.go7
-rw-r--r--daemon/logger/jsonfilelog/jsonlog/time_marshalling_test.go14
-rw-r--r--daemon/logger/jsonfilelog/read_test.go6
-rw-r--r--daemon/logger/splunk/splunk_test.go18
-rw-r--r--daemon/logger/templates/templates_test.go9
-rw-r--r--daemon/oci_linux_test.go16
-rw-r--r--daemon/reload_test.go5
-rw-r--r--daemon/trustkey_test.go30
-rw-r--r--distribution/metadata/v1_id_service_test.go4
-rw-r--r--image/fs_test.go73
-rw-r--r--image/image_test.go40
-rw-r--r--image/store_test.go105
-rw-r--r--integration-cli/cli/build/fakegit/fakegit.go4
-rw-r--r--integration-cli/cli/build/fakestorage/storage.go4
-rw-r--r--integration-cli/daemon/daemon.go18
-rw-r--r--integration-cli/daemon/daemon_swarm.go10
-rw-r--r--integration-cli/docker_api_build_test.go110
-rw-r--r--integration-cli/docker_api_containers_test.go34
-rw-r--r--integration-cli/docker_api_containers_windows_test.go12
-rw-r--r--integration-cli/docker_api_inspect_test.go7
-rw-r--r--integration-cli/docker_api_swarm_test.go16
-rw-r--r--integration-cli/docker_cli_by_digest_test.go5
-rw-r--r--integration/build/build_test.go68
-rw-r--r--integration/config/config_test.go74
-rw-r--r--integration/container/copy_test.go11
-rw-r--r--integration/container/daemon_linux_test.go22
-rw-r--r--integration/container/diff_test.go8
-rw-r--r--integration/container/exec_test.go15
-rw-r--r--integration/container/export_test.go20
-rw-r--r--integration/container/inspect_test.go12
-rw-r--r--integration/container/kill_test.go28
-rw-r--r--integration/container/links_linux_test.go18
-rw-r--r--integration/container/logs_test.go6
-rw-r--r--integration/container/mounts_linux_test.go14
-rw-r--r--integration/container/nat_test.go28
-rw-r--r--integration/container/pause_test.go20
-rw-r--r--integration/container/ps_test.go12
-rw-r--r--integration/container/remove_test.go20
-rw-r--r--integration/container/rename_test.go54
-rw-r--r--integration/container/resize_test.go10
-rw-r--r--integration/container/stats_test.go14
-rw-r--r--integration/container/stop_test.go8
-rw-r--r--integration/container/update_linux_test.go40
-rw-r--r--integration/container/update_test.go12
-rw-r--r--integration/image/commit_test.go16
-rw-r--r--integration/image/remove_test.go22
-rw-r--r--integration/internal/container/container.go6
-rw-r--r--integration/internal/request/client.go8
-rw-r--r--integration/internal/swarm/service.go14
-rw-r--r--integration/network/delete_test.go30
-rw-r--r--integration/network/inspect_test.go32
-rw-r--r--integration/network/service_test.go10
-rw-r--r--integration/plugin/authz/authz_plugin_test.go110
-rw-r--r--integration/plugin/authz/authz_plugin_v2_test.go52
-rw-r--r--integration/plugin/logging/validation_test.go6
-rw-r--r--integration/secret/secret_test.go78
-rw-r--r--integration/service/create_test.go82
-rw-r--r--integration/service/inspect_test.go16
-rw-r--r--integration/service/network_test.go28
-rw-r--r--integration/session/session_test.go28
-rw-r--r--integration/system/event_test.go34
-rw-r--r--integration/system/info_linux_test.go46
-rw-r--r--integration/system/info_test.go8
-rw-r--r--integration/system/login_test.go5
-rw-r--r--integration/system/version_test.go16
-rw-r--r--integration/volume/volume_test.go32
-rw-r--r--internal/test/environment/clean.go29
-rw-r--r--internal/test/environment/protect.go22
-rw-r--r--internal/testutil/helpers.go10
-rw-r--r--internal/testutil/stringutils_test.go9
-rw-r--r--libcontainerd/queue_test.go8
-rw-r--r--opts/quotedstring_test.go17
-rw-r--r--pkg/archive/archive_linux_test.go44
-rw-r--r--pkg/archive/archive_test.go52
-rw-r--r--pkg/archive/archive_unix_test.go80
-rw-r--r--pkg/archive/changes_test.go106
-rw-r--r--pkg/archive/copy_unix_test.go46
-rw-r--r--pkg/archive/wrap_test.go10
-rw-r--r--pkg/authorization/api_test.go21
-rw-r--r--pkg/authorization/middleware_test.go20
-rw-r--r--pkg/authorization/middleware_unix_test.go9
-rw-r--r--pkg/fileutils/fileutils_test.go8
-rw-r--r--pkg/idtools/idtools_unix_test.go82
-rw-r--r--pkg/ioutils/readers_test.go5
-rw-r--r--pkg/jsonmessage/jsonmessage_test.go5
-rw-r--r--pkg/plugins/client_test.go14
-rw-r--r--pkg/plugins/discovery_unix_test.go4
-rw-r--r--pkg/plugins/plugin_test.go7
-rw-r--r--pkg/plugins/transport/http_test.go5
-rw-r--r--pkg/pools/pools_test.go12
-rw-r--r--pkg/reexec/reexec_test.go17
-rw-r--r--pkg/signal/signal_linux_test.go9
-rw-r--r--pkg/signal/signal_test.go15
-rw-r--r--pkg/signal/trap_linux_test.go24
-rw-r--r--pkg/streamformatter/streamformatter_test.go34
-rw-r--r--pkg/streamformatter/streamwriter_test.go16
-rw-r--r--pkg/sysinfo/sysinfo_linux_test.go22
-rw-r--r--pkg/system/stat_unix_test.go6
-rw-r--r--pkg/tarsum/tarsum_test.go16
-rw-r--r--pkg/term/ascii_test.go18
-rw-r--r--pkg/term/proxy_test.go66
-rw-r--r--pkg/term/term_linux_test.go68
-rw-r--r--reference/store_test.go20
-rw-r--r--registry/config_test.go13
-rw-r--r--registry/registry_test.go6
-rw-r--r--registry/resumable/resumablerequestreader_test.go56
-rw-r--r--runconfig/config_test.go16
-rw-r--r--runconfig/hostconfig_test.go17
-rw-r--r--volume/store/db_test.go21
-rw-r--r--volume/store/restore_test.go24
-rw-r--r--volume/store/store_test.go46
183 files changed, 2257 insertions, 2203 deletions
diff --git a/api/server/middleware/debug_test.go b/api/server/middleware/debug_test.go
index a467c4a442..cc227b3248 100644
--- a/api/server/middleware/debug_test.go
+++ b/api/server/middleware/debug_test.go
@@ -3,7 +3,8 @@ package middleware // import "github.com/docker/docker/api/server/middleware"
import (
"testing"
- "github.com/stretchr/testify/assert"
+ "github.com/gotestyourself/gotestyourself/assert"
+ is "github.com/gotestyourself/gotestyourself/assert/cmp"
)
func TestMaskSecretKeys(t *testing.T) {
@@ -53,6 +54,6 @@ func TestMaskSecretKeys(t *testing.T) {
for _, testcase := range tests {
maskSecretKeys(testcase.input, testcase.path)
- assert.Equal(t, testcase.expected, testcase.input)
+ assert.Check(t, is.DeepEqual(testcase.expected, testcase.input))
}
}
diff --git a/api/server/middleware/version_test.go b/api/server/middleware/version_test.go
index 37d22b5c46..f426acf0a3 100644
--- a/api/server/middleware/version_test.go
+++ b/api/server/middleware/version_test.go
@@ -7,7 +7,8 @@ import (
"testing"
"github.com/docker/docker/api/server/httputils"
- "github.com/stretchr/testify/assert"
+ "github.com/gotestyourself/gotestyourself/assert"
+ is "github.com/gotestyourself/gotestyourself/assert/cmp"
"golang.org/x/net/context"
)
@@ -17,7 +18,7 @@ func TestVersionMiddlewareVersion(t *testing.T) {
expectedVersion := defaultVersion
handler := func(ctx context.Context, w http.ResponseWriter, r *http.Request, vars map[string]string) error {
v := httputils.VersionFromContext(ctx)
- assert.Equal(t, expectedVersion, v)
+ assert.Check(t, is.Equal(expectedVersion, v))
return nil
}
@@ -56,9 +57,9 @@ func TestVersionMiddlewareVersion(t *testing.T) {
err := h(ctx, resp, req, map[string]string{"version": test.reqVersion})
if test.errString != "" {
- assert.EqualError(t, err, test.errString)
+ assert.Check(t, is.Error(err, test.errString))
} else {
- assert.NoError(t, err)
+ assert.Check(t, err)
}
}
}
@@ -66,7 +67,7 @@ func TestVersionMiddlewareVersion(t *testing.T) {
func TestVersionMiddlewareWithErrorsReturnsHeaders(t *testing.T) {
handler := func(ctx context.Context, w http.ResponseWriter, r *http.Request, vars map[string]string) error {
v := httputils.VersionFromContext(ctx)
- assert.NotEmpty(t, v)
+ assert.Check(t, len(v) != 0)
return nil
}
@@ -81,11 +82,11 @@ func TestVersionMiddlewareWithErrorsReturnsHeaders(t *testing.T) {
vars := map[string]string{"version": "0.1"}
err := h(ctx, resp, req, vars)
- assert.Error(t, err)
+ assert.Check(t, is.ErrorContains(err, ""))
hdr := resp.Result().Header
- assert.Contains(t, hdr.Get("Server"), "Docker/"+defaultVersion)
- assert.Contains(t, hdr.Get("Server"), runtime.GOOS)
- assert.Equal(t, hdr.Get("API-Version"), defaultVersion)
- assert.Equal(t, hdr.Get("OSType"), runtime.GOOS)
+ assert.Check(t, is.Contains(hdr.Get("Server"), "Docker/"+defaultVersion))
+ assert.Check(t, is.Contains(hdr.Get("Server"), runtime.GOOS))
+ assert.Check(t, is.Equal(hdr.Get("API-Version"), defaultVersion))
+ assert.Check(t, is.Equal(hdr.Get("OSType"), runtime.GOOS))
}
diff --git a/api/types/filters/parse_test.go b/api/types/filters/parse_test.go
index b54ffa66ec..fbd9ae4fb1 100644
--- a/api/types/filters/parse_test.go
+++ b/api/types/filters/parse_test.go
@@ -4,8 +4,8 @@ import (
"errors"
"testing"
- "github.com/stretchr/testify/assert"
- "github.com/stretchr/testify/require"
+ "github.com/gotestyourself/gotestyourself/assert"
+ is "github.com/gotestyourself/gotestyourself/assert/cmp"
)
func TestParseArgs(t *testing.T) {
@@ -22,10 +22,10 @@ func TestParseArgs(t *testing.T) {
for i := range flagArgs {
args, err = ParseFlag(flagArgs[i], args)
- require.NoError(t, err)
+ assert.NilError(t, err)
}
- assert.Len(t, args.Get("created"), 1)
- assert.Len(t, args.Get("image.name"), 2)
+ assert.Check(t, is.Len(args.Get("created"), 1))
+ assert.Check(t, is.Len(args.Get("image.name"), 2))
}
func TestParseArgsEdgeCase(t *testing.T) {
@@ -231,7 +231,7 @@ func TestArgsMatch(t *testing.T) {
}
for args, field := range matches {
- assert.True(t, args.Match(field, source),
+ assert.Check(t, args.Match(field, source),
"Expected field %s to match %s", field, source)
}
@@ -255,8 +255,7 @@ func TestArgsMatch(t *testing.T) {
}
for args, field := range differs {
- assert.False(t, args.Match(field, source),
- "Expected field %s to not match %s", field, source)
+ assert.Check(t, !args.Match(field, source), "Expected field %s to not match %s", field, source)
}
}
diff --git a/builder/dockerfile/buildargs_test.go b/builder/dockerfile/buildargs_test.go
index c46dd7d49e..1ce841b404 100644
--- a/builder/dockerfile/buildargs_test.go
+++ b/builder/dockerfile/buildargs_test.go
@@ -4,7 +4,8 @@ import (
"bytes"
"testing"
- "github.com/stretchr/testify/assert"
+ "github.com/gotestyourself/gotestyourself/assert"
+ is "github.com/gotestyourself/gotestyourself/assert/cmp"
)
func strPtr(source string) *string {
@@ -39,7 +40,7 @@ func TestGetAllAllowed(t *testing.T) {
"ArgFromMeta": "frommeta1",
"ArgFromMetaOverridden": "fromdockerfile3",
}
- assert.Equal(t, expected, all)
+ assert.Check(t, is.DeepEqual(expected, all))
}
func TestGetAllMeta(t *testing.T) {
@@ -61,7 +62,7 @@ func TestGetAllMeta(t *testing.T) {
"ArgOverriddenByOptions": "fromopt2",
"ArgNoDefaultInMetaFromOptions": "fromopt3",
}
- assert.Equal(t, expected, all)
+ assert.Check(t, is.DeepEqual(expected, all))
}
func TestWarnOnUnusedBuildArgs(t *testing.T) {
@@ -80,7 +81,7 @@ func TestWarnOnUnusedBuildArgs(t *testing.T) {
assert.NotContains(t, out, "ThisArgIsUsed")
assert.NotContains(t, out, "HTTPS_PROXY")
assert.NotContains(t, out, "HTTP_PROXY")
- assert.Contains(t, out, "ThisArgIsNotUsed")
+ assert.Check(t, is.Contains(out, "ThisArgIsNotUsed"))
}
func TestIsUnreferencedBuiltin(t *testing.T) {
@@ -93,8 +94,8 @@ func TestIsUnreferencedBuiltin(t *testing.T) {
buildArgs.AddArg("ThisArgIsUsed", nil)
buildArgs.AddArg("HTTPS_PROXY", nil)
- assert.True(t, buildArgs.IsReferencedOrNotBuiltin("ThisArgIsUsed"))
- assert.True(t, buildArgs.IsReferencedOrNotBuiltin("ThisArgIsNotUsed"))
- assert.True(t, buildArgs.IsReferencedOrNotBuiltin("HTTPS_PROXY"))
- assert.False(t, buildArgs.IsReferencedOrNotBuiltin("HTTP_PROXY"))
+ assert.Check(t, buildArgs.IsReferencedOrNotBuiltin("ThisArgIsUsed"))
+ assert.Check(t, buildArgs.IsReferencedOrNotBuiltin("ThisArgIsNotUsed"))
+ assert.Check(t, buildArgs.IsReferencedOrNotBuiltin("HTTPS_PROXY"))
+ assert.Check(t, !buildArgs.IsReferencedOrNotBuiltin("HTTP_PROXY"))
}
diff --git a/builder/dockerfile/builder_test.go b/builder/dockerfile/builder_test.go
index a3a1f122f9..6c73b6cced 100644
--- a/builder/dockerfile/builder_test.go
+++ b/builder/dockerfile/builder_test.go
@@ -5,13 +5,14 @@ import (
"testing"
"github.com/docker/docker/builder/dockerfile/parser"
- "github.com/stretchr/testify/assert"
+ "github.com/gotestyourself/gotestyourself/assert"
+ is "github.com/gotestyourself/gotestyourself/assert/cmp"
)
func TestAddNodesForLabelOption(t *testing.T) {
dockerfile := "FROM scratch"
result, err := parser.Parse(strings.NewReader(dockerfile))
- assert.NoError(t, err)
+ assert.Check(t, err)
labels := map[string]string{
"org.e": "cli-e",
@@ -27,8 +28,8 @@ func TestAddNodesForLabelOption(t *testing.T) {
"FROM scratch",
`LABEL "org.a"='cli-a' "org.b"='cli-b' "org.c"='cli-c' "org.d"='cli-d' "org.e"='cli-e'`,
}
- assert.Len(t, nodes.Children, 2)
+ assert.Check(t, is.Len(nodes.Children, 2))
for i, v := range nodes.Children {
- assert.Equal(t, expected[i], v.Original)
+ assert.Check(t, is.Equal(expected[i], v.Original))
}
}
diff --git a/builder/dockerfile/copy_test.go b/builder/dockerfile/copy_test.go
index da8e0711ac..f2f895387c 100644
--- a/builder/dockerfile/copy_test.go
+++ b/builder/dockerfile/copy_test.go
@@ -5,8 +5,9 @@ import (
"testing"
"github.com/docker/docker/pkg/containerfs"
+ "github.com/gotestyourself/gotestyourself/assert"
+ is "github.com/gotestyourself/gotestyourself/assert/cmp"
"github.com/gotestyourself/gotestyourself/fs"
- "github.com/stretchr/testify/assert"
)
func TestIsExistingDirectory(t *testing.T) {
@@ -39,10 +40,10 @@ func TestIsExistingDirectory(t *testing.T) {
for _, testcase := range testcases {
result, err := isExistingDirectory(&copyEndpoint{driver: containerfs.NewLocalDriver(), path: testcase.path})
- if !assert.NoError(t, err) {
+ if !assert.Check(t, err) {
continue
}
- assert.Equal(t, testcase.expected, result, testcase.doc)
+ assert.Check(t, is.Equal(testcase.expected, result), testcase.doc)
}
}
@@ -142,6 +143,6 @@ func TestGetFilenameForDownload(t *testing.T) {
resp.Header.Add("Content-Disposition", testcase.disposition)
}
filename := getFilenameForDownload(testcase.path, &resp)
- assert.Equal(t, testcase.expected, filename)
+ assert.Check(t, is.Equal(testcase.expected, filename))
}
}
diff --git a/builder/dockerfile/dispatchers_test.go b/builder/dockerfile/dispatchers_test.go
index 6d52e7e619..988580cb15 100644
--- a/builder/dockerfile/dispatchers_test.go
+++ b/builder/dockerfile/dispatchers_test.go
@@ -16,8 +16,8 @@ import (
"github.com/docker/docker/image"
"github.com/docker/docker/pkg/system"
"github.com/docker/go-connections/nat"
- "github.com/stretchr/testify/assert"
- "github.com/stretchr/testify/require"
+ "github.com/gotestyourself/gotestyourself/assert"
+ is "github.com/gotestyourself/gotestyourself/assert/cmp"
)
func newBuilderWithMockBackend() *Builder {
@@ -49,13 +49,13 @@ func TestEnv2Variables(t *testing.T) {
},
}
err := dispatch(sb, envCommand)
- require.NoError(t, err)
+ assert.NilError(t, err)
expected := []string{
"var1=val1",
"var2=val2",
}
- assert.Equal(t, expected, sb.state.runConfig.Env)
+ assert.Check(t, is.DeepEqual(expected, sb.state.runConfig.Env))
}
func TestEnvValueWithExistingRunConfigEnv(t *testing.T) {
@@ -68,12 +68,12 @@ func TestEnvValueWithExistingRunConfigEnv(t *testing.T) {
},
}
err := dispatch(sb, envCommand)
- require.NoError(t, err)
+ assert.NilError(t, err)
expected := []string{
"var1=val1",
"var2=fromenv",
}
- assert.Equal(t, expected, sb.state.runConfig.Env)
+ assert.Check(t, is.DeepEqual(expected, sb.state.runConfig.Env))
}
func TestMaintainer(t *testing.T) {
@@ -82,8 +82,8 @@ func TestMaintainer(t *testing.T) {
sb := newDispatchRequest(b, '\\', nil, newBuildArgs(make(map[string]*string)), newStagesBuildResults())
cmd := &instructions.MaintainerCommand{Maintainer: maintainerEntry}
err := dispatch(sb, cmd)
- require.NoError(t, err)
- assert.Equal(t, maintainerEntry, sb.state.maintainer)
+ assert.NilError(t, err)
+ assert.Check(t, is.Equal(maintainerEntry, sb.state.maintainer))
}
func TestLabel(t *testing.T) {
@@ -98,10 +98,10 @@ func TestLabel(t *testing.T) {
},
}
err := dispatch(sb, cmd)
- require.NoError(t, err)
+ assert.NilError(t, err)
- require.Contains(t, sb.state.runConfig.Labels, labelName)
- assert.Equal(t, sb.state.runConfig.Labels[labelName], labelValue)
+ assert.Assert(t, is.Contains(sb.state.runConfig.Labels, labelName))
+ assert.Check(t, is.Equal(sb.state.runConfig.Labels[labelName], labelValue))
}
func TestFromScratch(t *testing.T) {
@@ -113,22 +113,22 @@ func TestFromScratch(t *testing.T) {
err := initializeStage(sb, cmd)
if runtime.GOOS == "windows" && !system.LCOWSupported() {
- assert.EqualError(t, err, "Windows does not support FROM scratch")
+ assert.Check(t, is.Error(err, "Windows does not support FROM scratch"))
return
}
- require.NoError(t, err)
- assert.True(t, sb.state.hasFromImage())
- assert.Equal(t, "", sb.state.imageID)
+ assert.NilError(t, err)
+ assert.Check(t, sb.state.hasFromImage())
+ assert.Check(t, is.Equal("", sb.state.imageID))
expected := "PATH=" + system.DefaultPathEnv(runtime.GOOS)
- assert.Equal(t, []string{expected}, sb.state.runConfig.Env)
+ assert.Check(t, is.DeepEqual([]string{expected}, sb.state.runConfig.Env))
}
func TestFromWithArg(t *testing.T) {
tag, expected := ":sometag", "expectedthisid"
getImage := func(name string) (builder.Image, builder.ROLayer, error) {
- assert.Equal(t, "alpine"+tag, name)
+ assert.Check(t, is.Equal("alpine"+tag, name))
return &mockImage{id: "expectedthisid"}, nil, nil
}
b := newBuilderWithMockBackend()
@@ -146,21 +146,21 @@ func TestFromWithArg(t *testing.T) {
err := processMetaArg(metaArg, shell.NewLex('\\'), args)
sb := newDispatchRequest(b, '\\', nil, args, newStagesBuildResults())
- require.NoError(t, err)
+ assert.NilError(t, err)
err = initializeStage(sb, cmd)
- require.NoError(t, err)
+ assert.NilError(t, err)
- assert.Equal(t, expected, sb.state.imageID)
- assert.Equal(t, expected, sb.state.baseImage.ImageID())
- assert.Len(t, sb.state.buildArgs.GetAllAllowed(), 0)
- assert.Len(t, sb.state.buildArgs.GetAllMeta(), 1)
+ assert.Check(t, is.Equal(expected, sb.state.imageID))
+ assert.Check(t, is.Equal(expected, sb.state.baseImage.ImageID()))
+ assert.Check(t, is.Len(sb.state.buildArgs.GetAllAllowed(), 0))
+ assert.Check(t, is.Len(sb.state.buildArgs.GetAllMeta(), 1))
}
func TestFromWithUndefinedArg(t *testing.T) {
tag, expected := "sometag", "expectedthisid"
getImage := func(name string) (builder.Image, builder.ROLayer, error) {
- assert.Equal(t, "alpine", name)
+ assert.Check(t, is.Equal("alpine", name))
return &mockImage{id: "expectedthisid"}, nil, nil
}
b := newBuilderWithMockBackend()
@@ -173,8 +173,8 @@ func TestFromWithUndefinedArg(t *testing.T) {
BaseName: "alpine${THETAG}",
}
err := initializeStage(sb, cmd)
- require.NoError(t, err)
- assert.Equal(t, expected, sb.state.imageID)
+ assert.NilError(t, err)
+ assert.Check(t, is.Equal(expected, sb.state.imageID))
}
func TestFromMultiStageWithNamedStage(t *testing.T) {
@@ -185,13 +185,13 @@ func TestFromMultiStageWithNamedStage(t *testing.T) {
firstSB := newDispatchRequest(b, '\\', nil, newBuildArgs(make(map[string]*string)), previousResults)
secondSB := newDispatchRequest(b, '\\', nil, newBuildArgs(make(map[string]*string)), previousResults)
err := initializeStage(firstSB, firstFrom)
- require.NoError(t, err)
- assert.True(t, firstSB.state.hasFromImage())
+ assert.NilError(t, err)
+ assert.Check(t, firstSB.state.hasFromImage())
previousResults.indexed["base"] = firstSB.state.runConfig
previousResults.flat = append(previousResults.flat, firstSB.state.runConfig)
err = initializeStage(secondSB, secondFrom)
- require.NoError(t, err)
- assert.True(t, secondSB.state.hasFromImage())
+ assert.NilError(t, err)
+ assert.Check(t, secondSB.state.hasFromImage())
}
func TestOnbuild(t *testing.T) {
@@ -201,8 +201,8 @@ func TestOnbuild(t *testing.T) {
Expression: "ADD . /app/src",
}
err := dispatch(sb, cmd)
- require.NoError(t, err)
- assert.Equal(t, "ADD . /app/src", sb.state.runConfig.OnBuild[0])
+ assert.NilError(t, err)
+ assert.Check(t, is.Equal("ADD . /app/src", sb.state.runConfig.OnBuild[0]))
}
func TestWorkdir(t *testing.T) {
@@ -217,8 +217,8 @@ func TestWorkdir(t *testing.T) {
}
err := dispatch(sb, cmd)
- require.NoError(t, err)
- assert.Equal(t, workingDir, sb.state.runConfig.WorkingDir)
+ assert.NilError(t, err)
+ assert.Check(t, is.Equal(workingDir, sb.state.runConfig.WorkingDir))
}
func TestCmd(t *testing.T) {
@@ -233,7 +233,7 @@ func TestCmd(t *testing.T) {
},
}
err := dispatch(sb, cmd)
- require.NoError(t, err)
+ assert.NilError(t, err)
var expectedCommand strslice.StrSlice
if runtime.GOOS == "windows" {
@@ -242,8 +242,8 @@ func TestCmd(t *testing.T) {
expectedCommand = strslice.StrSlice(append([]string{"/bin/sh"}, "-c", command))
}
- assert.Equal(t, expectedCommand, sb.state.runConfig.Cmd)
- assert.True(t, sb.state.cmdSet)
+ assert.Check(t, is.DeepEqual(expectedCommand, sb.state.runConfig.Cmd))
+ assert.Check(t, sb.state.cmdSet)
}
func TestHealthcheckNone(t *testing.T) {
@@ -255,10 +255,10 @@ func TestHealthcheckNone(t *testing.T) {
},
}
err := dispatch(sb, cmd)
- require.NoError(t, err)
+ assert.NilError(t, err)
- require.NotNil(t, sb.state.runConfig.Healthcheck)
- assert.Equal(t, []string{"NONE"}, sb.state.runConfig.Healthcheck.Test)
+ assert.Assert(t, sb.state.runConfig.Healthcheck != nil)
+ assert.Check(t, is.DeepEqual([]string{"NONE"}, sb.state.runConfig.Healthcheck.Test))
}
func TestHealthcheckCmd(t *testing.T) {
@@ -272,10 +272,10 @@ func TestHealthcheckCmd(t *testing.T) {
},
}
err := dispatch(sb, cmd)
- require.NoError(t, err)
+ assert.NilError(t, err)
- require.NotNil(t, sb.state.runConfig.Healthcheck)
- assert.Equal(t, expectedTest, sb.state.runConfig.Healthcheck.Test)
+ assert.Assert(t, sb.state.runConfig.Healthcheck != nil)
+ assert.Check(t, is.DeepEqual(expectedTest, sb.state.runConfig.Healthcheck.Test))
}
func TestEntrypoint(t *testing.T) {
@@ -290,8 +290,8 @@ func TestEntrypoint(t *testing.T) {
},
}
err := dispatch(sb, cmd)
- require.NoError(t, err)
- require.NotNil(t, sb.state.runConfig.Entrypoint)
+ assert.NilError(t, err)
+ assert.Assert(t, sb.state.runConfig.Entrypoint != nil)
var expectedEntrypoint strslice.StrSlice
if runtime.GOOS == "windows" {
@@ -299,7 +299,7 @@ func TestEntrypoint(t *testing.T) {
} else {
expectedEntrypoint = strslice.StrSlice(append([]string{"/bin/sh"}, "-c", entrypointCmd))
}
- assert.Equal(t, expectedEntrypoint, sb.state.runConfig.Entrypoint)
+ assert.Check(t, is.DeepEqual(expectedEntrypoint, sb.state.runConfig.Entrypoint))
}
func TestExpose(t *testing.T) {
@@ -311,14 +311,14 @@ func TestExpose(t *testing.T) {
Ports: []string{exposedPort},
}
err := dispatch(sb, cmd)
- require.NoError(t, err)
+ assert.NilError(t, err)
- require.NotNil(t, sb.state.runConfig.ExposedPorts)
- require.Len(t, sb.state.runConfig.ExposedPorts, 1)
+ assert.Assert(t, sb.state.runConfig.ExposedPorts != nil)
+ assert.Assert(t, is.Len(sb.state.runConfig.ExposedPorts, 1))
portsMapping, err := nat.ParsePortSpec(exposedPort)
- require.NoError(t, err)
- assert.Contains(t, sb.state.runConfig.ExposedPorts, portsMapping[0].Port)
+ assert.NilError(t, err)
+ assert.Check(t, is.Contains(sb.state.runConfig.ExposedPorts, portsMapping[0].Port))
}
func TestUser(t *testing.T) {
@@ -329,8 +329,8 @@ func TestUser(t *testing.T) {
User: "test",
}
err := dispatch(sb, cmd)
- require.NoError(t, err)
- assert.Equal(t, "test", sb.state.runConfig.User)
+ assert.NilError(t, err)
+ assert.Check(t, is.Equal("test", sb.state.runConfig.User))
}
func TestVolume(t *testing.T) {
@@ -343,10 +343,10 @@ func TestVolume(t *testing.T) {
Volumes: []string{exposedVolume},
}
err := dispatch(sb, cmd)
- require.NoError(t, err)
- require.NotNil(t, sb.state.runConfig.Volumes)
- assert.Len(t, sb.state.runConfig.Volumes, 1)
- assert.Contains(t, sb.state.runConfig.Volumes, exposedVolume)
+ assert.NilError(t, err)
+ assert.Assert(t, sb.state.runConfig.Volumes != nil)
+ assert.Check(t, is.Len(sb.state.runConfig.Volumes, 1))
+ assert.Check(t, is.Contains(sb.state.runConfig.Volumes, exposedVolume))
}
func TestStopSignal(t *testing.T) {
@@ -362,8 +362,8 @@ func TestStopSignal(t *testing.T) {
Signal: signal,
}
err := dispatch(sb, cmd)
- require.NoError(t, err)
- assert.Equal(t, signal, sb.state.runConfig.StopSignal)
+ assert.NilError(t, err)
+ assert.Check(t, is.Equal(signal, sb.state.runConfig.StopSignal))
}
func TestArg(t *testing.T) {
@@ -374,10 +374,10 @@ func TestArg(t *testing.T) {
argVal := "bar"
cmd := &instructions.ArgCommand{Key: argName, Value: &argVal}
err := dispatch(sb, cmd)
- require.NoError(t, err)
+ assert.NilError(t, err)
expected := map[string]string{argName: argVal}
- assert.Equal(t, expected, sb.state.buildArgs.GetAllAllowed())
+ assert.Check(t, is.DeepEqual(expected, sb.state.buildArgs.GetAllAllowed()))
}
func TestShell(t *testing.T) {
@@ -388,10 +388,10 @@ func TestShell(t *testing.T) {
cmd := &instructions.ShellCommand{Shell: strslice.StrSlice{shellCmd}}
err := dispatch(sb, cmd)
- require.NoError(t, err)
+ assert.NilError(t, err)
expectedShell := strslice.StrSlice([]string{shellCmd})
- assert.Equal(t, expectedShell, sb.state.runConfig.Shell)
+ assert.Check(t, is.DeepEqual(expectedShell, sb.state.runConfig.Shell))
}
func TestPrependEnvOnCmd(t *testing.T) {
@@ -403,7 +403,7 @@ func TestPrependEnvOnCmd(t *testing.T) {
cmdWithEnv := prependEnvOnCmd(buildArgs, args, cmd)
expected := strslice.StrSlice([]string{
"|3", "NO_PROXY=YA", "args=not", "sorted=nope", "foo", "bar"})
- assert.Equal(t, expected, cmdWithEnv)
+ assert.Check(t, is.DeepEqual(expected, cmdWithEnv))
}
func TestRunWithBuildArgs(t *testing.T) {
@@ -422,8 +422,8 @@ func TestRunWithBuildArgs(t *testing.T) {
imageCache := &mockImageCache{
getCacheFunc: func(parentID string, cfg *container.Config) (string, error) {
// Check the runConfig.Cmd sent to probeCache()
- assert.Equal(t, cachedCmd, cfg.Cmd)
- assert.Equal(t, strslice.StrSlice(nil), cfg.Entrypoint)
+ assert.Check(t, is.DeepEqual(cachedCmd, cfg.Cmd))
+ assert.Check(t, is.DeepEqual(strslice.StrSlice(nil), cfg.Entrypoint))
return "", nil
},
}
@@ -441,21 +441,21 @@ func TestRunWithBuildArgs(t *testing.T) {
}
mockBackend.containerCreateFunc = func(config types.ContainerCreateConfig) (container.ContainerCreateCreatedBody, error) {
// Check the runConfig.Cmd sent to create()
- assert.Equal(t, cmdWithShell, config.Config.Cmd)
- assert.Contains(t, config.Config.Env, "one=two")
- assert.Equal(t, strslice.StrSlice{""}, config.Config.Entrypoint)
+ assert.Check(t, is.DeepEqual(cmdWithShell, config.Config.Cmd))
+ assert.Check(t, is.Contains(config.Config.Env, "one=two"))
+ assert.Check(t, is.DeepEqual(strslice.StrSlice{""}, config.Config.Entrypoint))
return container.ContainerCreateCreatedBody{ID: "12345"}, nil
}
mockBackend.commitFunc = func(cfg backend.CommitConfig) (image.ID, error) {
// Check the runConfig.Cmd sent to commit()
- assert.Equal(t, origCmd, cfg.Config.Cmd)
- assert.Equal(t, cachedCmd, cfg.ContainerConfig.Cmd)
- assert.Equal(t, strslice.StrSlice(nil), cfg.Config.Entrypoint)
+ assert.Check(t, is.DeepEqual(origCmd, cfg.Config.Cmd))
+ assert.Check(t, is.DeepEqual(cachedCmd, cfg.ContainerConfig.Cmd))
+ assert.Check(t, is.DeepEqual(strslice.StrSlice(nil), cfg.Config.Entrypoint))
return "", nil
}
from := &instructions.Stage{BaseName: "abcdef"}
err := initializeStage(sb, from)
- require.NoError(t, err)
+ assert.NilError(t, err)
sb.state.buildArgs.AddArg("one", strPtr("two"))
run := &instructions.RunCommand{
ShellDependantCmdLine: instructions.ShellDependantCmdLine{
@@ -463,8 +463,8 @@ func TestRunWithBuildArgs(t *testing.T) {
PrependShell: true,
},
}
- require.NoError(t, dispatch(sb, run))
+ assert.NilError(t, dispatch(sb, run))
// Check that runConfig.Cmd has not been modified by run
- assert.Equal(t, origCmd, sb.state.runConfig.Cmd)
+ assert.Check(t, is.DeepEqual(origCmd, sb.state.runConfig.Cmd))
}
diff --git a/builder/dockerfile/instructions/parse_test.go b/builder/dockerfile/instructions/parse_test.go
index ffd6d4f45c..b084ad11c7 100644
--- a/builder/dockerfile/instructions/parse_test.go
+++ b/builder/dockerfile/instructions/parse_test.go
@@ -7,8 +7,8 @@ import (
"github.com/docker/docker/builder/dockerfile/command"
"github.com/docker/docker/builder/dockerfile/parser"
"github.com/docker/docker/internal/testutil"
- "github.com/stretchr/testify/assert"
- "github.com/stretchr/testify/require"
+ "github.com/gotestyourself/gotestyourself/assert"
+ is "github.com/gotestyourself/gotestyourself/assert/cmp"
)
func TestCommandsExactlyOneArgument(t *testing.T) {
@@ -21,9 +21,9 @@ func TestCommandsExactlyOneArgument(t *testing.T) {
for _, command := range commands {
ast, err := parser.Parse(strings.NewReader(command))
- require.NoError(t, err)
+ assert.NilError(t, err)
_, err = ParseInstruction(ast.AST.Children[0])
- assert.EqualError(t, err, errExactlyOneArgument(command).Error())
+ assert.Check(t, is.Error(err, errExactlyOneArgument(command).Error()))
}
}
@@ -39,9 +39,9 @@ func TestCommandsAtLeastOneArgument(t *testing.T) {
for _, command := range commands {
ast, err := parser.Parse(strings.NewReader(command))
- require.NoError(t, err)
+ assert.NilError(t, err)
_, err = ParseInstruction(ast.AST.Children[0])
- assert.EqualError(t, err, errAtLeastOneArgument(command).Error())
+ assert.Check(t, is.Error(err, errAtLeastOneArgument(command).Error()))
}
}
@@ -53,9 +53,9 @@ func TestCommandsNoDestinationArgument(t *testing.T) {
for _, command := range commands {
ast, err := parser.Parse(strings.NewReader(command + " arg1"))
- require.NoError(t, err)
+ assert.NilError(t, err)
_, err = ParseInstruction(ast.AST.Children[0])
- assert.EqualError(t, err, errNoDestinationArgument(command).Error())
+ assert.Check(t, is.Error(err, errNoDestinationArgument(command).Error()))
}
}
@@ -80,7 +80,7 @@ func TestCommandsTooManyArguments(t *testing.T) {
},
}
_, err := ParseInstruction(node)
- assert.EqualError(t, err, errTooManyArguments(command).Error())
+ assert.Check(t, is.Error(err, errTooManyArguments(command).Error()))
}
}
@@ -102,7 +102,7 @@ func TestCommandsBlankNames(t *testing.T) {
},
}
_, err := ParseInstruction(node)
- assert.EqualError(t, err, errBlankCommandNames(command).Error())
+ assert.Check(t, is.Error(err, errBlankCommandNames(command).Error()))
}
}
@@ -120,11 +120,11 @@ func TestHealthCheckCmd(t *testing.T) {
},
}
cmd, err := ParseInstruction(node)
- assert.NoError(t, err)
+ assert.Check(t, err)
hc, ok := cmd.(*HealthCheckCommand)
- assert.True(t, ok)
+ assert.Check(t, ok)
expected := []string{"CMD-SHELL", "hello world"}
- assert.Equal(t, expected, hc.Health.Test)
+ assert.Check(t, is.DeepEqual(expected, hc.Health.Test))
}
func TestParseOptInterval(t *testing.T) {
@@ -138,7 +138,7 @@ func TestParseOptInterval(t *testing.T) {
flInterval.Value = "1ms"
_, err = parseOptInterval(flInterval)
- require.NoError(t, err)
+ assert.NilError(t, err)
}
func TestErrorCases(t *testing.T) {
diff --git a/builder/dockerfile/internals_linux_test.go b/builder/dockerfile/internals_linux_test.go
index 08067f8573..c244ddfe3f 100644
--- a/builder/dockerfile/internals_linux_test.go
+++ b/builder/dockerfile/internals_linux_test.go
@@ -6,8 +6,8 @@ import (
"testing"
"github.com/docker/docker/pkg/idtools"
- "github.com/stretchr/testify/assert"
- "github.com/stretchr/testify/require"
+ "github.com/gotestyourself/gotestyourself/assert"
+ is "github.com/gotestyourself/gotestyourself/assert/cmp"
)
func TestChownFlagParsing(t *testing.T) {
@@ -99,8 +99,8 @@ othergrp:x:6666:
} {
t.Run(testcase.name, func(t *testing.T) {
idPair, err := parseChownFlag(testcase.chownStr, contextDir, testcase.idMapping)
- require.NoError(t, err, "Failed to parse chown flag: %q", testcase.chownStr)
- assert.Equal(t, testcase.expected, idPair, "chown flag mapping failure")
+ assert.NilError(t, err, "Failed to parse chown flag: %q", testcase.chownStr)
+ assert.Check(t, is.DeepEqual(testcase.expected, idPair), "chown flag mapping failure")
})
}
@@ -132,7 +132,7 @@ othergrp:x:6666:
} {
t.Run(testcase.name, func(t *testing.T) {
_, err := parseChownFlag(testcase.chownStr, contextDir, testcase.idMapping)
- assert.EqualError(t, err, testcase.descr, "Expected error string doesn't match")
+ assert.Check(t, is.Error(err, testcase.descr), "Expected error string doesn't match")
})
}
}
diff --git a/builder/dockerfile/internals_test.go b/builder/dockerfile/internals_test.go
index 24103ecd8e..ae20026833 100644
--- a/builder/dockerfile/internals_test.go
+++ b/builder/dockerfile/internals_test.go
@@ -12,8 +12,8 @@ import (
"github.com/docker/docker/builder/remotecontext"
"github.com/docker/docker/pkg/archive"
"github.com/docker/go-connections/nat"
- "github.com/stretchr/testify/assert"
- "github.com/stretchr/testify/require"
+ "github.com/gotestyourself/gotestyourself/assert"
+ is "github.com/gotestyourself/gotestyourself/assert/cmp"
)
func TestEmptyDockerfile(t *testing.T) {
@@ -60,7 +60,7 @@ func TestNonExistingDockerfile(t *testing.T) {
func readAndCheckDockerfile(t *testing.T, testName, contextDir, dockerfilePath, expectedError string) {
tarStream, err := archive.Tar(contextDir, archive.Uncompressed)
- require.NoError(t, err)
+ assert.NilError(t, err)
defer func() {
if err = tarStream.Close(); err != nil {
@@ -77,7 +77,7 @@ func readAndCheckDockerfile(t *testing.T, testName, contextDir, dockerfilePath,
Source: tarStream,
}
_, _, err = remotecontext.Detect(config)
- assert.EqualError(t, err, expectedError)
+ assert.Check(t, is.Error(err, expectedError))
}
func TestCopyRunConfig(t *testing.T) {
@@ -124,9 +124,9 @@ func TestCopyRunConfig(t *testing.T) {
Env: defaultEnv,
}
runConfigCopy := copyRunConfig(runConfig, testcase.modifiers...)
- assert.Equal(t, testcase.expected, runConfigCopy, testcase.doc)
+ assert.Check(t, is.DeepEqual(testcase.expected, runConfigCopy), testcase.doc)
// Assert the original was not modified
- assert.NotEqual(t, runConfig, runConfigCopy, testcase.doc)
+ assert.Check(t, runConfig != runConfigCopy, testcase.doc)
}
}
@@ -156,7 +156,7 @@ func fullMutableRunConfig() *container.Config {
func TestDeepCopyRunConfig(t *testing.T) {
runConfig := fullMutableRunConfig()
copy := copyRunConfig(runConfig)
- assert.Equal(t, fullMutableRunConfig(), copy)
+ assert.Check(t, is.DeepEqual(fullMutableRunConfig(), copy))
copy.Cmd[1] = "arg2"
copy.Env[1] = "env2=new"
@@ -166,5 +166,5 @@ func TestDeepCopyRunConfig(t *testing.T) {
copy.OnBuild[0] = "start"
copy.Labels["label3"] = "value3"
copy.Shell[0] = "sh"
- assert.Equal(t, fullMutableRunConfig(), runConfig)
+ assert.Check(t, is.DeepEqual(fullMutableRunConfig(), runConfig))
}
diff --git a/builder/dockerfile/internals_windows_test.go b/builder/dockerfile/internals_windows_test.go
index 08f394ac60..1fc55c0752 100644
--- a/builder/dockerfile/internals_windows_test.go
+++ b/builder/dockerfile/internals_windows_test.go
@@ -7,7 +7,8 @@ import (
"testing"
"github.com/docker/docker/internal/testutil"
- "github.com/stretchr/testify/assert"
+ "github.com/gotestyourself/gotestyourself/assert"
+ is "github.com/gotestyourself/gotestyourself/assert/cmp"
)
func TestNormalizeDest(t *testing.T) {
@@ -42,10 +43,10 @@ func TestNormalizeDest(t *testing.T) {
msg := fmt.Sprintf("Input: %s, %s", testcase.current, testcase.requested)
actual, err := normalizeDest(testcase.current, testcase.requested, "windows")
if testcase.etext == "" {
- if !assert.NoError(t, err, msg) {
+ if !assert.Check(t, err, msg) {
continue
}
- assert.Equal(t, testcase.expected, actual, msg)
+ assert.Check(t, is.Equal(testcase.expected, actual), msg)
} else {
testutil.ErrorContains(t, err, testcase.etext)
}
diff --git a/builder/dockerfile/parser/line_parsers_test.go b/builder/dockerfile/parser/line_parsers_test.go
index 8ce6a7ad6f..20369cad0b 100644
--- a/builder/dockerfile/parser/line_parsers_test.go
+++ b/builder/dockerfile/parser/line_parsers_test.go
@@ -3,25 +3,26 @@ package parser // import "github.com/docker/docker/builder/dockerfile/parser"
import (
"testing"
- "github.com/stretchr/testify/assert"
+ "github.com/gotestyourself/gotestyourself/assert"
+ is "github.com/gotestyourself/gotestyourself/assert/cmp"
)
func TestParseNameValOldFormat(t *testing.T) {
directive := Directive{}
node, err := parseNameVal("foo bar", "LABEL", &directive)
- assert.NoError(t, err)
+ assert.Check(t, err)
expected := &Node{
Value: "foo",
Next: &Node{Value: "bar"},
}
- assert.Equal(t, expected, node)
+ assert.Check(t, is.DeepEqual(expected, node))
}
func TestParseNameValNewFormat(t *testing.T) {
directive := Directive{}
node, err := parseNameVal("foo=bar thing=star", "LABEL", &directive)
- assert.NoError(t, err)
+ assert.Check(t, err)
expected := &Node{
Value: "foo",
@@ -35,7 +36,7 @@ func TestParseNameValNewFormat(t *testing.T) {
},
},
}
- assert.Equal(t, expected, node)
+ assert.Check(t, is.DeepEqual(expected, node))
}
func TestNodeFromLabels(t *testing.T) {
@@ -61,7 +62,7 @@ func TestNodeFromLabels(t *testing.T) {
}
node := NodeFromLabels(labels)
- assert.Equal(t, expected, node)
+ assert.Check(t, is.DeepEqual(expected, node))
}
@@ -70,5 +71,5 @@ func TestParseNameValWithoutVal(t *testing.T) {
// In Config.Env, a variable without `=` is removed from the environment. (#31634)
// However, in Dockerfile, we don't allow "unsetting" an environment variable. (#11922)
_, err := parseNameVal("foo", "ENV", &directive)
- assert.Error(t, err, "ENV must have two arguments")
+ assert.Check(t, is.ErrorContains(err, ""), "ENV must have two arguments")
}
diff --git a/builder/dockerfile/parser/parser_test.go b/builder/dockerfile/parser/parser_test.go
index 807ac1b097..10bed1f756 100644
--- a/builder/dockerfile/parser/parser_test.go
+++ b/builder/dockerfile/parser/parser_test.go
@@ -11,8 +11,8 @@ import (
"strings"
"testing"
- "github.com/stretchr/testify/assert"
- "github.com/stretchr/testify/require"
+ "github.com/gotestyourself/gotestyourself/assert"
+ is "github.com/gotestyourself/gotestyourself/assert/cmp"
)
const testDir = "testfiles"
@@ -21,11 +21,11 @@ const testFileLineInfo = "testfile-line/Dockerfile"
func getDirs(t *testing.T, dir string) []string {
f, err := os.Open(dir)
- require.NoError(t, err)
+ assert.NilError(t, err)
defer f.Close()
dirs, err := f.Readdirnames(0)
- require.NoError(t, err)
+ assert.NilError(t, err)
return dirs
}
@@ -34,11 +34,11 @@ func TestParseErrorCases(t *testing.T) {
dockerfile := filepath.Join(negativeTestDir, dir, "Dockerfile")
df, err := os.Open(dockerfile)
- require.NoError(t, err, dockerfile)
+ assert.NilError(t, err, dockerfile)
defer df.Close()
_, err = Parse(df)
- assert.Error(t, err, dockerfile)
+ assert.Check(t, is.ErrorContains(err, ""), dockerfile)
}
}
@@ -48,20 +48,20 @@ func TestParseCases(t *testing.T) {
resultfile := filepath.Join(testDir, dir, "result")
df, err := os.Open(dockerfile)
- require.NoError(t, err, dockerfile)
+ assert.NilError(t, err, dockerfile)
defer df.Close()
result, err := Parse(df)
- require.NoError(t, err, dockerfile)
+ assert.NilError(t, err, dockerfile)
content, err := ioutil.ReadFile(resultfile)
- require.NoError(t, err, resultfile)
+ assert.NilError(t, err, resultfile)
if runtime.GOOS == "windows" {
// CRLF --> CR to match Unix behavior
content = bytes.Replace(content, []byte{'\x0d', '\x0a'}, []byte{'\x0a'}, -1)
}
- assert.Equal(t, result.AST.Dump()+"\n", string(content), "In "+dockerfile)
+ assert.Check(t, is.Equal(result.AST.Dump()+"\n", string(content)), "In "+dockerfile)
}
}
@@ -103,22 +103,22 @@ func TestParseWords(t *testing.T) {
for _, test := range tests {
words := parseWords(test["input"][0], NewDefaultDirective())
- assert.Equal(t, test["expect"], words)
+ assert.Check(t, is.DeepEqual(test["expect"], words))
}
}
func TestParseIncludesLineNumbers(t *testing.T) {
df, err := os.Open(testFileLineInfo)
- require.NoError(t, err)
+ assert.NilError(t, err)
defer df.Close()
result, err := Parse(df)
- require.NoError(t, err)
+ assert.NilError(t, err)
ast := result.AST
- assert.Equal(t, 5, ast.StartLine)
- assert.Equal(t, 31, ast.endLine)
- assert.Len(t, ast.Children, 3)
+ assert.Check(t, is.Equal(5, ast.StartLine))
+ assert.Check(t, is.Equal(31, ast.endLine))
+ assert.Check(t, is.Len(ast.Children, 3))
expected := [][]int{
{5, 5},
{11, 12},
@@ -126,7 +126,7 @@ func TestParseIncludesLineNumbers(t *testing.T) {
}
for i, child := range ast.Children {
msg := fmt.Sprintf("Child %d", i)
- assert.Equal(t, expected[i], []int{child.StartLine, child.endLine}, msg)
+ assert.Check(t, is.DeepEqual(expected[i], []int{child.StartLine, child.endLine}), msg)
}
}
@@ -153,13 +153,13 @@ RUN indented \
`)
result, err := Parse(dockerfile)
- require.NoError(t, err)
+ assert.NilError(t, err)
warnings := result.Warnings
- assert.Len(t, warnings, 3)
- assert.Contains(t, warnings[0], "Empty continuation line found in")
- assert.Contains(t, warnings[0], "RUN something following more")
- assert.Contains(t, warnings[1], "RUN another thing")
- assert.Contains(t, warnings[2], "will become errors in a future release")
+ assert.Check(t, is.Len(warnings, 3))
+ assert.Check(t, is.Contains(warnings[0], "Empty continuation line found in"))
+ assert.Check(t, is.Contains(warnings[0], "RUN something following more"))
+ assert.Check(t, is.Contains(warnings[1], "RUN another thing"))
+ assert.Check(t, is.Contains(warnings[2], "will become errors in a future release"))
}
func TestParseReturnsScannerErrors(t *testing.T) {
@@ -170,5 +170,5 @@ func TestParseReturnsScannerErrors(t *testing.T) {
LABEL test=%s
`, label))
_, err := Parse(dockerfile)
- assert.EqualError(t, err, "dockerfile line greater than max allowed size of 65535")
+ assert.Check(t, is.Error(err, "dockerfile line greater than max allowed size of 65535"))
}
diff --git a/builder/dockerfile/shell/lex_test.go b/builder/dockerfile/shell/lex_test.go
index 6932a44e3d..7a726ad79b 100644
--- a/builder/dockerfile/shell/lex_test.go
+++ b/builder/dockerfile/shell/lex_test.go
@@ -7,7 +7,8 @@ import (
"strings"
"testing"
- "github.com/stretchr/testify/assert"
+ "github.com/gotestyourself/gotestyourself/assert"
+ is "github.com/gotestyourself/gotestyourself/assert/cmp"
)
func TestShellParser4EnvVars(t *testing.T) {
@@ -15,7 +16,7 @@ func TestShellParser4EnvVars(t *testing.T) {
lineCount := 0
file, err := os.Open(fn)
- assert.NoError(t, err)
+ assert.Check(t, err)
defer file.Close()
shlex := NewLex('\\')
@@ -37,7 +38,7 @@ func TestShellParser4EnvVars(t *testing.T) {
}
words := strings.Split(line, "|")
- assert.Len(t, words, 3)
+ assert.Check(t, is.Len(words, 3))
platform := strings.TrimSpace(words[0])
source := strings.TrimSpace(words[1])
@@ -52,10 +53,10 @@ func TestShellParser4EnvVars(t *testing.T) {
((platform == "U" || platform == "A") && runtime.GOOS != "windows") {
newWord, err := shlex.ProcessWord(source, envs)
if expected == "error" {
- assert.Error(t, err)
+ assert.Check(t, is.ErrorContains(err, ""))
} else {
- assert.NoError(t, err)
- assert.Equal(t, newWord, expected)
+ assert.Check(t, err)
+ assert.Check(t, is.Equal(newWord, expected))
}
}
}
diff --git a/builder/fscache/fscache_test.go b/builder/fscache/fscache_test.go
index 7afee49ed5..613070f7b6 100644
--- a/builder/fscache/fscache_test.go
+++ b/builder/fscache/fscache_test.go
@@ -7,14 +7,15 @@ import (
"testing"
"time"
+ "github.com/gotestyourself/gotestyourself/assert"
+ is "github.com/gotestyourself/gotestyourself/assert/cmp"
"github.com/moby/buildkit/session/filesync"
- "github.com/stretchr/testify/assert"
"golang.org/x/net/context"
)
func TestFSCache(t *testing.T) {
tmpDir, err := ioutil.TempDir("", "fscache")
- assert.Nil(t, err)
+ assert.Check(t, err)
defer os.RemoveAll(tmpDir)
backend := NewNaiveCacheBackend(filepath.Join(tmpDir, "backend"))
@@ -26,84 +27,84 @@ func TestFSCache(t *testing.T) {
}
fscache, err := NewFSCache(opt)
- assert.Nil(t, err)
+ assert.Check(t, err)
defer fscache.Close()
err = fscache.RegisterTransport("test", &testTransport{})
- assert.Nil(t, err)
+ assert.Check(t, err)
src1, err := fscache.SyncFrom(context.TODO(), &testIdentifier{"foo", "data", "bar"})
- assert.Nil(t, err)
+ assert.Check(t, err)
dt, err := ioutil.ReadFile(filepath.Join(src1.Root().Path(), "foo"))
- assert.Nil(t, err)
- assert.Equal(t, string(dt), "data")
+ assert.Check(t, err)
+ assert.Check(t, is.Equal(string(dt), "data"))
// same id doesn't recalculate anything
src2, err := fscache.SyncFrom(context.TODO(), &testIdentifier{"foo", "data2", "bar"})
- assert.Nil(t, err)
- assert.Equal(t, src1.Root().Path(), src2.Root().Path())
+ assert.Check(t, err)
+ assert.Check(t, is.Equal(src1.Root().Path(), src2.Root().Path()))
dt, err = ioutil.ReadFile(filepath.Join(src1.Root().Path(), "foo"))
- assert.Nil(t, err)
- assert.Equal(t, string(dt), "data")
- assert.Nil(t, src2.Close())
+ assert.Check(t, err)
+ assert.Check(t, is.Equal(string(dt), "data"))
+ assert.Check(t, src2.Close())
src3, err := fscache.SyncFrom(context.TODO(), &testIdentifier{"foo2", "data2", "bar"})
- assert.Nil(t, err)
- assert.NotEqual(t, src1.Root().Path(), src3.Root().Path())
+ assert.Check(t, err)
+ assert.Check(t, src1.Root().Path() != src3.Root().Path())
dt, err = ioutil.ReadFile(filepath.Join(src3.Root().Path(), "foo2"))
- assert.Nil(t, err)
- assert.Equal(t, string(dt), "data2")
+ assert.Check(t, err)
+ assert.Check(t, is.Equal(string(dt), "data2"))
s, err := fscache.DiskUsage()
- assert.Nil(t, err)
- assert.Equal(t, s, int64(0))
+ assert.Check(t, err)
+ assert.Check(t, is.Equal(s, int64(0)))
- assert.Nil(t, src3.Close())
+ assert.Check(t, src3.Close())
s, err = fscache.DiskUsage()
- assert.Nil(t, err)
- assert.Equal(t, s, int64(5))
+ assert.Check(t, err)
+ assert.Check(t, is.Equal(s, int64(5)))
// new upload with the same shared key shoutl overwrite
src4, err := fscache.SyncFrom(context.TODO(), &testIdentifier{"foo3", "data3", "bar"})
- assert.Nil(t, err)
- assert.NotEqual(t, src1.Root().Path(), src3.Root().Path())
+ assert.Check(t, err)
+ assert.Check(t, src1.Root().Path() != src3.Root().Path())
dt, err = ioutil.ReadFile(filepath.Join(src3.Root().Path(), "foo3"))
- assert.Nil(t, err)
- assert.Equal(t, string(dt), "data3")
- assert.Equal(t, src4.Root().Path(), src3.Root().Path())
- assert.Nil(t, src4.Close())
+ assert.Check(t, err)
+ assert.Check(t, is.Equal(string(dt), "data3"))
+ assert.Check(t, is.Equal(src4.Root().Path(), src3.Root().Path()))
+ assert.Check(t, src4.Close())
s, err = fscache.DiskUsage()
- assert.Nil(t, err)
- assert.Equal(t, s, int64(10))
+ assert.Check(t, err)
+ assert.Check(t, is.Equal(s, int64(10)))
// this one goes over the GC limit
src5, err := fscache.SyncFrom(context.TODO(), &testIdentifier{"foo4", "datadata", "baz"})
- assert.Nil(t, err)
- assert.Nil(t, src5.Close())
+ assert.Check(t, err)
+ assert.Check(t, src5.Close())
// GC happens async
time.Sleep(100 * time.Millisecond)
// only last insertion after GC
s, err = fscache.DiskUsage()
- assert.Nil(t, err)
- assert.Equal(t, s, int64(8))
+ assert.Check(t, err)
+ assert.Check(t, is.Equal(s, int64(8)))
// prune deletes everything
released, err := fscache.Prune(context.TODO())
- assert.Nil(t, err)
- assert.Equal(t, released, uint64(8))
+ assert.Check(t, err)
+ assert.Check(t, is.Equal(released, uint64(8)))
s, err = fscache.DiskUsage()
- assert.Nil(t, err)
- assert.Equal(t, s, int64(0))
+ assert.Check(t, err)
+ assert.Check(t, is.Equal(s, int64(0)))
}
type testTransport struct {
diff --git a/builder/remotecontext/git/gitutils_test.go b/builder/remotecontext/git/gitutils_test.go
index 4f4d833508..cb2adb8c29 100644
--- a/builder/remotecontext/git/gitutils_test.go
+++ b/builder/remotecontext/git/gitutils_test.go
@@ -13,40 +13,40 @@ import (
"strings"
"testing"
- "github.com/stretchr/testify/assert"
- "github.com/stretchr/testify/require"
+ "github.com/gotestyourself/gotestyourself/assert"
+ is "github.com/gotestyourself/gotestyourself/assert/cmp"
)
func TestParseRemoteURL(t *testing.T) {
dir, err := parseRemoteURL("git://github.com/user/repo.git")
- require.NoError(t, err)
- assert.NotEmpty(t, dir)
- assert.Equal(t, gitRepo{"git://github.com/user/repo.git", "master", ""}, dir)
+ assert.NilError(t, err)
+ assert.Check(t, len(dir) != 0)
+ assert.Check(t, is.DeepEqual(gitRepo{"git://github.com/user/repo.git", "master", ""}, dir))
dir, err = parseRemoteURL("git://github.com/user/repo.git#mybranch:mydir/mysubdir/")
- require.NoError(t, err)
- assert.NotEmpty(t, dir)
- assert.Equal(t, gitRepo{"git://github.com/user/repo.git", "mybranch", "mydir/mysubdir/"}, dir)
+ assert.NilError(t, err)
+ assert.Check(t, len(dir) != 0)
+ assert.Check(t, is.DeepEqual(gitRepo{"git://github.com/user/repo.git", "mybranch", "mydir/mysubdir/"}, dir))
dir, err = parseRemoteURL("https://github.com/user/repo.git")
- require.NoError(t, err)
- assert.NotEmpty(t, dir)
- assert.Equal(t, gitRepo{"https://github.com/user/repo.git", "master", ""}, dir)
+ assert.NilError(t, err)
+ assert.Check(t, len(dir) != 0)
+ assert.Check(t, is.DeepEqual(gitRepo{"https://github.com/user/repo.git", "master", ""}, dir))
dir, err = parseRemoteURL("https://github.com/user/repo.git#mybranch:mydir/mysubdir/")
- require.NoError(t, err)
- assert.NotEmpty(t, dir)
- assert.Equal(t, gitRepo{"https://github.com/user/repo.git", "mybranch", "mydir/mysubdir/"}, dir)
+ assert.NilError(t, err)
+ assert.Check(t, len(dir) != 0)
+ assert.Check(t, is.DeepEqual(gitRepo{"https://github.com/user/repo.git", "mybranch", "mydir/mysubdir/"}, dir))
dir, err = parseRemoteURL("git@github.com:user/repo.git")
- require.NoError(t, err)
- assert.NotEmpty(t, dir)
- assert.Equal(t, gitRepo{"git@github.com:user/repo.git", "master", ""}, dir)
+ assert.NilError(t, err)
+ assert.Check(t, len(dir) != 0)
+ assert.Check(t, is.DeepEqual(gitRepo{"git@github.com:user/repo.git", "master", ""}, dir))
dir, err = parseRemoteURL("git@github.com:user/repo.git#mybranch:mydir/mysubdir/")
- require.NoError(t, err)
- assert.NotEmpty(t, dir)
- assert.Equal(t, gitRepo{"git@github.com:user/repo.git", "mybranch", "mydir/mysubdir/"}, dir)
+ assert.NilError(t, err)
+ assert.Check(t, len(dir) != 0)
+ assert.Check(t, is.DeepEqual(gitRepo{"git@github.com:user/repo.git", "mybranch", "mydir/mysubdir/"}, dir))
}
func TestCloneArgsSmartHttp(t *testing.T) {
@@ -63,7 +63,7 @@ func TestCloneArgsSmartHttp(t *testing.T) {
args := fetchArgs(serverURL.String(), "master")
exp := []string{"fetch", "--depth", "1", "origin", "master"}
- assert.Equal(t, exp, args)
+ assert.Check(t, is.DeepEqual(exp, args))
}
func TestCloneArgsDumbHttp(t *testing.T) {
@@ -79,13 +79,13 @@ func TestCloneArgsDumbHttp(t *testing.T) {
args := fetchArgs(serverURL.String(), "master")
exp := []string{"fetch", "origin", "master"}
- assert.Equal(t, exp, args)
+ assert.Check(t, is.DeepEqual(exp, args))
}
func TestCloneArgsGit(t *testing.T) {
args := fetchArgs("git://github.com/docker/docker", "master")
exp := []string{"fetch", "--depth", "1", "origin", "master"}
- assert.Equal(t, exp, args)
+ assert.Check(t, is.DeepEqual(exp, args))
}
func gitGetConfig(name string) string {
@@ -100,7 +100,7 @@ func gitGetConfig(name string) string {
func TestCheckoutGit(t *testing.T) {
root, err := ioutil.TempDir("", "docker-build-git-checkout")
- require.NoError(t, err)
+ assert.NilError(t, err)
defer os.RemoveAll(root)
autocrlf := gitGetConfig("core.autocrlf")
@@ -115,22 +115,22 @@ func TestCheckoutGit(t *testing.T) {
gitDir := filepath.Join(root, "repo")
_, err = git("init", gitDir)
- require.NoError(t, err)
+ assert.NilError(t, err)
_, err = gitWithinDir(gitDir, "config", "user.email", "test@docker.com")
- require.NoError(t, err)
+ assert.NilError(t, err)
_, err = gitWithinDir(gitDir, "config", "user.name", "Docker test")
- require.NoError(t, err)
+ assert.NilError(t, err)
err = ioutil.WriteFile(filepath.Join(gitDir, "Dockerfile"), []byte("FROM scratch"), 0644)
- require.NoError(t, err)
+ assert.NilError(t, err)
subDir := filepath.Join(gitDir, "subdir")
- require.NoError(t, os.Mkdir(subDir, 0755))
+ assert.NilError(t, os.Mkdir(subDir, 0755))
err = ioutil.WriteFile(filepath.Join(subDir, "Dockerfile"), []byte("FROM scratch\nEXPOSE 5000"), 0644)
- require.NoError(t, err)
+ assert.NilError(t, err)
if runtime.GOOS != "windows" {
if err = os.Symlink("../subdir", filepath.Join(gitDir, "parentlink")); err != nil {
@@ -143,58 +143,58 @@ func TestCheckoutGit(t *testing.T) {
}
_, err = gitWithinDir(gitDir, "add", "-A")
- require.NoError(t, err)
+ assert.NilError(t, err)
_, err = gitWithinDir(gitDir, "commit", "-am", "First commit")
- require.NoError(t, err)
+ assert.NilError(t, err)
_, err = gitWithinDir(gitDir, "checkout", "-b", "test")
- require.NoError(t, err)
+ assert.NilError(t, err)
err = ioutil.WriteFile(filepath.Join(gitDir, "Dockerfile"), []byte("FROM scratch\nEXPOSE 3000"), 0644)
- require.NoError(t, err)
+ assert.NilError(t, err)
err = ioutil.WriteFile(filepath.Join(subDir, "Dockerfile"), []byte("FROM busybox\nEXPOSE 5000"), 0644)
- require.NoError(t, err)
+ assert.NilError(t, err)
_, err = gitWithinDir(gitDir, "add", "-A")
- require.NoError(t, err)
+ assert.NilError(t, err)
_, err = gitWithinDir(gitDir, "commit", "-am", "Branch commit")
- require.NoError(t, err)
+ assert.NilError(t, err)
_, err = gitWithinDir(gitDir, "checkout", "master")
- require.NoError(t, err)
+ assert.NilError(t, err)
// set up submodule
subrepoDir := filepath.Join(root, "subrepo")
_, err = git("init", subrepoDir)
- require.NoError(t, err)
+ assert.NilError(t, err)
_, err = gitWithinDir(subrepoDir, "config", "user.email", "test@docker.com")
- require.NoError(t, err)
+ assert.NilError(t, err)
_, err = gitWithinDir(subrepoDir, "config", "user.name", "Docker test")
- require.NoError(t, err)
+ assert.NilError(t, err)
err = ioutil.WriteFile(filepath.Join(subrepoDir, "subfile"), []byte("subcontents"), 0644)
- require.NoError(t, err)
+ assert.NilError(t, err)
_, err = gitWithinDir(subrepoDir, "add", "-A")
- require.NoError(t, err)
+ assert.NilError(t, err)
_, err = gitWithinDir(subrepoDir, "commit", "-am", "Subrepo initial")
- require.NoError(t, err)
+ assert.NilError(t, err)
cmd := exec.Command("git", "submodule", "add", subrepoDir, "sub") // this command doesn't work with --work-tree
cmd.Dir = gitDir
- require.NoError(t, cmd.Run())
+ assert.NilError(t, cmd.Run())
_, err = gitWithinDir(gitDir, "add", "-A")
- require.NoError(t, err)
+ assert.NilError(t, err)
_, err = gitWithinDir(gitDir, "commit", "-am", "With submodule")
- require.NoError(t, err)
+ assert.NilError(t, err)
type singleCase struct {
frag string
@@ -232,24 +232,24 @@ func TestCheckoutGit(t *testing.T) {
r, err := cloneGitRepo(gitRepo{remote: gitDir, ref: ref, subdir: subdir})
if c.fail {
- assert.Error(t, err)
+ assert.Check(t, is.ErrorContains(err, ""))
continue
}
- require.NoError(t, err)
+ assert.NilError(t, err)
defer os.RemoveAll(r)
if c.submodule {
b, err := ioutil.ReadFile(filepath.Join(r, "sub/subfile"))
- require.NoError(t, err)
- assert.Equal(t, "subcontents", string(b))
+ assert.NilError(t, err)
+ assert.Check(t, is.Equal("subcontents", string(b)))
} else {
_, err := os.Stat(filepath.Join(r, "sub/subfile"))
- require.Error(t, err)
- require.True(t, os.IsNotExist(err))
+ assert.Assert(t, is.ErrorContains(err, ""))
+ assert.Assert(t, os.IsNotExist(err))
}
b, err := ioutil.ReadFile(filepath.Join(r, "Dockerfile"))
- require.NoError(t, err)
- assert.Equal(t, c.exp, string(b))
+ assert.NilError(t, err)
+ assert.Check(t, is.Equal(c.exp, string(b)))
}
}
diff --git a/builder/remotecontext/mimetype_test.go b/builder/remotecontext/mimetype_test.go
index ff097c2e7b..b13429cfa8 100644
--- a/builder/remotecontext/mimetype_test.go
+++ b/builder/remotecontext/mimetype_test.go
@@ -3,14 +3,14 @@ package remotecontext // import "github.com/docker/docker/builder/remotecontext"
import (
"testing"
- "github.com/stretchr/testify/assert"
- "github.com/stretchr/testify/require"
+ "github.com/gotestyourself/gotestyourself/assert"
+ is "github.com/gotestyourself/gotestyourself/assert/cmp"
)
func TestDetectContentType(t *testing.T) {
input := []byte("That is just a plain text")
contentType, _, err := detectContentType(input)
- require.NoError(t, err)
- assert.Equal(t, "text/plain", contentType)
+ assert.NilError(t, err)
+ assert.Check(t, is.Equal("text/plain", contentType))
}
diff --git a/builder/remotecontext/remote_test.go b/builder/remotecontext/remote_test.go
index 3983bd1b6c..5267d23969 100644
--- a/builder/remotecontext/remote_test.go
+++ b/builder/remotecontext/remote_test.go
@@ -11,9 +11,9 @@ import (
"github.com/docker/docker/builder"
"github.com/docker/docker/internal/testutil"
+ "github.com/gotestyourself/gotestyourself/assert"
+ is "github.com/gotestyourself/gotestyourself/assert/cmp"
"github.com/gotestyourself/gotestyourself/fs"
- "github.com/stretchr/testify/assert"
- "github.com/stretchr/testify/require"
)
var binaryContext = []byte{0xFD, 0x37, 0x7A, 0x58, 0x5A, 0x00} //xz magic
@@ -189,12 +189,12 @@ func TestDownloadRemote(t *testing.T) {
mux.Handle("/", http.FileServer(http.Dir(contextDir.Path())))
contentType, content, err := downloadRemote(remoteURL)
- require.NoError(t, err)
+ assert.NilError(t, err)
- assert.Equal(t, mimeTypes.TextPlain, contentType)
+ assert.Check(t, is.Equal(mimeTypes.TextPlain, contentType))
raw, err := ioutil.ReadAll(content)
- require.NoError(t, err)
- assert.Equal(t, dockerfileContents, string(raw))
+ assert.NilError(t, err)
+ assert.Check(t, is.Equal(dockerfileContents, string(raw)))
}
func TestGetWithStatusError(t *testing.T) {
@@ -226,11 +226,11 @@ func TestGetWithStatusError(t *testing.T) {
response, err := GetWithStatusError(ts.URL)
if testcase.expectedErr == "" {
- require.NoError(t, err)
+ assert.NilError(t, err)
body, err := readBody(response.Body)
- require.NoError(t, err)
- assert.Contains(t, string(body), testcase.expectedBody)
+ assert.NilError(t, err)
+ assert.Check(t, is.Contains(string(body), testcase.expectedBody))
} else {
testutil.ErrorContains(t, err, testcase.expectedErr)
}
diff --git a/client/client_test.go b/client/client_test.go
index d6b8f67352..335dd99bcf 100644
--- a/client/client_test.go
+++ b/client/client_test.go
@@ -11,10 +11,10 @@ import (
"github.com/docker/docker/api"
"github.com/docker/docker/api/types"
"github.com/docker/docker/internal/testutil"
+ "github.com/gotestyourself/gotestyourself/assert"
+ is "github.com/gotestyourself/gotestyourself/assert/cmp"
"github.com/gotestyourself/gotestyourself/env"
"github.com/gotestyourself/gotestyourself/skip"
- "github.com/stretchr/testify/assert"
- "github.com/stretchr/testify/require"
)
func TestNewEnvClient(t *testing.T) {
@@ -89,19 +89,19 @@ func TestNewEnvClient(t *testing.T) {
env.PatchAll(t, c.envs)
apiclient, err := NewEnvClient()
if c.expectedError != "" {
- assert.Error(t, err, c.doc)
- assert.Equal(t, c.expectedError, err.Error(), c.doc)
+ assert.Check(t, is.ErrorContains(err, ""), c.doc)
+ assert.Check(t, is.Equal(c.expectedError, err.Error()), c.doc)
} else {
- assert.NoError(t, err, c.doc)
+ assert.Check(t, err, c.doc)
version := apiclient.ClientVersion()
- assert.Equal(t, c.expectedVersion, version, c.doc)
+ assert.Check(t, is.Equal(c.expectedVersion, version), c.doc)
}
if c.envs["DOCKER_TLS_VERIFY"] != "" {
// pedantic checking that this is handled correctly
tr := apiclient.client.Transport.(*http.Transport)
- assert.NotNil(t, tr.TLSClientConfig, c.doc)
- assert.Equal(t, tr.TLSClientConfig.InsecureSkipVerify, false, c.doc)
+ assert.Check(t, tr.TLSClientConfig != nil, c.doc)
+ assert.Check(t, is.Equal(tr.TLSClientConfig.InsecureSkipVerify, false), c.doc)
}
}
}
@@ -128,7 +128,7 @@ func TestGetAPIPath(t *testing.T) {
for _, testcase := range testcases {
c := Client{version: testcase.version, basePath: "/"}
actual := c.getAPIPath(testcase.path, testcase.query)
- assert.Equal(t, actual, testcase.expected)
+ assert.Check(t, is.Equal(actual, testcase.expected))
}
}
@@ -165,7 +165,7 @@ func TestParseHostURL(t *testing.T) {
if testcase.expectedErr != "" {
testutil.ErrorContains(t, err, testcase.expectedErr)
}
- assert.Equal(t, testcase.expected, actual)
+ assert.Check(t, is.DeepEqual(testcase.expected, actual))
}
}
@@ -181,7 +181,7 @@ func TestNewEnvClientSetsDefaultVersion(t *testing.T) {
if err != nil {
t.Fatal(err)
}
- assert.Equal(t, client.version, api.DefaultVersion)
+ assert.Check(t, is.Equal(client.version, api.DefaultVersion))
expected := "1.22"
os.Setenv("DOCKER_API_VERSION", expected)
@@ -189,7 +189,7 @@ func TestNewEnvClientSetsDefaultVersion(t *testing.T) {
if err != nil {
t.Fatal(err)
}
- assert.Equal(t, expected, client.version)
+ assert.Check(t, is.Equal(expected, client.version))
}
// TestNegotiateAPIVersionEmpty asserts that client.Client can
@@ -198,7 +198,7 @@ func TestNegotiateAPIVersionEmpty(t *testing.T) {
defer env.PatchAll(t, map[string]string{"DOCKER_API_VERSION": ""})
client, err := NewEnvClient()
- require.NoError(t, err)
+ assert.NilError(t, err)
ping := types.Ping{
APIVersion: "",
@@ -215,14 +215,14 @@ func TestNegotiateAPIVersionEmpty(t *testing.T) {
// test downgrade
client.NegotiateAPIVersionPing(ping)
- assert.Equal(t, expected, client.version)
+ assert.Check(t, is.Equal(expected, client.version))
}
// TestNegotiateAPIVersion asserts that client.Client can
// negotiate a compatible APIVersion with the server
func TestNegotiateAPIVersion(t *testing.T) {
client, err := NewEnvClient()
- require.NoError(t, err)
+ assert.NilError(t, err)
expected := "1.21"
ping := types.Ping{
@@ -236,14 +236,14 @@ func TestNegotiateAPIVersion(t *testing.T) {
// test downgrade
client.NegotiateAPIVersionPing(ping)
- assert.Equal(t, expected, client.version)
+ assert.Check(t, is.Equal(expected, client.version))
// set the client version to something older, and verify that we keep the
// original setting.
expected = "1.20"
client.version = expected
client.NegotiateAPIVersionPing(ping)
- assert.Equal(t, expected, client.version)
+ assert.Check(t, is.Equal(expected, client.version))
}
@@ -254,7 +254,7 @@ func TestNegotiateAPVersionOverride(t *testing.T) {
defer env.PatchAll(t, map[string]string{"DOCKER_API_VERSION": expected})()
client, err := NewEnvClient()
- require.NoError(t, err)
+ assert.NilError(t, err)
ping := types.Ping{
APIVersion: "1.24",
@@ -264,7 +264,7 @@ func TestNegotiateAPVersionOverride(t *testing.T) {
// test that we honored the env var
client.NegotiateAPIVersionPing(ping)
- assert.Equal(t, expected, client.version)
+ assert.Check(t, is.Equal(expected, client.version))
}
type roundTripFunc func(*http.Request) (*http.Response, error)
@@ -309,9 +309,9 @@ func TestClientRedirect(t *testing.T) {
for _, tc := range cases {
req, err := http.NewRequest(tc.httpMethod, "/redirectme", nil)
- assert.NoError(t, err)
+ assert.Check(t, err)
resp, err := client.Do(req)
- assert.Equal(t, tc.expectedErr, err)
- assert.Equal(t, tc.statusCode, resp.StatusCode)
+ assert.Check(t, is.DeepEqual(tc.expectedErr, err))
+ assert.Check(t, is.Equal(tc.statusCode, resp.StatusCode))
}
}
diff --git a/client/config_create_test.go b/client/config_create_test.go
index 3f3cb3fc56..2ee8f1fd40 100644
--- a/client/config_create_test.go
+++ b/client/config_create_test.go
@@ -11,7 +11,8 @@ import (
"github.com/docker/docker/api/types"
"github.com/docker/docker/api/types/swarm"
- "github.com/stretchr/testify/assert"
+ "github.com/gotestyourself/gotestyourself/assert"
+ is "github.com/gotestyourself/gotestyourself/assert/cmp"
"golang.org/x/net/context"
)
@@ -21,7 +22,7 @@ func TestConfigCreateUnsupported(t *testing.T) {
client: &http.Client{},
}
_, err := client.ConfigCreate(context.Background(), swarm.ConfigSpec{})
- assert.EqualError(t, err, `"config create" requires API version 1.30, but the Docker daemon API version is 1.29`)
+ assert.Check(t, is.Error(err, `"config create" requires API version 1.30, but the Docker daemon API version is 1.29`))
}
func TestConfigCreateError(t *testing.T) {
diff --git a/client/config_inspect_test.go b/client/config_inspect_test.go
index c6d73e5c02..9d5af0bf8c 100644
--- a/client/config_inspect_test.go
+++ b/client/config_inspect_test.go
@@ -10,8 +10,9 @@ import (
"testing"
"github.com/docker/docker/api/types/swarm"
+ "github.com/gotestyourself/gotestyourself/assert"
+ is "github.com/gotestyourself/gotestyourself/assert/cmp"
"github.com/pkg/errors"
- "github.com/stretchr/testify/assert"
"golang.org/x/net/context"
)
@@ -44,7 +45,7 @@ func TestConfigInspectUnsupported(t *testing.T) {
client: &http.Client{},
}
_, _, err := client.ConfigInspectWithRaw(context.Background(), "nothing")
- assert.EqualError(t, err, `"config inspect" requires API version 1.30, but the Docker daemon API version is 1.29`)
+ assert.Check(t, is.Error(err, `"config inspect" requires API version 1.30, but the Docker daemon API version is 1.29`))
}
func TestConfigInspectError(t *testing.T) {
diff --git a/client/config_list_test.go b/client/config_list_test.go
index 4b4a5e84ce..0cd99c50d1 100644
--- a/client/config_list_test.go
+++ b/client/config_list_test.go
@@ -12,7 +12,8 @@ import (
"github.com/docker/docker/api/types"
"github.com/docker/docker/api/types/filters"
"github.com/docker/docker/api/types/swarm"
- "github.com/stretchr/testify/assert"
+ "github.com/gotestyourself/gotestyourself/assert"
+ is "github.com/gotestyourself/gotestyourself/assert/cmp"
"golang.org/x/net/context"
)
@@ -22,7 +23,7 @@ func TestConfigListUnsupported(t *testing.T) {
client: &http.Client{},
}
_, err := client.ConfigList(context.Background(), types.ConfigListOptions{})
- assert.EqualError(t, err, `"config list" requires API version 1.30, but the Docker daemon API version is 1.29`)
+ assert.Check(t, is.Error(err, `"config list" requires API version 1.30, but the Docker daemon API version is 1.29`))
}
func TestConfigListError(t *testing.T) {
diff --git a/client/config_remove_test.go b/client/config_remove_test.go
index 290395aae5..25a5c4ac87 100644
--- a/client/config_remove_test.go
+++ b/client/config_remove_test.go
@@ -8,7 +8,8 @@ import (
"strings"
"testing"
- "github.com/stretchr/testify/assert"
+ "github.com/gotestyourself/gotestyourself/assert"
+ is "github.com/gotestyourself/gotestyourself/assert/cmp"
"golang.org/x/net/context"
)
@@ -18,7 +19,7 @@ func TestConfigRemoveUnsupported(t *testing.T) {
client: &http.Client{},
}
err := client.ConfigRemove(context.Background(), "config_id")
- assert.EqualError(t, err, `"config remove" requires API version 1.30, but the Docker daemon API version is 1.29`)
+ assert.Check(t, is.Error(err, `"config remove" requires API version 1.30, but the Docker daemon API version is 1.29`))
}
func TestConfigRemoveError(t *testing.T) {
diff --git a/client/config_update_test.go b/client/config_update_test.go
index 99f2e173c2..a7eea2f8b1 100644
--- a/client/config_update_test.go
+++ b/client/config_update_test.go
@@ -9,7 +9,8 @@ import (
"testing"
"github.com/docker/docker/api/types/swarm"
- "github.com/stretchr/testify/assert"
+ "github.com/gotestyourself/gotestyourself/assert"
+ is "github.com/gotestyourself/gotestyourself/assert/cmp"
"golang.org/x/net/context"
)
@@ -19,7 +20,7 @@ func TestConfigUpdateUnsupported(t *testing.T) {
client: &http.Client{},
}
err := client.ConfigUpdate(context.Background(), "config_id", swarm.Version{}, swarm.ConfigSpec{})
- assert.EqualError(t, err, `"config update" requires API version 1.30, but the Docker daemon API version is 1.29`)
+ assert.Check(t, is.Error(err, `"config update" requires API version 1.30, but the Docker daemon API version is 1.29`))
}
func TestConfigUpdateError(t *testing.T) {
diff --git a/client/container_prune_test.go b/client/container_prune_test.go
index 1f8c22cbfe..7ffd9c7ecf 100644
--- a/client/container_prune_test.go
+++ b/client/container_prune_test.go
@@ -11,7 +11,8 @@ import (
"github.com/docker/docker/api/types"
"github.com/docker/docker/api/types/filters"
- "github.com/stretchr/testify/assert"
+ "github.com/gotestyourself/gotestyourself/assert"
+ is "github.com/gotestyourself/gotestyourself/assert/cmp"
"golang.org/x/net/context"
)
@@ -24,7 +25,7 @@ func TestContainersPruneError(t *testing.T) {
filters := filters.NewArgs()
_, err := client.ContainersPrune(context.Background(), filters)
- assert.EqualError(t, err, "Error response from daemon: Server error")
+ assert.Check(t, is.Error(err, "Error response from daemon: Server error"))
}
func TestContainersPrune(t *testing.T) {
@@ -99,7 +100,7 @@ func TestContainersPrune(t *testing.T) {
query := req.URL.Query()
for key, expected := range listCase.expectedQueryParams {
actual := query.Get(key)
- assert.Equal(t, expected, actual)
+ assert.Check(t, is.Equal(expected, actual))
}
content, err := json.Marshal(types.ContainersPruneReport{
ContainersDeleted: []string{"container_id1", "container_id2"},
@@ -117,8 +118,8 @@ func TestContainersPrune(t *testing.T) {
}
report, err := client.ContainersPrune(context.Background(), listCase.filters)
- assert.NoError(t, err)
- assert.Len(t, report.ContainersDeleted, 2)
- assert.Equal(t, uint64(9999), report.SpaceReclaimed)
+ assert.Check(t, err)
+ assert.Check(t, is.Len(report.ContainersDeleted, 2))
+ assert.Check(t, is.Equal(uint64(9999), report.SpaceReclaimed))
}
}
diff --git a/client/container_remove_test.go b/client/container_remove_test.go
index 0b1b64fa3a..537272cd1d 100644
--- a/client/container_remove_test.go
+++ b/client/container_remove_test.go
@@ -9,7 +9,8 @@ import (
"testing"
"github.com/docker/docker/api/types"
- "github.com/stretchr/testify/assert"
+ "github.com/gotestyourself/gotestyourself/assert"
+ is "github.com/gotestyourself/gotestyourself/assert/cmp"
"golang.org/x/net/context"
)
@@ -18,7 +19,7 @@ func TestContainerRemoveError(t *testing.T) {
client: newMockClient(errorMock(http.StatusInternalServerError, "Server error")),
}
err := client.ContainerRemove(context.Background(), "container_id", types.ContainerRemoveOptions{})
- assert.EqualError(t, err, "Error response from daemon: Server error")
+ assert.Check(t, is.Error(err, "Error response from daemon: Server error"))
}
func TestContainerRemoveNotFoundError(t *testing.T) {
@@ -26,8 +27,8 @@ func TestContainerRemoveNotFoundError(t *testing.T) {
client: newMockClient(errorMock(http.StatusNotFound, "missing")),
}
err := client.ContainerRemove(context.Background(), "container_id", types.ContainerRemoveOptions{})
- assert.EqualError(t, err, "Error: No such container: container_id")
- assert.True(t, IsErrNotFound(err))
+ assert.Check(t, is.Error(err, "Error: No such container: container_id"))
+ assert.Check(t, IsErrNotFound(err))
}
func TestContainerRemove(t *testing.T) {
@@ -61,5 +62,5 @@ func TestContainerRemove(t *testing.T) {
RemoveVolumes: true,
Force: true,
})
- assert.NoError(t, err)
+ assert.Check(t, err)
}
diff --git a/client/distribution_inspect_test.go b/client/distribution_inspect_test.go
index 90b35a285b..d4124bfa15 100644
--- a/client/distribution_inspect_test.go
+++ b/client/distribution_inspect_test.go
@@ -4,8 +4,9 @@ import (
"net/http"
"testing"
+ "github.com/gotestyourself/gotestyourself/assert"
+ is "github.com/gotestyourself/gotestyourself/assert/cmp"
"github.com/pkg/errors"
- "github.com/stretchr/testify/assert"
"golang.org/x/net/context"
)
@@ -15,7 +16,7 @@ func TestDistributionInspectUnsupported(t *testing.T) {
client: &http.Client{},
}
_, err := client.DistributionInspect(context.Background(), "foobar:1.0", "")
- assert.EqualError(t, err, `"distribution inspect" requires API version 1.30, but the Docker daemon API version is 1.29`)
+ assert.Check(t, is.Error(err, `"distribution inspect" requires API version 1.30, but the Docker daemon API version is 1.29`))
}
func TestDistributionInspectWithEmptyID(t *testing.T) {
diff --git a/client/image_prune_test.go b/client/image_prune_test.go
index f165e5c746..9b161531f2 100644
--- a/client/image_prune_test.go
+++ b/client/image_prune_test.go
@@ -11,7 +11,8 @@ import (
"github.com/docker/docker/api/types"
"github.com/docker/docker/api/types/filters"
- "github.com/stretchr/testify/assert"
+ "github.com/gotestyourself/gotestyourself/assert"
+ is "github.com/gotestyourself/gotestyourself/assert/cmp"
"golang.org/x/net/context"
)
@@ -24,7 +25,7 @@ func TestImagesPruneError(t *testing.T) {
filters := filters.NewArgs()
_, err := client.ImagesPrune(context.Background(), filters)
- assert.EqualError(t, err, "Error response from daemon: Server error")
+ assert.Check(t, is.Error(err, "Error response from daemon: Server error"))
}
func TestImagesPrune(t *testing.T) {
@@ -87,7 +88,7 @@ func TestImagesPrune(t *testing.T) {
query := req.URL.Query()
for key, expected := range listCase.expectedQueryParams {
actual := query.Get(key)
- assert.Equal(t, expected, actual)
+ assert.Check(t, is.Equal(expected, actual))
}
content, err := json.Marshal(types.ImagesPruneReport{
ImagesDeleted: []types.ImageDeleteResponseItem{
@@ -112,8 +113,8 @@ func TestImagesPrune(t *testing.T) {
}
report, err := client.ImagesPrune(context.Background(), listCase.filters)
- assert.NoError(t, err)
- assert.Len(t, report.ImagesDeleted, 2)
- assert.Equal(t, uint64(9999), report.SpaceReclaimed)
+ assert.Check(t, err)
+ assert.Check(t, is.Len(report.ImagesDeleted, 2))
+ assert.Check(t, is.Equal(uint64(9999), report.SpaceReclaimed))
}
}
diff --git a/client/image_remove_test.go b/client/image_remove_test.go
index 8f5aa0120d..a1686e6496 100644
--- a/client/image_remove_test.go
+++ b/client/image_remove_test.go
@@ -10,7 +10,8 @@ import (
"testing"
"github.com/docker/docker/api/types"
- "github.com/stretchr/testify/assert"
+ "github.com/gotestyourself/gotestyourself/assert"
+ is "github.com/gotestyourself/gotestyourself/assert/cmp"
"golang.org/x/net/context"
)
@@ -20,7 +21,7 @@ func TestImageRemoveError(t *testing.T) {
}
_, err := client.ImageRemove(context.Background(), "image_id", types.ImageRemoveOptions{})
- assert.EqualError(t, err, "Error response from daemon: Server error")
+ assert.Check(t, is.Error(err, "Error response from daemon: Server error"))
}
func TestImageRemoveImageNotFound(t *testing.T) {
@@ -29,8 +30,8 @@ func TestImageRemoveImageNotFound(t *testing.T) {
}
_, err := client.ImageRemove(context.Background(), "unknown", types.ImageRemoveOptions{})
- assert.EqualError(t, err, "Error: No such image: unknown")
- assert.True(t, IsErrNotFound(err))
+ assert.Check(t, is.Error(err, "Error: No such image: unknown"))
+ assert.Check(t, IsErrNotFound(err))
}
func TestImageRemove(t *testing.T) {
diff --git a/client/network_inspect_test.go b/client/network_inspect_test.go
index 7031611911..8778021ed9 100644
--- a/client/network_inspect_test.go
+++ b/client/network_inspect_test.go
@@ -11,8 +11,9 @@ import (
"github.com/docker/docker/api/types"
"github.com/docker/docker/api/types/network"
+ "github.com/gotestyourself/gotestyourself/assert"
+ is "github.com/gotestyourself/gotestyourself/assert/cmp"
"github.com/pkg/errors"
- "github.com/stretchr/testify/assert"
"golang.org/x/net/context"
)
@@ -22,7 +23,7 @@ func TestNetworkInspectError(t *testing.T) {
}
_, err := client.NetworkInspect(context.Background(), "nothing", types.NetworkInspectOptions{})
- assert.EqualError(t, err, "Error response from daemon: Server error")
+ assert.Check(t, is.Error(err, "Error response from daemon: Server error"))
}
func TestNetworkInspectNotFoundError(t *testing.T) {
@@ -31,8 +32,8 @@ func TestNetworkInspectNotFoundError(t *testing.T) {
}
_, err := client.NetworkInspect(context.Background(), "unknown", types.NetworkInspectOptions{})
- assert.EqualError(t, err, "Error: No such network: unknown")
- assert.True(t, IsErrNotFound(err))
+ assert.Check(t, is.Error(err, "Error: No such network: unknown"))
+ assert.Check(t, IsErrNotFound(err))
}
func TestNetworkInspectWithEmptyID(t *testing.T) {
@@ -113,5 +114,5 @@ func TestNetworkInspect(t *testing.T) {
}
_, err = client.NetworkInspect(context.Background(), "network_id", types.NetworkInspectOptions{Scope: "global"})
- assert.EqualError(t, err, "Error: No such network: network_id")
+ assert.Check(t, is.Error(err, "Error: No such network: network_id"))
}
diff --git a/client/network_prune_test.go b/client/network_prune_test.go
index 8bba3751e7..85908f0cf3 100644
--- a/client/network_prune_test.go
+++ b/client/network_prune_test.go
@@ -11,7 +11,8 @@ import (
"github.com/docker/docker/api/types"
"github.com/docker/docker/api/types/filters"
- "github.com/stretchr/testify/assert"
+ "github.com/gotestyourself/gotestyourself/assert"
+ is "github.com/gotestyourself/gotestyourself/assert/cmp"
"golang.org/x/net/context"
)
@@ -89,7 +90,7 @@ func TestNetworksPrune(t *testing.T) {
query := req.URL.Query()
for key, expected := range listCase.expectedQueryParams {
actual := query.Get(key)
- assert.Equal(t, expected, actual)
+ assert.Check(t, is.Equal(expected, actual))
}
content, err := json.Marshal(types.NetworksPruneReport{
NetworksDeleted: []string{"network_id1", "network_id2"},
@@ -106,7 +107,7 @@ func TestNetworksPrune(t *testing.T) {
}
report, err := client.NetworksPrune(context.Background(), listCase.filters)
- assert.NoError(t, err)
- assert.Len(t, report.NetworksDeleted, 2)
+ assert.Check(t, err)
+ assert.Check(t, is.Len(report.NetworksDeleted, 2))
}
}
diff --git a/client/ping_test.go b/client/ping_test.go
index 69ff86269d..f83233aceb 100644
--- a/client/ping_test.go
+++ b/client/ping_test.go
@@ -7,7 +7,8 @@ import (
"strings"
"testing"
- "github.com/stretchr/testify/assert"
+ "github.com/gotestyourself/gotestyourself/assert"
+ is "github.com/gotestyourself/gotestyourself/assert/cmp"
"golang.org/x/net/context"
)
@@ -31,15 +32,15 @@ func TestPingFail(t *testing.T) {
}
ping, err := client.Ping(context.Background())
- assert.Error(t, err)
- assert.Equal(t, false, ping.Experimental)
- assert.Equal(t, "", ping.APIVersion)
+ assert.Check(t, is.ErrorContains(err, ""))
+ assert.Check(t, is.Equal(false, ping.Experimental))
+ assert.Check(t, is.Equal("", ping.APIVersion))
withHeader = true
ping2, err := client.Ping(context.Background())
- assert.Error(t, err)
- assert.Equal(t, true, ping2.Experimental)
- assert.Equal(t, "awesome", ping2.APIVersion)
+ assert.Check(t, is.ErrorContains(err, ""))
+ assert.Check(t, is.Equal(true, ping2.Experimental))
+ assert.Check(t, is.Equal("awesome", ping2.APIVersion))
}
// TestPingWithError tests the case where there is a protocol error in the ping.
@@ -57,9 +58,9 @@ func TestPingWithError(t *testing.T) {
}
ping, err := client.Ping(context.Background())
- assert.Error(t, err)
- assert.Equal(t, false, ping.Experimental)
- assert.Equal(t, "", ping.APIVersion)
+ assert.Check(t, is.ErrorContains(err, ""))
+ assert.Check(t, is.Equal(false, ping.Experimental))
+ assert.Check(t, is.Equal("", ping.APIVersion))
}
// TestPingSuccess tests that we are able to get the expected API headers/ping
@@ -76,7 +77,7 @@ func TestPingSuccess(t *testing.T) {
}),
}
ping, err := client.Ping(context.Background())
- assert.Error(t, err)
- assert.Equal(t, true, ping.Experimental)
- assert.Equal(t, "awesome", ping.APIVersion)
+ assert.Check(t, is.ErrorContains(err, ""))
+ assert.Check(t, is.Equal(true, ping.Experimental))
+ assert.Check(t, is.Equal("awesome", ping.APIVersion))
}
diff --git a/client/request_test.go b/client/request_test.go
index 1dbfed62c7..1a0a87e2f4 100644
--- a/client/request_test.go
+++ b/client/request_test.go
@@ -9,7 +9,7 @@ import (
"testing"
"github.com/docker/docker/api/types"
- "github.com/stretchr/testify/require"
+ "github.com/gotestyourself/gotestyourself/assert"
"golang.org/x/net/context"
)
@@ -46,7 +46,7 @@ func TestSetHostHeader(t *testing.T) {
for c, test := range testCases {
hostURL, err := ParseHostURL(test.host)
- require.NoError(t, err)
+ assert.NilError(t, err)
client := &Client{
client: newMockClient(func(req *http.Request) (*http.Response, error) {
@@ -71,7 +71,7 @@ func TestSetHostHeader(t *testing.T) {
}
_, err = client.sendRequest(context.Background(), "GET", testURL, nil, nil, nil)
- require.NoError(t, err)
+ assert.NilError(t, err)
}
}
diff --git a/client/secret_create_test.go b/client/secret_create_test.go
index 7d54e1aeb0..b31cab509f 100644
--- a/client/secret_create_test.go
+++ b/client/secret_create_test.go
@@ -11,7 +11,8 @@ import (
"github.com/docker/docker/api/types"
"github.com/docker/docker/api/types/swarm"
- "github.com/stretchr/testify/assert"
+ "github.com/gotestyourself/gotestyourself/assert"
+ is "github.com/gotestyourself/gotestyourself/assert/cmp"
"golang.org/x/net/context"
)
@@ -21,7 +22,7 @@ func TestSecretCreateUnsupported(t *testing.T) {
client: &http.Client{},
}
_, err := client.SecretCreate(context.Background(), swarm.SecretSpec{})
- assert.EqualError(t, err, `"secret create" requires API version 1.25, but the Docker daemon API version is 1.24`)
+ assert.Check(t, is.Error(err, `"secret create" requires API version 1.25, but the Docker daemon API version is 1.24`))
}
func TestSecretCreateError(t *testing.T) {
diff --git a/client/secret_inspect_test.go b/client/secret_inspect_test.go
index eb63162c18..0bb3ae24cc 100644
--- a/client/secret_inspect_test.go
+++ b/client/secret_inspect_test.go
@@ -10,8 +10,9 @@ import (
"testing"
"github.com/docker/docker/api/types/swarm"
+ "github.com/gotestyourself/gotestyourself/assert"
+ is "github.com/gotestyourself/gotestyourself/assert/cmp"
"github.com/pkg/errors"
- "github.com/stretchr/testify/assert"
"golang.org/x/net/context"
)
@@ -21,7 +22,7 @@ func TestSecretInspectUnsupported(t *testing.T) {
client: &http.Client{},
}
_, _, err := client.SecretInspectWithRaw(context.Background(), "nothing")
- assert.EqualError(t, err, `"secret inspect" requires API version 1.25, but the Docker daemon API version is 1.24`)
+ assert.Check(t, is.Error(err, `"secret inspect" requires API version 1.25, but the Docker daemon API version is 1.24`))
}
func TestSecretInspectError(t *testing.T) {
diff --git a/client/secret_list_test.go b/client/secret_list_test.go
index 2bd427898b..36d8e8e2f0 100644
--- a/client/secret_list_test.go
+++ b/client/secret_list_test.go
@@ -12,7 +12,8 @@ import (
"github.com/docker/docker/api/types"
"github.com/docker/docker/api/types/filters"
"github.com/docker/docker/api/types/swarm"
- "github.com/stretchr/testify/assert"
+ "github.com/gotestyourself/gotestyourself/assert"
+ is "github.com/gotestyourself/gotestyourself/assert/cmp"
"golang.org/x/net/context"
)
@@ -22,7 +23,7 @@ func TestSecretListUnsupported(t *testing.T) {
client: &http.Client{},
}
_, err := client.SecretList(context.Background(), types.SecretListOptions{})
- assert.EqualError(t, err, `"secret list" requires API version 1.25, but the Docker daemon API version is 1.24`)
+ assert.Check(t, is.Error(err, `"secret list" requires API version 1.25, but the Docker daemon API version is 1.24`))
}
func TestSecretListError(t *testing.T) {
diff --git a/client/secret_remove_test.go b/client/secret_remove_test.go
index 44cc0cbcc4..37c22650d1 100644
--- a/client/secret_remove_test.go
+++ b/client/secret_remove_test.go
@@ -8,7 +8,8 @@ import (
"strings"
"testing"
- "github.com/stretchr/testify/assert"
+ "github.com/gotestyourself/gotestyourself/assert"
+ is "github.com/gotestyourself/gotestyourself/assert/cmp"
"golang.org/x/net/context"
)
@@ -18,7 +19,7 @@ func TestSecretRemoveUnsupported(t *testing.T) {
client: &http.Client{},
}
err := client.SecretRemove(context.Background(), "secret_id")
- assert.EqualError(t, err, `"secret remove" requires API version 1.25, but the Docker daemon API version is 1.24`)
+ assert.Check(t, is.Error(err, `"secret remove" requires API version 1.25, but the Docker daemon API version is 1.24`))
}
func TestSecretRemoveError(t *testing.T) {
diff --git a/client/secret_update_test.go b/client/secret_update_test.go
index d2fca4b2d5..3ff172ba53 100644
--- a/client/secret_update_test.go
+++ b/client/secret_update_test.go
@@ -9,7 +9,8 @@ import (
"testing"
"github.com/docker/docker/api/types/swarm"
- "github.com/stretchr/testify/assert"
+ "github.com/gotestyourself/gotestyourself/assert"
+ is "github.com/gotestyourself/gotestyourself/assert/cmp"
"golang.org/x/net/context"
)
@@ -19,7 +20,7 @@ func TestSecretUpdateUnsupported(t *testing.T) {
client: &http.Client{},
}
err := client.SecretUpdate(context.Background(), "secret_id", swarm.Version{}, swarm.SecretSpec{})
- assert.EqualError(t, err, `"secret update" requires API version 1.25, but the Docker daemon API version is 1.24`)
+ assert.Check(t, is.Error(err, `"secret update" requires API version 1.25, but the Docker daemon API version is 1.24`))
}
func TestSecretUpdateError(t *testing.T) {
diff --git a/client/service_create_test.go b/client/service_create_test.go
index 9e859b18ac..c5d8ae4ff9 100644
--- a/client/service_create_test.go
+++ b/client/service_create_test.go
@@ -12,9 +12,10 @@ import (
"github.com/docker/docker/api/types"
registrytypes "github.com/docker/docker/api/types/registry"
"github.com/docker/docker/api/types/swarm"
+ "github.com/gotestyourself/gotestyourself/assert"
+ is "github.com/gotestyourself/gotestyourself/assert/cmp"
"github.com/opencontainers/go-digest"
"github.com/opencontainers/image-spec/specs-go/v1"
- "github.com/stretchr/testify/assert"
"golang.org/x/net/context"
)
@@ -73,8 +74,8 @@ func TestServiceCreateCompatiblePlatforms(t *testing.T) {
return nil, err
}
- assert.Equal(t, "foobar:1.0@sha256:c0537ff6a5218ef531ece93d4984efc99bbf3f7497c0a7726c88e2bb7584dc96", serviceSpec.TaskTemplate.ContainerSpec.Image)
- assert.Len(t, serviceSpec.TaskTemplate.Placement.Platforms, 1)
+ assert.Check(t, is.Equal("foobar:1.0@sha256:c0537ff6a5218ef531ece93d4984efc99bbf3f7497c0a7726c88e2bb7584dc96", serviceSpec.TaskTemplate.ContainerSpec.Image))
+ assert.Check(t, is.Len(serviceSpec.TaskTemplate.Placement.Platforms, 1))
p := serviceSpec.TaskTemplate.Placement.Platforms[0]
b, err := json.Marshal(types.ServiceCreateResponse{
@@ -115,8 +116,8 @@ func TestServiceCreateCompatiblePlatforms(t *testing.T) {
spec := swarm.ServiceSpec{TaskTemplate: swarm.TaskSpec{ContainerSpec: &swarm.ContainerSpec{Image: "foobar:1.0"}}}
r, err := client.ServiceCreate(context.Background(), spec, types.ServiceCreateOptions{QueryRegistry: true})
- assert.NoError(t, err)
- assert.Equal(t, "service_linux_amd64", r.ID)
+ assert.Check(t, err)
+ assert.Check(t, is.Equal("service_linux_amd64", r.ID))
}
func TestServiceCreateDigestPinning(t *testing.T) {
diff --git a/client/service_remove_test.go b/client/service_remove_test.go
index 0909c9e064..9198763f8e 100644
--- a/client/service_remove_test.go
+++ b/client/service_remove_test.go
@@ -8,7 +8,8 @@ import (
"strings"
"testing"
- "github.com/stretchr/testify/assert"
+ "github.com/gotestyourself/gotestyourself/assert"
+ is "github.com/gotestyourself/gotestyourself/assert/cmp"
"golang.org/x/net/context"
)
@@ -18,7 +19,7 @@ func TestServiceRemoveError(t *testing.T) {
}
err := client.ServiceRemove(context.Background(), "service_id")
- assert.EqualError(t, err, "Error response from daemon: Server error")
+ assert.Check(t, is.Error(err, "Error response from daemon: Server error"))
}
func TestServiceRemoveNotFoundError(t *testing.T) {
@@ -27,8 +28,8 @@ func TestServiceRemoveNotFoundError(t *testing.T) {
}
err := client.ServiceRemove(context.Background(), "service_id")
- assert.EqualError(t, err, "Error: No such service: service_id")
- assert.True(t, IsErrNotFound(err))
+ assert.Check(t, is.Error(err, "Error: No such service: service_id"))
+ assert.Check(t, IsErrNotFound(err))
}
func TestServiceRemove(t *testing.T) {
diff --git a/client/swarm_get_unlock_key_test.go b/client/swarm_get_unlock_key_test.go
index c4ac70738a..aff79440fe 100644
--- a/client/swarm_get_unlock_key_test.go
+++ b/client/swarm_get_unlock_key_test.go
@@ -11,8 +11,8 @@ import (
"github.com/docker/docker/api/types"
"github.com/docker/docker/internal/testutil"
- "github.com/stretchr/testify/assert"
- "github.com/stretchr/testify/require"
+ "github.com/gotestyourself/gotestyourself/assert"
+ is "github.com/gotestyourself/gotestyourself/assert/cmp"
"golang.org/x/net/context"
)
@@ -55,6 +55,6 @@ func TestSwarmGetUnlockKey(t *testing.T) {
}
resp, err := client.SwarmGetUnlockKey(context.Background())
- require.NoError(t, err)
- assert.Equal(t, unlockKey, resp.UnlockKey)
+ assert.NilError(t, err)
+ assert.Check(t, is.Equal(unlockKey, resp.UnlockKey))
}
diff --git a/client/volume_inspect_test.go b/client/volume_inspect_test.go
index c97f5c7215..4a2cf7c7d7 100644
--- a/client/volume_inspect_test.go
+++ b/client/volume_inspect_test.go
@@ -11,9 +11,9 @@ import (
"github.com/docker/docker/api/types"
"github.com/docker/docker/internal/testutil"
+ "github.com/gotestyourself/gotestyourself/assert"
+ is "github.com/gotestyourself/gotestyourself/assert/cmp"
"github.com/pkg/errors"
- "github.com/stretchr/testify/assert"
- "github.com/stretchr/testify/require"
"golang.org/x/net/context"
)
@@ -32,7 +32,7 @@ func TestVolumeInspectNotFound(t *testing.T) {
}
_, err := client.VolumeInspect(context.Background(), "unknown")
- assert.True(t, IsErrNotFound(err))
+ assert.Check(t, IsErrNotFound(err))
}
func TestVolumeInspectWithEmptyID(t *testing.T) {
@@ -75,6 +75,6 @@ func TestVolumeInspect(t *testing.T) {
}
volume, err := client.VolumeInspect(context.Background(), "volume_id")
- require.NoError(t, err)
- assert.Equal(t, expected, volume)
+ assert.NilError(t, err)
+ assert.Check(t, is.DeepEqual(expected, volume))
}
diff --git a/cmd/dockerd/config_unix_test.go b/cmd/dockerd/config_unix_test.go
index 2705d671ba..eaa53d8f6f 100644
--- a/cmd/dockerd/config_unix_test.go
+++ b/cmd/dockerd/config_unix_test.go
@@ -6,8 +6,9 @@ import (
"testing"
"github.com/docker/docker/daemon/config"
+ "github.com/gotestyourself/gotestyourself/assert"
+ is "github.com/gotestyourself/gotestyourself/assert/cmp"
"github.com/spf13/pflag"
- "github.com/stretchr/testify/assert"
)
func TestDaemonParseShmSize(t *testing.T) {
@@ -16,7 +17,7 @@ func TestDaemonParseShmSize(t *testing.T) {
conf := &config.Config{}
installConfigFlags(conf, flags)
// By default `--default-shm-size=64M`
- assert.Equal(t, int64(64*1024*1024), conf.ShmSize.Value())
- assert.NoError(t, flags.Set("default-shm-size", "128M"))
- assert.Equal(t, int64(128*1024*1024), conf.ShmSize.Value())
+ assert.Check(t, is.Equal(int64(64*1024*1024), conf.ShmSize.Value()))
+ assert.Check(t, flags.Set("default-shm-size", "128M"))
+ assert.Check(t, is.Equal(int64(128*1024*1024), conf.ShmSize.Value()))
}
diff --git a/cmd/dockerd/daemon_test.go b/cmd/dockerd/daemon_test.go
index b065831871..e5c2c2ec7c 100644
--- a/cmd/dockerd/daemon_test.go
+++ b/cmd/dockerd/daemon_test.go
@@ -5,11 +5,11 @@ import (
"github.com/docker/docker/daemon/config"
"github.com/docker/docker/internal/testutil"
+ "github.com/gotestyourself/gotestyourself/assert"
+ is "github.com/gotestyourself/gotestyourself/assert/cmp"
"github.com/gotestyourself/gotestyourself/fs"
"github.com/sirupsen/logrus"
"github.com/spf13/pflag"
- "github.com/stretchr/testify/assert"
- "github.com/stretchr/testify/require"
)
func defaultOptions(configFile string) *daemonOptions {
@@ -27,8 +27,8 @@ func TestLoadDaemonCliConfigWithoutOverriding(t *testing.T) {
opts.Debug = true
loadedConfig, err := loadDaemonCliConfig(opts)
- require.NoError(t, err)
- require.NotNil(t, loadedConfig)
+ assert.NilError(t, err)
+ assert.Assert(t, loadedConfig != nil)
if !loadedConfig.Debug {
t.Fatalf("expected debug to be copied from the common flags, got false")
}
@@ -40,9 +40,9 @@ func TestLoadDaemonCliConfigWithTLS(t *testing.T) {
opts.TLS = true
loadedConfig, err := loadDaemonCliConfig(opts)
- require.NoError(t, err)
- require.NotNil(t, loadedConfig)
- assert.Equal(t, "/tmp/ca.pem", loadedConfig.CommonTLSOptions.CAFile)
+ assert.NilError(t, err)
+ assert.Assert(t, loadedConfig != nil)
+ assert.Check(t, is.Equal("/tmp/ca.pem", loadedConfig.CommonTLSOptions.CAFile))
}
func TestLoadDaemonCliConfigWithConflicts(t *testing.T) {
@@ -53,9 +53,9 @@ func TestLoadDaemonCliConfigWithConflicts(t *testing.T) {
opts := defaultOptions(configFile)
flags := opts.flags
- assert.NoError(t, flags.Set("config-file", configFile))
- assert.NoError(t, flags.Set("label", "l1=bar"))
- assert.NoError(t, flags.Set("label", "l2=baz"))
+ assert.Check(t, flags.Set("config-file", configFile))
+ assert.Check(t, flags.Set("label", "l1=bar"))
+ assert.Check(t, flags.Set("label", "l2=baz"))
_, err := loadDaemonCliConfig(opts)
testutil.ErrorContains(t, err, "as a flag and in the configuration file: labels")
@@ -69,9 +69,9 @@ func TestLoadDaemonCliWithConflictingNodeGenericResources(t *testing.T) {
opts := defaultOptions(configFile)
flags := opts.flags
- assert.NoError(t, flags.Set("config-file", configFile))
- assert.NoError(t, flags.Set("node-generic-resource", "r1=bar"))
- assert.NoError(t, flags.Set("node-generic-resource", "r2=baz"))
+ assert.Check(t, flags.Set("config-file", configFile))
+ assert.Check(t, flags.Set("node-generic-resource", "r1=bar"))
+ assert.Check(t, flags.Set("node-generic-resource", "r2=baz"))
_, err := loadDaemonCliConfig(opts)
testutil.ErrorContains(t, err, "as a flag and in the configuration file: node-generic-resources")
@@ -81,22 +81,22 @@ func TestLoadDaemonCliWithConflictingLabels(t *testing.T) {
opts := defaultOptions("")
flags := opts.flags
- assert.NoError(t, flags.Set("label", "foo=bar"))
- assert.NoError(t, flags.Set("label", "foo=baz"))
+ assert.Check(t, flags.Set("label", "foo=bar"))
+ assert.Check(t, flags.Set("label", "foo=baz"))
_, err := loadDaemonCliConfig(opts)
- assert.EqualError(t, err, "conflict labels for foo=baz and foo=bar")
+ assert.Check(t, is.Error(err, "conflict labels for foo=baz and foo=bar"))
}
func TestLoadDaemonCliWithDuplicateLabels(t *testing.T) {
opts := defaultOptions("")
flags := opts.flags
- assert.NoError(t, flags.Set("label", "foo=the-same"))
- assert.NoError(t, flags.Set("label", "foo=the-same"))
+ assert.Check(t, flags.Set("label", "foo=the-same"))
+ assert.Check(t, flags.Set("label", "foo=the-same"))
_, err := loadDaemonCliConfig(opts)
- assert.NoError(t, err)
+ assert.Check(t, err)
}
func TestLoadDaemonCliConfigWithTLSVerify(t *testing.T) {
@@ -107,9 +107,9 @@ func TestLoadDaemonCliConfigWithTLSVerify(t *testing.T) {
opts.TLSOptions.CAFile = "/tmp/ca.pem"
loadedConfig, err := loadDaemonCliConfig(opts)
- require.NoError(t, err)
- require.NotNil(t, loadedConfig)
- assert.Equal(t, loadedConfig.TLS, true)
+ assert.NilError(t, err)
+ assert.Assert(t, loadedConfig != nil)
+ assert.Check(t, is.Equal(loadedConfig.TLS, true))
}
func TestLoadDaemonCliConfigWithExplicitTLSVerifyFalse(t *testing.T) {
@@ -120,9 +120,9 @@ func TestLoadDaemonCliConfigWithExplicitTLSVerifyFalse(t *testing.T) {
opts.TLSOptions.CAFile = "/tmp/ca.pem"
loadedConfig, err := loadDaemonCliConfig(opts)
- require.NoError(t, err)
- require.NotNil(t, loadedConfig)
- assert.True(t, loadedConfig.TLS)
+ assert.NilError(t, err)
+ assert.Assert(t, loadedConfig != nil)
+ assert.Check(t, loadedConfig.TLS)
}
func TestLoadDaemonCliConfigWithoutTLSVerify(t *testing.T) {
@@ -133,9 +133,9 @@ func TestLoadDaemonCliConfigWithoutTLSVerify(t *testing.T) {
opts.TLSOptions.CAFile = "/tmp/ca.pem"
loadedConfig, err := loadDaemonCliConfig(opts)
- require.NoError(t, err)
- require.NotNil(t, loadedConfig)
- assert.False(t, loadedConfig.TLS)
+ assert.NilError(t, err)
+ assert.Assert(t, loadedConfig != nil)
+ assert.Check(t, !loadedConfig.TLS)
}
func TestLoadDaemonCliConfigWithLogLevel(t *testing.T) {
@@ -144,10 +144,10 @@ func TestLoadDaemonCliConfigWithLogLevel(t *testing.T) {
opts := defaultOptions(tempFile.Path())
loadedConfig, err := loadDaemonCliConfig(opts)
- require.NoError(t, err)
- require.NotNil(t, loadedConfig)
- assert.Equal(t, "warn", loadedConfig.LogLevel)
- assert.Equal(t, logrus.WarnLevel, logrus.GetLevel())
+ assert.NilError(t, err)
+ assert.Assert(t, loadedConfig != nil)
+ assert.Check(t, is.Equal("warn", loadedConfig.LogLevel))
+ assert.Check(t, is.Equal(logrus.WarnLevel, logrus.GetLevel()))
}
func TestLoadDaemonConfigWithEmbeddedOptions(t *testing.T) {
@@ -157,10 +157,10 @@ func TestLoadDaemonConfigWithEmbeddedOptions(t *testing.T) {
opts := defaultOptions(tempFile.Path())
loadedConfig, err := loadDaemonCliConfig(opts)
- require.NoError(t, err)
- require.NotNil(t, loadedConfig)
- assert.Equal(t, "/etc/certs/ca.pem", loadedConfig.CommonTLSOptions.CAFile)
- assert.Equal(t, "syslog", loadedConfig.LogConfig.Type)
+ assert.NilError(t, err)
+ assert.Assert(t, loadedConfig != nil)
+ assert.Check(t, is.Equal("/etc/certs/ca.pem", loadedConfig.CommonTLSOptions.CAFile))
+ assert.Check(t, is.Equal("syslog", loadedConfig.LogConfig.Type))
}
func TestLoadDaemonConfigWithRegistryOptions(t *testing.T) {
@@ -174,10 +174,10 @@ func TestLoadDaemonConfigWithRegistryOptions(t *testing.T) {
opts := defaultOptions(tempFile.Path())
loadedConfig, err := loadDaemonCliConfig(opts)
- require.NoError(t, err)
- require.NotNil(t, loadedConfig)
+ assert.NilError(t, err)
+ assert.Assert(t, loadedConfig != nil)
- assert.Len(t, loadedConfig.AllowNondistributableArtifacts, 1)
- assert.Len(t, loadedConfig.Mirrors, 1)
- assert.Len(t, loadedConfig.InsecureRegistries, 1)
+ assert.Check(t, is.Len(loadedConfig.AllowNondistributableArtifacts, 1))
+ assert.Check(t, is.Len(loadedConfig.Mirrors, 1))
+ assert.Check(t, is.Len(loadedConfig.InsecureRegistries, 1))
}
diff --git a/cmd/dockerd/daemon_unix_test.go b/cmd/dockerd/daemon_unix_test.go
index 41c392e1b1..39ff1e6822 100644
--- a/cmd/dockerd/daemon_unix_test.go
+++ b/cmd/dockerd/daemon_unix_test.go
@@ -6,9 +6,9 @@ import (
"testing"
"github.com/docker/docker/daemon/config"
+ "github.com/gotestyourself/gotestyourself/assert"
+ is "github.com/gotestyourself/gotestyourself/assert/cmp"
"github.com/gotestyourself/gotestyourself/fs"
- "github.com/stretchr/testify/assert"
- "github.com/stretchr/testify/require"
)
func TestLoadDaemonCliConfigWithDaemonFlags(t *testing.T) {
@@ -19,17 +19,17 @@ func TestLoadDaemonCliConfigWithDaemonFlags(t *testing.T) {
opts := defaultOptions(tempFile.Path())
opts.Debug = true
opts.LogLevel = "info"
- assert.NoError(t, opts.flags.Set("selinux-enabled", "true"))
+ assert.Check(t, opts.flags.Set("selinux-enabled", "true"))
loadedConfig, err := loadDaemonCliConfig(opts)
- require.NoError(t, err)
- require.NotNil(t, loadedConfig)
-
- assert.True(t, loadedConfig.Debug)
- assert.Equal(t, "info", loadedConfig.LogLevel)
- assert.True(t, loadedConfig.EnableSelinuxSupport)
- assert.Equal(t, "json-file", loadedConfig.LogConfig.Type)
- assert.Equal(t, "1k", loadedConfig.LogConfig.Config["max-size"])
+ assert.NilError(t, err)
+ assert.Assert(t, loadedConfig != nil)
+
+ assert.Check(t, loadedConfig.Debug)
+ assert.Check(t, is.Equal("info", loadedConfig.LogLevel))
+ assert.Check(t, loadedConfig.EnableSelinuxSupport)
+ assert.Check(t, is.Equal("json-file", loadedConfig.LogConfig.Type))
+ assert.Check(t, is.Equal("1k", loadedConfig.LogConfig.Config["max-size"]))
}
func TestLoadDaemonConfigWithNetwork(t *testing.T) {
@@ -39,11 +39,11 @@ func TestLoadDaemonConfigWithNetwork(t *testing.T) {
opts := defaultOptions(tempFile.Path())
loadedConfig, err := loadDaemonCliConfig(opts)
- require.NoError(t, err)
- require.NotNil(t, loadedConfig)
+ assert.NilError(t, err)
+ assert.Assert(t, loadedConfig != nil)
- assert.Equal(t, "127.0.0.2", loadedConfig.IP)
- assert.Equal(t, "127.0.0.1", loadedConfig.DefaultIP.String())
+ assert.Check(t, is.Equal("127.0.0.2", loadedConfig.IP))
+ assert.Check(t, is.Equal("127.0.0.1", loadedConfig.DefaultIP.String()))
}
func TestLoadDaemonConfigWithMapOptions(t *testing.T) {
@@ -56,14 +56,14 @@ func TestLoadDaemonConfigWithMapOptions(t *testing.T) {
opts := defaultOptions(tempFile.Path())
loadedConfig, err := loadDaemonCliConfig(opts)
- require.NoError(t, err)
- require.NotNil(t, loadedConfig)
- assert.NotNil(t, loadedConfig.ClusterOpts)
+ assert.NilError(t, err)
+ assert.Assert(t, loadedConfig != nil)
+ assert.Check(t, loadedConfig.ClusterOpts != nil)
expectedPath := "/var/lib/docker/discovery_certs/ca.pem"
- assert.Equal(t, expectedPath, loadedConfig.ClusterOpts["kv.cacertfile"])
- assert.NotNil(t, loadedConfig.LogConfig.Config)
- assert.Equal(t, "test", loadedConfig.LogConfig.Config["tag"])
+ assert.Check(t, is.Equal(expectedPath, loadedConfig.ClusterOpts["kv.cacertfile"]))
+ assert.Check(t, loadedConfig.LogConfig.Config != nil)
+ assert.Check(t, is.Equal("test", loadedConfig.LogConfig.Config["tag"]))
}
func TestLoadDaemonConfigWithTrueDefaultValues(t *testing.T) {
@@ -73,17 +73,17 @@ func TestLoadDaemonConfigWithTrueDefaultValues(t *testing.T) {
opts := defaultOptions(tempFile.Path())
loadedConfig, err := loadDaemonCliConfig(opts)
- require.NoError(t, err)
- require.NotNil(t, loadedConfig)
+ assert.NilError(t, err)
+ assert.Assert(t, loadedConfig != nil)
- assert.False(t, loadedConfig.EnableUserlandProxy)
+ assert.Check(t, !loadedConfig.EnableUserlandProxy)
// make sure reloading doesn't generate configuration
// conflicts after normalizing boolean values.
reload := func(reloadedConfig *config.Config) {
- assert.False(t, reloadedConfig.EnableUserlandProxy)
+ assert.Check(t, !reloadedConfig.EnableUserlandProxy)
}
- assert.NoError(t, config.Reload(opts.configFile, opts.flags, reload))
+ assert.Check(t, config.Reload(opts.configFile, opts.flags, reload))
}
func TestLoadDaemonConfigWithTrueDefaultValuesLeaveDefaults(t *testing.T) {
@@ -92,8 +92,8 @@ func TestLoadDaemonConfigWithTrueDefaultValuesLeaveDefaults(t *testing.T) {
opts := defaultOptions(tempFile.Path())
loadedConfig, err := loadDaemonCliConfig(opts)
- require.NoError(t, err)
- require.NotNil(t, loadedConfig)
+ assert.NilError(t, err)
+ assert.Assert(t, loadedConfig != nil)
- assert.True(t, loadedConfig.EnableUserlandProxy)
+ assert.Check(t, loadedConfig.EnableUserlandProxy)
}
diff --git a/cmd/dockerd/options_test.go b/cmd/dockerd/options_test.go
index c3298a0ac6..2a4e63b6b6 100644
--- a/cmd/dockerd/options_test.go
+++ b/cmd/dockerd/options_test.go
@@ -6,8 +6,9 @@ import (
cliconfig "github.com/docker/docker/cli/config"
"github.com/docker/docker/daemon/config"
+ "github.com/gotestyourself/gotestyourself/assert"
+ is "github.com/gotestyourself/gotestyourself/assert/cmp"
"github.com/spf13/pflag"
- "github.com/stretchr/testify/assert"
)
func TestCommonOptionsInstallFlags(t *testing.T) {
@@ -20,10 +21,10 @@ func TestCommonOptionsInstallFlags(t *testing.T) {
"--tlscert=\"/foo/cert\"",
"--tlskey=\"/foo/key\"",
})
- assert.NoError(t, err)
- assert.Equal(t, "/foo/cafile", opts.TLSOptions.CAFile)
- assert.Equal(t, "/foo/cert", opts.TLSOptions.CertFile)
- assert.Equal(t, opts.TLSOptions.KeyFile, "/foo/key")
+ assert.Check(t, err)
+ assert.Check(t, is.Equal("/foo/cafile", opts.TLSOptions.CAFile))
+ assert.Check(t, is.Equal("/foo/cert", opts.TLSOptions.CertFile))
+ assert.Check(t, is.Equal(opts.TLSOptions.KeyFile, "/foo/key"))
}
func defaultPath(filename string) string {
@@ -36,8 +37,8 @@ func TestCommonOptionsInstallFlagsWithDefaults(t *testing.T) {
opts.InstallFlags(flags)
err := flags.Parse([]string{})
- assert.NoError(t, err)
- assert.Equal(t, defaultPath("ca.pem"), opts.TLSOptions.CAFile)
- assert.Equal(t, defaultPath("cert.pem"), opts.TLSOptions.CertFile)
- assert.Equal(t, defaultPath("key.pem"), opts.TLSOptions.KeyFile)
+ assert.Check(t, err)
+ assert.Check(t, is.Equal(defaultPath("ca.pem"), opts.TLSOptions.CAFile))
+ assert.Check(t, is.Equal(defaultPath("cert.pem"), opts.TLSOptions.CertFile))
+ assert.Check(t, is.Equal(defaultPath("key.pem"), opts.TLSOptions.KeyFile))
}
diff --git a/container/container_unit_test.go b/container/container_unit_test.go
index 863a47a1f2..bf45df942e 100644
--- a/container/container_unit_test.go
+++ b/container/container_unit_test.go
@@ -11,7 +11,7 @@ import (
swarmtypes "github.com/docker/docker/api/types/swarm"
"github.com/docker/docker/daemon/logger/jsonfilelog"
"github.com/docker/docker/pkg/signal"
- "github.com/stretchr/testify/require"
+ "github.com/gotestyourself/gotestyourself/assert"
)
func TestContainerStopSignal(t *testing.T) {
@@ -74,7 +74,7 @@ func TestContainerSecretReferenceDestTarget(t *testing.T) {
func TestContainerLogPathSetForJSONFileLogger(t *testing.T) {
containerRoot, err := ioutil.TempDir("", "TestContainerLogPathSetForJSONFileLogger")
- require.NoError(t, err)
+ assert.NilError(t, err)
defer os.RemoveAll(containerRoot)
c := &Container{
@@ -89,17 +89,17 @@ func TestContainerLogPathSetForJSONFileLogger(t *testing.T) {
}
logger, err := c.StartLogger()
- require.NoError(t, err)
+ assert.NilError(t, err)
defer logger.Close()
expectedLogPath, err := filepath.Abs(filepath.Join(containerRoot, fmt.Sprintf("%s-json.log", c.ID)))
- require.NoError(t, err)
- require.Equal(t, c.LogPath, expectedLogPath)
+ assert.NilError(t, err)
+ assert.Equal(t, c.LogPath, expectedLogPath)
}
func TestContainerLogPathSetForRingLogger(t *testing.T) {
containerRoot, err := ioutil.TempDir("", "TestContainerLogPathSetForRingLogger")
- require.NoError(t, err)
+ assert.NilError(t, err)
defer os.RemoveAll(containerRoot)
c := &Container{
@@ -117,10 +117,10 @@ func TestContainerLogPathSetForRingLogger(t *testing.T) {
}
logger, err := c.StartLogger()
- require.NoError(t, err)
+ assert.NilError(t, err)
defer logger.Close()
expectedLogPath, err := filepath.Abs(filepath.Join(containerRoot, fmt.Sprintf("%s-json.log", c.ID)))
- require.NoError(t, err)
- require.Equal(t, c.LogPath, expectedLogPath)
+ assert.NilError(t, err)
+ assert.Equal(t, c.LogPath, expectedLogPath)
}
diff --git a/container/view_test.go b/container/view_test.go
index 26803b04e6..a872dffea6 100644
--- a/container/view_test.go
+++ b/container/view_test.go
@@ -8,8 +8,9 @@ import (
"github.com/docker/docker/api/types"
containertypes "github.com/docker/docker/api/types/container"
+ "github.com/gotestyourself/gotestyourself/assert"
+ is "github.com/gotestyourself/gotestyourself/assert/cmp"
"github.com/pborman/uuid"
- "github.com/stretchr/testify/assert"
)
var root string
@@ -109,56 +110,56 @@ func TestNames(t *testing.T) {
if err != nil {
t.Fatal(err)
}
- assert.NoError(t, db.ReserveName("name1", "containerid1"))
- assert.NoError(t, db.ReserveName("name1", "containerid1")) // idempotent
- assert.NoError(t, db.ReserveName("name2", "containerid2"))
- assert.EqualError(t, db.ReserveName("name2", "containerid3"), ErrNameReserved.Error())
+ assert.Check(t, db.ReserveName("name1", "containerid1"))
+ assert.Check(t, db.ReserveName("name1", "containerid1")) // idempotent
+ assert.Check(t, db.ReserveName("name2", "containerid2"))
+ assert.Check(t, is.Error(db.ReserveName("name2", "containerid3"), ErrNameReserved.Error()))
// Releasing a name allows the name to point to something else later.
- assert.NoError(t, db.ReleaseName("name2"))
- assert.NoError(t, db.ReserveName("name2", "containerid3"))
+ assert.Check(t, db.ReleaseName("name2"))
+ assert.Check(t, db.ReserveName("name2", "containerid3"))
view := db.Snapshot()
id, err := view.GetID("name1")
- assert.NoError(t, err)
- assert.Equal(t, "containerid1", id)
+ assert.Check(t, err)
+ assert.Check(t, is.Equal("containerid1", id))
id, err = view.GetID("name2")
- assert.NoError(t, err)
- assert.Equal(t, "containerid3", id)
+ assert.Check(t, err)
+ assert.Check(t, is.Equal("containerid3", id))
_, err = view.GetID("notreserved")
- assert.EqualError(t, err, ErrNameNotReserved.Error())
+ assert.Check(t, is.Error(err, ErrNameNotReserved.Error()))
// Releasing and re-reserving a name doesn't affect the snapshot.
- assert.NoError(t, db.ReleaseName("name2"))
- assert.NoError(t, db.ReserveName("name2", "containerid4"))
+ assert.Check(t, db.ReleaseName("name2"))
+ assert.Check(t, db.ReserveName("name2", "containerid4"))
id, err = view.GetID("name1")
- assert.NoError(t, err)
- assert.Equal(t, "containerid1", id)
+ assert.Check(t, err)
+ assert.Check(t, is.Equal("containerid1", id))
id, err = view.GetID("name2")
- assert.NoError(t, err)
- assert.Equal(t, "containerid3", id)
+ assert.Check(t, err)
+ assert.Check(t, is.Equal("containerid3", id))
// GetAllNames
- assert.Equal(t, map[string][]string{"containerid1": {"name1"}, "containerid3": {"name2"}}, view.GetAllNames())
+ assert.Check(t, is.DeepEqual(map[string][]string{"containerid1": {"name1"}, "containerid3": {"name2"}}, view.GetAllNames()))
- assert.NoError(t, db.ReserveName("name3", "containerid1"))
- assert.NoError(t, db.ReserveName("name4", "containerid1"))
+ assert.Check(t, db.ReserveName("name3", "containerid1"))
+ assert.Check(t, db.ReserveName("name4", "containerid1"))
view = db.Snapshot()
- assert.Equal(t, map[string][]string{"containerid1": {"name1", "name3", "name4"}, "containerid4": {"name2"}}, view.GetAllNames())
+ assert.Check(t, is.DeepEqual(map[string][]string{"containerid1": {"name1", "name3", "name4"}, "containerid4": {"name2"}}, view.GetAllNames()))
// Release containerid1's names with Delete even though no container exists
- assert.NoError(t, db.Delete(&Container{ID: "containerid1"}))
+ assert.Check(t, db.Delete(&Container{ID: "containerid1"}))
// Reusing one of those names should work
- assert.NoError(t, db.ReserveName("name1", "containerid4"))
+ assert.Check(t, db.ReserveName("name1", "containerid4"))
view = db.Snapshot()
- assert.Equal(t, map[string][]string{"containerid4": {"name1", "name2"}}, view.GetAllNames())
+ assert.Check(t, is.DeepEqual(map[string][]string{"containerid4": {"name1", "name2"}}, view.GetAllNames()))
}
// Test case for GitHub issue 35920
diff --git a/daemon/cluster/convert/service_test.go b/daemon/cluster/convert/service_test.go
index 347aa028be..0794af99a6 100644
--- a/daemon/cluster/convert/service_test.go
+++ b/daemon/cluster/convert/service_test.go
@@ -8,7 +8,7 @@ import (
"github.com/docker/docker/api/types/swarm/runtime"
swarmapi "github.com/docker/swarmkit/api"
google_protobuf3 "github.com/gogo/protobuf/types"
- "github.com/stretchr/testify/require"
+ "github.com/gotestyourself/gotestyourself/assert"
)
func TestServiceConvertFromGRPCRuntimeContainer(t *testing.T) {
@@ -178,12 +178,12 @@ func TestServiceConvertToGRPCIsolation(t *testing.T) {
},
}
res, err := ServiceSpecToGRPC(s)
- require.NoError(t, err)
+ assert.NilError(t, err)
v, ok := res.Task.Runtime.(*swarmapi.TaskSpec_Container)
if !ok {
t.Fatal("expected type swarmapi.TaskSpec_Container")
}
- require.Equal(t, c.to, v.Container.Isolation)
+ assert.Equal(t, c.to, v.Container.Isolation)
})
}
}
@@ -228,7 +228,7 @@ func TestServiceConvertFromGRPCIsolation(t *testing.T) {
t.Fatal(err)
}
- require.Equal(t, c.to, svc.Spec.TaskTemplate.ContainerSpec.Isolation)
+ assert.Equal(t, c.to, svc.Spec.TaskTemplate.ContainerSpec.Isolation)
})
}
}
diff --git a/daemon/cluster/executor/container/container_test.go b/daemon/cluster/executor/container/container_test.go
index 456cd403b1..1e94171974 100644
--- a/daemon/cluster/executor/container/container_test.go
+++ b/daemon/cluster/executor/container/container_test.go
@@ -5,7 +5,7 @@ import (
container "github.com/docker/docker/api/types/container"
swarmapi "github.com/docker/swarmkit/api"
- "github.com/stretchr/testify/require"
+ "github.com/gotestyourself/gotestyourself/assert"
)
func TestIsolationConversion(t *testing.T) {
@@ -31,7 +31,7 @@ func TestIsolationConversion(t *testing.T) {
},
}
config := containerConfig{task: &task}
- require.Equal(t, c.to, config.hostConfig().Isolation)
+ assert.Equal(t, c.to, config.hostConfig().Isolation)
})
}
}
diff --git a/daemon/config/config_test.go b/daemon/config/config_test.go
index 53db2922cb..2fe2b3805c 100644
--- a/daemon/config/config_test.go
+++ b/daemon/config/config_test.go
@@ -9,9 +9,10 @@ import (
"github.com/docker/docker/daemon/discovery"
"github.com/docker/docker/internal/testutil"
"github.com/docker/docker/opts"
+ "github.com/gotestyourself/gotestyourself/assert"
+ is "github.com/gotestyourself/gotestyourself/assert/cmp"
"github.com/gotestyourself/gotestyourself/fs"
"github.com/spf13/pflag"
- "github.com/stretchr/testify/assert"
)
func TestDaemonConfigurationNotFound(t *testing.T) {
@@ -59,7 +60,7 @@ func TestFindConfigurationConflicts(t *testing.T) {
flags := pflag.NewFlagSet("test", pflag.ContinueOnError)
flags.String("authorization-plugins", "", "")
- assert.NoError(t, flags.Set("authorization-plugins", "asdf"))
+ assert.Check(t, flags.Set("authorization-plugins", "asdf"))
testutil.ErrorContains(t,
findConfigurationConflicts(config, flags),
@@ -72,8 +73,8 @@ func TestFindConfigurationConflictsWithNamedOptions(t *testing.T) {
var hosts []string
flags.VarP(opts.NewNamedListOptsRef("hosts", &hosts, opts.ValidateHost), "host", "H", "Daemon socket(s) to connect to")
- assert.NoError(t, flags.Set("host", "tcp://127.0.0.1:4444"))
- assert.NoError(t, flags.Set("host", "unix:///var/run/docker.sock"))
+ assert.Check(t, flags.Set("host", "tcp://127.0.0.1:4444"))
+ assert.Check(t, flags.Set("host", "unix:///var/run/docker.sock"))
testutil.ErrorContains(t, findConfigurationConflicts(config, flags), "hosts")
}
@@ -424,7 +425,7 @@ func TestReloadSetConfigFileNotExist(t *testing.T) {
flags.Set("config-file", configFile)
err := Reload(configFile, flags, func(c *Config) {})
- assert.Error(t, err)
+ assert.Check(t, is.ErrorContains(err, ""))
testutil.ErrorContains(t, err, "unable to configure the Docker daemon with file")
}
@@ -438,8 +439,8 @@ func TestReloadDefaultConfigNotExist(t *testing.T) {
err := Reload(configFile, flags, func(c *Config) {
reloaded = true
})
- assert.Nil(t, err)
- assert.True(t, reloaded)
+ assert.Check(t, err)
+ assert.Check(t, reloaded)
}
// TestReloadBadDefaultConfig tests that when `--config-file` is not set
@@ -457,7 +458,7 @@ func TestReloadBadDefaultConfig(t *testing.T) {
flags := pflag.NewFlagSet("test", pflag.ContinueOnError)
flags.String("config-file", configFile, "")
err = Reload(configFile, flags, func(c *Config) {})
- assert.Error(t, err)
+ assert.Check(t, is.ErrorContains(err, ""))
testutil.ErrorContains(t, err, "unable to configure the Docker daemon with file")
}
@@ -484,5 +485,5 @@ func TestReloadWithDuplicateLabels(t *testing.T) {
flags.String("config-file", configFile, "")
flags.StringSlice("labels", lbls, "")
err := Reload(configFile, flags, func(c *Config) {})
- assert.NoError(t, err)
+ assert.Check(t, err)
}
diff --git a/daemon/config/config_unix_test.go b/daemon/config/config_unix_test.go
index b4efa95e0e..53eb428264 100644
--- a/daemon/config/config_unix_test.go
+++ b/daemon/config/config_unix_test.go
@@ -7,10 +7,10 @@ import (
"github.com/docker/docker/opts"
units "github.com/docker/go-units"
+ "github.com/gotestyourself/gotestyourself/assert"
+ is "github.com/gotestyourself/gotestyourself/assert/cmp"
"github.com/gotestyourself/gotestyourself/fs"
"github.com/spf13/pflag"
- "github.com/stretchr/testify/assert"
- "github.com/stretchr/testify/require"
)
func TestGetConflictFreeConfiguration(t *testing.T) {
@@ -39,9 +39,9 @@ func TestGetConflictFreeConfiguration(t *testing.T) {
flags.Var(opts.NewNamedMapOpts("log-opts", nil, nil), "log-opt", "")
cc, err := getConflictFreeConfiguration(file.Path(), flags)
- require.NoError(t, err)
+ assert.NilError(t, err)
- assert.True(t, cc.Debug)
+ assert.Check(t, cc.Debug)
expectedUlimits := map[string]*units.Ulimit{
"nofile": {
@@ -51,7 +51,7 @@ func TestGetConflictFreeConfiguration(t *testing.T) {
},
}
- assert.Equal(t, expectedUlimits, cc.Ulimits)
+ assert.Check(t, is.DeepEqual(expectedUlimits, cc.Ulimits))
}
func TestDaemonConfigurationMerge(t *testing.T) {
@@ -91,17 +91,17 @@ func TestDaemonConfigurationMerge(t *testing.T) {
flags.Var(opts.NewNamedMapOpts("log-opts", nil, nil), "log-opt", "")
cc, err := MergeDaemonConfigurations(c, flags, file.Path())
- require.NoError(t, err)
+ assert.NilError(t, err)
- assert.True(t, cc.Debug)
- assert.True(t, cc.AutoRestart)
+ assert.Check(t, cc.Debug)
+ assert.Check(t, cc.AutoRestart)
expectedLogConfig := LogConfig{
Type: "syslog",
Config: map[string]string{"tag": "test_tag"},
}
- assert.Equal(t, expectedLogConfig, cc.LogConfig)
+ assert.Check(t, is.DeepEqual(expectedLogConfig, cc.LogConfig))
expectedUlimits := map[string]*units.Ulimit{
"nofile": {
@@ -111,7 +111,7 @@ func TestDaemonConfigurationMerge(t *testing.T) {
},
}
- assert.Equal(t, expectedUlimits, cc.Ulimits)
+ assert.Check(t, is.DeepEqual(expectedUlimits, cc.Ulimits))
}
func TestDaemonConfigurationMergeShmSize(t *testing.T) {
@@ -127,8 +127,8 @@ func TestDaemonConfigurationMergeShmSize(t *testing.T) {
flags.Var(&shmSize, "default-shm-size", "")
cc, err := MergeDaemonConfigurations(c, flags, file.Path())
- require.NoError(t, err)
+ assert.NilError(t, err)
expectedValue := 1 * 1024 * 1024 * 1024
- assert.Equal(t, int64(expectedValue), cc.ShmSize.Value())
+ assert.Check(t, is.Equal(int64(expectedValue), cc.ShmSize.Value()))
}
diff --git a/daemon/config/config_windows_test.go b/daemon/config/config_windows_test.go
index 5382bb3b77..fff98014f9 100644
--- a/daemon/config/config_windows_test.go
+++ b/daemon/config/config_windows_test.go
@@ -7,9 +7,9 @@ import (
"testing"
"github.com/docker/docker/opts"
+ "github.com/gotestyourself/gotestyourself/assert"
+ is "github.com/gotestyourself/gotestyourself/assert/cmp"
"github.com/spf13/pflag"
- "github.com/stretchr/testify/assert"
- "github.com/stretchr/testify/require"
)
func TestDaemonConfigurationMerge(t *testing.T) {
@@ -46,15 +46,15 @@ func TestDaemonConfigurationMerge(t *testing.T) {
flags.Var(opts.NewNamedMapOpts("log-opts", nil, nil), "log-opt", "")
cc, err := MergeDaemonConfigurations(c, flags, configFile)
- require.NoError(t, err)
+ assert.NilError(t, err)
- assert.True(t, cc.Debug)
- assert.True(t, cc.AutoRestart)
+ assert.Check(t, cc.Debug)
+ assert.Check(t, cc.AutoRestart)
expectedLogConfig := LogConfig{
Type: "syslog",
Config: map[string]string{"tag": "test_tag"},
}
- assert.Equal(t, expectedLogConfig, cc.LogConfig)
+ assert.Check(t, is.DeepEqual(expectedLogConfig, cc.LogConfig))
}
diff --git a/daemon/container_unix_test.go b/daemon/container_unix_test.go
index e102be6cdc..12075f8b8d 100644
--- a/daemon/container_unix_test.go
+++ b/daemon/container_unix_test.go
@@ -9,7 +9,7 @@ import (
containertypes "github.com/docker/docker/api/types/container"
"github.com/docker/docker/daemon/config"
"github.com/docker/go-connections/nat"
- "github.com/stretchr/testify/require"
+ "github.com/gotestyourself/gotestyourself/assert"
)
// TestContainerWarningHostAndPublishPorts that a warning is returned when setting network mode to host and specifying published ports.
@@ -38,7 +38,7 @@ func TestContainerWarningHostAndPublishPorts(t *testing.T) {
}
d := &Daemon{configStore: cs}
wrns, err := d.verifyContainerSettings("", hostConfig, &containertypes.Config{}, false)
- require.NoError(t, err)
- require.Equal(t, tc.warnings, wrns)
+ assert.NilError(t, err)
+ assert.DeepEqual(t, tc.warnings, wrns)
}
}
diff --git a/daemon/create_test.go b/daemon/create_test.go
index 3e355f6473..7ef49d7623 100644
--- a/daemon/create_test.go
+++ b/daemon/create_test.go
@@ -5,7 +5,7 @@ import (
"github.com/docker/docker/api/types/network"
"github.com/docker/docker/errdefs"
- "github.com/stretchr/testify/assert"
+ "github.com/gotestyourself/gotestyourself/assert"
)
// Test case for 35752
@@ -17,5 +17,5 @@ func TestVerifyNetworkingConfig(t *testing.T) {
EndpointsConfig: endpoints,
}
err := verifyNetworkingConfig(nwConfig)
- assert.True(t, errdefs.IsInvalidParameter(err))
+ assert.Check(t, errdefs.IsInvalidParameter(err))
}
diff --git a/daemon/daemon_linux_test.go b/daemon/daemon_linux_test.go
index ad651e3e1c..195afb1e0f 100644
--- a/daemon/daemon_linux_test.go
+++ b/daemon/daemon_linux_test.go
@@ -11,8 +11,8 @@ import (
"github.com/docker/docker/oci"
"github.com/docker/docker/pkg/idtools"
"github.com/docker/docker/pkg/mount"
-
- "github.com/stretchr/testify/assert"
+ "github.com/gotestyourself/gotestyourself/assert"
+ is "github.com/gotestyourself/gotestyourself/assert/cmp"
)
const mountsFixture = `142 78 0:38 / / rw,relatime - aufs none rw,si=573b861da0b3a05b,dio
@@ -138,7 +138,7 @@ func TestTmpfsDevShmSizeOverride(t *testing.T) {
// convert ms to spec
spec := oci.DefaultSpec()
err := setMounts(&d, &spec, c, ms)
- assert.NoError(t, err)
+ assert.Check(t, err)
// Check the resulting spec for the correct size
found := false
@@ -149,7 +149,7 @@ func TestTmpfsDevShmSizeOverride(t *testing.T) {
continue
}
t.Logf("%+v\n", m.Options)
- assert.Equal(t, "size="+size, o)
+ assert.Check(t, is.Equal("size="+size, o))
found = true
}
}
@@ -163,7 +163,7 @@ func TestValidateContainerIsolationLinux(t *testing.T) {
d := Daemon{}
_, err := d.verifyContainerSettings("linux", &containertypes.HostConfig{Isolation: containertypes.IsolationHyperV}, nil, false)
- assert.EqualError(t, err, "invalid isolation 'hyperv' on linux")
+ assert.Check(t, is.Error(err, "invalid isolation 'hyperv' on linux"))
}
func TestShouldUnmountRoot(t *testing.T) {
@@ -222,7 +222,7 @@ func TestShouldUnmountRoot(t *testing.T) {
if test.info != nil {
test.info.Optional = options.Optional
}
- assert.Equal(t, expect, shouldUnmountRoot(test.root, test.info))
+ assert.Check(t, is.Equal(expect, shouldUnmountRoot(test.root, test.info)))
})
}
})
diff --git a/daemon/daemon_test.go b/daemon/daemon_test.go
index 5d40e11143..2fb4ff902a 100644
--- a/daemon/daemon_test.go
+++ b/daemon/daemon_test.go
@@ -19,8 +19,9 @@ import (
"github.com/docker/docker/volume/store"
"github.com/docker/go-connections/nat"
"github.com/docker/libnetwork"
+ "github.com/gotestyourself/gotestyourself/assert"
+ is "github.com/gotestyourself/gotestyourself/assert/cmp"
"github.com/pkg/errors"
- "github.com/stretchr/testify/assert"
)
//
@@ -312,7 +313,7 @@ func TestValidateContainerIsolation(t *testing.T) {
d := Daemon{}
_, err := d.verifyContainerSettings(runtime.GOOS, &containertypes.HostConfig{Isolation: containertypes.Isolation("invalid")}, nil, false)
- assert.EqualError(t, err, "invalid isolation 'invalid' on "+runtime.GOOS)
+ assert.Check(t, is.Error(err, "invalid isolation 'invalid' on "+runtime.GOOS))
}
func TestFindNetworkErrorType(t *testing.T) {
@@ -320,6 +321,6 @@ func TestFindNetworkErrorType(t *testing.T) {
_, err := d.FindNetwork("fakeNet")
_, ok := errors.Cause(err).(libnetwork.ErrNoSuchNetwork)
if !errdefs.IsNotFound(err) || !ok {
- assert.Fail(t, "The FindNetwork method MUST always return an error that implements the NotFound interface and is ErrNoSuchNetwork")
+ t.Error("The FindNetwork method MUST always return an error that implements the NotFound interface and is ErrNoSuchNetwork")
}
}
diff --git a/daemon/daemon_unix_test.go b/daemon/daemon_unix_test.go
index cd88b38335..84281c0b8c 100644
--- a/daemon/daemon_unix_test.go
+++ b/daemon/daemon_unix_test.go
@@ -17,7 +17,7 @@ import (
"github.com/docker/docker/volume/drivers"
"github.com/docker/docker/volume/local"
"github.com/docker/docker/volume/store"
- "github.com/stretchr/testify/require"
+ "github.com/gotestyourself/gotestyourself/assert"
)
type fakeContainerGetter struct {
@@ -290,12 +290,12 @@ func TestMigratePre17Volumes(t *testing.T) {
containerRoot := filepath.Join(rootDir, "containers")
cid := "1234"
err = os.MkdirAll(filepath.Join(containerRoot, cid), 0755)
- require.NoError(t, err)
+ assert.NilError(t, err)
vid := "5678"
vfsPath := filepath.Join(rootDir, "vfs", "dir", vid)
err = os.MkdirAll(vfsPath, 0755)
- require.NoError(t, err)
+ assert.NilError(t, err)
config := []byte(`
{
diff --git a/daemon/delete_test.go b/daemon/delete_test.go
index 48a8afec48..8bfa5d8170 100644
--- a/daemon/delete_test.go
+++ b/daemon/delete_test.go
@@ -10,12 +10,12 @@ import (
containertypes "github.com/docker/docker/api/types/container"
"github.com/docker/docker/container"
"github.com/docker/docker/internal/testutil"
- "github.com/stretchr/testify/require"
+ "github.com/gotestyourself/gotestyourself/assert"
)
func newDaemonWithTmpRoot(t *testing.T) (*Daemon, func()) {
tmp, err := ioutil.TempDir("", "docker-daemon-unix-test-")
- require.NoError(t, err)
+ assert.NilError(t, err)
d := &Daemon{
repository: tmp,
root: tmp,
diff --git a/daemon/discovery/discovery_test.go b/daemon/discovery/discovery_test.go
index 4560af2878..d00e02e10b 100644
--- a/daemon/discovery/discovery_test.go
+++ b/daemon/discovery/discovery_test.go
@@ -5,8 +5,8 @@ import (
"testing"
"time"
- "github.com/stretchr/testify/assert"
- "github.com/stretchr/testify/require"
+ "github.com/gotestyourself/gotestyourself/assert"
+ is "github.com/gotestyourself/gotestyourself/assert/cmp"
)
func TestDiscoveryOptsErrors(t *testing.T) {
@@ -42,26 +42,26 @@ func TestDiscoveryOptsErrors(t *testing.T) {
for _, testcase := range testcases {
_, _, err := discoveryOpts(testcase.opts)
- assert.Error(t, err, testcase.doc)
+ assert.Check(t, is.ErrorContains(err, ""), testcase.doc)
}
}
func TestDiscoveryOpts(t *testing.T) {
clusterOpts := map[string]string{"discovery.heartbeat": "10", "discovery.ttl": "20"}
heartbeat, ttl, err := discoveryOpts(clusterOpts)
- require.NoError(t, err)
- assert.Equal(t, 10*time.Second, heartbeat)
- assert.Equal(t, 20*time.Second, ttl)
+ assert.NilError(t, err)
+ assert.Check(t, is.Equal(10*time.Second, heartbeat))
+ assert.Check(t, is.Equal(20*time.Second, ttl))
clusterOpts = map[string]string{"discovery.heartbeat": "10"}
heartbeat, ttl, err = discoveryOpts(clusterOpts)
- require.NoError(t, err)
- assert.Equal(t, 10*time.Second, heartbeat)
- assert.Equal(t, 10*defaultDiscoveryTTLFactor*time.Second, ttl)
+ assert.NilError(t, err)
+ assert.Check(t, is.Equal(10*time.Second, heartbeat))
+ assert.Check(t, is.Equal(10*defaultDiscoveryTTLFactor*time.Second, ttl))
clusterOpts = map[string]string{"discovery.ttl": "30"}
heartbeat, ttl, err = discoveryOpts(clusterOpts)
- require.NoError(t, err)
+ assert.NilError(t, err)
if ttl != 30*time.Second {
t.Fatalf("TTL - Expected : %v, Actual : %v", 30*time.Second, ttl)
diff --git a/daemon/graphdriver/aufs/aufs_test.go b/daemon/graphdriver/aufs/aufs_test.go
index d0641abe35..2338ad320d 100644
--- a/daemon/graphdriver/aufs/aufs_test.go
+++ b/daemon/graphdriver/aufs/aufs_test.go
@@ -17,8 +17,8 @@ import (
"github.com/docker/docker/pkg/archive"
"github.com/docker/docker/pkg/reexec"
"github.com/docker/docker/pkg/stringid"
- "github.com/stretchr/testify/assert"
- "github.com/stretchr/testify/require"
+ "github.com/gotestyourself/gotestyourself/assert"
+ is "github.com/gotestyourself/gotestyourself/assert/cmp"
)
var (
@@ -189,7 +189,7 @@ func TestCleanupWithNoDirs(t *testing.T) {
defer os.RemoveAll(tmp)
err := d.Cleanup()
- assert.NoError(t, err)
+ assert.Check(t, err)
}
func TestCleanupWithDir(t *testing.T) {
@@ -210,11 +210,11 @@ func TestMountedFalseResponse(t *testing.T) {
defer os.RemoveAll(tmp)
err := d.Create("1", "", nil)
- require.NoError(t, err)
+ assert.NilError(t, err)
response, err := d.mounted(d.getDiffPath("1"))
- require.NoError(t, err)
- assert.False(t, response)
+ assert.NilError(t, err)
+ assert.Check(t, !response)
}
func TestMountedTrueResponse(t *testing.T) {
@@ -223,16 +223,16 @@ func TestMountedTrueResponse(t *testing.T) {
defer d.Cleanup()
err := d.Create("1", "", nil)
- require.NoError(t, err)
+ assert.NilError(t, err)
err = d.Create("2", "1", nil)
- require.NoError(t, err)
+ assert.NilError(t, err)
_, err = d.Get("2", "")
- require.NoError(t, err)
+ assert.NilError(t, err)
response, err := d.mounted(d.pathCache["2"])
- require.NoError(t, err)
- assert.True(t, response)
+ assert.NilError(t, err)
+ assert.Check(t, response)
}
func TestMountWithParent(t *testing.T) {
@@ -567,7 +567,7 @@ func TestStatus(t *testing.T) {
}
status := d.Status()
- assert.Len(t, status, 4)
+ assert.Check(t, is.Len(status, 4))
rootDir := status[0]
dirs := status[2]
@@ -670,18 +670,18 @@ func testMountMoreThan42Layers(t *testing.T, mountPath string) {
current = hash(current)
err := d.CreateReadWrite(current, parent, nil)
- require.NoError(t, err, "current layer %d", i)
+ assert.NilError(t, err, "current layer %d", i)
point, err := driverGet(d, current, "")
- require.NoError(t, err, "current layer %d", i)
+ assert.NilError(t, err, "current layer %d", i)
f, err := os.Create(path.Join(point, current))
- require.NoError(t, err, "current layer %d", i)
+ assert.NilError(t, err, "current layer %d", i)
f.Close()
if i%10 == 0 {
err := os.Remove(path.Join(point, parent))
- require.NoError(t, err, "current layer %d", i)
+ assert.NilError(t, err, "current layer %d", i)
expected--
}
last = current
@@ -689,10 +689,10 @@ func testMountMoreThan42Layers(t *testing.T, mountPath string) {
// Perform the actual mount for the top most image
point, err := driverGet(d, last, "")
- require.NoError(t, err)
+ assert.NilError(t, err)
files, err := ioutil.ReadDir(point)
- require.NoError(t, err)
- assert.Len(t, files, expected)
+ assert.NilError(t, err)
+ assert.Check(t, is.Len(files, expected))
}
func TestMountMoreThan42Layers(t *testing.T) {
diff --git a/daemon/graphdriver/copy/copy_test.go b/daemon/graphdriver/copy/copy_test.go
index 6d4387c94e..a09bb2637e 100644
--- a/daemon/graphdriver/copy/copy_test.go
+++ b/daemon/graphdriver/copy/copy_test.go
@@ -14,8 +14,8 @@ import (
"github.com/docker/docker/pkg/parsers/kernel"
"github.com/docker/docker/pkg/system"
- "github.com/stretchr/testify/assert"
- "github.com/stretchr/testify/require"
+ "github.com/gotestyourself/gotestyourself/assert"
+ is "github.com/gotestyourself/gotestyourself/assert/cmp"
"golang.org/x/sys/unix"
)
@@ -24,16 +24,16 @@ func TestIsCopyFileRangeSyscallAvailable(t *testing.T) {
// 1. That copyFileRangeEnabled is being set to true when copy_file_range syscall is available
// 2. That isCopyFileRangeSyscallAvailable() works on "new" kernels
v, err := kernel.GetKernelVersion()
- require.NoError(t, err)
+ assert.NilError(t, err)
copyWithFileRange := true
copyWithFileClone := false
doCopyTest(t, &copyWithFileRange, &copyWithFileClone)
if kernel.CompareKernelVersion(*v, kernel.VersionInfo{Kernel: 4, Major: 5, Minor: 0}) < 0 {
- assert.False(t, copyWithFileRange)
+ assert.Check(t, !copyWithFileRange)
} else {
- assert.True(t, copyWithFileRange)
+ assert.Check(t, copyWithFileRange)
}
}
@@ -52,47 +52,47 @@ func TestCopyWithoutRange(t *testing.T) {
func TestCopyDir(t *testing.T) {
srcDir, err := ioutil.TempDir("", "srcDir")
- require.NoError(t, err)
+ assert.NilError(t, err)
populateSrcDir(t, srcDir, 3)
dstDir, err := ioutil.TempDir("", "testdst")
- require.NoError(t, err)
+ assert.NilError(t, err)
defer os.RemoveAll(dstDir)
- assert.NoError(t, DirCopy(srcDir, dstDir, Content, false))
- require.NoError(t, filepath.Walk(srcDir, func(srcPath string, f os.FileInfo, err error) error {
+ assert.Check(t, DirCopy(srcDir, dstDir, Content, false))
+ assert.NilError(t, filepath.Walk(srcDir, func(srcPath string, f os.FileInfo, err error) error {
if err != nil {
return err
}
// Rebase path
relPath, err := filepath.Rel(srcDir, srcPath)
- require.NoError(t, err)
+ assert.NilError(t, err)
if relPath == "." {
return nil
}
dstPath := filepath.Join(dstDir, relPath)
- require.NoError(t, err)
+ assert.NilError(t, err)
// If we add non-regular dirs and files to the test
// then we need to add more checks here.
dstFileInfo, err := os.Lstat(dstPath)
- require.NoError(t, err)
+ assert.NilError(t, err)
srcFileSys := f.Sys().(*syscall.Stat_t)
dstFileSys := dstFileInfo.Sys().(*syscall.Stat_t)
t.Log(relPath)
if srcFileSys.Dev == dstFileSys.Dev {
- assert.NotEqual(t, srcFileSys.Ino, dstFileSys.Ino)
+ assert.Check(t, srcFileSys.Ino != dstFileSys.Ino)
}
// Todo: check size, and ctim is not equal
/// on filesystems that have granular ctimes
- assert.Equal(t, srcFileSys.Mode, dstFileSys.Mode)
- assert.Equal(t, srcFileSys.Uid, dstFileSys.Uid)
- assert.Equal(t, srcFileSys.Gid, dstFileSys.Gid)
- assert.Equal(t, srcFileSys.Mtim, dstFileSys.Mtim)
+ assert.Check(t, is.DeepEqual(srcFileSys.Mode, dstFileSys.Mode))
+ assert.Check(t, is.DeepEqual(srcFileSys.Uid, dstFileSys.Uid))
+ assert.Check(t, is.DeepEqual(srcFileSys.Gid, dstFileSys.Gid))
+ assert.Check(t, is.DeepEqual(srcFileSys.Mtim, dstFileSys.Mtim))
return nil
}))
@@ -115,22 +115,22 @@ func populateSrcDir(t *testing.T, srcDir string, remainingDepth int) {
for i := 0; i < 10; i++ {
dirName := filepath.Join(srcDir, fmt.Sprintf("srcdir-%d", i))
// Owner all bits set
- require.NoError(t, os.Mkdir(dirName, randomMode(0700)))
+ assert.NilError(t, os.Mkdir(dirName, randomMode(0700)))
populateSrcDir(t, dirName, remainingDepth-1)
- require.NoError(t, system.Chtimes(dirName, aTime, mTime))
+ assert.NilError(t, system.Chtimes(dirName, aTime, mTime))
}
for i := 0; i < 10; i++ {
fileName := filepath.Join(srcDir, fmt.Sprintf("srcfile-%d", i))
// Owner read bit set
- require.NoError(t, ioutil.WriteFile(fileName, []byte{}, randomMode(0400)))
- require.NoError(t, system.Chtimes(fileName, aTime, mTime))
+ assert.NilError(t, ioutil.WriteFile(fileName, []byte{}, randomMode(0400)))
+ assert.NilError(t, system.Chtimes(fileName, aTime, mTime))
}
}
func doCopyTest(t *testing.T, copyWithFileRange, copyWithFileClone *bool) {
dir, err := ioutil.TempDir("", "docker-copy-check")
- require.NoError(t, err)
+ assert.NilError(t, err)
defer os.RemoveAll(dir)
srcFilename := filepath.Join(dir, "srcFilename")
dstFilename := filepath.Join(dir, "dstilename")
@@ -138,42 +138,42 @@ func doCopyTest(t *testing.T, copyWithFileRange, copyWithFileClone *bool) {
r := rand.New(rand.NewSource(0))
buf := make([]byte, 1024)
_, err = r.Read(buf)
- require.NoError(t, err)
- require.NoError(t, ioutil.WriteFile(srcFilename, buf, 0777))
+ assert.NilError(t, err)
+ assert.NilError(t, ioutil.WriteFile(srcFilename, buf, 0777))
fileinfo, err := os.Stat(srcFilename)
- require.NoError(t, err)
+ assert.NilError(t, err)
- require.NoError(t, copyRegular(srcFilename, dstFilename, fileinfo, copyWithFileRange, copyWithFileClone))
+ assert.NilError(t, copyRegular(srcFilename, dstFilename, fileinfo, copyWithFileRange, copyWithFileClone))
readBuf, err := ioutil.ReadFile(dstFilename)
- require.NoError(t, err)
- assert.Equal(t, buf, readBuf)
+ assert.NilError(t, err)
+ assert.Check(t, is.DeepEqual(buf, readBuf))
}
func TestCopyHardlink(t *testing.T) {
var srcFile1FileInfo, srcFile2FileInfo, dstFile1FileInfo, dstFile2FileInfo unix.Stat_t
srcDir, err := ioutil.TempDir("", "srcDir")
- require.NoError(t, err)
+ assert.NilError(t, err)
defer os.RemoveAll(srcDir)
dstDir, err := ioutil.TempDir("", "dstDir")
- require.NoError(t, err)
+ assert.NilError(t, err)
defer os.RemoveAll(dstDir)
srcFile1 := filepath.Join(srcDir, "file1")
srcFile2 := filepath.Join(srcDir, "file2")
dstFile1 := filepath.Join(dstDir, "file1")
dstFile2 := filepath.Join(dstDir, "file2")
- require.NoError(t, ioutil.WriteFile(srcFile1, []byte{}, 0777))
- require.NoError(t, os.Link(srcFile1, srcFile2))
+ assert.NilError(t, ioutil.WriteFile(srcFile1, []byte{}, 0777))
+ assert.NilError(t, os.Link(srcFile1, srcFile2))
- assert.NoError(t, DirCopy(srcDir, dstDir, Content, false))
+ assert.Check(t, DirCopy(srcDir, dstDir, Content, false))
- require.NoError(t, unix.Stat(srcFile1, &srcFile1FileInfo))
- require.NoError(t, unix.Stat(srcFile2, &srcFile2FileInfo))
- require.Equal(t, srcFile1FileInfo.Ino, srcFile2FileInfo.Ino)
+ assert.NilError(t, unix.Stat(srcFile1, &srcFile1FileInfo))
+ assert.NilError(t, unix.Stat(srcFile2, &srcFile2FileInfo))
+ assert.Equal(t, srcFile1FileInfo.Ino, srcFile2FileInfo.Ino)
- require.NoError(t, unix.Stat(dstFile1, &dstFile1FileInfo))
- require.NoError(t, unix.Stat(dstFile2, &dstFile2FileInfo))
- assert.Equal(t, dstFile1FileInfo.Ino, dstFile2FileInfo.Ino)
+ assert.NilError(t, unix.Stat(dstFile1, &dstFile1FileInfo))
+ assert.NilError(t, unix.Stat(dstFile2, &dstFile2FileInfo))
+ assert.Check(t, is.Equal(dstFile1FileInfo.Ino, dstFile2FileInfo.Ino))
}
diff --git a/daemon/graphdriver/driver_test.go b/daemon/graphdriver/driver_test.go
index 777bac7af9..4a29465f15 100644
--- a/daemon/graphdriver/driver_test.go
+++ b/daemon/graphdriver/driver_test.go
@@ -6,32 +6,31 @@ import (
"path/filepath"
"testing"
- "github.com/stretchr/testify/assert"
- "github.com/stretchr/testify/require"
+ "github.com/gotestyourself/gotestyourself/assert"
)
func TestIsEmptyDir(t *testing.T) {
tmp, err := ioutil.TempDir("", "test-is-empty-dir")
- require.NoError(t, err)
+ assert.NilError(t, err)
defer os.RemoveAll(tmp)
d := filepath.Join(tmp, "empty-dir")
err = os.Mkdir(d, 0755)
- require.NoError(t, err)
+ assert.NilError(t, err)
empty := isEmptyDir(d)
- assert.True(t, empty)
+ assert.Check(t, empty)
d = filepath.Join(tmp, "dir-with-subdir")
err = os.MkdirAll(filepath.Join(d, "subdir"), 0755)
- require.NoError(t, err)
+ assert.NilError(t, err)
empty = isEmptyDir(d)
- assert.False(t, empty)
+ assert.Check(t, !empty)
d = filepath.Join(tmp, "dir-with-empty-file")
err = os.Mkdir(d, 0755)
- require.NoError(t, err)
+ assert.NilError(t, err)
_, err = ioutil.TempFile(d, "file")
- require.NoError(t, err)
+ assert.NilError(t, err)
empty = isEmptyDir(d)
- assert.False(t, empty)
+ assert.Check(t, !empty)
}
diff --git a/daemon/graphdriver/graphtest/graphbench_unix.go b/daemon/graphdriver/graphtest/graphbench_unix.go
index 2eb4184c0f..1b221dabef 100644
--- a/daemon/graphdriver/graphtest/graphbench_unix.go
+++ b/daemon/graphdriver/graphtest/graphbench_unix.go
@@ -9,7 +9,7 @@ import (
contdriver "github.com/containerd/continuity/driver"
"github.com/docker/docker/pkg/stringid"
- "github.com/stretchr/testify/require"
+ "github.com/gotestyourself/gotestyourself/assert"
)
// DriverBenchExists benchmarks calls to exist
@@ -251,7 +251,7 @@ func DriverBenchDeepLayerRead(b *testing.B, layerCount int, drivername string, d
}
b.StopTimer()
- require.Equal(b, content, c)
+ assert.DeepEqual(b, content, c)
b.StartTimer()
}
}
diff --git a/daemon/graphdriver/graphtest/graphtest_unix.go b/daemon/graphdriver/graphtest/graphtest_unix.go
index a7bdd8cdaa..5ac3979752 100644
--- a/daemon/graphdriver/graphtest/graphtest_unix.go
+++ b/daemon/graphdriver/graphtest/graphtest_unix.go
@@ -16,8 +16,8 @@ import (
"github.com/docker/docker/daemon/graphdriver/quota"
"github.com/docker/docker/pkg/stringid"
"github.com/docker/go-units"
- "github.com/stretchr/testify/assert"
- "github.com/stretchr/testify/require"
+ "github.com/gotestyourself/gotestyourself/assert"
+ is "github.com/gotestyourself/gotestyourself/assert/cmp"
"golang.org/x/sys/unix"
)
@@ -36,9 +36,9 @@ type Driver struct {
func newDriver(t testing.TB, name string, options []string) *Driver {
root, err := ioutil.TempDir("", "docker-graphtest-")
- require.NoError(t, err)
+ assert.NilError(t, err)
- require.NoError(t, os.MkdirAll(root, 0755))
+ assert.NilError(t, os.MkdirAll(root, 0755))
d, err := graphdriver.GetDriver(name, nil, graphdriver.Options{DriverOptions: options, Root: root})
if err != nil {
t.Logf("graphdriver: %v\n", err)
@@ -85,10 +85,10 @@ func DriverTestCreateEmpty(t testing.TB, drivername string, driverOptions ...str
defer PutDriver(t)
err := driver.Create("empty", "", nil)
- require.NoError(t, err)
+ assert.NilError(t, err)
defer func() {
- require.NoError(t, driver.Remove("empty"))
+ assert.NilError(t, driver.Remove("empty"))
}()
if !driver.Exists("empty") {
@@ -96,14 +96,14 @@ func DriverTestCreateEmpty(t testing.TB, drivername string, driverOptions ...str
}
dir, err := driver.Get("empty", "")
- require.NoError(t, err)
+ assert.NilError(t, err)
verifyFile(t, dir.Path(), 0755|os.ModeDir, 0, 0)
// Verify that the directory is empty
fis, err := readDir(dir, dir.Path())
- require.NoError(t, err)
- assert.Len(t, fis, 0)
+ assert.NilError(t, err)
+ assert.Check(t, is.Len(fis, 0))
driver.Put("empty")
}
@@ -115,7 +115,7 @@ func DriverTestCreateBase(t testing.TB, drivername string, driverOptions ...stri
createBase(t, driver, "Base")
defer func() {
- require.NoError(t, driver.Remove("Base"))
+ assert.NilError(t, driver.Remove("Base"))
}()
verifyBase(t, driver, "Base")
}
@@ -127,13 +127,13 @@ func DriverTestCreateSnap(t testing.TB, drivername string, driverOptions ...stri
createBase(t, driver, "Base")
defer func() {
- require.NoError(t, driver.Remove("Base"))
+ assert.NilError(t, driver.Remove("Base"))
}()
err := driver.Create("Snap", "Base", nil)
- require.NoError(t, err)
+ assert.NilError(t, err)
defer func() {
- require.NoError(t, driver.Remove("Snap"))
+ assert.NilError(t, driver.Remove("Snap"))
}()
verifyBase(t, driver, "Snap")
diff --git a/daemon/graphdriver/graphtest/testutil_unix.go b/daemon/graphdriver/graphtest/testutil_unix.go
index 4659bf2a19..3103df150d 100644
--- a/daemon/graphdriver/graphtest/testutil_unix.go
+++ b/daemon/graphdriver/graphtest/testutil_unix.go
@@ -9,25 +9,25 @@ import (
contdriver "github.com/containerd/continuity/driver"
"github.com/docker/docker/daemon/graphdriver"
- "github.com/stretchr/testify/assert"
- "github.com/stretchr/testify/require"
+ "github.com/gotestyourself/gotestyourself/assert"
+ is "github.com/gotestyourself/gotestyourself/assert/cmp"
"golang.org/x/sys/unix"
)
func verifyFile(t testing.TB, path string, mode os.FileMode, uid, gid uint32) {
fi, err := os.Stat(path)
- require.NoError(t, err)
+ assert.NilError(t, err)
actual := fi.Mode()
- assert.Equal(t, mode&os.ModeType, actual&os.ModeType, path)
- assert.Equal(t, mode&os.ModePerm, actual&os.ModePerm, path)
- assert.Equal(t, mode&os.ModeSticky, actual&os.ModeSticky, path)
- assert.Equal(t, mode&os.ModeSetuid, actual&os.ModeSetuid, path)
- assert.Equal(t, mode&os.ModeSetgid, actual&os.ModeSetgid, path)
+ assert.Check(t, is.Equal(mode&os.ModeType, actual&os.ModeType), path)
+ assert.Check(t, is.Equal(mode&os.ModePerm, actual&os.ModePerm), path)
+ assert.Check(t, is.Equal(mode&os.ModeSticky, actual&os.ModeSticky), path)
+ assert.Check(t, is.Equal(mode&os.ModeSetuid, actual&os.ModeSetuid), path)
+ assert.Check(t, is.Equal(mode&os.ModeSetgid, actual&os.ModeSetgid), path)
if stat, ok := fi.Sys().(*syscall.Stat_t); ok {
- assert.Equal(t, uid, stat.Uid, path)
- assert.Equal(t, gid, stat.Gid, path)
+ assert.Check(t, is.Equal(uid, stat.Uid), path)
+ assert.Check(t, is.Equal(gid, stat.Gid), path)
}
}
@@ -37,24 +37,24 @@ func createBase(t testing.TB, driver graphdriver.Driver, name string) {
defer unix.Umask(oldmask)
err := driver.CreateReadWrite(name, "", nil)
- require.NoError(t, err)
+ assert.NilError(t, err)
dirFS, err := driver.Get(name, "")
- require.NoError(t, err)
+ assert.NilError(t, err)
defer driver.Put(name)
subdir := dirFS.Join(dirFS.Path(), "a subdir")
- require.NoError(t, dirFS.Mkdir(subdir, 0705|os.ModeSticky))
- require.NoError(t, dirFS.Lchown(subdir, 1, 2))
+ assert.NilError(t, dirFS.Mkdir(subdir, 0705|os.ModeSticky))
+ assert.NilError(t, dirFS.Lchown(subdir, 1, 2))
file := dirFS.Join(dirFS.Path(), "a file")
err = contdriver.WriteFile(dirFS, file, []byte("Some data"), 0222|os.ModeSetuid)
- require.NoError(t, err)
+ assert.NilError(t, err)
}
func verifyBase(t testing.TB, driver graphdriver.Driver, name string) {
dirFS, err := driver.Get(name, "")
- require.NoError(t, err)
+ assert.NilError(t, err)
defer driver.Put(name)
subdir := dirFS.Join(dirFS.Path(), "a subdir")
@@ -64,6 +64,6 @@ func verifyBase(t testing.TB, driver graphdriver.Driver, name string) {
verifyFile(t, file, 0222|os.ModeSetuid, 0, 0)
files, err := readDir(dirFS, dirFS.Path())
- require.NoError(t, err)
- assert.Len(t, files, 2)
+ assert.NilError(t, err)
+ assert.Check(t, is.Len(files, 2))
}
diff --git a/daemon/graphdriver/quota/projectquota_test.go b/daemon/graphdriver/quota/projectquota_test.go
index 939044fdc3..b7debf79e2 100644
--- a/daemon/graphdriver/quota/projectquota_test.go
+++ b/daemon/graphdriver/quota/projectquota_test.go
@@ -10,9 +10,9 @@ import (
"path/filepath"
"testing"
+ "github.com/gotestyourself/gotestyourself/assert"
+ is "github.com/gotestyourself/gotestyourself/assert/cmp"
"github.com/gotestyourself/gotestyourself/fs"
- "github.com/stretchr/testify/assert"
- "github.com/stretchr/testify/require"
"golang.org/x/sys/unix"
)
@@ -80,14 +80,14 @@ func wrapMountTest(imageFileName string, enableQuota bool, testFunc func(t *test
}
}
- require.NoError(t, err, "mount failed: %s", out)
+ assert.NilError(t, err, "mount failed: %s", out)
defer func() {
- require.NoError(t, unix.Unmount(mountPoint, 0))
+ assert.NilError(t, unix.Unmount(mountPoint, 0))
}()
backingFsDev, err := makeBackingFsDev(mountPoint)
- require.NoError(t, err)
+ assert.NilError(t, err)
testFunc(t, mountPoint, backingFsDev)
}
@@ -95,58 +95,58 @@ func wrapMountTest(imageFileName string, enableQuota bool, testFunc func(t *test
func testBlockDevQuotaDisabled(t *testing.T, mountPoint, backingFsDev string) {
hasSupport, err := hasQuotaSupport(backingFsDev)
- require.NoError(t, err)
- assert.False(t, hasSupport)
+ assert.NilError(t, err)
+ assert.Check(t, !hasSupport)
}
func testBlockDevQuotaEnabled(t *testing.T, mountPoint, backingFsDev string) {
hasSupport, err := hasQuotaSupport(backingFsDev)
- require.NoError(t, err)
- assert.True(t, hasSupport)
+ assert.NilError(t, err)
+ assert.Check(t, hasSupport)
}
func wrapQuotaTest(testFunc func(t *testing.T, ctrl *Control, mountPoint, testDir, testSubDir string)) func(t *testing.T, mountPoint, backingFsDev string) {
return func(t *testing.T, mountPoint, backingFsDev string) {
testDir, err := ioutil.TempDir(mountPoint, "per-test")
- require.NoError(t, err)
+ assert.NilError(t, err)
defer os.RemoveAll(testDir)
ctrl, err := NewControl(testDir)
- require.NoError(t, err)
+ assert.NilError(t, err)
testSubDir, err := ioutil.TempDir(testDir, "quota-test")
- require.NoError(t, err)
+ assert.NilError(t, err)
testFunc(t, ctrl, mountPoint, testDir, testSubDir)
}
}
func testSmallerThanQuota(t *testing.T, ctrl *Control, homeDir, testDir, testSubDir string) {
- require.NoError(t, ctrl.SetQuota(testSubDir, Quota{testQuotaSize}))
+ assert.NilError(t, ctrl.SetQuota(testSubDir, Quota{testQuotaSize}))
smallerThanQuotaFile := filepath.Join(testSubDir, "smaller-than-quota")
- require.NoError(t, ioutil.WriteFile(smallerThanQuotaFile, make([]byte, testQuotaSize/2), 0644))
- require.NoError(t, os.Remove(smallerThanQuotaFile))
+ assert.NilError(t, ioutil.WriteFile(smallerThanQuotaFile, make([]byte, testQuotaSize/2), 0644))
+ assert.NilError(t, os.Remove(smallerThanQuotaFile))
}
func testBiggerThanQuota(t *testing.T, ctrl *Control, homeDir, testDir, testSubDir string) {
// Make sure the quota is being enforced
// TODO: When we implement this under EXT4, we need to shed CAP_SYS_RESOURCE, otherwise
// we're able to violate quota without issue
- require.NoError(t, ctrl.SetQuota(testSubDir, Quota{testQuotaSize}))
+ assert.NilError(t, ctrl.SetQuota(testSubDir, Quota{testQuotaSize}))
biggerThanQuotaFile := filepath.Join(testSubDir, "bigger-than-quota")
err := ioutil.WriteFile(biggerThanQuotaFile, make([]byte, testQuotaSize+1), 0644)
- require.Error(t, err)
+ assert.Assert(t, is.ErrorContains(err, ""))
if err == io.ErrShortWrite {
- require.NoError(t, os.Remove(biggerThanQuotaFile))
+ assert.NilError(t, os.Remove(biggerThanQuotaFile))
}
}
func testRetrieveQuota(t *testing.T, ctrl *Control, homeDir, testDir, testSubDir string) {
// Validate that we can retrieve quota
- require.NoError(t, ctrl.SetQuota(testSubDir, Quota{testQuotaSize}))
+ assert.NilError(t, ctrl.SetQuota(testSubDir, Quota{testQuotaSize}))
var q Quota
- require.NoError(t, ctrl.GetQuota(testSubDir, &q))
- assert.EqualValues(t, testQuotaSize, q.Size)
+ assert.NilError(t, ctrl.GetQuota(testSubDir, &q))
+ assert.Check(t, is.Equal(testQuotaSize, q.Size))
}
diff --git a/daemon/info_unix_test.go b/daemon/info_unix_test.go
index 92a336162a..7ff1009326 100644
--- a/daemon/info_unix_test.go
+++ b/daemon/info_unix_test.go
@@ -7,7 +7,8 @@ import (
"github.com/docker/docker/api/types"
"github.com/docker/docker/dockerversion"
- "github.com/stretchr/testify/assert"
+ "github.com/gotestyourself/gotestyourself/assert"
+ is "github.com/gotestyourself/gotestyourself/assert/cmp"
)
func TestParseInitVersion(t *testing.T) {
@@ -43,10 +44,10 @@ func TestParseInitVersion(t *testing.T) {
for _, test := range tests {
ver, err := parseInitVersion(string(test.version))
if test.invalid {
- assert.Error(t, err)
+ assert.Check(t, is.ErrorContains(err, ""))
} else {
- assert.NoError(t, err)
+ assert.Check(t, err)
}
- assert.Equal(t, test.result, ver)
+ assert.Check(t, is.DeepEqual(test.result, ver))
}
}
diff --git a/daemon/inspect_test.go b/daemon/inspect_test.go
index c10cc56796..d1ad5b0e0a 100644
--- a/daemon/inspect_test.go
+++ b/daemon/inspect_test.go
@@ -7,8 +7,8 @@ import (
"github.com/docker/docker/container"
"github.com/docker/docker/daemon/config"
"github.com/docker/docker/daemon/exec"
-
- "github.com/stretchr/testify/assert"
+ "github.com/gotestyourself/gotestyourself/assert"
+ is "github.com/gotestyourself/gotestyourself/assert/cmp"
)
func TestGetInspectData(t *testing.T) {
@@ -25,9 +25,9 @@ func TestGetInspectData(t *testing.T) {
}
_, err := d.getInspectData(c)
- assert.Error(t, err)
+ assert.Check(t, is.ErrorContains(err, ""))
c.Dead = true
_, err = d.getInspectData(c)
- assert.NoError(t, err)
+ assert.Check(t, err)
}
diff --git a/daemon/logger/adapter_test.go b/daemon/logger/adapter_test.go
index 25abab5717..7c1db6f575 100644
--- a/daemon/logger/adapter_test.go
+++ b/daemon/logger/adapter_test.go
@@ -10,7 +10,8 @@ import (
"github.com/docker/docker/api/types/plugins/logdriver"
protoio "github.com/gogo/protobuf/io"
- "github.com/stretchr/testify/assert"
+ "github.com/gotestyourself/gotestyourself/assert"
+ is "github.com/gotestyourself/gotestyourself/assert/cmp"
)
// mockLoggingPlugin implements the loggingPlugin interface for testing purposes
@@ -88,7 +89,7 @@ func (l *mockLoggingPlugin) ReadLogs(info Info, config ReadConfig) (io.ReadClose
func newMockPluginAdapter(t *testing.T) Logger {
r, w := io.Pipe()
f, err := ioutil.TempFile("", "mock-plugin-adapter")
- assert.NoError(t, err)
+ assert.Check(t, err)
enc := logdriver.NewLogEntryEncoder(w)
a := &pluginAdapterWithRead{
@@ -116,11 +117,11 @@ func TestAdapterReadLogs(t *testing.T) {
}
for _, msg := range testMsg {
m := msg.copy()
- assert.NoError(t, l.Log(m))
+ assert.Check(t, l.Log(m))
}
lr, ok := l.(LogReader)
- assert.NotNil(t, ok)
+ assert.Check(t, ok != nil)
lw := lr.ReadLogs(ReadConfig{})
@@ -135,7 +136,7 @@ func TestAdapterReadLogs(t *testing.T) {
select {
case _, ok := <-lw.Msg:
- assert.False(t, ok, "expected message channel to be closed")
+ assert.Check(t, !ok, "expected message channel to be closed")
case <-time.After(10 * time.Second):
t.Fatal("timeout waiting for message channel to close")
@@ -153,11 +154,11 @@ func TestAdapterReadLogs(t *testing.T) {
}
x := Message{Line: []byte("Too infinity and beyond!"), Timestamp: time.Now()}
- assert.NoError(t, l.Log(x.copy()))
+ assert.Check(t, l.Log(x.copy()))
select {
case msg, ok := <-lw.Msg:
- assert.NotNil(t, ok, "message channel unexpectedly closed")
+ assert.Check(t, ok != nil, "message channel unexpectedly closed")
testMessageEqual(t, &x, msg)
case <-time.After(10 * time.Second):
t.Fatal("timeout reading logs")
@@ -166,15 +167,15 @@ func TestAdapterReadLogs(t *testing.T) {
l.Close()
select {
case msg, ok := <-lw.Msg:
- assert.False(t, ok, "expected message channel to be closed")
- assert.Nil(t, msg)
+ assert.Check(t, !ok, "expected message channel to be closed")
+ assert.Check(t, is.Nil(msg))
case <-time.After(10 * time.Second):
t.Fatal("timeout waiting for logger to close")
}
}
func testMessageEqual(t *testing.T, a, b *Message) {
- assert.Equal(t, a.Line, b.Line)
- assert.Equal(t, a.Timestamp.UnixNano(), b.Timestamp.UnixNano())
- assert.Equal(t, a.Source, b.Source)
+ assert.Check(t, is.DeepEqual(a.Line, b.Line))
+ assert.Check(t, is.DeepEqual(a.Timestamp.UnixNano(), b.Timestamp.UnixNano()))
+ assert.Check(t, is.Equal(a.Source, b.Source))
}
diff --git a/daemon/logger/awslogs/cloudwatchlogs_test.go b/daemon/logger/awslogs/cloudwatchlogs_test.go
index 99d0f907f8..4a37d98167 100644
--- a/daemon/logger/awslogs/cloudwatchlogs_test.go
+++ b/daemon/logger/awslogs/cloudwatchlogs_test.go
@@ -21,7 +21,8 @@ import (
"github.com/docker/docker/daemon/logger"
"github.com/docker/docker/daemon/logger/loggerutils"
"github.com/docker/docker/dockerversion"
- "github.com/stretchr/testify/assert"
+ "github.com/gotestyourself/gotestyourself/assert"
+ is "github.com/gotestyourself/gotestyourself/assert/cmp"
)
const (
@@ -544,17 +545,17 @@ func TestCollectBatchMultilinePattern(t *testing.T) {
// Verify single multiline event
argument := <-mockClient.putLogEventsArgument
- assert.NotNil(t, argument, "Expected non-nil PutLogEventsInput")
- assert.Equal(t, 1, len(argument.LogEvents), "Expected single multiline event")
- assert.Equal(t, logline+"\n"+logline+"\n", *argument.LogEvents[0].Message, "Received incorrect multiline message")
+ assert.Check(t, argument != nil, "Expected non-nil PutLogEventsInput")
+ assert.Check(t, is.Equal(1, len(argument.LogEvents)), "Expected single multiline event")
+ assert.Check(t, is.Equal(logline+"\n"+logline+"\n", *argument.LogEvents[0].Message), "Received incorrect multiline message")
stream.Close()
// Verify single event
argument = <-mockClient.putLogEventsArgument
- assert.NotNil(t, argument, "Expected non-nil PutLogEventsInput")
- assert.Equal(t, 1, len(argument.LogEvents), "Expected single multiline event")
- assert.Equal(t, "xxxx "+logline+"\n", *argument.LogEvents[0].Message, "Received incorrect multiline message")
+ assert.Check(t, argument != nil, "Expected non-nil PutLogEventsInput")
+ assert.Check(t, is.Equal(1, len(argument.LogEvents)), "Expected single multiline event")
+ assert.Check(t, is.Equal("xxxx "+logline+"\n", *argument.LogEvents[0].Message), "Received incorrect multiline message")
}
func BenchmarkCollectBatch(b *testing.B) {
@@ -657,9 +658,9 @@ func TestCollectBatchMultilinePatternMaxEventAge(t *testing.T) {
// Verify single multiline event is flushed after maximum event buffer age (batchPublishFrequency)
argument := <-mockClient.putLogEventsArgument
- assert.NotNil(t, argument, "Expected non-nil PutLogEventsInput")
- assert.Equal(t, 1, len(argument.LogEvents), "Expected single multiline event")
- assert.Equal(t, logline+"\n"+logline+"\n", *argument.LogEvents[0].Message, "Received incorrect multiline message")
+ assert.Check(t, argument != nil, "Expected non-nil PutLogEventsInput")
+ assert.Check(t, is.Equal(1, len(argument.LogEvents)), "Expected single multiline event")
+ assert.Check(t, is.Equal(logline+"\n"+logline+"\n", *argument.LogEvents[0].Message), "Received incorrect multiline message")
// Log an event 1 second later
stream.Log(&logger.Message{
@@ -672,9 +673,9 @@ func TestCollectBatchMultilinePatternMaxEventAge(t *testing.T) {
// Verify the event buffer is truly flushed - we should only receive a single event
argument = <-mockClient.putLogEventsArgument
- assert.NotNil(t, argument, "Expected non-nil PutLogEventsInput")
- assert.Equal(t, 1, len(argument.LogEvents), "Expected single multiline event")
- assert.Equal(t, logline+"\n", *argument.LogEvents[0].Message, "Received incorrect multiline message")
+ assert.Check(t, argument != nil, "Expected non-nil PutLogEventsInput")
+ assert.Check(t, is.Equal(1, len(argument.LogEvents)), "Expected single multiline event")
+ assert.Check(t, is.Equal(logline+"\n", *argument.LogEvents[0].Message), "Received incorrect multiline message")
stream.Close()
}
@@ -719,9 +720,9 @@ func TestCollectBatchMultilinePatternNegativeEventAge(t *testing.T) {
// Verify single multiline event is flushed with a negative event buffer age
argument := <-mockClient.putLogEventsArgument
- assert.NotNil(t, argument, "Expected non-nil PutLogEventsInput")
- assert.Equal(t, 1, len(argument.LogEvents), "Expected single multiline event")
- assert.Equal(t, logline+"\n"+logline+"\n", *argument.LogEvents[0].Message, "Received incorrect multiline message")
+ assert.Check(t, argument != nil, "Expected non-nil PutLogEventsInput")
+ assert.Check(t, is.Equal(1, len(argument.LogEvents)), "Expected single multiline event")
+ assert.Check(t, is.Equal(logline+"\n"+logline+"\n", *argument.LogEvents[0].Message), "Received incorrect multiline message")
stream.Close()
}
@@ -772,10 +773,10 @@ func TestCollectBatchMultilinePatternMaxEventSize(t *testing.T) {
// We expect a maximum sized event with no new line characters and a
// second short event with a new line character at the end
argument := <-mockClient.putLogEventsArgument
- assert.NotNil(t, argument, "Expected non-nil PutLogEventsInput")
- assert.Equal(t, 2, len(argument.LogEvents), "Expected two events")
- assert.Equal(t, longline, *argument.LogEvents[0].Message, "Received incorrect multiline message")
- assert.Equal(t, shortline+"\n", *argument.LogEvents[1].Message, "Received incorrect multiline message")
+ assert.Check(t, argument != nil, "Expected non-nil PutLogEventsInput")
+ assert.Check(t, is.Equal(2, len(argument.LogEvents)), "Expected two events")
+ assert.Check(t, is.Equal(longline, *argument.LogEvents[0].Message), "Received incorrect multiline message")
+ assert.Check(t, is.Equal(shortline+"\n", *argument.LogEvents[1].Message), "Received incorrect multiline message")
stream.Close()
}
@@ -1069,8 +1070,8 @@ func TestParseLogOptionsMultilinePattern(t *testing.T) {
}
multilinePattern, err := parseMultilineOptions(info)
- assert.Nil(t, err, "Received unexpected error")
- assert.True(t, multilinePattern.MatchString("xxxx"), "No multiline pattern match found")
+ assert.Check(t, err, "Received unexpected error")
+ assert.Check(t, multilinePattern.MatchString("xxxx"), "No multiline pattern match found")
}
func TestParseLogOptionsDatetimeFormat(t *testing.T) {
@@ -1094,8 +1095,8 @@ func TestParseLogOptionsDatetimeFormat(t *testing.T) {
},
}
multilinePattern, err := parseMultilineOptions(info)
- assert.Nil(t, err, "Received unexpected error")
- assert.True(t, multilinePattern.MatchString(dt.match), "No multiline pattern match found")
+ assert.Check(t, err, "Received unexpected error")
+ assert.Check(t, multilinePattern.MatchString(dt.match), "No multiline pattern match found")
})
}
}
@@ -1109,8 +1110,8 @@ func TestValidateLogOptionsDatetimeFormatAndMultilinePattern(t *testing.T) {
conflictingLogOptionsError := "you cannot configure log opt 'awslogs-datetime-format' and 'awslogs-multiline-pattern' at the same time"
err := ValidateLogOpt(cfg)
- assert.NotNil(t, err, "Expected an error")
- assert.Equal(t, err.Error(), conflictingLogOptionsError, "Received invalid error")
+ assert.Check(t, err != nil, "Expected an error")
+ assert.Check(t, is.Equal(err.Error(), conflictingLogOptionsError), "Received invalid error")
}
func TestCreateTagSuccess(t *testing.T) {
@@ -1155,7 +1156,7 @@ func BenchmarkUnwrapEvents(b *testing.B) {
b.ResetTimer()
for i := 0; i < b.N; i++ {
res := unwrapEvents(events)
- assert.Len(b, res, maximumLogEventsPerPut)
+ assert.Check(b, is.Len(res, maximumLogEventsPerPut))
}
}
@@ -1188,15 +1189,15 @@ func TestNewAWSLogsClientCredentialEndpointDetect(t *testing.T) {
info.Config["awslogs-credentials-endpoint"] = "/creds"
c, err := newAWSLogsClient(info)
- assert.NoError(t, err)
+ assert.Check(t, err)
client := c.(*cloudwatchlogs.CloudWatchLogs)
creds, err := client.Config.Credentials.Get()
- assert.NoError(t, err)
+ assert.Check(t, err)
- assert.Equal(t, expectedAccessKeyID, creds.AccessKeyID)
- assert.Equal(t, expectedSecretAccessKey, creds.SecretAccessKey)
+ assert.Check(t, is.Equal(expectedAccessKeyID, creds.AccessKeyID))
+ assert.Check(t, is.Equal(expectedSecretAccessKey, creds.SecretAccessKey))
}
func TestNewAWSLogsClientCredentialEnvironmentVariable(t *testing.T) {
@@ -1218,15 +1219,15 @@ func TestNewAWSLogsClientCredentialEnvironmentVariable(t *testing.T) {
}
c, err := newAWSLogsClient(info)
- assert.NoError(t, err)
+ assert.Check(t, err)
client := c.(*cloudwatchlogs.CloudWatchLogs)
creds, err := client.Config.Credentials.Get()
- assert.NoError(t, err)
+ assert.Check(t, err)
- assert.Equal(t, expectedAccessKeyID, creds.AccessKeyID)
- assert.Equal(t, expectedSecretAccessKey, creds.SecretAccessKey)
+ assert.Check(t, is.Equal(expectedAccessKeyID, creds.AccessKeyID))
+ assert.Check(t, is.Equal(expectedSecretAccessKey, creds.SecretAccessKey))
}
@@ -1247,13 +1248,13 @@ func TestNewAWSLogsClientCredentialSharedFile(t *testing.T) {
tmpfile, err := ioutil.TempFile("", "example")
defer os.Remove(tmpfile.Name()) // clean up
- assert.NoError(t, err)
+ assert.Check(t, err)
_, err = tmpfile.Write(content)
- assert.NoError(t, err)
+ assert.Check(t, err)
err = tmpfile.Close()
- assert.NoError(t, err)
+ assert.Check(t, err)
os.Unsetenv("AWS_ACCESS_KEY_ID")
os.Unsetenv("AWS_SECRET_ACCESS_KEY")
@@ -1266,13 +1267,13 @@ func TestNewAWSLogsClientCredentialSharedFile(t *testing.T) {
}
c, err := newAWSLogsClient(info)
- assert.NoError(t, err)
+ assert.Check(t, err)
client := c.(*cloudwatchlogs.CloudWatchLogs)
creds, err := client.Config.Credentials.Get()
- assert.NoError(t, err)
+ assert.Check(t, err)
- assert.Equal(t, expectedAccessKeyID, creds.AccessKeyID)
- assert.Equal(t, expectedSecretAccessKey, creds.SecretAccessKey)
+ assert.Check(t, is.Equal(expectedAccessKeyID, creds.AccessKeyID))
+ assert.Check(t, is.Equal(expectedSecretAccessKey, creds.SecretAccessKey))
}
diff --git a/daemon/logger/jsonfilelog/jsonfilelog_test.go b/daemon/logger/jsonfilelog/jsonfilelog_test.go
index 2f74e26091..0174d88c0d 100644
--- a/daemon/logger/jsonfilelog/jsonfilelog_test.go
+++ b/daemon/logger/jsonfilelog/jsonfilelog_test.go
@@ -13,9 +13,9 @@ import (
"github.com/docker/docker/daemon/logger"
"github.com/docker/docker/daemon/logger/jsonfilelog/jsonlog"
+ "github.com/gotestyourself/gotestyourself/assert"
+ is "github.com/gotestyourself/gotestyourself/assert/cmp"
"github.com/gotestyourself/gotestyourself/fs"
- "github.com/stretchr/testify/assert"
- "github.com/stretchr/testify/require"
)
func TestJSONFileLogger(t *testing.T) {
@@ -63,7 +63,7 @@ func TestJSONFileLoggerWithTags(t *testing.T) {
cname := "test-container"
tmp, err := ioutil.TempDir("", "docker-logger-")
- require.NoError(t, err)
+ assert.NilError(t, err)
defer os.RemoveAll(tmp)
filename := filepath.Join(tmp, "container.log")
@@ -76,26 +76,26 @@ func TestJSONFileLoggerWithTags(t *testing.T) {
LogPath: filename,
})
- require.NoError(t, err)
+ assert.NilError(t, err)
defer l.Close()
err = l.Log(&logger.Message{Line: []byte("line1"), Source: "src1"})
- require.NoError(t, err)
+ assert.NilError(t, err)
err = l.Log(&logger.Message{Line: []byte("line2"), Source: "src2"})
- require.NoError(t, err)
+ assert.NilError(t, err)
err = l.Log(&logger.Message{Line: []byte("line3"), Source: "src3"})
- require.NoError(t, err)
+ assert.NilError(t, err)
res, err := ioutil.ReadFile(filename)
- require.NoError(t, err)
+ assert.NilError(t, err)
expected := `{"log":"line1\n","stream":"src1","attrs":{"tag":"a7317399f3f8/test-container"},"time":"0001-01-01T00:00:00Z"}
{"log":"line2\n","stream":"src2","attrs":{"tag":"a7317399f3f8/test-container"},"time":"0001-01-01T00:00:00Z"}
{"log":"line3\n","stream":"src3","attrs":{"tag":"a7317399f3f8/test-container"},"time":"0001-01-01T00:00:00Z"}
`
- assert.Equal(t, expected, string(res))
+ assert.Check(t, is.Equal(expected, string(res)))
}
func BenchmarkJSONFileLoggerLog(b *testing.B) {
@@ -113,7 +113,7 @@ func BenchmarkJSONFileLoggerLog(b *testing.B) {
"second": "label_foo",
},
})
- require.NoError(b, err)
+ assert.NilError(b, err)
defer jsonlogger.Close()
msg := &logger.Message{
@@ -123,7 +123,7 @@ func BenchmarkJSONFileLoggerLog(b *testing.B) {
}
buf := bytes.NewBuffer(nil)
- require.NoError(b, marshalMessage(msg, nil, buf))
+ assert.NilError(b, marshalMessage(msg, nil, buf))
b.SetBytes(int64(buf.Len()))
b.ResetTimer()
diff --git a/daemon/logger/jsonfilelog/jsonlog/jsonlogbytes_test.go b/daemon/logger/jsonfilelog/jsonlog/jsonlogbytes_test.go
index 3701124354..d3e56df8cc 100644
--- a/daemon/logger/jsonfilelog/jsonlog/jsonlogbytes_test.go
+++ b/daemon/logger/jsonfilelog/jsonlog/jsonlogbytes_test.go
@@ -7,8 +7,7 @@ import (
"testing"
"time"
- "github.com/stretchr/testify/assert"
- "github.com/stretchr/testify/require"
+ "github.com/gotestyourself/gotestyourself/assert"
)
func TestJSONLogsMarshalJSONBuf(t *testing.T) {
@@ -35,8 +34,8 @@ func TestJSONLogsMarshalJSONBuf(t *testing.T) {
for jsonLog, expression := range logs {
var buf bytes.Buffer
err := jsonLog.MarshalJSONBuf(&buf)
- require.NoError(t, err)
+ assert.NilError(t, err)
assert.Regexp(t, regexp.MustCompile(expression), buf.String())
- assert.NoError(t, json.Unmarshal(buf.Bytes(), &map[string]interface{}{}))
+ assert.Check(t, json.Unmarshal(buf.Bytes(), &map[string]interface{}{}))
}
}
diff --git a/daemon/logger/jsonfilelog/jsonlog/time_marshalling_test.go b/daemon/logger/jsonfilelog/jsonlog/time_marshalling_test.go
index fee091eb6c..76f299a0f6 100644
--- a/daemon/logger/jsonfilelog/jsonlog/time_marshalling_test.go
+++ b/daemon/logger/jsonfilelog/jsonlog/time_marshalling_test.go
@@ -5,8 +5,8 @@ import (
"time"
"github.com/docker/docker/internal/testutil"
- "github.com/stretchr/testify/assert"
- "github.com/stretchr/testify/require"
+ "github.com/gotestyourself/gotestyourself/assert"
+ is "github.com/gotestyourself/gotestyourself/assert/cmp"
)
func TestFastTimeMarshalJSONWithInvalidYear(t *testing.T) {
@@ -22,14 +22,14 @@ func TestFastTimeMarshalJSONWithInvalidYear(t *testing.T) {
func TestFastTimeMarshalJSON(t *testing.T) {
aTime := time.Date(2015, 5, 29, 11, 1, 2, 3, time.UTC)
json, err := fastTimeMarshalJSON(aTime)
- require.NoError(t, err)
- assert.Equal(t, "\"2015-05-29T11:01:02.000000003Z\"", json)
+ assert.NilError(t, err)
+ assert.Check(t, is.Equal("\"2015-05-29T11:01:02.000000003Z\"", json))
location, err := time.LoadLocation("Europe/Paris")
- require.NoError(t, err)
+ assert.NilError(t, err)
aTime = time.Date(2015, 5, 29, 11, 1, 2, 3, location)
json, err = fastTimeMarshalJSON(aTime)
- require.NoError(t, err)
- assert.Equal(t, "\"2015-05-29T11:01:02.000000003+02:00\"", json)
+ assert.NilError(t, err)
+ assert.Check(t, is.Equal("\"2015-05-29T11:01:02.000000003+02:00\"", json))
}
diff --git a/daemon/logger/jsonfilelog/read_test.go b/daemon/logger/jsonfilelog/read_test.go
index 342b538c28..f89fabfe1c 100644
--- a/daemon/logger/jsonfilelog/read_test.go
+++ b/daemon/logger/jsonfilelog/read_test.go
@@ -6,8 +6,8 @@ import (
"time"
"github.com/docker/docker/daemon/logger"
+ "github.com/gotestyourself/gotestyourself/assert"
"github.com/gotestyourself/gotestyourself/fs"
- "github.com/stretchr/testify/require"
)
func BenchmarkJSONFileLoggerReadLogs(b *testing.B) {
@@ -25,7 +25,7 @@ func BenchmarkJSONFileLoggerReadLogs(b *testing.B) {
"second": "label_foo",
},
})
- require.NoError(b, err)
+ assert.NilError(b, err)
defer jsonlogger.Close()
msg := &logger.Message{
@@ -35,7 +35,7 @@ func BenchmarkJSONFileLoggerReadLogs(b *testing.B) {
}
buf := bytes.NewBuffer(nil)
- require.NoError(b, marshalMessage(msg, nil, buf))
+ assert.NilError(b, marshalMessage(msg, nil, buf))
b.SetBytes(int64(buf.Len()))
b.ResetTimer()
diff --git a/daemon/logger/splunk/splunk_test.go b/daemon/logger/splunk/splunk_test.go
index 9744cb561a..62895a6dd6 100644
--- a/daemon/logger/splunk/splunk_test.go
+++ b/daemon/logger/splunk/splunk_test.go
@@ -11,8 +11,8 @@ import (
"time"
"github.com/docker/docker/daemon/logger"
+ "github.com/gotestyourself/gotestyourself/assert"
"github.com/gotestyourself/gotestyourself/env"
- "github.com/stretchr/testify/require"
)
// Validate options
@@ -99,19 +99,19 @@ func TestNewWithProxy(t *testing.T) {
},
ContainerID: "containeriid",
})
- require.NoError(t, err)
+ assert.NilError(t, err)
splunkLogger := logger.(*splunkLoggerInline)
proxyFunc := splunkLogger.transport.Proxy
- require.NotNil(t, proxyFunc)
+ assert.Assert(t, proxyFunc != nil)
req, err := http.NewRequest("GET", splunkURL, nil)
- require.NoError(t, err)
+ assert.NilError(t, err)
proxyURL, err := proxyFunc(req)
- require.NoError(t, err)
- require.NotNil(t, proxyURL)
- require.Equal(t, proxy, proxyURL.String())
+ assert.NilError(t, err)
+ assert.Assert(t, proxyURL != nil)
+ assert.Equal(t, proxy, proxyURL.String())
}
// Test default settings
@@ -483,10 +483,10 @@ func TestRawFormat(t *testing.T) {
}
hostname, err := info.Hostname()
- require.NoError(t, err)
+ assert.NilError(t, err)
loggerDriver, err := New(info)
- require.NoError(t, err)
+ assert.NilError(t, err)
if !hec.connectionVerified {
t.Fatal("By default connection should be verified")
diff --git a/daemon/logger/templates/templates_test.go b/daemon/logger/templates/templates_test.go
index 5e71d96f26..b767037477 100644
--- a/daemon/logger/templates/templates_test.go
+++ b/daemon/logger/templates/templates_test.go
@@ -4,15 +4,16 @@ import (
"bytes"
"testing"
- "github.com/stretchr/testify/assert"
+ "github.com/gotestyourself/gotestyourself/assert"
+ is "github.com/gotestyourself/gotestyourself/assert/cmp"
)
func TestNewParse(t *testing.T) {
tm, err := NewParse("foo", "this is a {{ . }}")
- assert.NoError(t, err)
+ assert.Check(t, err)
var b bytes.Buffer
- assert.NoError(t, tm.Execute(&b, "string"))
+ assert.Check(t, tm.Execute(&b, "string"))
want := "this is a string"
- assert.Equal(t, want, b.String())
+ assert.Check(t, is.Equal(want, b.String()))
}
diff --git a/daemon/oci_linux_test.go b/daemon/oci_linux_test.go
index f6bda79745..5f2731b8d6 100644
--- a/daemon/oci_linux_test.go
+++ b/daemon/oci_linux_test.go
@@ -8,8 +8,8 @@ import (
"github.com/docker/docker/daemon/config"
"github.com/docker/docker/oci"
"github.com/docker/docker/pkg/idtools"
-
- "github.com/stretchr/testify/assert"
+ "github.com/gotestyourself/gotestyourself/assert"
+ is "github.com/gotestyourself/gotestyourself/assert/cmp"
)
// TestTmpfsDevShmNoDupMount checks that a user-specified /dev/shm tmpfs
@@ -36,17 +36,17 @@ func TestTmpfsDevShmNoDupMount(t *testing.T) {
// Mimick the code flow of daemon.createSpec(), enough to reproduce the issue
ms, err := d.setupMounts(c)
- assert.NoError(t, err)
+ assert.Check(t, err)
ms = append(ms, c.IpcMounts()...)
tmpfsMounts, err := c.TmpfsMounts()
- assert.NoError(t, err)
+ assert.Check(t, err)
ms = append(ms, tmpfsMounts...)
s := oci.DefaultSpec()
err = setMounts(&d, &s, c, ms)
- assert.NoError(t, err)
+ assert.Check(t, err)
}
// TestIpcPrivateVsReadonly checks that in case of IpcMode: private
@@ -70,19 +70,19 @@ func TestIpcPrivateVsReadonly(t *testing.T) {
// We can't call createSpec() so mimick the minimal part
// of its code flow, just enough to reproduce the issue.
ms, err := d.setupMounts(c)
- assert.NoError(t, err)
+ assert.Check(t, err)
s := oci.DefaultSpec()
s.Root.Readonly = c.HostConfig.ReadonlyRootfs
err = setMounts(&d, &s, c, ms)
- assert.NoError(t, err)
+ assert.Check(t, err)
// Find the /dev/shm mount in ms, check it does not have ro
for _, m := range s.Mounts {
if m.Destination != "/dev/shm" {
continue
}
- assert.Equal(t, false, inSlice(m.Options, "ro"))
+ assert.Check(t, is.Equal(false, inSlice(m.Options, "ro")))
}
}
diff --git a/daemon/reload_test.go b/daemon/reload_test.go
index a2500b2bb2..9174bfba54 100644
--- a/daemon/reload_test.go
+++ b/daemon/reload_test.go
@@ -12,7 +12,8 @@ import (
_ "github.com/docker/docker/pkg/discovery/memory"
"github.com/docker/docker/registry"
"github.com/docker/libnetwork"
- "github.com/stretchr/testify/assert"
+ "github.com/gotestyourself/gotestyourself/assert"
+ is "github.com/gotestyourself/gotestyourself/assert/cmp"
)
func TestDaemonReloadLabels(t *testing.T) {
@@ -97,7 +98,7 @@ func TestDaemonReloadAllowNondistributableArtifacts(t *testing.T) {
sort.Strings(registries)
sort.Strings(actual)
- assert.Equal(t, registries, actual)
+ assert.Check(t, is.DeepEqual(registries, actual))
}
func TestDaemonReloadMirrors(t *testing.T) {
diff --git a/daemon/trustkey_test.go b/daemon/trustkey_test.go
index c49341d2a9..ebc7e28ee3 100644
--- a/daemon/trustkey_test.go
+++ b/daemon/trustkey_test.go
@@ -7,19 +7,19 @@ import (
"testing"
"github.com/docker/docker/internal/testutil"
+ "github.com/gotestyourself/gotestyourself/assert"
+ is "github.com/gotestyourself/gotestyourself/assert/cmp"
"github.com/gotestyourself/gotestyourself/fs"
- "github.com/stretchr/testify/assert"
- "github.com/stretchr/testify/require"
)
// LoadOrCreateTrustKey
func TestLoadOrCreateTrustKeyInvalidKeyFile(t *testing.T) {
tmpKeyFolderPath, err := ioutil.TempDir("", "api-trustkey-test")
- require.NoError(t, err)
+ assert.NilError(t, err)
defer os.RemoveAll(tmpKeyFolderPath)
tmpKeyFile, err := ioutil.TempFile(tmpKeyFolderPath, "keyfile")
- require.NoError(t, err)
+ assert.NilError(t, err)
_, err = loadOrCreateTrustKey(tmpKeyFile.Name())
testutil.ErrorContains(t, err, "Error loading key file")
@@ -33,11 +33,11 @@ func TestLoadOrCreateTrustKeyCreateKeyWhenFileDoesNotExist(t *testing.T) {
tmpKeyFile := tmpKeyFolderPath.Join("keyfile")
key, err := loadOrCreateTrustKey(tmpKeyFile)
- require.NoError(t, err)
- assert.NotNil(t, key)
+ assert.NilError(t, err)
+ assert.Check(t, key != nil)
_, err = os.Stat(tmpKeyFile)
- require.NoError(t, err, "key file doesn't exist")
+ assert.NilError(t, err, "key file doesn't exist")
}
func TestLoadOrCreateTrustKeyCreateKeyWhenDirectoryDoesNotExist(t *testing.T) {
@@ -46,27 +46,27 @@ func TestLoadOrCreateTrustKeyCreateKeyWhenDirectoryDoesNotExist(t *testing.T) {
tmpKeyFile := tmpKeyFolderPath.Join("folder/hierarchy/keyfile")
key, err := loadOrCreateTrustKey(tmpKeyFile)
- require.NoError(t, err)
- assert.NotNil(t, key)
+ assert.NilError(t, err)
+ assert.Check(t, key != nil)
_, err = os.Stat(tmpKeyFile)
- require.NoError(t, err, "key file doesn't exist")
+ assert.NilError(t, err, "key file doesn't exist")
}
func TestLoadOrCreateTrustKeyCreateKeyNoPath(t *testing.T) {
defer os.Remove("keyfile")
key, err := loadOrCreateTrustKey("keyfile")
- require.NoError(t, err)
- assert.NotNil(t, key)
+ assert.NilError(t, err)
+ assert.Check(t, key != nil)
_, err = os.Stat("keyfile")
- require.NoError(t, err, "key file doesn't exist")
+ assert.NilError(t, err, "key file doesn't exist")
}
func TestLoadOrCreateTrustKeyLoadValidKey(t *testing.T) {
tmpKeyFile := filepath.Join("testdata", "keyfile")
key, err := loadOrCreateTrustKey(tmpKeyFile)
- require.NoError(t, err)
+ assert.NilError(t, err)
expected := "AWX2:I27X:WQFX:IOMK:CNAK:O7PW:VYNB:ZLKC:CVAE:YJP2:SI4A:XXAY"
- assert.Contains(t, key.String(), expected)
+ assert.Check(t, is.Contains(key.String(), expected))
}
diff --git a/distribution/metadata/v1_id_service_test.go b/distribution/metadata/v1_id_service_test.go
index 8a3647b3b3..7bac8e8212 100644
--- a/distribution/metadata/v1_id_service_test.go
+++ b/distribution/metadata/v1_id_service_test.go
@@ -6,7 +6,7 @@ import (
"testing"
"github.com/docker/docker/layer"
- "github.com/stretchr/testify/require"
+ "github.com/gotestyourself/gotestyourself/assert"
)
func TestV1IDService(t *testing.T) {
@@ -24,7 +24,7 @@ func TestV1IDService(t *testing.T) {
ns := v1IDService.namespace()
- require.Equal(t, "v1id", ns)
+ assert.Equal(t, "v1id", ns)
testVectors := []struct {
registry string
diff --git a/image/fs_test.go b/image/fs_test.go
index 6a634377e7..dcf4da75f8 100644
--- a/image/fs_test.go
+++ b/image/fs_test.go
@@ -11,16 +11,17 @@ import (
"testing"
"github.com/docker/docker/internal/testutil"
+ "github.com/gotestyourself/gotestyourself/assert"
+ is "github.com/gotestyourself/gotestyourself/assert/cmp"
digest "github.com/opencontainers/go-digest"
- "github.com/stretchr/testify/assert"
)
func defaultFSStoreBackend(t *testing.T) (StoreBackend, func()) {
tmpdir, err := ioutil.TempDir("", "images-fs-store")
- assert.NoError(t, err)
+ assert.Check(t, err)
fsBackend, err := NewFSStoreBackend(tmpdir)
- assert.NoError(t, err)
+ assert.Check(t, err)
return fsBackend, func() { os.RemoveAll(tmpdir) }
}
@@ -30,12 +31,12 @@ func TestFSGetInvalidData(t *testing.T) {
defer cleanup()
id, err := store.Set([]byte("foobar"))
- assert.NoError(t, err)
+ assert.Check(t, err)
dgst := digest.Digest(id)
err = ioutil.WriteFile(filepath.Join(store.(*fs).root, contentDirName, string(dgst.Algorithm()), dgst.Hex()), []byte("foobar2"), 0600)
- assert.NoError(t, err)
+ assert.Check(t, err)
_, err = store.Get(id)
testutil.ErrorContains(t, err, "failed to verify")
@@ -47,7 +48,7 @@ func TestFSInvalidSet(t *testing.T) {
id := digest.FromBytes([]byte("foobar"))
err := os.Mkdir(filepath.Join(store.(*fs).root, contentDirName, string(id.Algorithm()), id.Hex()), 0700)
- assert.NoError(t, err)
+ assert.Check(t, err)
_, err = store.Set([]byte("foobar"))
testutil.ErrorContains(t, err, "failed to write digest data")
@@ -55,7 +56,7 @@ func TestFSInvalidSet(t *testing.T) {
func TestFSInvalidRoot(t *testing.T) {
tmpdir, err := ioutil.TempDir("", "images-fs-store")
- assert.NoError(t, err)
+ assert.Check(t, err)
defer os.RemoveAll(tmpdir)
tcases := []struct {
@@ -70,10 +71,10 @@ func TestFSInvalidRoot(t *testing.T) {
root := filepath.Join(tmpdir, tc.root)
filePath := filepath.Join(tmpdir, tc.invalidFile)
err := os.MkdirAll(filepath.Dir(filePath), 0700)
- assert.NoError(t, err)
+ assert.Check(t, err)
f, err := os.Create(filePath)
- assert.NoError(t, err)
+ assert.Check(t, err)
f.Close()
_, err = NewFSStoreBackend(root)
@@ -89,10 +90,10 @@ func TestFSMetadataGetSet(t *testing.T) {
defer cleanup()
id, err := store.Set([]byte("foo"))
- assert.NoError(t, err)
+ assert.Check(t, err)
id2, err := store.Set([]byte("bar"))
- assert.NoError(t, err)
+ assert.Check(t, err)
tcases := []struct {
id digest.Digest
@@ -106,12 +107,12 @@ func TestFSMetadataGetSet(t *testing.T) {
for _, tc := range tcases {
err = store.SetMetadata(tc.id, tc.key, tc.value)
- assert.NoError(t, err)
+ assert.Check(t, err)
actual, err := store.GetMetadata(tc.id, tc.key)
- assert.NoError(t, err)
+ assert.Check(t, err)
- assert.Equal(t, tc.value, actual)
+ assert.Check(t, is.DeepEqual(tc.value, actual))
}
_, err = store.GetMetadata(id2, "tkey2")
@@ -130,19 +131,19 @@ func TestFSInvalidWalker(t *testing.T) {
defer cleanup()
fooID, err := store.Set([]byte("foo"))
- assert.NoError(t, err)
+ assert.Check(t, err)
err = ioutil.WriteFile(filepath.Join(store.(*fs).root, contentDirName, "sha256/foobar"), []byte("foobar"), 0600)
- assert.NoError(t, err)
+ assert.Check(t, err)
n := 0
err = store.Walk(func(id digest.Digest) error {
- assert.Equal(t, fooID, id)
+ assert.Check(t, is.Equal(fooID, id))
n++
return nil
})
- assert.NoError(t, err)
- assert.Equal(t, 1, n)
+ assert.Check(t, err)
+ assert.Check(t, is.Equal(1, n))
}
func TestFSGetSet(t *testing.T) {
@@ -159,12 +160,12 @@ func TestFSGetSet(t *testing.T) {
randomInput := make([]byte, 8*1024)
_, err := rand.Read(randomInput)
- assert.NoError(t, err)
+ assert.Check(t, err)
// skipping use of digest pkg because it is used by the implementation
h := sha256.New()
_, err = h.Write(randomInput)
- assert.NoError(t, err)
+ assert.Check(t, err)
tcases = append(tcases, tcase{
input: randomInput,
@@ -173,14 +174,14 @@ func TestFSGetSet(t *testing.T) {
for _, tc := range tcases {
id, err := store.Set([]byte(tc.input))
- assert.NoError(t, err)
- assert.Equal(t, tc.expected, id)
+ assert.Check(t, err)
+ assert.Check(t, is.Equal(tc.expected, id))
}
for _, tc := range tcases {
data, err := store.Get(tc.expected)
- assert.NoError(t, err)
- assert.Equal(t, tc.input, data)
+ assert.Check(t, err)
+ assert.Check(t, is.DeepEqual(tc.input, data))
}
}
@@ -209,22 +210,22 @@ func TestFSDelete(t *testing.T) {
defer cleanup()
id, err := store.Set([]byte("foo"))
- assert.NoError(t, err)
+ assert.Check(t, err)
id2, err := store.Set([]byte("bar"))
- assert.NoError(t, err)
+ assert.Check(t, err)
err = store.Delete(id)
- assert.NoError(t, err)
+ assert.Check(t, err)
_, err = store.Get(id)
testutil.ErrorContains(t, err, "failed to get digest")
_, err = store.Get(id2)
- assert.NoError(t, err)
+ assert.Check(t, err)
err = store.Delete(id2)
- assert.NoError(t, err)
+ assert.Check(t, err)
_, err = store.Get(id2)
testutil.ErrorContains(t, err, "failed to get digest")
@@ -235,10 +236,10 @@ func TestFSWalker(t *testing.T) {
defer cleanup()
id, err := store.Set([]byte("foo"))
- assert.NoError(t, err)
+ assert.Check(t, err)
id2, err := store.Set([]byte("bar"))
- assert.NoError(t, err)
+ assert.Check(t, err)
tcases := make(map[digest.Digest]struct{})
tcases[id] = struct{}{}
@@ -249,9 +250,9 @@ func TestFSWalker(t *testing.T) {
n++
return nil
})
- assert.NoError(t, err)
- assert.Equal(t, 2, n)
- assert.Len(t, tcases, 0)
+ assert.Check(t, err)
+ assert.Check(t, is.Equal(2, n))
+ assert.Check(t, is.Len(tcases, 0))
}
func TestFSWalkerStopOnError(t *testing.T) {
@@ -259,7 +260,7 @@ func TestFSWalkerStopOnError(t *testing.T) {
defer cleanup()
id, err := store.Set([]byte("foo"))
- assert.NoError(t, err)
+ assert.Check(t, err)
tcases := make(map[digest.Digest]struct{})
tcases[id] = struct{}{}
diff --git a/image/image_test.go b/image/image_test.go
index 429f202978..265db0167c 100644
--- a/image/image_test.go
+++ b/image/image_test.go
@@ -9,8 +9,8 @@ import (
"github.com/docker/docker/api/types/container"
"github.com/docker/docker/layer"
- "github.com/stretchr/testify/assert"
- "github.com/stretchr/testify/require"
+ "github.com/gotestyourself/gotestyourself/assert"
+ is "github.com/gotestyourself/gotestyourself/assert/cmp"
)
const sampleImageJSON = `{
@@ -25,13 +25,13 @@ const sampleImageJSON = `{
func TestNewFromJSON(t *testing.T) {
img, err := NewFromJSON([]byte(sampleImageJSON))
- require.NoError(t, err)
- assert.Equal(t, sampleImageJSON, string(img.RawJSON()))
+ assert.NilError(t, err)
+ assert.Check(t, is.Equal(sampleImageJSON, string(img.RawJSON())))
}
func TestNewFromJSONWithInvalidJSON(t *testing.T) {
_, err := NewFromJSON([]byte("{}"))
- assert.EqualError(t, err, "invalid image JSON, no RootFS key")
+ assert.Check(t, is.Error(err, "invalid image JSON, no RootFS key"))
}
func TestMarshalKeyOrder(t *testing.T) {
@@ -42,7 +42,7 @@ func TestMarshalKeyOrder(t *testing.T) {
Architecture: "c",
},
})
- assert.NoError(t, err)
+ assert.Check(t, err)
expectedOrder := []string{"architecture", "author", "comment"}
var indexes []int
@@ -71,10 +71,10 @@ func TestImage(t *testing.T) {
computedID: ID(cid),
}
- assert.Equal(t, cid, img.ImageID())
- assert.Equal(t, cid, img.ID().String())
- assert.Equal(t, os, img.OperatingSystem())
- assert.Equal(t, config, img.RunConfig())
+ assert.Check(t, is.Equal(cid, img.ImageID()))
+ assert.Check(t, is.Equal(cid, img.ID().String()))
+ assert.Check(t, is.Equal(os, img.OperatingSystem()))
+ assert.Check(t, is.DeepEqual(config, img.RunConfig()))
}
func TestImageOSNotEmpty(t *testing.T) {
@@ -85,7 +85,7 @@ func TestImageOSNotEmpty(t *testing.T) {
},
OSVersion: "osversion",
}
- assert.Equal(t, os, img.OperatingSystem())
+ assert.Check(t, is.Equal(os, img.OperatingSystem()))
}
func TestNewChildImageFromImageWithRootFS(t *testing.T) {
@@ -109,16 +109,16 @@ func TestNewChildImageFromImageWithRootFS(t *testing.T) {
newImage := NewChildImage(parent, childConfig, "platform")
expectedDiffIDs := []layer.DiffID{layer.DiffID("ba5e"), layer.DiffID("abcdef")}
- assert.Equal(t, expectedDiffIDs, newImage.RootFS.DiffIDs)
- assert.Equal(t, childConfig.Author, newImage.Author)
- assert.Equal(t, childConfig.Config, newImage.Config)
- assert.Equal(t, *childConfig.ContainerConfig, newImage.ContainerConfig)
- assert.Equal(t, "platform", newImage.OS)
- assert.Equal(t, childConfig.Config, newImage.Config)
+ assert.Check(t, is.DeepEqual(expectedDiffIDs, newImage.RootFS.DiffIDs))
+ assert.Check(t, is.Equal(childConfig.Author, newImage.Author))
+ assert.Check(t, is.DeepEqual(childConfig.Config, newImage.Config))
+ assert.Check(t, is.DeepEqual(*childConfig.ContainerConfig, newImage.ContainerConfig))
+ assert.Check(t, is.Equal("platform", newImage.OS))
+ assert.Check(t, is.DeepEqual(childConfig.Config, newImage.Config))
- assert.Len(t, newImage.History, 2)
- assert.Equal(t, childConfig.Comment, newImage.History[1].Comment)
+ assert.Check(t, is.Len(newImage.History, 2))
+ assert.Check(t, is.Equal(childConfig.Comment, newImage.History[1].Comment))
// RootFS should be copied not mutated
- assert.NotEqual(t, parent.RootFS.DiffIDs, newImage.RootFS.DiffIDs)
+ assert.Check(t, parent.RootFS.DiffIDs != newImage.RootFS.DiffIDs)
}
diff --git a/image/store_test.go b/image/store_test.go
index b1300657a0..f43839923b 100644
--- a/image/store_test.go
+++ b/image/store_test.go
@@ -7,8 +7,9 @@ import (
"github.com/docker/docker/internal/testutil"
"github.com/docker/docker/layer"
+ "github.com/gotestyourself/gotestyourself/assert"
+ is "github.com/gotestyourself/gotestyourself/assert/cmp"
"github.com/opencontainers/go-digest"
- "github.com/stretchr/testify/assert"
)
func TestRestore(t *testing.T) {
@@ -16,53 +17,53 @@ func TestRestore(t *testing.T) {
defer cleanup()
id1, err := fs.Set([]byte(`{"comment": "abc", "rootfs": {"type": "layers"}}`))
- assert.NoError(t, err)
+ assert.Check(t, err)
_, err = fs.Set([]byte(`invalid`))
- assert.NoError(t, err)
+ assert.Check(t, err)
id2, err := fs.Set([]byte(`{"comment": "def", "rootfs": {"type": "layers", "diff_ids": ["2c26b46b68ffc68ff99b453c1d30413413422d706483bfa0f98a5e886266e7ae"]}}`))
- assert.NoError(t, err)
+ assert.Check(t, err)
err = fs.SetMetadata(id2, "parent", []byte(id1))
- assert.NoError(t, err)
+ assert.Check(t, err)
mlgrMap := make(map[string]LayerGetReleaser)
mlgrMap[runtime.GOOS] = &mockLayerGetReleaser{}
is, err := NewImageStore(fs, mlgrMap)
- assert.NoError(t, err)
+ assert.Check(t, err)
- assert.Len(t, is.Map(), 2)
+ assert.Check(t, is.Len(is.Map(), 2))
img1, err := is.Get(ID(id1))
- assert.NoError(t, err)
- assert.Equal(t, ID(id1), img1.computedID)
- assert.Equal(t, string(id1), img1.computedID.String())
+ assert.Check(t, err)
+ assert.Check(t, is.Equal(ID(id1), img1.computedID))
+ assert.Check(t, is.Equal(string(id1), img1.computedID.String()))
img2, err := is.Get(ID(id2))
- assert.NoError(t, err)
- assert.Equal(t, "abc", img1.Comment)
- assert.Equal(t, "def", img2.Comment)
+ assert.Check(t, err)
+ assert.Check(t, is.Equal("abc", img1.Comment))
+ assert.Check(t, is.Equal("def", img2.Comment))
_, err = is.GetParent(ID(id1))
testutil.ErrorContains(t, err, "failed to read metadata")
p, err := is.GetParent(ID(id2))
- assert.NoError(t, err)
- assert.Equal(t, ID(id1), p)
+ assert.Check(t, err)
+ assert.Check(t, is.Equal(ID(id1), p))
children := is.Children(ID(id1))
- assert.Len(t, children, 1)
- assert.Equal(t, ID(id2), children[0])
- assert.Len(t, is.Heads(), 1)
+ assert.Check(t, is.Len(children, 1))
+ assert.Check(t, is.Equal(ID(id2), children[0]))
+ assert.Check(t, is.Len(is.Heads(), 1))
sid1, err := is.Search(string(id1)[:10])
- assert.NoError(t, err)
- assert.Equal(t, ID(id1), sid1)
+ assert.Check(t, err)
+ assert.Check(t, is.Equal(ID(id1), sid1))
sid1, err = is.Search(digest.Digest(id1).Hex()[:6])
- assert.NoError(t, err)
- assert.Equal(t, ID(id1), sid1)
+ assert.Check(t, err)
+ assert.Check(t, is.Equal(ID(id1), sid1))
invalidPattern := digest.Digest(id1).Hex()[1:6]
_, err = is.Search(invalidPattern)
@@ -74,31 +75,31 @@ func TestAddDelete(t *testing.T) {
defer cleanup()
id1, err := is.Create([]byte(`{"comment": "abc", "rootfs": {"type": "layers", "diff_ids": ["2c26b46b68ffc68ff99b453c1d30413413422d706483bfa0f98a5e886266e7ae"]}}`))
- assert.NoError(t, err)
- assert.Equal(t, ID("sha256:8d25a9c45df515f9d0fe8e4a6b1c64dd3b965a84790ddbcc7954bb9bc89eb993"), id1)
+ assert.Check(t, err)
+ assert.Check(t, is.Equal(ID("sha256:8d25a9c45df515f9d0fe8e4a6b1c64dd3b965a84790ddbcc7954bb9bc89eb993"), id1))
img, err := is.Get(id1)
- assert.NoError(t, err)
- assert.Equal(t, "abc", img.Comment)
+ assert.Check(t, err)
+ assert.Check(t, is.Equal("abc", img.Comment))
id2, err := is.Create([]byte(`{"comment": "def", "rootfs": {"type": "layers", "diff_ids": ["2c26b46b68ffc68ff99b453c1d30413413422d706483bfa0f98a5e886266e7ae"]}}`))
- assert.NoError(t, err)
+ assert.Check(t, err)
err = is.SetParent(id2, id1)
- assert.NoError(t, err)
+ assert.Check(t, err)
pid1, err := is.GetParent(id2)
- assert.NoError(t, err)
- assert.Equal(t, pid1, id1)
+ assert.Check(t, err)
+ assert.Check(t, is.Equal(pid1, id1))
_, err = is.Delete(id1)
- assert.NoError(t, err)
+ assert.Check(t, err)
_, err = is.Get(id1)
testutil.ErrorContains(t, err, "failed to get digest")
_, err = is.Get(id2)
- assert.NoError(t, err)
+ assert.Check(t, err)
_, err = is.GetParent(id2)
testutil.ErrorContains(t, err, "failed to read metadata")
@@ -109,14 +110,14 @@ func TestSearchAfterDelete(t *testing.T) {
defer cleanup()
id, err := is.Create([]byte(`{"comment": "abc", "rootfs": {"type": "layers"}}`))
- assert.NoError(t, err)
+ assert.Check(t, err)
id1, err := is.Search(string(id)[:15])
- assert.NoError(t, err)
- assert.Equal(t, id1, id)
+ assert.Check(t, err)
+ assert.Check(t, is.Equal(id1, id))
_, err = is.Delete(id)
- assert.NoError(t, err)
+ assert.Check(t, err)
_, err = is.Search(string(id)[:15])
testutil.ErrorContains(t, err, "No such image")
@@ -127,20 +128,20 @@ func TestParentReset(t *testing.T) {
defer cleanup()
id, err := is.Create([]byte(`{"comment": "abc1", "rootfs": {"type": "layers"}}`))
- assert.NoError(t, err)
+ assert.Check(t, err)
id2, err := is.Create([]byte(`{"comment": "abc2", "rootfs": {"type": "layers"}}`))
- assert.NoError(t, err)
+ assert.Check(t, err)
id3, err := is.Create([]byte(`{"comment": "abc3", "rootfs": {"type": "layers"}}`))
- assert.NoError(t, err)
+ assert.Check(t, err)
- assert.NoError(t, is.SetParent(id, id2))
- assert.Len(t, is.Children(id2), 1)
+ assert.Check(t, is.SetParent(id, id2))
+ assert.Check(t, is.Len(is.Children(id2), 1))
- assert.NoError(t, is.SetParent(id, id3))
- assert.Len(t, is.Children(id2), 0)
- assert.Len(t, is.Children(id3), 1)
+ assert.Check(t, is.SetParent(id, id3))
+ assert.Check(t, is.Len(is.Children(id2), 0))
+ assert.Check(t, is.Len(is.Children(id3), 1))
}
func defaultImageStore(t *testing.T) (Store, func()) {
@@ -149,7 +150,7 @@ func defaultImageStore(t *testing.T) (Store, func()) {
mlgrMap := make(map[string]LayerGetReleaser)
mlgrMap[runtime.GOOS] = &mockLayerGetReleaser{}
store, err := NewImageStore(fsBackend, mlgrMap)
- assert.NoError(t, err)
+ assert.Check(t, err)
return store, cleanup
}
@@ -159,17 +160,17 @@ func TestGetAndSetLastUpdated(t *testing.T) {
defer cleanup()
id, err := store.Create([]byte(`{"comment": "abc1", "rootfs": {"type": "layers"}}`))
- assert.NoError(t, err)
+ assert.Check(t, err)
updated, err := store.GetLastUpdated(id)
- assert.NoError(t, err)
- assert.Equal(t, updated.IsZero(), true)
+ assert.Check(t, err)
+ assert.Check(t, is.Equal(updated.IsZero(), true))
- assert.NoError(t, store.SetLastUpdated(id))
+ assert.Check(t, store.SetLastUpdated(id))
updated, err = store.GetLastUpdated(id)
- assert.NoError(t, err)
- assert.Equal(t, updated.IsZero(), false)
+ assert.Check(t, err)
+ assert.Check(t, is.Equal(updated.IsZero(), false))
}
func TestStoreLen(t *testing.T) {
@@ -179,7 +180,7 @@ func TestStoreLen(t *testing.T) {
expected := 10
for i := 0; i < expected; i++ {
_, err := store.Create([]byte(fmt.Sprintf(`{"comment": "abc%d", "rootfs": {"type": "layers"}}`, i)))
- assert.NoError(t, err)
+ assert.NilError(t, err)
}
numImages := store.Len()
assert.Equal(t, expected, numImages)
diff --git a/integration-cli/cli/build/fakegit/fakegit.go b/integration-cli/cli/build/fakegit/fakegit.go
index eb175365a5..b05bfc322b 100644
--- a/integration-cli/cli/build/fakegit/fakegit.go
+++ b/integration-cli/cli/build/fakegit/fakegit.go
@@ -11,11 +11,11 @@ import (
"github.com/docker/docker/integration-cli/cli/build/fakecontext"
"github.com/docker/docker/integration-cli/cli/build/fakestorage"
- "github.com/stretchr/testify/require"
+ "github.com/gotestyourself/gotestyourself/assert"
)
type testingT interface {
- require.TestingT
+ assert.TestingT
logT
Fatal(args ...interface{})
Fatalf(string, ...interface{})
diff --git a/integration-cli/cli/build/fakestorage/storage.go b/integration-cli/cli/build/fakestorage/storage.go
index c8c837ed2a..bd49a33cfe 100644
--- a/integration-cli/cli/build/fakestorage/storage.go
+++ b/integration-cli/cli/build/fakestorage/storage.go
@@ -15,13 +15,13 @@ import (
"github.com/docker/docker/integration-cli/request"
"github.com/docker/docker/internal/test/environment"
"github.com/docker/docker/internal/testutil"
- "github.com/stretchr/testify/require"
+ "github.com/gotestyourself/gotestyourself/assert"
)
var testEnv *environment.Execution
type testingT interface {
- require.TestingT
+ assert.TestingT
logT
Fatal(args ...interface{})
Fatalf(string, ...interface{})
diff --git a/integration-cli/daemon/daemon.go b/integration-cli/daemon/daemon.go
index 9672d160f8..9ca54236f4 100644
--- a/integration-cli/daemon/daemon.go
+++ b/integration-cli/daemon/daemon.go
@@ -24,14 +24,14 @@ import (
"github.com/docker/go-connections/sockets"
"github.com/docker/go-connections/tlsconfig"
"github.com/go-check/check"
+ "github.com/gotestyourself/gotestyourself/assert"
"github.com/gotestyourself/gotestyourself/icmd"
"github.com/pkg/errors"
- "github.com/stretchr/testify/require"
"golang.org/x/net/context"
)
type testingT interface {
- require.TestingT
+ assert.TestingT
logT
Fatalf(string, ...interface{})
}
@@ -487,20 +487,20 @@ func (d *Daemon) handleUserns() {
// LoadBusybox image into the daemon
func (d *Daemon) LoadBusybox(t testingT) {
clientHost, err := client.NewEnvClient()
- require.NoError(t, err, "failed to create client")
+ assert.NilError(t, err, "failed to create client")
defer clientHost.Close()
ctx := context.Background()
reader, err := clientHost.ImageSave(ctx, []string{"busybox:latest"})
- require.NoError(t, err, "failed to download busybox")
+ assert.NilError(t, err, "failed to download busybox")
defer reader.Close()
client, err := d.NewClient()
- require.NoError(t, err, "failed to create client")
+ assert.NilError(t, err, "failed to create client")
defer client.Close()
resp, err := client.ImageLoad(ctx, reader, true)
- require.NoError(t, err, "failed to load busybox")
+ assert.NilError(t, err, "failed to load busybox")
defer resp.Body.Close()
}
@@ -563,11 +563,11 @@ func (d *Daemon) WaitRun(contID string) error {
}
// Info returns the info struct for this daemon
-func (d *Daemon) Info(t require.TestingT) types.Info {
+func (d *Daemon) Info(t assert.TestingT) types.Info {
apiclient, err := client.NewClientWithOpts(client.WithHost((d.Sock())))
- require.NoError(t, err)
+ assert.NilError(t, err)
info, err := apiclient.Info(context.Background())
- require.NoError(t, err)
+ assert.NilError(t, err)
return info
}
diff --git a/integration-cli/daemon/daemon_swarm.go b/integration-cli/daemon/daemon_swarm.go
index cb44f63f23..be0ddef99e 100644
--- a/integration-cli/daemon/daemon_swarm.go
+++ b/integration-cli/daemon/daemon_swarm.go
@@ -11,8 +11,8 @@ import (
"github.com/docker/docker/client"
"github.com/docker/docker/integration-cli/checker"
"github.com/go-check/check"
+ "github.com/gotestyourself/gotestyourself/assert"
"github.com/pkg/errors"
- "github.com/stretchr/testify/require"
"golang.org/x/net/context"
)
@@ -235,12 +235,12 @@ func (d *Swarm) CheckServiceUpdateState(service string) func(*check.C) (interfac
func (d *Swarm) CheckPluginRunning(plugin string) func(c *check.C) (interface{}, check.CommentInterface) {
return func(c *check.C) (interface{}, check.CommentInterface) {
apiclient, err := d.NewClient()
- require.NoError(c, err)
+ assert.NilError(c, err)
resp, _, err := apiclient.PluginInspectWithRaw(context.Background(), plugin)
if client.IsErrNotFound(err) {
return false, check.Commentf("%v", err)
}
- require.NoError(c, err)
+ assert.NilError(c, err)
return resp.Enabled, check.Commentf("%+v", resp)
}
}
@@ -249,12 +249,12 @@ func (d *Swarm) CheckPluginRunning(plugin string) func(c *check.C) (interface{},
func (d *Swarm) CheckPluginImage(plugin string) func(c *check.C) (interface{}, check.CommentInterface) {
return func(c *check.C) (interface{}, check.CommentInterface) {
apiclient, err := d.NewClient()
- require.NoError(c, err)
+ assert.NilError(c, err)
resp, _, err := apiclient.PluginInspectWithRaw(context.Background(), plugin)
if client.IsErrNotFound(err) {
return false, check.Commentf("%v", err)
}
- require.NoError(c, err)
+ assert.NilError(c, err)
return resp.PluginReference, check.Commentf("%+v", resp)
}
}
diff --git a/integration-cli/docker_api_build_test.go b/integration-cli/docker_api_build_test.go
index e5423a4741..cae7c1afe7 100644
--- a/integration-cli/docker_api_build_test.go
+++ b/integration-cli/docker_api_build_test.go
@@ -18,10 +18,10 @@ import (
"github.com/docker/docker/integration-cli/cli/build/fakestorage"
"github.com/docker/docker/integration-cli/request"
"github.com/go-check/check"
+ "github.com/gotestyourself/gotestyourself/assert"
+ is "github.com/gotestyourself/gotestyourself/assert/cmp"
"github.com/moby/buildkit/session"
"github.com/moby/buildkit/session/filesync"
- "github.com/stretchr/testify/assert"
- "github.com/stretchr/testify/require"
"golang.org/x/net/context"
"golang.org/x/sync/errgroup"
)
@@ -296,12 +296,12 @@ func (s *DockerSuite) TestBuildOnBuildCache(c *check.C) {
"/build",
request.RawContent(ctx.AsTarReader(c)),
request.ContentType("application/x-tar"))
- require.NoError(c, err)
- assert.Equal(c, http.StatusOK, res.StatusCode)
+ assert.NilError(c, err)
+ assert.Check(c, is.DeepEqual(http.StatusOK, res.StatusCode))
out, err := request.ReadBody(body)
- require.NoError(c, err)
- assert.Contains(c, string(out), "Successfully built")
+ assert.NilError(c, err)
+ assert.Check(c, is.Contains(string(out), "Successfully built"))
return out
}
@@ -316,15 +316,15 @@ func (s *DockerSuite) TestBuildOnBuildCache(c *check.C) {
out := build(dockerfile)
imageIDs := getImageIDsFromBuild(c, out)
- assert.Len(c, imageIDs, 2)
+ assert.Check(c, is.Len(imageIDs, 2))
parentID, childID := imageIDs[0], imageIDs[1]
client := testEnv.APIClient()
// check parentID is correct
image, _, err := client.ImageInspectWithRaw(context.Background(), childID)
- require.NoError(c, err)
- assert.Equal(c, parentID, image.Parent)
+ assert.NilError(c, err)
+ assert.Check(c, is.Equal(parentID, image.Parent))
}
func (s *DockerRegistrySuite) TestBuildCopyFromForcePull(c *check.C) {
@@ -333,12 +333,12 @@ func (s *DockerRegistrySuite) TestBuildCopyFromForcePull(c *check.C) {
repoName := fmt.Sprintf("%v/dockercli/busybox", privateRegistryURL)
// tag the image to upload it to the private registry
err := client.ImageTag(context.TODO(), "busybox", repoName)
- assert.Nil(c, err)
+ assert.Check(c, err)
// push the image to the registry
rc, err := client.ImagePush(context.TODO(), repoName, types.ImagePushOptions{RegistryAuth: "{}"})
- assert.Nil(c, err)
+ assert.Check(c, err)
_, err = io.Copy(ioutil.Discard, rc)
- assert.Nil(c, err)
+ assert.Check(c, err)
dockerfile := fmt.Sprintf(`
FROM %s AS foo
@@ -356,12 +356,12 @@ func (s *DockerRegistrySuite) TestBuildCopyFromForcePull(c *check.C) {
"/build?pull=1",
request.RawContent(ctx.AsTarReader(c)),
request.ContentType("application/x-tar"))
- require.NoError(c, err)
- assert.Equal(c, http.StatusOK, res.StatusCode)
+ assert.NilError(c, err)
+ assert.Check(c, is.DeepEqual(http.StatusOK, res.StatusCode))
out, err := request.ReadBody(body)
- require.NoError(c, err)
- assert.Contains(c, string(out), "Successfully built")
+ assert.NilError(c, err)
+ assert.Check(c, is.Contains(string(out), "Successfully built"))
}
func (s *DockerSuite) TestBuildAddRemoteNoDecompress(c *check.C) {
@@ -374,11 +374,11 @@ func (s *DockerSuite) TestBuildAddRemoteNoDecompress(c *check.C) {
Mode: 0600,
Typeflag: tar.TypeReg,
})
- require.NoError(c, err)
+ assert.NilError(c, err)
_, err = tw.Write(dt)
- require.NoError(c, err)
+ assert.NilError(c, err)
err = tw.Close()
- require.NoError(c, err)
+ assert.NilError(c, err)
server := fakestorage.New(c, "", fakecontext.WithBinaryFiles(map[string]*bytes.Buffer{
"test.tar": buffer,
@@ -400,12 +400,12 @@ func (s *DockerSuite) TestBuildAddRemoteNoDecompress(c *check.C) {
"/build",
request.RawContent(ctx.AsTarReader(c)),
request.ContentType("application/x-tar"))
- require.NoError(c, err)
- assert.Equal(c, http.StatusOK, res.StatusCode)
+ assert.NilError(c, err)
+ assert.Check(c, is.DeepEqual(http.StatusOK, res.StatusCode))
out, err := request.ReadBody(body)
- require.NoError(c, err)
- assert.Contains(c, string(out), "Successfully built")
+ assert.NilError(c, err)
+ assert.Check(c, is.Contains(string(out), "Successfully built"))
}
func (s *DockerSuite) TestBuildChownOnCopy(c *check.C) {
@@ -433,8 +433,8 @@ func (s *DockerSuite) TestBuildChownOnCopy(c *check.C) {
c.Assert(res.StatusCode, checker.Equals, http.StatusOK)
out, err := request.ReadBody(body)
- require.NoError(c, err)
- assert.Contains(c, string(out), "Successfully built")
+ assert.NilError(c, err)
+ assert.Check(c, is.Contains(string(out), "Successfully built"))
}
func (s *DockerSuite) TestBuildCopyCacheOnFileChange(c *check.C) {
@@ -454,11 +454,11 @@ COPY file /file`
request.RawContent(ctx.AsTarReader(c)),
request.ContentType("application/x-tar"))
- require.NoError(c, err)
- assert.Equal(c, http.StatusOK, res.StatusCode)
+ assert.NilError(c, err)
+ assert.Check(c, is.DeepEqual(http.StatusOK, res.StatusCode))
out, err := request.ReadBody(body)
- require.NoError(c, err)
+ assert.NilError(c, err)
ids := getImageIDsFromBuild(c, out)
return ids[len(ids)-1]
@@ -493,11 +493,11 @@ ADD file /file`
request.RawContent(ctx.AsTarReader(c)),
request.ContentType("application/x-tar"))
- require.NoError(c, err)
- assert.Equal(c, http.StatusOK, res.StatusCode)
+ assert.NilError(c, err)
+ assert.Check(c, is.DeepEqual(http.StatusOK, res.StatusCode))
out, err := request.ReadBody(body)
- require.NoError(c, err)
+ assert.NilError(c, err)
ids := getImageIDsFromBuild(c, out)
return ids[len(ids)-1]
@@ -530,7 +530,7 @@ func (s *DockerSuite) TestBuildWithSession(c *check.C) {
defer fctx.Close()
out := testBuildWithSession(c, fctx.Dir, dockerfile)
- assert.Contains(c, out, "some content")
+ assert.Check(c, is.Contains(out, "some content"))
fctx.Add("second", "contentcontent")
@@ -540,20 +540,20 @@ func (s *DockerSuite) TestBuildWithSession(c *check.C) {
`
out = testBuildWithSession(c, fctx.Dir, dockerfile)
- assert.Equal(c, strings.Count(out, "Using cache"), 2)
- assert.Contains(c, out, "contentcontent")
+ assert.Check(c, is.Equal(strings.Count(out, "Using cache"), 2))
+ assert.Check(c, is.Contains(out, "contentcontent"))
client := testEnv.APIClient()
du, err := client.DiskUsage(context.TODO())
- assert.Nil(c, err)
- assert.True(c, du.BuilderSize > 10)
+ assert.Check(c, err)
+ assert.Check(c, du.BuilderSize > 10)
out = testBuildWithSession(c, fctx.Dir, dockerfile)
- assert.Equal(c, strings.Count(out, "Using cache"), 4)
+ assert.Check(c, is.Equal(strings.Count(out, "Using cache"), 4))
du2, err := client.DiskUsage(context.TODO())
- assert.Nil(c, err)
- assert.Equal(c, du.BuilderSize, du2.BuilderSize)
+ assert.Check(c, err)
+ assert.Check(c, is.Equal(du.BuilderSize, du2.BuilderSize))
// rebuild with regular tar, confirm cache still applies
fctx.Add("Dockerfile", dockerfile)
@@ -561,26 +561,26 @@ func (s *DockerSuite) TestBuildWithSession(c *check.C) {
"/build",
request.RawContent(fctx.AsTarReader(c)),
request.ContentType("application/x-tar"))
- require.NoError(c, err)
- assert.Equal(c, http.StatusOK, res.StatusCode)
+ assert.NilError(c, err)
+ assert.Check(c, is.DeepEqual(http.StatusOK, res.StatusCode))
outBytes, err := request.ReadBody(body)
- require.NoError(c, err)
- assert.Contains(c, string(outBytes), "Successfully built")
- assert.Equal(c, strings.Count(string(outBytes), "Using cache"), 4)
+ assert.NilError(c, err)
+ assert.Check(c, is.Contains(string(outBytes), "Successfully built"))
+ assert.Check(c, is.Equal(strings.Count(string(outBytes), "Using cache"), 4))
_, err = client.BuildCachePrune(context.TODO())
- assert.Nil(c, err)
+ assert.Check(c, err)
du, err = client.DiskUsage(context.TODO())
- assert.Nil(c, err)
- assert.Equal(c, du.BuilderSize, int64(0))
+ assert.Check(c, err)
+ assert.Check(c, is.Equal(du.BuilderSize, int64(0)))
}
func testBuildWithSession(c *check.C, dir, dockerfile string) (outStr string) {
client := testEnv.APIClient()
sess, err := session.NewSession("foo1", "foo")
- assert.Nil(c, err)
+ assert.Check(c, err)
fsProvider := filesync.NewFSSyncProvider([]filesync.SyncedDir{
{Dir: dir},
@@ -601,17 +601,17 @@ func testBuildWithSession(c *check.C, dir, dockerfile string) (outStr string) {
if err != nil {
return err
}
- assert.Equal(c, res.StatusCode, http.StatusOK)
+ assert.Check(c, is.DeepEqual(res.StatusCode, http.StatusOK))
out, err := request.ReadBody(body)
- require.NoError(c, err)
- assert.Contains(c, string(out), "Successfully built")
+ assert.NilError(c, err)
+ assert.Check(c, is.Contains(string(out), "Successfully built"))
sess.Close()
outStr = string(out)
return nil
})
err = g.Wait()
- assert.Nil(c, err)
+ assert.Check(c, err)
return
}
@@ -633,8 +633,8 @@ ENV foo bar`
c.Assert(res.StatusCode, checker.Equals, http.StatusOK)
out, err := request.ReadBody(body)
- require.NoError(c, err)
- assert.Contains(c, string(out), "Successfully built")
+ assert.NilError(c, err)
+ assert.Check(c, is.Contains(string(out), "Successfully built"))
}
type buildLine struct {
@@ -651,7 +651,7 @@ func getImageIDsFromBuild(c *check.C, output []byte) []string {
continue
}
entry := buildLine{}
- require.NoError(c, json.Unmarshal(line, &entry))
+ assert.NilError(c, json.Unmarshal(line, &entry))
if entry.Aux.ID != "" {
ids = append(ids, entry.Aux.ID)
}
diff --git a/integration-cli/docker_api_containers_test.go b/integration-cli/docker_api_containers_test.go
index ed1941022e..c0e5ff5b17 100644
--- a/integration-cli/docker_api_containers_test.go
+++ b/integration-cli/docker_api_containers_test.go
@@ -31,9 +31,9 @@ import (
"github.com/docker/docker/volume"
"github.com/docker/go-connections/nat"
"github.com/go-check/check"
+ "github.com/gotestyourself/gotestyourself/assert"
+ is "github.com/gotestyourself/gotestyourself/assert/cmp"
"github.com/gotestyourself/gotestyourself/poll"
- "github.com/stretchr/testify/assert"
- "github.com/stretchr/testify/require"
"golang.org/x/net/context"
)
@@ -2027,47 +2027,47 @@ func (s *DockerSuite) TestContainersAPICreateMountsCreate(c *check.C) {
&containertypes.HostConfig{Mounts: []mounttypes.Mount{x.spec}},
&networktypes.NetworkingConfig{},
"")
- require.NoError(c, err)
+ assert.NilError(c, err)
containerInspect, err := apiclient.ContainerInspect(ctx, container.ID)
- require.NoError(c, err)
+ assert.NilError(c, err)
mps := containerInspect.Mounts
- require.Len(c, mps, 1)
+ assert.Assert(c, is.Len(mps, 1))
mountPoint := mps[0]
if x.expected.Source != "" {
- assert.Equal(c, x.expected.Source, mountPoint.Source)
+ assert.Check(c, is.Equal(x.expected.Source, mountPoint.Source))
}
if x.expected.Name != "" {
- assert.Equal(c, x.expected.Name, mountPoint.Name)
+ assert.Check(c, is.Equal(x.expected.Name, mountPoint.Name))
}
if x.expected.Driver != "" {
- assert.Equal(c, x.expected.Driver, mountPoint.Driver)
+ assert.Check(c, is.Equal(x.expected.Driver, mountPoint.Driver))
}
if x.expected.Propagation != "" {
- assert.Equal(c, x.expected.Propagation, mountPoint.Propagation)
+ assert.Check(c, is.Equal(x.expected.Propagation, mountPoint.Propagation))
}
- assert.Equal(c, x.expected.RW, mountPoint.RW)
- assert.Equal(c, x.expected.Type, mountPoint.Type)
- assert.Equal(c, x.expected.Mode, mountPoint.Mode)
- assert.Equal(c, x.expected.Destination, mountPoint.Destination)
+ assert.Check(c, is.Equal(x.expected.RW, mountPoint.RW))
+ assert.Check(c, is.Equal(x.expected.Type, mountPoint.Type))
+ assert.Check(c, is.Equal(x.expected.Mode, mountPoint.Mode))
+ assert.Check(c, is.Equal(x.expected.Destination, mountPoint.Destination))
err = apiclient.ContainerStart(ctx, container.ID, types.ContainerStartOptions{})
- require.NoError(c, err)
+ assert.NilError(c, err)
poll.WaitOn(c, containerExit(apiclient, container.ID), poll.WithDelay(time.Second))
err = apiclient.ContainerRemove(ctx, container.ID, types.ContainerRemoveOptions{
RemoveVolumes: true,
Force: true,
})
- require.NoError(c, err)
+ assert.NilError(c, err)
switch {
// Named volumes still exist after the container is removed
case x.spec.Type == "volume" && len(x.spec.Source) > 0:
_, err := apiclient.VolumeInspect(ctx, mountPoint.Name)
- require.NoError(c, err)
+ assert.NilError(c, err)
// Bind mounts are never removed with the container
case x.spec.Type == "bind":
@@ -2075,7 +2075,7 @@ func (s *DockerSuite) TestContainersAPICreateMountsCreate(c *check.C) {
// anonymous volumes are removed
default:
_, err := apiclient.VolumeInspect(ctx, mountPoint.Name)
- assert.True(c, client.IsErrNotFound(err))
+ assert.Check(c, client.IsErrNotFound(err))
}
}
}
diff --git a/integration-cli/docker_api_containers_windows_test.go b/integration-cli/docker_api_containers_windows_test.go
index eb2892575c..4c8ace4842 100644
--- a/integration-cli/docker_api_containers_windows_test.go
+++ b/integration-cli/docker_api_containers_windows_test.go
@@ -13,8 +13,8 @@ import (
"github.com/docker/docker/api/types/container"
"github.com/docker/docker/api/types/mount"
"github.com/go-check/check"
- "github.com/stretchr/testify/assert"
- "github.com/stretchr/testify/require"
+ "github.com/gotestyourself/gotestyourself/assert"
+ is "github.com/gotestyourself/gotestyourself/assert/cmp"
"golang.org/x/net/context"
)
@@ -65,12 +65,12 @@ func (s *DockerSuite) TestContainersAPICreateMountsBindNamedPipe(c *check.C) {
},
},
nil, name)
- require.NoError(c, err)
+ assert.NilError(c, err)
err = client.ContainerStart(ctx, name, types.ContainerStartOptions{})
- require.NoError(c, err)
+ assert.NilError(c, err)
err = <-ch
- require.NoError(c, err)
- assert.Equal(c, text, strings.TrimSpace(string(b)))
+ assert.NilError(c, err)
+ assert.Check(c, is.Equal(text, strings.TrimSpace(string(b))))
}
diff --git a/integration-cli/docker_api_inspect_test.go b/integration-cli/docker_api_inspect_test.go
index 52a889f08b..2f81d6e1eb 100644
--- a/integration-cli/docker_api_inspect_test.go
+++ b/integration-cli/docker_api_inspect_test.go
@@ -11,7 +11,8 @@ import (
"github.com/docker/docker/client"
"github.com/docker/docker/integration-cli/checker"
"github.com/go-check/check"
- "github.com/stretchr/testify/assert"
+ "github.com/gotestyourself/gotestyourself/assert"
+ is "github.com/gotestyourself/gotestyourself/assert/cmp"
)
func (s *DockerSuite) TestInspectAPIContainerResponse(c *check.C) {
@@ -115,8 +116,8 @@ func (s *DockerSuite) TestInspectAPIImageResponse(c *check.C) {
c.Assert(err, checker.IsNil)
c.Assert(imageJSON.RepoTags, checker.HasLen, 2)
- assert.Contains(c, imageJSON.RepoTags, "busybox:latest")
- assert.Contains(c, imageJSON.RepoTags, "busybox:mytag")
+ assert.Check(c, is.Contains(imageJSON.RepoTags, "busybox:latest"))
+ assert.Check(c, is.Contains(imageJSON.RepoTags, "busybox:mytag"))
}
// #17131, #17139, #17173
diff --git a/integration-cli/docker_api_swarm_test.go b/integration-cli/docker_api_swarm_test.go
index b5edfd2c04..2ba69acdb8 100644
--- a/integration-cli/docker_api_swarm_test.go
+++ b/integration-cli/docker_api_swarm_test.go
@@ -25,8 +25,8 @@ import (
"github.com/docker/docker/integration-cli/request"
"github.com/docker/swarmkit/ca"
"github.com/go-check/check"
- "github.com/stretchr/testify/assert"
- "github.com/stretchr/testify/require"
+ "github.com/gotestyourself/gotestyourself/assert"
+ is "github.com/gotestyourself/gotestyourself/assert/cmp"
"golang.org/x/net/context"
)
@@ -1012,16 +1012,16 @@ func (s *DockerSwarmSuite) TestAPINetworkInspectWithScope(c *check.C) {
name := "test-scoped-network"
ctx := context.Background()
apiclient, err := d.NewClient()
- require.NoError(c, err)
+ assert.NilError(c, err)
resp, err := apiclient.NetworkCreate(ctx, name, types.NetworkCreate{Driver: "overlay"})
- require.NoError(c, err)
+ assert.NilError(c, err)
network, err := apiclient.NetworkInspect(ctx, name, types.NetworkInspectOptions{})
- require.NoError(c, err)
- assert.Equal(c, "swarm", network.Scope)
- assert.Equal(c, resp.ID, network.ID)
+ assert.NilError(c, err)
+ assert.Check(c, is.Equal("swarm", network.Scope))
+ assert.Check(c, is.Equal(resp.ID, network.ID))
_, err = apiclient.NetworkInspect(ctx, name, types.NetworkInspectOptions{Scope: "local"})
- assert.True(c, client.IsErrNotFound(err))
+ assert.Check(c, client.IsErrNotFound(err))
}
diff --git a/integration-cli/docker_cli_by_digest_test.go b/integration-cli/docker_cli_by_digest_test.go
index 2d5dd486e7..ac97e0aecc 100644
--- a/integration-cli/docker_cli_by_digest_test.go
+++ b/integration-cli/docker_cli_by_digest_test.go
@@ -15,8 +15,9 @@ import (
"github.com/docker/docker/integration-cli/cli"
"github.com/docker/docker/integration-cli/cli/build"
"github.com/go-check/check"
+ "github.com/gotestyourself/gotestyourself/assert"
+ is "github.com/gotestyourself/gotestyourself/assert/cmp"
"github.com/opencontainers/go-digest"
- "github.com/stretchr/testify/assert"
)
var (
@@ -403,7 +404,7 @@ func (s *DockerRegistrySuite) TestInspectImageWithDigests(c *check.C) {
c.Assert(err, checker.IsNil)
c.Assert(imageJSON, checker.HasLen, 1)
c.Assert(imageJSON[0].RepoDigests, checker.HasLen, 1)
- assert.Contains(c, imageJSON[0].RepoDigests, imageReference)
+ assert.Check(c, is.Contains(imageJSON[0].RepoDigests, imageReference))
}
func (s *DockerRegistrySuite) TestPsListContainersFilterAncestorImageByDigest(c *check.C) {
diff --git a/integration/build/build_test.go b/integration/build/build_test.go
index 124f1107fb..daede7bc33 100644
--- a/integration/build/build_test.go
+++ b/integration/build/build_test.go
@@ -15,8 +15,8 @@ import (
"github.com/docker/docker/integration-cli/cli/build/fakecontext"
"github.com/docker/docker/integration/internal/request"
"github.com/docker/docker/pkg/jsonmessage"
- "github.com/stretchr/testify/assert"
- "github.com/stretchr/testify/require"
+ "github.com/gotestyourself/gotestyourself/assert"
+ is "github.com/gotestyourself/gotestyourself/assert/cmp"
)
func TestBuildWithRemoveAndForceRemove(t *testing.T) {
@@ -94,21 +94,21 @@ func TestBuildWithRemoveAndForceRemove(t *testing.T) {
buff := bytes.NewBuffer(nil)
tw := tar.NewWriter(buff)
- require.NoError(t, tw.WriteHeader(&tar.Header{
+ assert.NilError(t, tw.WriteHeader(&tar.Header{
Name: "Dockerfile",
Size: int64(len(dockerfile)),
}))
_, err := tw.Write(dockerfile)
- require.NoError(t, err)
- require.NoError(t, tw.Close())
+ assert.NilError(t, err)
+ assert.NilError(t, tw.Close())
resp, err := client.ImageBuild(ctx, buff, types.ImageBuildOptions{Remove: c.rm, ForceRemove: c.forceRm, NoCache: true})
- require.NoError(t, err)
+ assert.NilError(t, err)
defer resp.Body.Close()
filter, err := buildContainerIdsFilter(resp.Body)
- require.NoError(t, err)
+ assert.NilError(t, err)
remainingContainers, err := client.ContainerList(ctx, types.ContainerListOptions{Filters: filter, All: true})
- require.NoError(t, err)
- require.Equal(t, c.numberOfIntermediateContainers, len(remainingContainers), "Expected %v remaining intermediate containers, got %v", c.numberOfIntermediateContainers, len(remainingContainers))
+ assert.NilError(t, err)
+ assert.Equal(t, c.numberOfIntermediateContainers, len(remainingContainers), "Expected %v remaining intermediate containers, got %v", c.numberOfIntermediateContainers, len(remainingContainers))
})
}
}
@@ -158,16 +158,16 @@ func TestBuildMultiStageParentConfig(t *testing.T) {
ForceRemove: true,
Tags: []string{"build1"},
})
- require.NoError(t, err)
+ assert.NilError(t, err)
_, err = io.Copy(ioutil.Discard, resp.Body)
resp.Body.Close()
- require.NoError(t, err)
+ assert.NilError(t, err)
image, _, err := apiclient.ImageInspectWithRaw(ctx, "build1")
- require.NoError(t, err)
+ assert.NilError(t, err)
- assert.Equal(t, "/foo/sub2", image.Config.WorkingDir)
- assert.Contains(t, image.Config.Env, "WHO=parent")
+ assert.Check(t, is.Equal("/foo/sub2", image.Config.WorkingDir))
+ assert.Check(t, is.Contains(image.Config.Env, "WHO=parent"))
}
func TestBuildWithEmptyLayers(t *testing.T) {
@@ -192,10 +192,10 @@ func TestBuildWithEmptyLayers(t *testing.T) {
Remove: true,
ForceRemove: true,
})
- require.NoError(t, err)
+ assert.NilError(t, err)
_, err = io.Copy(ioutil.Discard, resp.Body)
resp.Body.Close()
- require.NoError(t, err)
+ assert.NilError(t, err)
}
// TestBuildMultiStageOnBuild checks that ONBUILD commands are applied to
@@ -228,20 +228,20 @@ RUN cat somefile`
})
out := bytes.NewBuffer(nil)
- require.NoError(t, err)
+ assert.NilError(t, err)
_, err = io.Copy(out, resp.Body)
resp.Body.Close()
- require.NoError(t, err)
+ assert.NilError(t, err)
- assert.Contains(t, out.String(), "Successfully built")
+ assert.Check(t, is.Contains(out.String(), "Successfully built"))
imageIDs, err := getImageIDsFromBuild(out.Bytes())
- require.NoError(t, err)
- assert.Equal(t, 3, len(imageIDs))
+ assert.NilError(t, err)
+ assert.Check(t, is.Equal(3, len(imageIDs)))
image, _, err := apiclient.ImageInspectWithRaw(context.Background(), imageIDs[2])
- require.NoError(t, err)
- assert.Contains(t, image.Config.Env, "bar=baz")
+ assert.NilError(t, err)
+ assert.Check(t, is.Contains(image.Config.Env, "bar=baz"))
}
// #35403 #36122
@@ -260,7 +260,7 @@ COPY bar /`
writeTarRecord(t, w, "../foo", "foocontents0")
writeTarRecord(t, w, "/bar", "barcontents0")
err := w.Close()
- require.NoError(t, err)
+ assert.NilError(t, err)
apiclient := testEnv.APIClient()
resp, err := apiclient.ImageBuild(ctx,
@@ -271,10 +271,10 @@ COPY bar /`
})
out := bytes.NewBuffer(nil)
- require.NoError(t, err)
+ assert.NilError(t, err)
_, err = io.Copy(out, resp.Body)
resp.Body.Close()
- require.NoError(t, err)
+ assert.NilError(t, err)
// repeat with changed data should not cause cache hits
@@ -284,7 +284,7 @@ COPY bar /`
writeTarRecord(t, w, "../foo", "foocontents1")
writeTarRecord(t, w, "/bar", "barcontents1")
err = w.Close()
- require.NoError(t, err)
+ assert.NilError(t, err)
resp, err = apiclient.ImageBuild(ctx,
buf,
@@ -294,10 +294,10 @@ COPY bar /`
})
out = bytes.NewBuffer(nil)
- require.NoError(t, err)
+ assert.NilError(t, err)
_, err = io.Copy(out, resp.Body)
resp.Body.Close()
- require.NoError(t, err)
+ assert.NilError(t, err)
require.NotContains(t, out.String(), "Using cache")
}
@@ -333,12 +333,12 @@ RUN [ ! -f foo ]
})
out := bytes.NewBuffer(nil)
- require.NoError(t, err)
+ assert.NilError(t, err)
_, err = io.Copy(out, resp.Body)
resp.Body.Close()
- require.NoError(t, err)
+ assert.NilError(t, err)
- assert.Contains(t, out.String(), "Successfully built")
+ assert.Check(t, is.Contains(out.String(), "Successfully built"))
}
func writeTarRecord(t *testing.T, w *tar.Writer, fn, contents string) {
@@ -348,9 +348,9 @@ func writeTarRecord(t *testing.T, w *tar.Writer, fn, contents string) {
Size: int64(len(contents)),
Typeflag: '0',
})
- require.NoError(t, err)
+ assert.NilError(t, err)
_, err = w.Write([]byte(contents))
- require.NoError(t, err)
+ assert.NilError(t, err)
}
type buildLine struct {
diff --git a/integration/config/config_test.go b/integration/config/config_test.go
index 912f55a12a..65323e2e59 100644
--- a/integration/config/config_test.go
+++ b/integration/config/config_test.go
@@ -14,9 +14,9 @@ import (
"github.com/docker/docker/integration/internal/swarm"
"github.com/docker/docker/internal/testutil"
"github.com/docker/docker/pkg/stdcopy"
+ "github.com/gotestyourself/gotestyourself/assert"
+ is "github.com/gotestyourself/gotestyourself/assert/cmp"
"github.com/gotestyourself/gotestyourself/skip"
- "github.com/stretchr/testify/assert"
- "github.com/stretchr/testify/require"
"golang.org/x/net/context"
)
@@ -27,14 +27,14 @@ func TestConfigList(t *testing.T) {
d := swarm.NewSwarm(t, testEnv)
defer d.Stop(t)
client, err := client.NewClientWithOpts(client.WithHost((d.Sock())))
- require.NoError(t, err)
+ assert.NilError(t, err)
ctx := context.Background()
// This test case is ported from the original TestConfigsEmptyList
configs, err := client.ConfigList(ctx, types.ConfigListOptions{})
- require.NoError(t, err)
- assert.Equal(t, len(configs), 0)
+ assert.NilError(t, err)
+ assert.Check(t, is.Equal(len(configs), 0))
testName0 := "test0"
testName1 := "test1"
@@ -57,8 +57,8 @@ func TestConfigList(t *testing.T) {
// test by `config ls`
entries, err := client.ConfigList(ctx, types.ConfigListOptions{})
- require.NoError(t, err)
- assert.Equal(t, names(entries), testNames)
+ assert.NilError(t, err)
+ assert.Check(t, is.DeepEqual(names(entries), testNames))
testCases := []struct {
filters filters.Args
@@ -92,8 +92,8 @@ func TestConfigList(t *testing.T) {
entries, err = client.ConfigList(ctx, types.ConfigListOptions{
Filters: tc.filters,
})
- require.NoError(t, err)
- assert.Equal(t, names(entries), tc.expected)
+ assert.NilError(t, err)
+ assert.Check(t, is.DeepEqual(names(entries), tc.expected))
}
}
@@ -106,8 +106,8 @@ func createConfig(ctx context.Context, t *testing.T, client client.APIClient, na
},
Data: data,
})
- require.NoError(t, err)
- assert.NotEqual(t, config.ID, "")
+ assert.NilError(t, err)
+ assert.Check(t, config.ID != "")
return config.ID
}
@@ -118,7 +118,7 @@ func TestConfigsCreateAndDelete(t *testing.T) {
d := swarm.NewSwarm(t, testEnv)
defer d.Stop(t)
client, err := client.NewClientWithOpts(client.WithHost((d.Sock())))
- require.NoError(t, err)
+ assert.NilError(t, err)
ctx := context.Background()
@@ -128,12 +128,12 @@ func TestConfigsCreateAndDelete(t *testing.T) {
configID := createConfig(ctx, t, client, testName, []byte("TESTINGDATA"), nil)
insp, _, err := client.ConfigInspectWithRaw(ctx, configID)
- require.NoError(t, err)
- assert.Equal(t, insp.Spec.Name, testName)
+ assert.NilError(t, err)
+ assert.Check(t, is.Equal(insp.Spec.Name, testName))
// This test case is ported from the original TestConfigsDelete
err = client.ConfigRemove(ctx, configID)
- require.NoError(t, err)
+ assert.NilError(t, err)
insp, _, err = client.ConfigInspectWithRaw(ctx, configID)
testutil.ErrorContains(t, err, "No such config")
@@ -146,7 +146,7 @@ func TestConfigsUpdate(t *testing.T) {
d := swarm.NewSwarm(t, testEnv)
defer d.Stop(t)
client, err := client.NewClientWithOpts(client.WithHost((d.Sock())))
- require.NoError(t, err)
+ assert.NilError(t, err)
ctx := context.Background()
@@ -156,35 +156,35 @@ func TestConfigsUpdate(t *testing.T) {
configID := createConfig(ctx, t, client, testName, []byte("TESTINGDATA"), nil)
insp, _, err := client.ConfigInspectWithRaw(ctx, configID)
- require.NoError(t, err)
- assert.Equal(t, insp.ID, configID)
+ assert.NilError(t, err)
+ assert.Check(t, is.Equal(insp.ID, configID))
// test UpdateConfig with full ID
insp.Spec.Labels = map[string]string{"test": "test1"}
err = client.ConfigUpdate(ctx, configID, insp.Version, insp.Spec)
- require.NoError(t, err)
+ assert.NilError(t, err)
insp, _, err = client.ConfigInspectWithRaw(ctx, configID)
- require.NoError(t, err)
- assert.Equal(t, insp.Spec.Labels["test"], "test1")
+ assert.NilError(t, err)
+ assert.Check(t, is.Equal(insp.Spec.Labels["test"], "test1"))
// test UpdateConfig with full name
insp.Spec.Labels = map[string]string{"test": "test2"}
err = client.ConfigUpdate(ctx, testName, insp.Version, insp.Spec)
- require.NoError(t, err)
+ assert.NilError(t, err)
insp, _, err = client.ConfigInspectWithRaw(ctx, configID)
- require.NoError(t, err)
- assert.Equal(t, insp.Spec.Labels["test"], "test2")
+ assert.NilError(t, err)
+ assert.Check(t, is.Equal(insp.Spec.Labels["test"], "test2"))
// test UpdateConfig with prefix ID
insp.Spec.Labels = map[string]string{"test": "test3"}
err = client.ConfigUpdate(ctx, configID[:1], insp.Version, insp.Spec)
- require.NoError(t, err)
+ assert.NilError(t, err)
insp, _, err = client.ConfigInspectWithRaw(ctx, configID)
- require.NoError(t, err)
- assert.Equal(t, insp.Spec.Labels["test"], "test3")
+ assert.NilError(t, err)
+ assert.Check(t, is.Equal(insp.Spec.Labels["test"], "test3"))
// test UpdateConfig in updating Data which is not supported in daemon
// this test will produce an error in func UpdateConfig
@@ -207,7 +207,7 @@ func TestTemplatedConfig(t *testing.T) {
Data: []byte("this is a secret"),
}
referencedSecret, err := client.SecretCreate(ctx, referencedSecretSpec)
- assert.NoError(t, err)
+ assert.Check(t, err)
referencedConfigSpec := swarmtypes.ConfigSpec{
Annotations: swarmtypes.Annotations{
@@ -216,7 +216,7 @@ func TestTemplatedConfig(t *testing.T) {
Data: []byte("this is a config"),
}
referencedConfig, err := client.ConfigCreate(ctx, referencedConfigSpec)
- assert.NoError(t, err)
+ assert.Check(t, err)
configSpec := swarmtypes.ConfigSpec{
Annotations: swarmtypes.Annotations{
@@ -231,7 +231,7 @@ func TestTemplatedConfig(t *testing.T) {
}
templatedConfig, err := client.ConfigCreate(ctx, configSpec)
- assert.NoError(t, err)
+ assert.Check(t, err)
serviceID := swarm.CreateService(t, d,
swarm.ServiceWithConfig(
@@ -309,8 +309,8 @@ func TestTemplatedConfig(t *testing.T) {
func assertAttachedStream(t *testing.T, attach types.HijackedResponse, expect string) {
buf := bytes.NewBuffer(nil)
_, err := stdcopy.StdCopy(buf, buf, attach.Reader)
- require.NoError(t, err)
- assert.Contains(t, buf.String(), expect)
+ assert.NilError(t, err)
+ assert.Check(t, is.Contains(buf.String(), expect))
}
func waitAndAssert(t *testing.T, timeout time.Duration, f func(*testing.T) bool) {
@@ -336,7 +336,7 @@ func TestConfigInspect(t *testing.T) {
d := swarm.NewSwarm(t, testEnv)
defer d.Stop(t)
client, err := client.NewClientWithOpts(client.WithHost((d.Sock())))
- require.NoError(t, err)
+ assert.NilError(t, err)
ctx := context.Background()
@@ -344,11 +344,11 @@ func TestConfigInspect(t *testing.T) {
configID := createConfig(ctx, t, client, testName, []byte("TESTINGDATA"), nil)
insp, body, err := client.ConfigInspectWithRaw(ctx, configID)
- require.NoError(t, err)
- assert.Equal(t, insp.Spec.Name, testName)
+ assert.NilError(t, err)
+ assert.Check(t, is.Equal(insp.Spec.Name, testName))
var config swarmtypes.Config
err = json.Unmarshal(body, &config)
- require.NoError(t, err)
- assert.Equal(t, config, insp)
+ assert.NilError(t, err)
+ assert.Check(t, is.DeepEqual(config, insp))
}
diff --git a/integration/container/copy_test.go b/integration/container/copy_test.go
index 43dc31f2f2..766c0a1762 100644
--- a/integration/container/copy_test.go
+++ b/integration/container/copy_test.go
@@ -9,8 +9,9 @@ import (
"github.com/docker/docker/client"
"github.com/docker/docker/integration/internal/container"
"github.com/docker/docker/internal/testutil"
+ "github.com/gotestyourself/gotestyourself/assert"
+ is "github.com/gotestyourself/gotestyourself/assert/cmp"
"github.com/gotestyourself/gotestyourself/skip"
- "github.com/stretchr/testify/require"
)
func TestCopyFromContainerPathDoesNotExist(t *testing.T) {
@@ -21,7 +22,7 @@ func TestCopyFromContainerPathDoesNotExist(t *testing.T) {
cid := container.Create(t, ctx, apiclient)
_, _, err := apiclient.CopyFromContainer(ctx, cid, "/dne")
- require.True(t, client.IsErrNotFound(err))
+ assert.Assert(t, client.IsErrNotFound(err))
expected := fmt.Sprintf("No such container:path: %s:%s", cid, "/dne")
testutil.ErrorContains(t, err, expected)
}
@@ -35,7 +36,7 @@ func TestCopyFromContainerPathIsNotDir(t *testing.T) {
cid := container.Create(t, ctx, apiclient)
_, _, err := apiclient.CopyFromContainer(ctx, cid, "/etc/passwd/")
- require.Contains(t, err.Error(), "not a directory")
+ assert.Assert(t, is.Contains(err.Error(), "not a directory"))
}
func TestCopyToContainerPathDoesNotExist(t *testing.T) {
@@ -47,7 +48,7 @@ func TestCopyToContainerPathDoesNotExist(t *testing.T) {
cid := container.Create(t, ctx, apiclient)
err := apiclient.CopyToContainer(ctx, cid, "/dne", nil, types.CopyToContainerOptions{})
- require.True(t, client.IsErrNotFound(err))
+ assert.Assert(t, client.IsErrNotFound(err))
expected := fmt.Sprintf("No such container:path: %s:%s", cid, "/dne")
testutil.ErrorContains(t, err, expected)
}
@@ -61,5 +62,5 @@ func TestCopyToContainerPathIsNotDir(t *testing.T) {
cid := container.Create(t, ctx, apiclient)
err := apiclient.CopyToContainer(ctx, cid, "/etc/passwd/", nil, types.CopyToContainerOptions{})
- require.Contains(t, err.Error(), "not a directory")
+ assert.Assert(t, is.Contains(err.Error(), "not a directory"))
}
diff --git a/integration/container/daemon_linux_test.go b/integration/container/daemon_linux_test.go
index 5077770f53..c2920502e3 100644
--- a/integration/container/daemon_linux_test.go
+++ b/integration/container/daemon_linux_test.go
@@ -11,8 +11,8 @@ import (
"github.com/docker/docker/api/types"
"github.com/docker/docker/integration-cli/daemon"
"github.com/docker/docker/integration/internal/container"
+ "github.com/gotestyourself/gotestyourself/assert"
"github.com/gotestyourself/gotestyourself/skip"
- "github.com/stretchr/testify/assert"
"golang.org/x/sys/unix"
)
@@ -35,7 +35,7 @@ func TestContainerStartOnDaemonRestart(t *testing.T) {
defer d.Stop(t)
client, err := d.NewClient()
- assert.NoError(t, err, "error creating client")
+ assert.Check(t, err, "error creating client")
ctx := context.Background()
@@ -43,36 +43,36 @@ func TestContainerStartOnDaemonRestart(t *testing.T) {
defer client.ContainerRemove(ctx, cID, types.ContainerRemoveOptions{Force: true})
err = client.ContainerStart(ctx, cID, types.ContainerStartOptions{})
- assert.NoError(t, err, "error starting test container")
+ assert.Check(t, err, "error starting test container")
inspect, err := client.ContainerInspect(ctx, cID)
- assert.NoError(t, err, "error getting inspect data")
+ assert.Check(t, err, "error getting inspect data")
ppid := getContainerdShimPid(t, inspect)
err = d.Kill()
- assert.NoError(t, err, "failed to kill test daemon")
+ assert.Check(t, err, "failed to kill test daemon")
err = unix.Kill(inspect.State.Pid, unix.SIGKILL)
- assert.NoError(t, err, "failed to kill container process")
+ assert.Check(t, err, "failed to kill container process")
err = unix.Kill(ppid, unix.SIGKILL)
- assert.NoError(t, err, "failed to kill containerd-shim")
+ assert.Check(t, err, "failed to kill containerd-shim")
d.Start(t, "--iptables=false")
err = client.ContainerStart(ctx, cID, types.ContainerStartOptions{})
- assert.NoError(t, err, "failed to start test container")
+ assert.Check(t, err, "failed to start test container")
}
func getContainerdShimPid(t *testing.T, c types.ContainerJSON) int {
statB, err := ioutil.ReadFile(fmt.Sprintf("/proc/%d/stat", c.State.Pid))
- assert.NoError(t, err, "error looking up containerd-shim pid")
+ assert.Check(t, err, "error looking up containerd-shim pid")
// ppid is the 4th entry in `/proc/pid/stat`
ppid, err := strconv.Atoi(strings.Fields(string(statB))[3])
- assert.NoError(t, err, "error converting ppid field to int")
+ assert.Check(t, err, "error converting ppid field to int")
- assert.NotEqual(t, ppid, 1, "got unexpected ppid")
+ assert.Check(t, ppid != 1, "got unexpected ppid")
return ppid
}
diff --git a/integration/container/diff_test.go b/integration/container/diff_test.go
index de5ff4e21a..1cc63ebdde 100644
--- a/integration/container/diff_test.go
+++ b/integration/container/diff_test.go
@@ -9,9 +9,9 @@ import (
"github.com/docker/docker/integration/internal/container"
"github.com/docker/docker/integration/internal/request"
"github.com/docker/docker/pkg/archive"
+ "github.com/gotestyourself/gotestyourself/assert"
+ is "github.com/gotestyourself/gotestyourself/assert/cmp"
"github.com/gotestyourself/gotestyourself/poll"
- "github.com/stretchr/testify/assert"
- "github.com/stretchr/testify/require"
)
func TestDiff(t *testing.T) {
@@ -38,6 +38,6 @@ func TestDiff(t *testing.T) {
}
items, err := client.ContainerDiff(ctx, cID)
- require.NoError(t, err)
- assert.Equal(t, expected, items)
+ assert.NilError(t, err)
+ assert.Check(t, is.DeepEqual(expected, items))
}
diff --git a/integration/container/exec_test.go b/integration/container/exec_test.go
index 06835678f0..1b710432d1 100644
--- a/integration/container/exec_test.go
+++ b/integration/container/exec_test.go
@@ -9,7 +9,8 @@ import (
"github.com/docker/docker/api/types/strslice"
"github.com/docker/docker/integration/internal/container"
"github.com/docker/docker/integration/internal/request"
- "github.com/stretchr/testify/require"
+ "github.com/gotestyourself/gotestyourself/assert"
+ is "github.com/gotestyourself/gotestyourself/assert/cmp"
)
func TestExec(t *testing.T) {
@@ -27,7 +28,7 @@ func TestExec(t *testing.T) {
Cmd: strslice.StrSlice([]string{"sh", "-c", "env"}),
},
)
- require.NoError(t, err)
+ assert.NilError(t, err)
resp, err := client.ContainerExecAttach(ctx, id.ID,
types.ExecStartCheck{
@@ -35,12 +36,12 @@ func TestExec(t *testing.T) {
Tty: false,
},
)
- require.NoError(t, err)
+ assert.NilError(t, err)
defer resp.Close()
r, err := ioutil.ReadAll(resp.Reader)
- require.NoError(t, err)
+ assert.NilError(t, err)
out := string(r)
- require.NoError(t, err)
- require.Contains(t, out, "PWD=/tmp", "exec command not running in expected /tmp working directory")
- require.Contains(t, out, "FOO=BAR", "exec command not running with expected environment variable FOO")
+ assert.NilError(t, err)
+ assert.Assert(t, is.Contains(out, "PWD=/tmp"), "exec command not running in expected /tmp working directory")
+ assert.Assert(t, is.Contains(out, "FOO=BAR"), "exec command not running with expected environment variable FOO")
}
diff --git a/integration/container/export_test.go b/integration/container/export_test.go
index 8f846b5a29..f7f0295ce5 100644
--- a/integration/container/export_test.go
+++ b/integration/container/export_test.go
@@ -13,10 +13,10 @@ import (
"github.com/docker/docker/integration/internal/container"
"github.com/docker/docker/integration/internal/request"
"github.com/docker/docker/pkg/jsonmessage"
+ "github.com/gotestyourself/gotestyourself/assert"
+ is "github.com/gotestyourself/gotestyourself/assert/cmp"
"github.com/gotestyourself/gotestyourself/poll"
"github.com/gotestyourself/gotestyourself/skip"
- "github.com/stretchr/testify/assert"
- "github.com/stretchr/testify/require"
)
// export an image and try to import it into a new one
@@ -32,12 +32,12 @@ func TestExportContainerAndImportImage(t *testing.T) {
reference := "repo/testexp:v1"
exportResp, err := client.ContainerExport(ctx, cID)
- require.NoError(t, err)
+ assert.NilError(t, err)
importResp, err := client.ImageImport(ctx, types.ImageImportSource{
Source: exportResp,
SourceName: "-",
}, reference, types.ImageImportOptions{})
- require.NoError(t, err)
+ assert.NilError(t, err)
// If the import is successfully, then the message output should contain
// the image ID and match with the output from `docker images`.
@@ -45,13 +45,13 @@ func TestExportContainerAndImportImage(t *testing.T) {
dec := json.NewDecoder(importResp)
var jm jsonmessage.JSONMessage
err = dec.Decode(&jm)
- require.NoError(t, err)
+ assert.NilError(t, err)
images, err := client.ImageList(ctx, types.ImageListOptions{
Filters: filters.NewArgs(filters.Arg("reference", reference)),
})
- require.NoError(t, err)
- assert.Equal(t, jm.Status, images[0].ID)
+ assert.NilError(t, err)
+ assert.Check(t, is.Equal(jm.Status, images[0].ID))
}
// TestExportContainerAfterDaemonRestart checks that a container
@@ -64,7 +64,7 @@ func TestExportContainerAfterDaemonRestart(t *testing.T) {
d := daemon.New(t, "", "dockerd", daemon.Config{})
client, err := d.NewClient()
- require.NoError(t, err)
+ assert.NilError(t, err)
d.StartWithBusybox(t)
defer d.Stop(t)
@@ -75,10 +75,10 @@ func TestExportContainerAfterDaemonRestart(t *testing.T) {
Cmd: []string{"top"},
}
ctr, err := client.ContainerCreate(ctx, &cfg, nil, nil, "")
- require.NoError(t, err)
+ assert.NilError(t, err)
d.Restart(t)
_, err = client.ContainerExport(ctx, ctr.ID)
- assert.NoError(t, err)
+ assert.NilError(t, err)
}
diff --git a/integration/container/inspect_test.go b/integration/container/inspect_test.go
index c7ea23b517..03b9e45319 100644
--- a/integration/container/inspect_test.go
+++ b/integration/container/inspect_test.go
@@ -9,10 +9,10 @@ import (
"github.com/docker/docker/client"
"github.com/docker/docker/integration/internal/container"
"github.com/docker/docker/integration/internal/request"
+ "github.com/gotestyourself/gotestyourself/assert"
+ is "github.com/gotestyourself/gotestyourself/assert/cmp"
"github.com/gotestyourself/gotestyourself/poll"
"github.com/gotestyourself/gotestyourself/skip"
- "github.com/stretchr/testify/assert"
- "github.com/stretchr/testify/require"
)
func TestInspectCpusetInConfigPre120(t *testing.T) {
@@ -33,16 +33,16 @@ func TestInspectCpusetInConfigPre120(t *testing.T) {
poll.WaitOn(t, container.IsInState(ctx, client, name, "exited"), poll.WithDelay(100*time.Millisecond))
_, body, err := client.ContainerInspectWithRaw(ctx, name, false)
- require.NoError(t, err)
+ assert.NilError(t, err)
var inspectJSON map[string]interface{}
err = json.Unmarshal(body, &inspectJSON)
- require.NoError(t, err, "unable to unmarshal body for version 1.19: %s", err)
+ assert.NilError(t, err, "unable to unmarshal body for version 1.19: %s", err)
config, ok := inspectJSON["Config"]
- assert.Equal(t, true, ok, "Unable to find 'Config'")
+ assert.Check(t, is.Equal(true, ok), "Unable to find 'Config'")
cfg := config.(map[string]interface{})
_, ok = cfg["Cpuset"]
- assert.Equal(t, true, ok, "API version 1.19 expected to include Cpuset in 'Config'")
+ assert.Check(t, is.Equal(true, ok), "API version 1.19 expected to include Cpuset in 'Config'")
}
diff --git a/integration/container/kill_test.go b/integration/container/kill_test.go
index 5fae912671..4df28966f0 100644
--- a/integration/container/kill_test.go
+++ b/integration/container/kill_test.go
@@ -9,10 +9,10 @@ import (
"github.com/docker/docker/client"
"github.com/docker/docker/integration/internal/container"
"github.com/docker/docker/integration/internal/request"
+ "github.com/gotestyourself/gotestyourself/assert"
+ is "github.com/gotestyourself/gotestyourself/assert/cmp"
"github.com/gotestyourself/gotestyourself/poll"
"github.com/gotestyourself/gotestyourself/skip"
- "github.com/stretchr/testify/assert"
- "github.com/stretchr/testify/require"
)
func TestKillContainerInvalidSignal(t *testing.T) {
@@ -22,11 +22,11 @@ func TestKillContainerInvalidSignal(t *testing.T) {
id := container.Run(t, ctx, client)
err := client.ContainerKill(ctx, id, "0")
- require.EqualError(t, err, "Error response from daemon: Invalid signal: 0")
+ assert.Error(t, err, "Error response from daemon: Invalid signal: 0")
poll.WaitOn(t, container.IsInState(ctx, client, id, "running"), poll.WithDelay(100*time.Millisecond))
err = client.ContainerKill(ctx, id, "SIG42")
- require.EqualError(t, err, "Error response from daemon: Invalid signal: SIG42")
+ assert.Error(t, err, "Error response from daemon: Invalid signal: SIG42")
poll.WaitOn(t, container.IsInState(ctx, client, id, "running"), poll.WithDelay(100*time.Millisecond))
}
@@ -62,7 +62,7 @@ func TestKillContainer(t *testing.T) {
ctx := context.Background()
id := container.Run(t, ctx, client)
err := client.ContainerKill(ctx, id, tc.signal)
- require.NoError(t, err)
+ assert.NilError(t, err)
poll.WaitOn(t, container.IsInState(ctx, client, id, tc.status), poll.WithDelay(100*time.Millisecond))
})
@@ -102,7 +102,7 @@ func TestKillWithStopSignalAndRestartPolicies(t *testing.T) {
}
})
err := client.ContainerKill(ctx, id, "TERM")
- require.NoError(t, err)
+ assert.NilError(t, err)
poll.WaitOn(t, container.IsInState(ctx, client, id, tc.status), poll.WithDelay(100*time.Millisecond))
})
@@ -116,8 +116,8 @@ func TestKillStoppedContainer(t *testing.T) {
client := request.NewAPIClient(t)
id := container.Create(t, ctx, client)
err := client.ContainerKill(ctx, id, "SIGKILL")
- require.Error(t, err)
- require.Contains(t, err.Error(), "is not running")
+ assert.Assert(t, is.ErrorContains(err, ""))
+ assert.Assert(t, is.Contains(err.Error(), "is not running"))
}
func TestKillStoppedContainerAPIPre120(t *testing.T) {
@@ -127,7 +127,7 @@ func TestKillStoppedContainerAPIPre120(t *testing.T) {
client := request.NewAPIClient(t, client.WithVersion("1.19"))
id := container.Create(t, ctx, client)
err := client.ContainerKill(ctx, id, "SIGKILL")
- require.NoError(t, err)
+ assert.NilError(t, err)
}
func TestKillDifferentUserContainer(t *testing.T) {
@@ -144,7 +144,7 @@ func TestKillDifferentUserContainer(t *testing.T) {
poll.WaitOn(t, container.IsInState(ctx, client, id, "running"), poll.WithDelay(100*time.Millisecond))
err := client.ContainerKill(ctx, id, "SIGKILL")
- require.NoError(t, err)
+ assert.NilError(t, err)
poll.WaitOn(t, container.IsInState(ctx, client, id, "exited"), poll.WithDelay(100*time.Millisecond))
}
@@ -162,8 +162,8 @@ func TestInspectOomKilledTrue(t *testing.T) {
poll.WaitOn(t, container.IsInState(ctx, client, cID, "exited"), poll.WithDelay(100*time.Millisecond))
inspect, err := client.ContainerInspect(ctx, cID)
- require.NoError(t, err)
- assert.Equal(t, true, inspect.State.OOMKilled)
+ assert.NilError(t, err)
+ assert.Check(t, is.Equal(true, inspect.State.OOMKilled))
}
func TestInspectOomKilledFalse(t *testing.T) {
@@ -178,6 +178,6 @@ func TestInspectOomKilledFalse(t *testing.T) {
poll.WaitOn(t, container.IsInState(ctx, client, cID, "exited"), poll.WithDelay(100*time.Millisecond))
inspect, err := client.ContainerInspect(ctx, cID)
- require.NoError(t, err)
- assert.Equal(t, false, inspect.State.OOMKilled)
+ assert.NilError(t, err)
+ assert.Check(t, is.Equal(false, inspect.State.OOMKilled))
}
diff --git a/integration/container/links_linux_test.go b/integration/container/links_linux_test.go
index c844c4916f..ed5966bc7b 100644
--- a/integration/container/links_linux_test.go
+++ b/integration/container/links_linux_test.go
@@ -10,9 +10,9 @@ import (
"github.com/docker/docker/api/types/filters"
"github.com/docker/docker/integration/internal/container"
"github.com/docker/docker/integration/internal/request"
+ "github.com/gotestyourself/gotestyourself/assert"
+ is "github.com/gotestyourself/gotestyourself/assert/cmp"
"github.com/gotestyourself/gotestyourself/skip"
- "github.com/stretchr/testify/assert"
- "github.com/stretchr/testify/require"
)
func TestLinksEtcHostsContentMatch(t *testing.T) {
@@ -27,11 +27,11 @@ func TestLinksEtcHostsContentMatch(t *testing.T) {
cID := container.Run(t, ctx, client, container.WithNetworkMode("host"))
res, err := container.Exec(ctx, client, cID, []string{"cat", "/etc/hosts"})
- require.NoError(t, err)
- require.Empty(t, res.Stderr())
- require.Equal(t, 0, res.ExitCode)
+ assert.NilError(t, err)
+ assert.Assert(t, is.Len(res.Stderr(), 0))
+ assert.Equal(t, 0, res.ExitCode)
- assert.Equal(t, string(hosts), res.Stdout())
+ assert.Check(t, is.Equal(string(hosts), res.Stdout()))
}
func TestLinksContainerNames(t *testing.T) {
@@ -49,7 +49,7 @@ func TestLinksContainerNames(t *testing.T) {
containers, err := client.ContainerList(ctx, types.ContainerListOptions{
Filters: f,
})
- require.NoError(t, err)
- assert.Equal(t, 1, len(containers))
- assert.Equal(t, []string{"/first", "/second/first"}, containers[0].Names)
+ assert.NilError(t, err)
+ assert.Check(t, is.Equal(1, len(containers)))
+ assert.Check(t, is.DeepEqual([]string{"/first", "/second/first"}, containers[0].Names))
}
diff --git a/integration/container/logs_test.go b/integration/container/logs_test.go
index bae4315272..9f536742b9 100644
--- a/integration/container/logs_test.go
+++ b/integration/container/logs_test.go
@@ -9,7 +9,7 @@ import (
"github.com/docker/docker/integration/internal/container"
"github.com/docker/docker/integration/internal/request"
"github.com/docker/docker/pkg/stdcopy"
- "github.com/stretchr/testify/assert"
+ "github.com/gotestyourself/gotestyourself/assert"
)
// Regression test for #35370
@@ -25,8 +25,8 @@ func TestLogsFollowTailEmpty(t *testing.T) {
if logs != nil {
defer logs.Close()
}
- assert.NoError(t, err)
+ assert.Check(t, err)
_, err = stdcopy.StdCopy(ioutil.Discard, ioutil.Discard, logs)
- assert.NoError(t, err)
+ assert.Check(t, err)
}
diff --git a/integration/container/mounts_linux_test.go b/integration/container/mounts_linux_test.go
index c36dd2761c..e15786f8a6 100644
--- a/integration/container/mounts_linux_test.go
+++ b/integration/container/mounts_linux_test.go
@@ -16,10 +16,10 @@ import (
"github.com/docker/docker/integration/internal/request"
"github.com/docker/docker/pkg/stdcopy"
"github.com/docker/docker/pkg/system"
+ "github.com/gotestyourself/gotestyourself/assert"
+ is "github.com/gotestyourself/gotestyourself/assert/cmp"
"github.com/gotestyourself/gotestyourself/fs"
"github.com/gotestyourself/gotestyourself/skip"
- "github.com/stretchr/testify/assert"
- "github.com/stretchr/testify/require"
)
func TestContainerShmNoLeak(t *testing.T) {
@@ -130,14 +130,14 @@ func TestContainerNetworkMountsNoChown(t *testing.T) {
}
cli, err := client.NewEnvClient()
- require.NoError(t, err)
+ assert.NilError(t, err)
defer cli.Close()
ctrCreate, err := cli.ContainerCreate(ctx, &config, &hostConfig, &network.NetworkingConfig{}, "")
- require.NoError(t, err)
+ assert.NilError(t, err)
// container will exit immediately because of no tty, but we only need the start sequence to test the condition
err = cli.ContainerStart(ctx, ctrCreate.ID, types.ContainerStartOptions{})
- require.NoError(t, err)
+ assert.NilError(t, err)
// Check that host-located bind mount network file did not change ownership when the container was started
// Note: If the user specifies a mountpath from the host, we should not be
@@ -150,8 +150,8 @@ func TestContainerNetworkMountsNoChown(t *testing.T) {
// same line--we don't chown host file content.
// See GitHub PR 34224 for details.
statT, err := system.Stat(tmpNWFileMount)
- require.NoError(t, err)
- assert.Equal(t, uint32(0), statT.UID(), "bind mounted network file should not change ownership from root")
+ assert.NilError(t, err)
+ assert.Check(t, is.Equal(uint32(0), statT.UID()), "bind mounted network file should not change ownership from root")
}
func TestMountDaemonRoot(t *testing.T) {
diff --git a/integration/container/nat_test.go b/integration/container/nat_test.go
index 293ba9bba6..5574db779e 100644
--- a/integration/container/nat_test.go
+++ b/integration/container/nat_test.go
@@ -15,10 +15,10 @@ import (
"github.com/docker/docker/integration/internal/container"
"github.com/docker/docker/integration/internal/request"
"github.com/docker/go-connections/nat"
+ "github.com/gotestyourself/gotestyourself/assert"
+ is "github.com/gotestyourself/gotestyourself/assert/cmp"
"github.com/gotestyourself/gotestyourself/poll"
"github.com/gotestyourself/gotestyourself/skip"
- "github.com/stretchr/testify/assert"
- "github.com/stretchr/testify/require"
)
func TestNetworkNat(t *testing.T) {
@@ -31,12 +31,12 @@ func TestNetworkNat(t *testing.T) {
endpoint := getExternalAddress(t)
conn, err := net.Dial("tcp", fmt.Sprintf("%s:%d", endpoint.String(), 8080))
- require.NoError(t, err)
+ assert.NilError(t, err)
defer conn.Close()
data, err := ioutil.ReadAll(conn)
- require.NoError(t, err)
- assert.Equal(t, msg, strings.TrimSpace(string(data)))
+ assert.NilError(t, err)
+ assert.Check(t, is.Equal(msg, strings.TrimSpace(string(data))))
}
func TestNetworkLocalhostTCPNat(t *testing.T) {
@@ -48,12 +48,12 @@ func TestNetworkLocalhostTCPNat(t *testing.T) {
startServerContainer(t, msg, 8081)
conn, err := net.Dial("tcp", "localhost:8081")
- require.NoError(t, err)
+ assert.NilError(t, err)
defer conn.Close()
data, err := ioutil.ReadAll(conn)
- require.NoError(t, err)
- assert.Equal(t, msg, strings.TrimSpace(string(data)))
+ assert.NilError(t, err)
+ assert.Check(t, is.Equal(msg, strings.TrimSpace(string(data))))
}
func TestNetworkLoopbackNat(t *testing.T) {
@@ -74,14 +74,14 @@ func TestNetworkLoopbackNat(t *testing.T) {
body, err := client.ContainerLogs(ctx, cID, types.ContainerLogsOptions{
ShowStdout: true,
})
- require.NoError(t, err)
+ assert.NilError(t, err)
defer body.Close()
var b bytes.Buffer
_, err = io.Copy(&b, body)
- require.NoError(t, err)
+ assert.NilError(t, err)
- assert.Equal(t, msg, strings.TrimSpace(b.String()))
+ assert.Check(t, is.Equal(msg, strings.TrimSpace(b.String())))
}
func startServerContainer(t *testing.T, msg string, port int) string {
@@ -108,11 +108,11 @@ func getExternalAddress(t *testing.T) net.IP {
skip.If(t, err != nil, "Test not running with `make test-integration`. Interface eth0 not found: %s", err)
ifaceAddrs, err := iface.Addrs()
- require.NoError(t, err)
- assert.NotEqual(t, 0, len(ifaceAddrs))
+ assert.NilError(t, err)
+ assert.Check(t, 0 != len(ifaceAddrs))
ifaceIP, _, err := net.ParseCIDR(ifaceAddrs[0].String())
- require.NoError(t, err)
+ assert.NilError(t, err)
return ifaceIP
}
diff --git a/integration/container/pause_test.go b/integration/container/pause_test.go
index bf9f9c3d8f..dd8356f853 100644
--- a/integration/container/pause_test.go
+++ b/integration/container/pause_test.go
@@ -12,10 +12,10 @@ import (
"github.com/docker/docker/integration/internal/container"
"github.com/docker/docker/integration/internal/request"
"github.com/docker/docker/internal/testutil"
+ "github.com/gotestyourself/gotestyourself/assert"
+ is "github.com/gotestyourself/gotestyourself/assert/cmp"
"github.com/gotestyourself/gotestyourself/poll"
"github.com/gotestyourself/gotestyourself/skip"
- "github.com/stretchr/testify/assert"
- "github.com/stretchr/testify/require"
)
func TestPause(t *testing.T) {
@@ -31,14 +31,14 @@ func TestPause(t *testing.T) {
since := request.DaemonUnixTime(ctx, t, client, testEnv)
err := client.ContainerPause(ctx, cID)
- require.NoError(t, err)
+ assert.NilError(t, err)
inspect, err := client.ContainerInspect(ctx, cID)
- require.NoError(t, err)
- assert.Equal(t, true, inspect.State.Paused)
+ assert.NilError(t, err)
+ assert.Check(t, is.Equal(true, inspect.State.Paused))
err = client.ContainerUnpause(ctx, cID)
- require.NoError(t, err)
+ assert.NilError(t, err)
until := request.DaemonUnixTime(ctx, t, client, testEnv)
@@ -47,7 +47,7 @@ func TestPause(t *testing.T) {
Until: until,
Filters: filters.NewArgs(filters.Arg("container", cID)),
})
- assert.Equal(t, []string{"pause", "unpause"}, getEventActions(t, messages, errs))
+ assert.Check(t, is.DeepEqual([]string{"pause", "unpause"}, getEventActions(t, messages, errs)))
}
func TestPauseFailsOnWindowsServerContainers(t *testing.T) {
@@ -75,10 +75,10 @@ func TestPauseStopPausedContainer(t *testing.T) {
poll.WaitOn(t, container.IsInState(ctx, client, cID, "running"), poll.WithDelay(100*time.Millisecond))
err := client.ContainerPause(ctx, cID)
- require.NoError(t, err)
+ assert.NilError(t, err)
err = client.ContainerStop(ctx, cID, nil)
- require.NoError(t, err)
+ assert.NilError(t, err)
poll.WaitOn(t, container.IsStopped(ctx, client, cID), poll.WithDelay(100*time.Millisecond))
}
@@ -88,7 +88,7 @@ func getEventActions(t *testing.T, messages <-chan events.Message, errs <-chan e
for {
select {
case err := <-errs:
- assert.True(t, err == nil || err == io.EOF)
+ assert.Check(t, err == nil || err == io.EOF)
return actions
case e := <-messages:
actions = append(actions, e.Status)
diff --git a/integration/container/ps_test.go b/integration/container/ps_test.go
index 358276b36a..45bcaca239 100644
--- a/integration/container/ps_test.go
+++ b/integration/container/ps_test.go
@@ -8,8 +8,8 @@ import (
"github.com/docker/docker/api/types/filters"
"github.com/docker/docker/integration/internal/container"
"github.com/docker/docker/integration/internal/request"
- "github.com/stretchr/testify/assert"
- "github.com/stretchr/testify/require"
+ "github.com/gotestyourself/gotestyourself/assert"
+ is "github.com/gotestyourself/gotestyourself/assert/cmp"
)
func TestPsFilter(t *testing.T) {
@@ -35,8 +35,8 @@ func TestPsFilter(t *testing.T) {
All: true,
Filters: f1,
})
- require.NoError(t, err)
- assert.Contains(t, containerIDs(q1), next)
+ assert.NilError(t, err)
+ assert.Check(t, is.Contains(containerIDs(q1), next))
f2 := filters.NewArgs()
f2.Add("before", "top")
@@ -44,6 +44,6 @@ func TestPsFilter(t *testing.T) {
All: true,
Filters: f2,
})
- require.NoError(t, err)
- assert.Contains(t, containerIDs(q2), prev)
+ assert.NilError(t, err)
+ assert.Check(t, is.Contains(containerIDs(q2), prev))
}
diff --git a/integration/container/remove_test.go b/integration/container/remove_test.go
index 98aacdd205..bbc521b059 100644
--- a/integration/container/remove_test.go
+++ b/integration/container/remove_test.go
@@ -11,11 +11,11 @@ import (
"github.com/docker/docker/integration/internal/container"
"github.com/docker/docker/integration/internal/request"
"github.com/docker/docker/internal/testutil"
+ "github.com/gotestyourself/gotestyourself/assert"
+ is "github.com/gotestyourself/gotestyourself/assert/cmp"
"github.com/gotestyourself/gotestyourself/fs"
"github.com/gotestyourself/gotestyourself/poll"
"github.com/gotestyourself/gotestyourself/skip"
- "github.com/stretchr/testify/assert"
- "github.com/stretchr/testify/require"
)
func getPrefixAndSlashFromDaemonPlatform() (prefix, slash string) {
@@ -42,12 +42,12 @@ func TestRemoveContainerWithRemovedVolume(t *testing.T) {
poll.WaitOn(t, container.IsInState(ctx, client, cID, "exited"), poll.WithDelay(100*time.Millisecond))
err := os.RemoveAll(tempDir.Path())
- require.NoError(t, err)
+ assert.NilError(t, err)
err = client.ContainerRemove(ctx, cID, types.ContainerRemoveOptions{
RemoveVolumes: true,
})
- require.NoError(t, err)
+ assert.NilError(t, err)
_, _, err = client.ContainerInspectWithRaw(ctx, cID, true)
testutil.ErrorContains(t, err, "No such container")
@@ -65,18 +65,18 @@ func TestRemoveContainerWithVolume(t *testing.T) {
poll.WaitOn(t, container.IsInState(ctx, client, cID, "exited"), poll.WithDelay(100*time.Millisecond))
insp, _, err := client.ContainerInspectWithRaw(ctx, cID, true)
- require.NoError(t, err)
- assert.Equal(t, 1, len(insp.Mounts))
+ assert.NilError(t, err)
+ assert.Check(t, is.Equal(1, len(insp.Mounts)))
volName := insp.Mounts[0].Name
err = client.ContainerRemove(ctx, cID, types.ContainerRemoveOptions{
RemoveVolumes: true,
})
- require.NoError(t, err)
+ assert.NilError(t, err)
volumes, err := client.VolumeList(ctx, filters.NewArgs(filters.Arg("name", volName)))
- require.NoError(t, err)
- assert.Equal(t, 0, len(volumes.Volumes))
+ assert.NilError(t, err)
+ assert.Check(t, is.Equal(0, len(volumes.Volumes)))
}
func TestRemoveContainerRunning(t *testing.T) {
@@ -100,7 +100,7 @@ func TestRemoveContainerForceRemoveRunning(t *testing.T) {
err := client.ContainerRemove(ctx, cID, types.ContainerRemoveOptions{
Force: true,
})
- require.NoError(t, err)
+ assert.NilError(t, err)
}
func TestRemoveInvalidContainer(t *testing.T) {
diff --git a/integration/container/rename_test.go b/integration/container/rename_test.go
index 3567aee1f5..a27fd78acc 100644
--- a/integration/container/rename_test.go
+++ b/integration/container/rename_test.go
@@ -11,10 +11,10 @@ import (
"github.com/docker/docker/integration/internal/request"
"github.com/docker/docker/internal/testutil"
"github.com/docker/docker/pkg/stringid"
+ "github.com/gotestyourself/gotestyourself/assert"
+ is "github.com/gotestyourself/gotestyourself/assert/cmp"
"github.com/gotestyourself/gotestyourself/poll"
"github.com/gotestyourself/gotestyourself/skip"
- "github.com/stretchr/testify/assert"
- "github.com/stretchr/testify/require"
)
// This test simulates the scenario mentioned in #31392:
@@ -30,18 +30,18 @@ func TestRenameLinkedContainer(t *testing.T) {
bID := container.Run(t, ctx, client, container.WithName("b0"), container.WithLinks("a0"))
err := client.ContainerRename(ctx, aID, "a1")
- require.NoError(t, err)
+ assert.NilError(t, err)
container.Run(t, ctx, client, container.WithName("a0"))
err = client.ContainerRemove(ctx, bID, types.ContainerRemoveOptions{Force: true})
- require.NoError(t, err)
+ assert.NilError(t, err)
bID = container.Run(t, ctx, client, container.WithName("b0"), container.WithLinks("a0"))
inspect, err := client.ContainerInspect(ctx, bID)
- require.NoError(t, err)
- assert.Equal(t, []string{"/a0:/b0/a0"}, inspect.HostConfig.Links)
+ assert.NilError(t, err)
+ assert.Check(t, is.DeepEqual([]string{"/a0:/b0/a0"}, inspect.HostConfig.Links))
}
func TestRenameStoppedContainer(t *testing.T) {
@@ -54,16 +54,16 @@ func TestRenameStoppedContainer(t *testing.T) {
poll.WaitOn(t, container.IsInState(ctx, client, cID, "exited"), poll.WithDelay(100*time.Millisecond))
inspect, err := client.ContainerInspect(ctx, cID)
- require.NoError(t, err)
- assert.Equal(t, "/"+oldName, inspect.Name)
+ assert.NilError(t, err)
+ assert.Check(t, is.Equal("/"+oldName, inspect.Name))
newName := "new_name" + stringid.GenerateNonCryptoID()
err = client.ContainerRename(ctx, oldName, newName)
- require.NoError(t, err)
+ assert.NilError(t, err)
inspect, err = client.ContainerInspect(ctx, cID)
- require.NoError(t, err)
- assert.Equal(t, "/"+newName, inspect.Name)
+ assert.NilError(t, err)
+ assert.Check(t, is.Equal("/"+newName, inspect.Name))
}
func TestRenameRunningContainerAndReuse(t *testing.T) {
@@ -77,11 +77,11 @@ func TestRenameRunningContainerAndReuse(t *testing.T) {
newName := "new_name" + stringid.GenerateNonCryptoID()
err := client.ContainerRename(ctx, oldName, newName)
- require.NoError(t, err)
+ assert.NilError(t, err)
inspect, err := client.ContainerInspect(ctx, cID)
- require.NoError(t, err)
- assert.Equal(t, "/"+newName, inspect.Name)
+ assert.NilError(t, err)
+ assert.Check(t, is.Equal("/"+newName, inspect.Name))
_, err = client.ContainerInspect(ctx, oldName)
testutil.ErrorContains(t, err, "No such container: "+oldName)
@@ -90,8 +90,8 @@ func TestRenameRunningContainerAndReuse(t *testing.T) {
poll.WaitOn(t, container.IsInState(ctx, client, cID, "running"), poll.WithDelay(100*time.Millisecond))
inspect, err = client.ContainerInspect(ctx, cID)
- require.NoError(t, err)
- assert.Equal(t, "/"+oldName, inspect.Name)
+ assert.NilError(t, err)
+ assert.Check(t, is.Equal("/"+oldName, inspect.Name))
}
func TestRenameInvalidName(t *testing.T) {
@@ -107,8 +107,8 @@ func TestRenameInvalidName(t *testing.T) {
testutil.ErrorContains(t, err, "Invalid container name")
inspect, err := client.ContainerInspect(ctx, oldName)
- require.NoError(t, err)
- assert.Equal(t, cID, inspect.ID)
+ assert.NilError(t, err)
+ assert.Check(t, is.Equal(cID, inspect.ID))
}
// Test case for GitHub issue 22466
@@ -124,7 +124,7 @@ func TestRenameAnonymousContainer(t *testing.T) {
client := request.NewAPIClient(t)
_, err := client.NetworkCreate(ctx, "network1", types.NetworkCreate{})
- require.NoError(t, err)
+ assert.NilError(t, err)
cID := container.Run(t, ctx, client, func(c *container.TestContainerConfig) {
c.NetworkingConfig.EndpointsConfig = map[string]*network.EndpointSettings{
"network1": {},
@@ -132,13 +132,13 @@ func TestRenameAnonymousContainer(t *testing.T) {
c.HostConfig.NetworkMode = "network1"
})
err = client.ContainerRename(ctx, cID, "container1")
- require.NoError(t, err)
+ assert.NilError(t, err)
// Stop/Start the container to get registered
// FIXME(vdemeester) this is a really weird behavior as it fails otherwise
err = client.ContainerStop(ctx, "container1", nil)
- require.NoError(t, err)
+ assert.NilError(t, err)
err = client.ContainerStart(ctx, "container1", types.ContainerStartOptions{})
- require.NoError(t, err)
+ assert.NilError(t, err)
poll.WaitOn(t, container.IsInState(ctx, client, cID, "running"), poll.WithDelay(100*time.Millisecond))
@@ -155,8 +155,8 @@ func TestRenameAnonymousContainer(t *testing.T) {
poll.WaitOn(t, container.IsInState(ctx, client, cID, "exited"), poll.WithDelay(100*time.Millisecond))
inspect, err := client.ContainerInspect(ctx, cID)
- require.NoError(t, err)
- assert.Equal(t, 0, inspect.State.ExitCode, "container %s exited with the wrong exitcode: %+v", cID, inspect)
+ assert.NilError(t, err)
+ assert.Check(t, is.Equal(0, inspect.State.ExitCode), "container %s exited with the wrong exitcode: %+v", cID, inspect)
}
// TODO: should be a unit test
@@ -192,9 +192,9 @@ func TestRenameContainerWithLinkedContainer(t *testing.T) {
poll.WaitOn(t, container.IsInState(ctx, client, app1ID, "running"), poll.WithDelay(100*time.Millisecond))
err := client.ContainerRename(ctx, "app1", "app2")
- require.NoError(t, err)
+ assert.NilError(t, err)
inspect, err := client.ContainerInspect(ctx, "app2/mysql")
- require.NoError(t, err)
- assert.Equal(t, db1ID, inspect.ID)
+ assert.NilError(t, err)
+ assert.Check(t, is.Equal(db1ID, inspect.ID))
}
diff --git a/integration/container/resize_test.go b/integration/container/resize_test.go
index 18438ea825..149ac3afd1 100644
--- a/integration/container/resize_test.go
+++ b/integration/container/resize_test.go
@@ -11,9 +11,9 @@ import (
"github.com/docker/docker/integration/internal/container"
"github.com/docker/docker/integration/internal/request"
"github.com/docker/docker/internal/testutil"
+ "github.com/gotestyourself/gotestyourself/assert"
+ is "github.com/gotestyourself/gotestyourself/assert/cmp"
"github.com/gotestyourself/gotestyourself/poll"
- "github.com/stretchr/testify/assert"
- "github.com/stretchr/testify/require"
)
func TestResize(t *testing.T) {
@@ -29,7 +29,7 @@ func TestResize(t *testing.T) {
Height: 40,
Width: 40,
})
- require.NoError(t, err)
+ assert.NilError(t, err)
}
func TestResizeWithInvalidSize(t *testing.T) {
@@ -43,8 +43,8 @@ func TestResizeWithInvalidSize(t *testing.T) {
endpoint := "/containers/" + cID + "/resize?h=foo&w=bar"
res, _, err := req.Post(endpoint)
- require.NoError(t, err)
- assert.Equal(t, http.StatusBadRequest, res.StatusCode)
+ assert.NilError(t, err)
+ assert.Check(t, is.DeepEqual(http.StatusBadRequest, res.StatusCode))
}
func TestResizeWhenContainerNotStarted(t *testing.T) {
diff --git a/integration/container/stats_test.go b/integration/container/stats_test.go
index 9c0b948498..d10808f8f7 100644
--- a/integration/container/stats_test.go
+++ b/integration/container/stats_test.go
@@ -10,10 +10,10 @@ import (
"github.com/docker/docker/api/types"
"github.com/docker/docker/integration/internal/container"
"github.com/docker/docker/integration/internal/request"
+ "github.com/gotestyourself/gotestyourself/assert"
+ is "github.com/gotestyourself/gotestyourself/assert/cmp"
"github.com/gotestyourself/gotestyourself/poll"
"github.com/gotestyourself/gotestyourself/skip"
- "github.com/stretchr/testify/assert"
- "github.com/stretchr/testify/require"
)
func TestStats(t *testing.T) {
@@ -24,20 +24,20 @@ func TestStats(t *testing.T) {
ctx := context.Background()
info, err := client.Info(ctx)
- require.NoError(t, err)
+ assert.NilError(t, err)
cID := container.Run(t, ctx, client)
poll.WaitOn(t, container.IsInState(ctx, client, cID, "running"), poll.WithDelay(100*time.Millisecond))
resp, err := client.ContainerStats(ctx, cID, false)
- require.NoError(t, err)
+ assert.NilError(t, err)
defer resp.Body.Close()
var v *types.Stats
err = json.NewDecoder(resp.Body).Decode(&v)
- require.NoError(t, err)
- assert.Equal(t, int64(v.MemoryStats.Limit), info.MemTotal)
+ assert.NilError(t, err)
+ assert.Check(t, is.Equal(int64(v.MemoryStats.Limit), info.MemTotal))
err = json.NewDecoder(resp.Body).Decode(&v)
- require.Error(t, err, io.EOF)
+ assert.Assert(t, is.ErrorContains(err, ""), io.EOF)
}
diff --git a/integration/container/stop_test.go b/integration/container/stop_test.go
index 4ecd06dd2c..2cc9b82512 100644
--- a/integration/container/stop_test.go
+++ b/integration/container/stop_test.go
@@ -10,10 +10,10 @@ import (
"github.com/docker/docker/api/types"
"github.com/docker/docker/integration/internal/container"
"github.com/docker/docker/integration/internal/request"
+ "github.com/gotestyourself/gotestyourself/assert"
"github.com/gotestyourself/gotestyourself/icmd"
"github.com/gotestyourself/gotestyourself/poll"
"github.com/gotestyourself/gotestyourself/skip"
- "github.com/stretchr/testify/require"
)
func TestStopContainerWithRestartPolicyAlways(t *testing.T) {
@@ -34,7 +34,7 @@ func TestStopContainerWithRestartPolicyAlways(t *testing.T) {
for _, name := range names {
err := client.ContainerStop(ctx, name, nil)
- require.NoError(t, err)
+ assert.NilError(t, err)
}
for _, name := range names {
@@ -54,7 +54,7 @@ func TestDeleteDevicemapper(t *testing.T) {
poll.WaitOn(t, container.IsStopped(ctx, client, id), poll.WithDelay(100*time.Millisecond))
inspect, err := client.ContainerInspect(ctx, id)
- require.NoError(t, err)
+ assert.NilError(t, err)
deviceID := inspect.GraphDriver.Data["DeviceId"]
@@ -67,5 +67,5 @@ func TestDeleteDevicemapper(t *testing.T) {
result.Assert(t, icmd.Success)
err = client.ContainerRemove(ctx, id, types.ContainerRemoveOptions{})
- require.NoError(t, err)
+ assert.NilError(t, err)
}
diff --git a/integration/container/update_linux_test.go b/integration/container/update_linux_test.go
index c898dc1d3b..a08417ea24 100644
--- a/integration/container/update_linux_test.go
+++ b/integration/container/update_linux_test.go
@@ -10,10 +10,10 @@ import (
containertypes "github.com/docker/docker/api/types/container"
"github.com/docker/docker/integration/internal/container"
"github.com/docker/docker/integration/internal/request"
+ "github.com/gotestyourself/gotestyourself/assert"
+ is "github.com/gotestyourself/gotestyourself/assert/cmp"
"github.com/gotestyourself/gotestyourself/poll"
"github.com/gotestyourself/gotestyourself/skip"
- "github.com/stretchr/testify/assert"
- "github.com/stretchr/testify/require"
)
func TestUpdateMemory(t *testing.T) {
@@ -44,26 +44,26 @@ func TestUpdateMemory(t *testing.T) {
MemorySwap: setMemorySwap,
},
})
- require.NoError(t, err)
+ assert.NilError(t, err)
inspect, err := client.ContainerInspect(ctx, cID)
- require.NoError(t, err)
- assert.Equal(t, setMemory, inspect.HostConfig.Memory)
- assert.Equal(t, setMemorySwap, inspect.HostConfig.MemorySwap)
+ assert.NilError(t, err)
+ assert.Check(t, is.Equal(setMemory, inspect.HostConfig.Memory))
+ assert.Check(t, is.Equal(setMemorySwap, inspect.HostConfig.MemorySwap))
res, err := container.Exec(ctx, client, cID,
[]string{"cat", "/sys/fs/cgroup/memory/memory.limit_in_bytes"})
- require.NoError(t, err)
- require.Empty(t, res.Stderr())
- require.Equal(t, 0, res.ExitCode)
- assert.Equal(t, strconv.FormatInt(setMemory, 10), strings.TrimSpace(res.Stdout()))
+ assert.NilError(t, err)
+ assert.Assert(t, is.Len(res.Stderr(), 0))
+ assert.Equal(t, 0, res.ExitCode)
+ assert.Check(t, is.Equal(strconv.FormatInt(setMemory, 10), strings.TrimSpace(res.Stdout())))
res, err = container.Exec(ctx, client, cID,
[]string{"cat", "/sys/fs/cgroup/memory/memory.memsw.limit_in_bytes"})
- require.NoError(t, err)
- require.Empty(t, res.Stderr())
- require.Equal(t, 0, res.ExitCode)
- assert.Equal(t, strconv.FormatInt(setMemorySwap, 10), strings.TrimSpace(res.Stdout()))
+ assert.NilError(t, err)
+ assert.Assert(t, is.Len(res.Stderr(), 0))
+ assert.Equal(t, 0, res.ExitCode)
+ assert.Check(t, is.Equal(strconv.FormatInt(setMemorySwap, 10), strings.TrimSpace(res.Stdout())))
}
func TestUpdateCPUQuota(t *testing.T) {
@@ -93,15 +93,15 @@ func TestUpdateCPUQuota(t *testing.T) {
}
inspect, err := client.ContainerInspect(ctx, cID)
- require.NoError(t, err)
- assert.Equal(t, test.update, inspect.HostConfig.CPUQuota)
+ assert.NilError(t, err)
+ assert.Check(t, is.Equal(test.update, inspect.HostConfig.CPUQuota))
res, err := container.Exec(ctx, client, cID,
[]string{"/bin/cat", "/sys/fs/cgroup/cpu/cpu.cfs_quota_us"})
- require.NoError(t, err)
- require.Empty(t, res.Stderr())
- require.Equal(t, 0, res.ExitCode)
+ assert.NilError(t, err)
+ assert.Assert(t, is.Len(res.Stderr(), 0))
+ assert.Equal(t, 0, res.ExitCode)
- assert.Equal(t, strconv.FormatInt(test.update, 10), strings.TrimSpace(res.Stdout()))
+ assert.Check(t, is.Equal(strconv.FormatInt(test.update, 10), strings.TrimSpace(res.Stdout())))
}
}
diff --git a/integration/container/update_test.go b/integration/container/update_test.go
index 651e84cb22..03dcc635c6 100644
--- a/integration/container/update_test.go
+++ b/integration/container/update_test.go
@@ -9,9 +9,9 @@ import (
"github.com/docker/docker/integration/internal/container"
"github.com/docker/docker/integration/internal/request"
"github.com/docker/docker/internal/testutil"
+ "github.com/gotestyourself/gotestyourself/assert"
+ is "github.com/gotestyourself/gotestyourself/assert/cmp"
"github.com/gotestyourself/gotestyourself/poll"
- "github.com/stretchr/testify/assert"
- "github.com/stretchr/testify/require"
)
func TestUpdateRestartPolicy(t *testing.T) {
@@ -32,7 +32,7 @@ func TestUpdateRestartPolicy(t *testing.T) {
MaximumRetryCount: 5,
},
})
- require.NoError(t, err)
+ assert.NilError(t, err)
timeout := 60 * time.Second
if testEnv.OSType == "windows" {
@@ -42,9 +42,9 @@ func TestUpdateRestartPolicy(t *testing.T) {
poll.WaitOn(t, container.IsInState(ctx, client, cID, "exited"), poll.WithDelay(100*time.Millisecond), poll.WithTimeout(timeout))
inspect, err := client.ContainerInspect(ctx, cID)
- require.NoError(t, err)
- assert.Equal(t, inspect.RestartCount, 5)
- assert.Equal(t, inspect.HostConfig.RestartPolicy.MaximumRetryCount, 5)
+ assert.NilError(t, err)
+ assert.Check(t, is.Equal(inspect.RestartCount, 5))
+ assert.Check(t, is.Equal(inspect.HostConfig.RestartPolicy.MaximumRetryCount, 5))
}
func TestUpdateRestartWithAutoRemove(t *testing.T) {
diff --git a/integration/image/commit_test.go b/integration/image/commit_test.go
index 39fc956db1..e13719b532 100644
--- a/integration/image/commit_test.go
+++ b/integration/image/commit_test.go
@@ -7,8 +7,8 @@ import (
"github.com/docker/docker/api/types"
"github.com/docker/docker/integration/internal/container"
"github.com/docker/docker/integration/internal/request"
- "github.com/stretchr/testify/assert"
- "github.com/stretchr/testify/require"
+ "github.com/gotestyourself/gotestyourself/assert"
+ is "github.com/gotestyourself/gotestyourself/assert/cmp"
)
func TestCommitInheritsEnv(t *testing.T) {
@@ -22,13 +22,13 @@ func TestCommitInheritsEnv(t *testing.T) {
Changes: []string{"ENV PATH=/bin"},
Reference: "test-commit-image",
})
- require.NoError(t, err)
+ assert.NilError(t, err)
image1, _, err := client.ImageInspectWithRaw(ctx, commitResp1.ID)
- require.NoError(t, err)
+ assert.NilError(t, err)
expectedEnv1 := []string{"PATH=/bin"}
- assert.Equal(t, expectedEnv1, image1.Config.Env)
+ assert.Check(t, is.DeepEqual(expectedEnv1, image1.Config.Env))
cID2 := container.Create(t, ctx, client, container.WithImage(image1.ID))
@@ -36,10 +36,10 @@ func TestCommitInheritsEnv(t *testing.T) {
Changes: []string{"ENV PATH=/usr/bin:$PATH"},
Reference: "test-commit-image",
})
- require.NoError(t, err)
+ assert.NilError(t, err)
image2, _, err := client.ImageInspectWithRaw(ctx, commitResp2.ID)
- require.NoError(t, err)
+ assert.NilError(t, err)
expectedEnv2 := []string{"PATH=/usr/bin:/bin"}
- assert.Equal(t, expectedEnv2, image2.Config.Env)
+ assert.Check(t, is.DeepEqual(expectedEnv2, image2.Config.Env))
}
diff --git a/integration/image/remove_test.go b/integration/image/remove_test.go
index 825724bd03..c89f6f7a03 100644
--- a/integration/image/remove_test.go
+++ b/integration/image/remove_test.go
@@ -8,8 +8,8 @@ import (
"github.com/docker/docker/integration/internal/container"
"github.com/docker/docker/integration/internal/request"
"github.com/docker/docker/internal/testutil"
- "github.com/stretchr/testify/assert"
- "github.com/stretchr/testify/require"
+ "github.com/gotestyourself/gotestyourself/assert"
+ is "github.com/gotestyourself/gotestyourself/assert/cmp"
)
func TestRemoveImageOrphaning(t *testing.T) {
@@ -25,12 +25,12 @@ func TestRemoveImageOrphaning(t *testing.T) {
Changes: []string{`ENTRYPOINT ["true"]`},
Reference: img,
})
- require.NoError(t, err)
+ assert.NilError(t, err)
// verifies that reference now points to first image
resp, _, err := client.ImageInspectWithRaw(ctx, img)
- require.NoError(t, err)
- assert.Equal(t, resp.ID, commitResp1.ID)
+ assert.NilError(t, err)
+ assert.Check(t, is.Equal(resp.ID, commitResp1.ID))
// Create a container from created image, and commit a small change with same reference name
cID2 := container.Create(t, ctx, client, container.WithImage(img), container.WithCmd(""))
@@ -38,21 +38,21 @@ func TestRemoveImageOrphaning(t *testing.T) {
Changes: []string{`LABEL Maintainer="Integration Tests"`},
Reference: img,
})
- require.NoError(t, err)
+ assert.NilError(t, err)
// verifies that reference now points to second image
resp, _, err = client.ImageInspectWithRaw(ctx, img)
- require.NoError(t, err)
- assert.Equal(t, resp.ID, commitResp2.ID)
+ assert.NilError(t, err)
+ assert.Check(t, is.Equal(resp.ID, commitResp2.ID))
// try to remove the image, should not error out.
_, err = client.ImageRemove(ctx, img, types.ImageRemoveOptions{})
- require.NoError(t, err)
+ assert.NilError(t, err)
// check if the first image is still there
resp, _, err = client.ImageInspectWithRaw(ctx, commitResp1.ID)
- require.NoError(t, err)
- assert.Equal(t, resp.ID, commitResp1.ID)
+ assert.NilError(t, err)
+ assert.Check(t, is.Equal(resp.ID, commitResp1.ID))
// check if the second image has been deleted
_, _, err = client.ImageInspectWithRaw(ctx, commitResp2.ID)
diff --git a/integration/internal/container/container.go b/integration/internal/container/container.go
index 8d8fe28791..0c76571769 100644
--- a/integration/internal/container/container.go
+++ b/integration/internal/container/container.go
@@ -8,7 +8,7 @@ import (
"github.com/docker/docker/api/types/container"
"github.com/docker/docker/api/types/network"
"github.com/docker/docker/client"
- "github.com/stretchr/testify/require"
+ "github.com/gotestyourself/gotestyourself/assert"
)
// TestContainerConfig holds container configuration struct that
@@ -37,7 +37,7 @@ func Create(t *testing.T, ctx context.Context, client client.APIClient, ops ...f
}
c, err := client.ContainerCreate(ctx, config.Config, config.HostConfig, config.NetworkingConfig, config.Name)
- require.NoError(t, err)
+ assert.NilError(t, err)
return c.ID
}
@@ -48,7 +48,7 @@ func Run(t *testing.T, ctx context.Context, client client.APIClient, ops ...func
id := Create(t, ctx, client, ops...)
err := client.ContainerStart(ctx, id, types.ContainerStartOptions{})
- require.NoError(t, err)
+ assert.NilError(t, err)
return id
}
diff --git a/integration/internal/request/client.go b/integration/internal/request/client.go
index 34e589ec86..07dc2e33c3 100644
--- a/integration/internal/request/client.go
+++ b/integration/internal/request/client.go
@@ -9,14 +9,14 @@ import (
"github.com/docker/docker/client"
"github.com/docker/docker/internal/test/environment"
- "github.com/stretchr/testify/require"
+ "github.com/gotestyourself/gotestyourself/assert"
)
// NewAPIClient returns a docker API client configured from environment variables
func NewAPIClient(t *testing.T, ops ...func(*client.Client) error) client.APIClient {
ops = append([]func(*client.Client) error{client.FromEnv}, ops...)
clt, err := client.NewClientWithOpts(ops...)
- require.NoError(t, err)
+ assert.NilError(t, err)
return clt
}
@@ -27,10 +27,10 @@ func DaemonTime(ctx context.Context, t *testing.T, client client.APIClient, test
}
info, err := client.Info(ctx)
- require.NoError(t, err)
+ assert.NilError(t, err)
dt, err := time.Parse(time.RFC3339Nano, info.SystemTime)
- require.NoError(t, err, "invalid time format in GET /info response")
+ assert.NilError(t, err, "invalid time format in GET /info response")
return dt
}
diff --git a/integration/internal/swarm/service.go b/integration/internal/swarm/service.go
index a46b02e146..0ec4d5175e 100644
--- a/integration/internal/swarm/service.go
+++ b/integration/internal/swarm/service.go
@@ -11,7 +11,7 @@ import (
"github.com/docker/docker/client"
"github.com/docker/docker/integration-cli/daemon"
"github.com/docker/docker/internal/test/environment"
- "github.com/stretchr/testify/require"
+ "github.com/gotestyourself/gotestyourself/assert"
)
const (
@@ -35,7 +35,7 @@ func NewSwarm(t *testing.T, testEnv *environment.Execution) *daemon.Swarm {
args := []string{"--iptables=false", "--swarm-default-advertise-addr=lo"}
d.StartWithBusybox(t, args...)
- require.NoError(t, d.Init(swarmtypes.InitRequest{}))
+ assert.NilError(t, d.Init(swarmtypes.InitRequest{}))
return d
}
@@ -52,7 +52,7 @@ func CreateService(t *testing.T, d *daemon.Swarm, opts ...ServiceSpecOpt) string
client := GetClient(t, d)
resp, err := client.ServiceCreate(context.Background(), spec, types.ServiceCreateOptions{})
- require.NoError(t, err, "error creating service")
+ assert.NilError(t, err, "error creating service")
return resp.ID
}
@@ -126,7 +126,7 @@ func GetRunningTasks(t *testing.T, d *daemon.Swarm, serviceID string) []swarmtyp
Filters: filterArgs,
}
tasks, err := client.TaskList(context.Background(), options)
- require.NoError(t, err)
+ assert.NilError(t, err)
return tasks
}
@@ -136,11 +136,11 @@ func ExecTask(t *testing.T, d *daemon.Swarm, task swarmtypes.Task, config types.
ctx := context.Background()
resp, err := client.ContainerExecCreate(ctx, task.Status.ContainerStatus.ContainerID, config)
- require.NoError(t, err, "error creating exec")
+ assert.NilError(t, err, "error creating exec")
startCheck := types.ExecStartCheck{}
attach, err := client.ContainerExecAttach(ctx, resp.ID, startCheck)
- require.NoError(t, err, "error attaching to exec")
+ assert.NilError(t, err, "error attaching to exec")
return attach
}
@@ -153,6 +153,6 @@ func ensureContainerSpec(spec *swarmtypes.ServiceSpec) {
// GetClient creates a new client for the passed in swarm daemon.
func GetClient(t *testing.T, d *daemon.Swarm) client.APIClient {
client, err := client.NewClientWithOpts(client.WithHost((d.Sock())))
- require.NoError(t, err)
+ assert.NilError(t, err)
return client
}
diff --git a/integration/network/delete_test.go b/integration/network/delete_test.go
index 0877d8bc8c..e2af49de7e 100644
--- a/integration/network/delete_test.go
+++ b/integration/network/delete_test.go
@@ -6,8 +6,8 @@ import (
"github.com/docker/docker/api/types"
"github.com/docker/docker/integration/internal/request"
- "github.com/stretchr/testify/assert"
- "github.com/stretchr/testify/require"
+ "github.com/gotestyourself/gotestyourself/assert"
+ is "github.com/gotestyourself/gotestyourself/assert/cmp"
)
func containsNetwork(nws []types.NetworkResource, nw types.NetworkCreateResponse) bool {
@@ -29,18 +29,18 @@ func createAmbiguousNetworks(t *testing.T) (types.NetworkCreateResponse, types.N
ctx := context.Background()
testNet, err := client.NetworkCreate(ctx, "testNet", types.NetworkCreate{})
- require.NoError(t, err)
+ assert.NilError(t, err)
idPrefixNet, err := client.NetworkCreate(ctx, testNet.ID[:12], types.NetworkCreate{})
- require.NoError(t, err)
+ assert.NilError(t, err)
fullIDNet, err := client.NetworkCreate(ctx, testNet.ID, types.NetworkCreate{})
- require.NoError(t, err)
+ assert.NilError(t, err)
nws, err := client.NetworkList(ctx, types.NetworkListOptions{})
- require.NoError(t, err)
+ assert.NilError(t, err)
- assert.Equal(t, true, containsNetwork(nws, testNet), "failed to create network testNet")
- assert.Equal(t, true, containsNetwork(nws, idPrefixNet), "failed to create network idPrefixNet")
- assert.Equal(t, true, containsNetwork(nws, fullIDNet), "failed to create network fullIDNet")
+ assert.Check(t, is.Equal(true, containsNetwork(nws, testNet)), "failed to create network testNet")
+ assert.Check(t, is.Equal(true, containsNetwork(nws, idPrefixNet)), "failed to create network idPrefixNet")
+ assert.Check(t, is.Equal(true, containsNetwork(nws, fullIDNet)), "failed to create network fullIDNet")
return testNet, idPrefixNet, fullIDNet
}
@@ -56,17 +56,17 @@ func TestDockerNetworkDeletePreferID(t *testing.T) {
// Delete the network using a prefix of the first network's ID as name.
// This should the network name with the id-prefix, not the original network.
err := client.NetworkRemove(ctx, testNet.ID[:12])
- require.NoError(t, err)
+ assert.NilError(t, err)
// Delete the network using networkID. This should remove the original
// network, not the network with the name equal to the networkID
err = client.NetworkRemove(ctx, testNet.ID)
- require.NoError(t, err)
+ assert.NilError(t, err)
// networks "testNet" and "idPrefixNet" should be removed, but "fullIDNet" should still exist
nws, err := client.NetworkList(ctx, types.NetworkListOptions{})
- require.NoError(t, err)
- assert.Equal(t, false, containsNetwork(nws, testNet), "Network testNet not removed")
- assert.Equal(t, false, containsNetwork(nws, idPrefixNet), "Network idPrefixNet not removed")
- assert.Equal(t, true, containsNetwork(nws, fullIDNet), "Network fullIDNet not found")
+ assert.NilError(t, err)
+ assert.Check(t, is.Equal(false, containsNetwork(nws, testNet)), "Network testNet not removed")
+ assert.Check(t, is.Equal(false, containsNetwork(nws, idPrefixNet)), "Network idPrefixNet not removed")
+ assert.Check(t, is.Equal(true, containsNetwork(nws, fullIDNet)), "Network fullIDNet not found")
}
diff --git a/integration/network/inspect_test.go b/integration/network/inspect_test.go
index df586224a1..3afdcf1ac4 100644
--- a/integration/network/inspect_test.go
+++ b/integration/network/inspect_test.go
@@ -11,8 +11,8 @@ import (
"github.com/docker/docker/api/types/swarm"
"github.com/docker/docker/client"
"github.com/docker/docker/integration-cli/daemon"
+ "github.com/gotestyourself/gotestyourself/assert"
"github.com/gotestyourself/gotestyourself/poll"
- "github.com/stretchr/testify/require"
"golang.org/x/net/context"
)
@@ -24,7 +24,7 @@ func TestInspectNetwork(t *testing.T) {
d := newSwarm(t)
defer d.Stop(t)
client, err := client.NewClientWithOpts(client.WithHost((d.Sock())))
- require.NoError(t, err)
+ assert.NilError(t, err)
overlayName := "overlay1"
networkCreate := types.NetworkCreate{
@@ -33,7 +33,7 @@ func TestInspectNetwork(t *testing.T) {
}
netResp, err := client.NetworkCreate(context.Background(), overlayName, networkCreate)
- require.NoError(t, err)
+ assert.NilError(t, err)
overlayID := netResp.ID
var instances uint64 = 4
@@ -44,7 +44,7 @@ func TestInspectNetwork(t *testing.T) {
serviceResp, err := client.ServiceCreate(context.Background(), serviceSpec, types.ServiceCreateOptions{
QueryRegistry: false,
})
- require.NoError(t, err)
+ assert.NilError(t, err)
pollSettings := func(config *poll.Settings) {
if runtime.GOARCH == "arm64" || runtime.GOARCH == "arm" {
@@ -57,32 +57,32 @@ func TestInspectNetwork(t *testing.T) {
poll.WaitOn(t, serviceRunningTasksCount(client, serviceID, instances), pollSettings)
_, _, err = client.ServiceInspectWithRaw(context.Background(), serviceID, types.ServiceInspectOptions{})
- require.NoError(t, err)
+ assert.NilError(t, err)
// Test inspect verbose with full NetworkID
networkVerbose, err := client.NetworkInspect(context.Background(), overlayID, types.NetworkInspectOptions{
Verbose: true,
})
- require.NoError(t, err)
- require.True(t, validNetworkVerbose(networkVerbose, serviceName, instances))
+ assert.NilError(t, err)
+ assert.Assert(t, validNetworkVerbose(networkVerbose, serviceName, instances))
// Test inspect verbose with partial NetworkID
networkVerbose, err = client.NetworkInspect(context.Background(), overlayID[0:11], types.NetworkInspectOptions{
Verbose: true,
})
- require.NoError(t, err)
- require.True(t, validNetworkVerbose(networkVerbose, serviceName, instances))
+ assert.NilError(t, err)
+ assert.Assert(t, validNetworkVerbose(networkVerbose, serviceName, instances))
// Test inspect verbose with Network name and swarm scope
networkVerbose, err = client.NetworkInspect(context.Background(), overlayName, types.NetworkInspectOptions{
Verbose: true,
Scope: "swarm",
})
- require.NoError(t, err)
- require.True(t, validNetworkVerbose(networkVerbose, serviceName, instances))
+ assert.NilError(t, err)
+ assert.Assert(t, validNetworkVerbose(networkVerbose, serviceName, instances))
err = client.ServiceRemove(context.Background(), serviceID)
- require.NoError(t, err)
+ assert.NilError(t, err)
poll.WaitOn(t, serviceIsRemoved(client, serviceID), pollSettings)
poll.WaitOn(t, noTasks(client), pollSettings)
@@ -90,19 +90,19 @@ func TestInspectNetwork(t *testing.T) {
serviceResp, err = client.ServiceCreate(context.Background(), serviceSpec, types.ServiceCreateOptions{
QueryRegistry: false,
})
- require.NoError(t, err)
+ assert.NilError(t, err)
serviceID2 := serviceResp.ID
poll.WaitOn(t, serviceRunningTasksCount(client, serviceID2, instances), pollSettings)
err = client.ServiceRemove(context.Background(), serviceID2)
- require.NoError(t, err)
+ assert.NilError(t, err)
poll.WaitOn(t, serviceIsRemoved(client, serviceID2), pollSettings)
poll.WaitOn(t, noTasks(client), pollSettings)
err = client.NetworkRemove(context.Background(), overlayID)
- require.NoError(t, err)
+ assert.NilError(t, err)
poll.WaitOn(t, networkIsRemoved(client, overlayID), poll.WithTimeout(1*time.Minute), poll.WithDelay(10*time.Second))
}
@@ -122,7 +122,7 @@ func newSwarm(t *testing.T) *daemon.Swarm {
args := []string{"--iptables=false", "--swarm-default-advertise-addr=lo"}
d.StartWithBusybox(t, args...)
- require.NoError(t, d.Init(swarm.InitRequest{}))
+ assert.NilError(t, d.Init(swarm.InitRequest{}))
return d
}
diff --git a/integration/network/service_test.go b/integration/network/service_test.go
index f1c0950988..87e1fe00fd 100644
--- a/integration/network/service_test.go
+++ b/integration/network/service_test.go
@@ -9,8 +9,8 @@ import (
"github.com/docker/docker/api/types/filters"
"github.com/docker/docker/api/types/swarm"
"github.com/docker/docker/client"
+ "github.com/gotestyourself/gotestyourself/assert"
"github.com/gotestyourself/gotestyourself/poll"
- "github.com/stretchr/testify/require"
"golang.org/x/net/context"
)
@@ -19,7 +19,7 @@ func TestServiceWithPredefinedNetwork(t *testing.T) {
d := newSwarm(t)
defer d.Stop(t)
client, err := client.NewClientWithOpts(client.WithHost((d.Sock())))
- require.NoError(t, err)
+ assert.NilError(t, err)
hostName := "host"
var instances uint64 = 1
@@ -30,7 +30,7 @@ func TestServiceWithPredefinedNetwork(t *testing.T) {
serviceResp, err := client.ServiceCreate(context.Background(), serviceSpec, types.ServiceCreateOptions{
QueryRegistry: false,
})
- require.NoError(t, err)
+ assert.NilError(t, err)
pollSettings := func(config *poll.Settings) {
if runtime.GOARCH == "arm64" || runtime.GOARCH == "arm" {
@@ -101,10 +101,10 @@ func TestServiceWithIngressNetwork(t *testing.T) {
poll.WaitOn(t, serviceRunningCount(client, serviceID, instances), pollSettings)
_, _, err = client.ServiceInspectWithRaw(context.Background(), serviceID, types.ServiceInspectOptions{})
- require.NoError(t, err)
+ assert.NilError(t, err)
err = client.ServiceRemove(context.Background(), serviceID)
- require.NoError(t, err)
+ assert.NilError(t, err)
poll.WaitOn(t, serviceIsRemoved(client, serviceID), pollSettings)
poll.WaitOn(t, noTasks(client), pollSettings)
diff --git a/integration/plugin/authz/authz_plugin_test.go b/integration/plugin/authz/authz_plugin_test.go
index 667fc3d3cc..5bca6c138d 100644
--- a/integration/plugin/authz/authz_plugin_test.go
+++ b/integration/plugin/authz/authz_plugin_test.go
@@ -24,8 +24,8 @@ import (
"github.com/docker/docker/integration/internal/container"
"github.com/docker/docker/internal/test/environment"
"github.com/docker/docker/pkg/authorization"
+ "github.com/gotestyourself/gotestyourself/assert"
"github.com/gotestyourself/gotestyourself/skip"
- "github.com/stretchr/testify/require"
)
const (
@@ -55,15 +55,15 @@ func setupTestV1(t *testing.T) func() {
teardown := setupTest(t)
err := os.MkdirAll("/etc/docker/plugins", 0755)
- require.Nil(t, err)
+ assert.NilError(t, err)
fileName := fmt.Sprintf("/etc/docker/plugins/%s.spec", testAuthZPlugin)
err = ioutil.WriteFile(fileName, []byte(server.URL), 0644)
- require.Nil(t, err)
+ assert.NilError(t, err)
return func() {
err := os.RemoveAll("/etc/docker/plugins")
- require.Nil(t, err)
+ assert.NilError(t, err)
teardown()
ctrl = nil
@@ -87,7 +87,7 @@ func TestAuthZPluginAllowRequest(t *testing.T) {
d.StartWithBusybox(t, "--authorization-plugin="+testAuthZPlugin)
client, err := d.NewClient()
- require.Nil(t, err)
+ assert.NilError(t, err)
ctx := context.Background()
@@ -98,9 +98,9 @@ func TestAuthZPluginAllowRequest(t *testing.T) {
assertURIRecorded(t, ctrl.requestsURIs, fmt.Sprintf("/containers/%s/start", cID))
_, err = client.ServerVersion(ctx)
- require.Nil(t, err)
- require.Equal(t, 1, ctrl.versionReqCount)
- require.Equal(t, 1, ctrl.versionResCount)
+ assert.NilError(t, err)
+ assert.Equal(t, 1, ctrl.versionReqCount)
+ assert.Equal(t, 1, ctrl.versionResCount)
}
func TestAuthZPluginTLS(t *testing.T) {
@@ -126,13 +126,13 @@ func TestAuthZPluginTLS(t *testing.T) {
ctrl.resRes.Allow = true
client, err := newTLSAPIClient(testDaemonHTTPSAddr, cacertPath, clientCertPath, clientKeyPath)
- require.Nil(t, err)
+ assert.NilError(t, err)
_, err = client.ServerVersion(context.Background())
- require.Nil(t, err)
+ assert.NilError(t, err)
- require.Equal(t, "client", ctrl.reqUser)
- require.Equal(t, "client", ctrl.resUser)
+ assert.Equal(t, "client", ctrl.reqUser)
+ assert.Equal(t, "client", ctrl.resUser)
}
func newTLSAPIClient(host, cacertPath, certPath, keyPath string) (client.APIClient, error) {
@@ -153,16 +153,16 @@ func TestAuthZPluginDenyRequest(t *testing.T) {
ctrl.reqRes.Msg = unauthorizedMessage
client, err := d.NewClient()
- require.Nil(t, err)
+ assert.NilError(t, err)
// Ensure command is blocked
_, err = client.ServerVersion(context.Background())
- require.NotNil(t, err)
- require.Equal(t, 1, ctrl.versionReqCount)
- require.Equal(t, 0, ctrl.versionResCount)
+ assert.Assert(t, err != nil)
+ assert.Equal(t, 1, ctrl.versionReqCount)
+ assert.Equal(t, 0, ctrl.versionResCount)
// Ensure unauthorized message appears in response
- require.Equal(t, fmt.Sprintf("Error response from daemon: authorization denied by plugin %s: %s", testAuthZPlugin, unauthorizedMessage), err.Error())
+ assert.Equal(t, fmt.Sprintf("Error response from daemon: authorization denied by plugin %s: %s", testAuthZPlugin, unauthorizedMessage), err.Error())
}
// TestAuthZPluginAPIDenyResponse validates that when authorization
@@ -174,17 +174,17 @@ func TestAuthZPluginAPIDenyResponse(t *testing.T) {
ctrl.resRes.Msg = unauthorizedMessage
daemonURL, err := url.Parse(d.Sock())
- require.Nil(t, err)
+ assert.NilError(t, err)
conn, err := net.DialTimeout(daemonURL.Scheme, daemonURL.Path, time.Second*10)
- require.Nil(t, err)
+ assert.NilError(t, err)
client := httputil.NewClientConn(conn, nil)
req, err := http.NewRequest("GET", "/version", nil)
- require.Nil(t, err)
+ assert.NilError(t, err)
resp, err := client.Do(req)
- require.Nil(t, err)
- require.Equal(t, http.StatusForbidden, resp.StatusCode)
+ assert.NilError(t, err)
+ assert.DeepEqual(t, http.StatusForbidden, resp.StatusCode)
}
func TestAuthZPluginDenyResponse(t *testing.T) {
@@ -195,16 +195,16 @@ func TestAuthZPluginDenyResponse(t *testing.T) {
ctrl.resRes.Msg = unauthorizedMessage
client, err := d.NewClient()
- require.Nil(t, err)
+ assert.NilError(t, err)
// Ensure command is blocked
_, err = client.ServerVersion(context.Background())
- require.NotNil(t, err)
- require.Equal(t, 1, ctrl.versionReqCount)
- require.Equal(t, 1, ctrl.versionResCount)
+ assert.Assert(t, err != nil)
+ assert.Equal(t, 1, ctrl.versionReqCount)
+ assert.Equal(t, 1, ctrl.versionResCount)
// Ensure unauthorized message appears in response
- require.Equal(t, fmt.Sprintf("Error response from daemon: authorization denied by plugin %s: %s", testAuthZPlugin, unauthorizedMessage), err.Error())
+ assert.Equal(t, fmt.Sprintf("Error response from daemon: authorization denied by plugin %s: %s", testAuthZPlugin, unauthorizedMessage), err.Error())
}
// TestAuthZPluginAllowEventStream verifies event stream propagates
@@ -218,7 +218,7 @@ func TestAuthZPluginAllowEventStream(t *testing.T) {
d.StartWithBusybox(t, "--authorization-plugin="+testAuthZPlugin)
client, err := d.NewClient()
- require.Nil(t, err)
+ assert.NilError(t, err)
ctx := context.Background()
@@ -231,7 +231,7 @@ func TestAuthZPluginAllowEventStream(t *testing.T) {
for i := 0; i < 100; i++ {
c, err := client.ContainerInspect(ctx, cID)
- require.Nil(t, err)
+ assert.NilError(t, err)
if c.State.Running {
break
}
@@ -258,7 +258,7 @@ func TestAuthZPluginAllowEventStream(t *testing.T) {
if err == io.EOF {
t.Fatal("premature end of event stream")
}
- require.Nil(t, err)
+ assert.NilError(t, err)
case <-time.After(30 * time.Second):
// Fail the test
t.Fatal("event stream timeout")
@@ -279,10 +279,10 @@ func systemTime(t *testing.T, client client.APIClient, testEnv *environment.Exec
ctx := context.Background()
info, err := client.Info(ctx)
- require.Nil(t, err)
+ assert.NilError(t, err)
dt, err := time.Parse(time.RFC3339Nano, info.SystemTime)
- require.Nil(t, err, "invalid time format in GET /info response")
+ assert.NilError(t, err, "invalid time format in GET /info response")
return dt
}
@@ -303,12 +303,12 @@ func TestAuthZPluginErrorResponse(t *testing.T) {
ctrl.resRes.Err = errorMessage
client, err := d.NewClient()
- require.Nil(t, err)
+ assert.NilError(t, err)
// Ensure command is blocked
_, err = client.ServerVersion(context.Background())
- require.NotNil(t, err)
- require.Equal(t, fmt.Sprintf("Error response from daemon: plugin %s failed with error: %s: %s", testAuthZPlugin, authorization.AuthZApiResponse, errorMessage), err.Error())
+ assert.Assert(t, err != nil)
+ assert.Equal(t, fmt.Sprintf("Error response from daemon: plugin %s failed with error: %s: %s", testAuthZPlugin, authorization.AuthZApiResponse, errorMessage), err.Error())
}
func TestAuthZPluginErrorRequest(t *testing.T) {
@@ -317,12 +317,12 @@ func TestAuthZPluginErrorRequest(t *testing.T) {
ctrl.reqRes.Err = errorMessage
client, err := d.NewClient()
- require.Nil(t, err)
+ assert.NilError(t, err)
// Ensure command is blocked
_, err = client.ServerVersion(context.Background())
- require.NotNil(t, err)
- require.Equal(t, fmt.Sprintf("Error response from daemon: plugin %s failed with error: %s: %s", testAuthZPlugin, authorization.AuthZApiRequest, errorMessage), err.Error())
+ assert.Assert(t, err != nil)
+ assert.Equal(t, fmt.Sprintf("Error response from daemon: plugin %s failed with error: %s: %s", testAuthZPlugin, authorization.AuthZApiRequest, errorMessage), err.Error())
}
func TestAuthZPluginEnsureNoDuplicatePluginRegistration(t *testing.T) {
@@ -333,14 +333,14 @@ func TestAuthZPluginEnsureNoDuplicatePluginRegistration(t *testing.T) {
ctrl.resRes.Allow = true
client, err := d.NewClient()
- require.Nil(t, err)
+ assert.NilError(t, err)
_, err = client.ServerVersion(context.Background())
- require.Nil(t, err)
+ assert.NilError(t, err)
// assert plugin is only called once..
- require.Equal(t, 1, ctrl.versionReqCount)
- require.Equal(t, 1, ctrl.versionResCount)
+ assert.Equal(t, 1, ctrl.versionReqCount)
+ assert.Equal(t, 1, ctrl.versionResCount)
}
func TestAuthZPluginEnsureLoadImportWorking(t *testing.T) {
@@ -350,36 +350,36 @@ func TestAuthZPluginEnsureLoadImportWorking(t *testing.T) {
d.StartWithBusybox(t, "--authorization-plugin="+testAuthZPlugin, "--authorization-plugin="+testAuthZPlugin)
client, err := d.NewClient()
- require.Nil(t, err)
+ assert.NilError(t, err)
ctx := context.Background()
tmp, err := ioutil.TempDir("", "test-authz-load-import")
- require.Nil(t, err)
+ assert.NilError(t, err)
defer os.RemoveAll(tmp)
savedImagePath := filepath.Join(tmp, "save.tar")
err = imageSave(client, savedImagePath, "busybox")
- require.Nil(t, err)
+ assert.NilError(t, err)
err = imageLoad(client, savedImagePath)
- require.Nil(t, err)
+ assert.NilError(t, err)
exportedImagePath := filepath.Join(tmp, "export.tar")
cID := container.Run(t, ctx, client)
responseReader, err := client.ContainerExport(context.Background(), cID)
- require.Nil(t, err)
+ assert.NilError(t, err)
defer responseReader.Close()
file, err := os.Create(exportedImagePath)
- require.Nil(t, err)
+ assert.NilError(t, err)
defer file.Close()
_, err = io.Copy(file, responseReader)
- require.Nil(t, err)
+ assert.NilError(t, err)
err = imageImport(client, exportedImagePath)
- require.Nil(t, err)
+ assert.NilError(t, err)
}
func imageSave(client client.APIClient, path, image string) error {
@@ -442,16 +442,16 @@ func TestAuthZPluginHeader(t *testing.T) {
d.StartWithBusybox(t, "--debug", "--authorization-plugin="+testAuthZPlugin)
daemonURL, err := url.Parse(d.Sock())
- require.Nil(t, err)
+ assert.NilError(t, err)
conn, err := net.DialTimeout(daemonURL.Scheme, daemonURL.Path, time.Second*10)
- require.Nil(t, err)
+ assert.NilError(t, err)
client := httputil.NewClientConn(conn, nil)
req, err := http.NewRequest("GET", "/version", nil)
- require.Nil(t, err)
+ assert.NilError(t, err)
resp, err := client.Do(req)
- require.Nil(t, err)
- require.Equal(t, "application/json", resp.Header["Content-Type"][0])
+ assert.NilError(t, err)
+ assert.Equal(t, "application/json", resp.Header["Content-Type"][0])
}
// assertURIRecorded verifies that the given URI was sent and recorded
diff --git a/integration/plugin/authz/authz_plugin_v2_test.go b/integration/plugin/authz/authz_plugin_v2_test.go
index 5efa421e88..fa3d37dc8c 100644
--- a/integration/plugin/authz/authz_plugin_v2_test.go
+++ b/integration/plugin/authz/authz_plugin_v2_test.go
@@ -16,8 +16,8 @@ import (
"github.com/docker/docker/client"
"github.com/docker/docker/integration/internal/container"
"github.com/docker/docker/integration/internal/requirement"
+ "github.com/gotestyourself/gotestyourself/assert"
"github.com/gotestyourself/gotestyourself/skip"
- "github.com/stretchr/testify/require"
)
var (
@@ -44,13 +44,13 @@ func TestAuthZPluginV2AllowNonVolumeRequest(t *testing.T) {
defer setupTestV2(t)()
client, err := d.NewClient()
- require.Nil(t, err)
+ assert.NilError(t, err)
ctx := context.Background()
// Install authz plugin
err = pluginInstallGrantAllPermissions(client, authzPluginNameWithTag)
- require.Nil(t, err)
+ assert.NilError(t, err)
// start the daemon with the plugin and load busybox, --net=none build fails otherwise
// because it needs to pull busybox
d.Restart(t, "--authorization-plugin="+authzPluginNameWithTag)
@@ -60,7 +60,7 @@ func TestAuthZPluginV2AllowNonVolumeRequest(t *testing.T) {
cID := container.Run(t, ctx, client)
_, err = client.ContainerInspect(ctx, cID)
- require.Nil(t, err)
+ assert.NilError(t, err)
}
func TestAuthZPluginV2Disable(t *testing.T) {
@@ -68,26 +68,26 @@ func TestAuthZPluginV2Disable(t *testing.T) {
defer setupTestV2(t)()
client, err := d.NewClient()
- require.Nil(t, err)
+ assert.NilError(t, err)
// Install authz plugin
err = pluginInstallGrantAllPermissions(client, authzPluginNameWithTag)
- require.Nil(t, err)
+ assert.NilError(t, err)
d.Restart(t, "--authorization-plugin="+authzPluginNameWithTag)
d.LoadBusybox(t)
_, err = client.VolumeCreate(context.Background(), volumetypes.VolumesCreateBody{Driver: "local"})
- require.NotNil(t, err)
- require.True(t, strings.Contains(err.Error(), fmt.Sprintf("Error response from daemon: plugin %s failed with error:", authzPluginNameWithTag)))
+ assert.Assert(t, err != nil)
+ assert.Assert(t, strings.Contains(err.Error(), fmt.Sprintf("Error response from daemon: plugin %s failed with error:", authzPluginNameWithTag)))
// disable the plugin
err = client.PluginDisable(context.Background(), authzPluginNameWithTag, types.PluginDisableOptions{})
- require.Nil(t, err)
+ assert.NilError(t, err)
// now test to see if the docker api works.
_, err = client.VolumeCreate(context.Background(), volumetypes.VolumesCreateBody{Driver: "local"})
- require.Nil(t, err)
+ assert.NilError(t, err)
}
func TestAuthZPluginV2RejectVolumeRequests(t *testing.T) {
@@ -95,35 +95,35 @@ func TestAuthZPluginV2RejectVolumeRequests(t *testing.T) {
defer setupTestV2(t)()
client, err := d.NewClient()
- require.Nil(t, err)
+ assert.NilError(t, err)
// Install authz plugin
err = pluginInstallGrantAllPermissions(client, authzPluginNameWithTag)
- require.Nil(t, err)
+ assert.NilError(t, err)
// restart the daemon with the plugin
d.Restart(t, "--authorization-plugin="+authzPluginNameWithTag)
_, err = client.VolumeCreate(context.Background(), volumetypes.VolumesCreateBody{Driver: "local"})
- require.NotNil(t, err)
- require.True(t, strings.Contains(err.Error(), fmt.Sprintf("Error response from daemon: plugin %s failed with error:", authzPluginNameWithTag)))
+ assert.Assert(t, err != nil)
+ assert.Assert(t, strings.Contains(err.Error(), fmt.Sprintf("Error response from daemon: plugin %s failed with error:", authzPluginNameWithTag)))
_, err = client.VolumeList(context.Background(), filters.Args{})
- require.NotNil(t, err)
- require.True(t, strings.Contains(err.Error(), fmt.Sprintf("Error response from daemon: plugin %s failed with error:", authzPluginNameWithTag)))
+ assert.Assert(t, err != nil)
+ assert.Assert(t, strings.Contains(err.Error(), fmt.Sprintf("Error response from daemon: plugin %s failed with error:", authzPluginNameWithTag)))
// The plugin will block the command before it can determine the volume does not exist
err = client.VolumeRemove(context.Background(), "test", false)
- require.NotNil(t, err)
- require.True(t, strings.Contains(err.Error(), fmt.Sprintf("Error response from daemon: plugin %s failed with error:", authzPluginNameWithTag)))
+ assert.Assert(t, err != nil)
+ assert.Assert(t, strings.Contains(err.Error(), fmt.Sprintf("Error response from daemon: plugin %s failed with error:", authzPluginNameWithTag)))
_, err = client.VolumeInspect(context.Background(), "test")
- require.NotNil(t, err)
- require.True(t, strings.Contains(err.Error(), fmt.Sprintf("Error response from daemon: plugin %s failed with error:", authzPluginNameWithTag)))
+ assert.Assert(t, err != nil)
+ assert.Assert(t, strings.Contains(err.Error(), fmt.Sprintf("Error response from daemon: plugin %s failed with error:", authzPluginNameWithTag)))
_, err = client.VolumesPrune(context.Background(), filters.Args{})
- require.NotNil(t, err)
- require.True(t, strings.Contains(err.Error(), fmt.Sprintf("Error response from daemon: plugin %s failed with error:", authzPluginNameWithTag)))
+ assert.Assert(t, err != nil)
+ assert.Assert(t, strings.Contains(err.Error(), fmt.Sprintf("Error response from daemon: plugin %s failed with error:", authzPluginNameWithTag)))
}
func TestAuthZPluginV2BadManifestFailsDaemonStart(t *testing.T) {
@@ -131,15 +131,15 @@ func TestAuthZPluginV2BadManifestFailsDaemonStart(t *testing.T) {
defer setupTestV2(t)()
client, err := d.NewClient()
- require.Nil(t, err)
+ assert.NilError(t, err)
// Install authz plugin with bad manifest
err = pluginInstallGrantAllPermissions(client, authzPluginBadManifestName)
- require.Nil(t, err)
+ assert.NilError(t, err)
// start the daemon with the plugin, it will error
err = d.RestartWithError("--authorization-plugin=" + authzPluginBadManifestName)
- require.NotNil(t, err)
+ assert.Assert(t, err != nil)
// restarting the daemon without requiring the plugin will succeed
d.Start(t)
@@ -150,7 +150,7 @@ func TestAuthZPluginV2NonexistentFailsDaemonStart(t *testing.T) {
// start the daemon with a non-existent authz plugin, it will error
err := d.RestartWithError("--authorization-plugin=" + nonexistentAuthzPluginName)
- require.NotNil(t, err)
+ assert.Assert(t, err != nil)
// restarting the daemon without requiring the plugin will succeed
d.Start(t)
diff --git a/integration/plugin/logging/validation_test.go b/integration/plugin/logging/validation_test.go
index 6607321613..eb3fe7a029 100644
--- a/integration/plugin/logging/validation_test.go
+++ b/integration/plugin/logging/validation_test.go
@@ -6,7 +6,7 @@ import (
"github.com/docker/docker/api/types"
"github.com/docker/docker/integration-cli/daemon"
- "github.com/stretchr/testify/assert"
+ "github.com/gotestyourself/gotestyourself/assert"
)
// Regression test for #35553
@@ -20,12 +20,12 @@ func TestDaemonStartWithLogOpt(t *testing.T) {
defer d.Stop(t)
client, err := d.NewClient()
- assert.NoError(t, err)
+ assert.Check(t, err)
ctx := context.Background()
createPlugin(t, client, "test", "dummy", asLogDriver)
err = client.PluginEnable(ctx, "test", types.PluginEnableOptions{Timeout: 30})
- assert.NoError(t, err)
+ assert.Check(t, err)
defer client.PluginRemove(ctx, "test", types.PluginRemoveOptions{Force: true})
d.Stop(t)
diff --git a/integration/secret/secret_test.go b/integration/secret/secret_test.go
index 27c8fd3d0e..4a1e1b3dc7 100644
--- a/integration/secret/secret_test.go
+++ b/integration/secret/secret_test.go
@@ -13,9 +13,9 @@ import (
"github.com/docker/docker/integration/internal/swarm"
"github.com/docker/docker/internal/testutil"
"github.com/docker/docker/pkg/stdcopy"
+ "github.com/gotestyourself/gotestyourself/assert"
+ is "github.com/gotestyourself/gotestyourself/assert/cmp"
"github.com/gotestyourself/gotestyourself/skip"
- "github.com/stretchr/testify/assert"
- "github.com/stretchr/testify/require"
"golang.org/x/net/context"
)
@@ -26,7 +26,7 @@ func TestSecretInspect(t *testing.T) {
d := swarm.NewSwarm(t, testEnv)
defer d.Stop(t)
client, err := client.NewClientWithOpts(client.WithHost((d.Sock())))
- require.NoError(t, err)
+ assert.NilError(t, err)
ctx := context.Background()
@@ -34,12 +34,12 @@ func TestSecretInspect(t *testing.T) {
secretID := createSecret(ctx, t, client, testName, []byte("TESTINGDATA"), nil)
secret, _, err := client.SecretInspectWithRaw(context.Background(), secretID)
- require.NoError(t, err)
- assert.Equal(t, secret.Spec.Name, testName)
+ assert.NilError(t, err)
+ assert.Check(t, is.Equal(secret.Spec.Name, testName))
secret, _, err = client.SecretInspectWithRaw(context.Background(), testName)
- require.NoError(t, err)
- assert.Equal(t, secretID, secretID)
+ assert.NilError(t, err)
+ assert.Check(t, is.Equal(secretID, secretID))
}
func TestSecretList(t *testing.T) {
@@ -49,7 +49,7 @@ func TestSecretList(t *testing.T) {
d := swarm.NewSwarm(t, testEnv)
defer d.Stop(t)
client, err := client.NewClientWithOpts(client.WithHost((d.Sock())))
- require.NoError(t, err)
+ assert.NilError(t, err)
ctx := context.Background()
@@ -75,8 +75,8 @@ func TestSecretList(t *testing.T) {
// test by `secret ls`
entries, err := client.SecretList(ctx, types.SecretListOptions{})
- require.NoError(t, err)
- assert.Equal(t, names(entries), testNames)
+ assert.NilError(t, err)
+ assert.Check(t, is.DeepEqual(names(entries), testNames))
testCases := []struct {
filters filters.Args
@@ -110,8 +110,8 @@ func TestSecretList(t *testing.T) {
entries, err = client.SecretList(ctx, types.SecretListOptions{
Filters: tc.filters,
})
- require.NoError(t, err)
- assert.Equal(t, names(entries), tc.expected)
+ assert.NilError(t, err)
+ assert.Check(t, is.DeepEqual(names(entries), tc.expected))
}
}
@@ -124,8 +124,8 @@ func createSecret(ctx context.Context, t *testing.T, client client.APIClient, na
},
Data: data,
})
- require.NoError(t, err)
- assert.NotEqual(t, secret.ID, "")
+ assert.NilError(t, err)
+ assert.Check(t, secret.ID != "")
return secret.ID
}
@@ -136,7 +136,7 @@ func TestSecretsCreateAndDelete(t *testing.T) {
d := swarm.NewSwarm(t, testEnv)
defer d.Stop(t)
client, err := client.NewClientWithOpts(client.WithHost((d.Sock())))
- require.NoError(t, err)
+ assert.NilError(t, err)
ctx := context.Background()
@@ -154,7 +154,7 @@ func TestSecretsCreateAndDelete(t *testing.T) {
// Ported from original TestSecretsDelete
err = client.SecretRemove(ctx, secretID)
- require.NoError(t, err)
+ assert.NilError(t, err)
_, _, err = client.SecretInspectWithRaw(ctx, secretID)
testutil.ErrorContains(t, err, "No such secret")
@@ -170,11 +170,11 @@ func TestSecretsCreateAndDelete(t *testing.T) {
})
insp, _, err := client.SecretInspectWithRaw(ctx, secretID)
- require.NoError(t, err)
- assert.Equal(t, insp.Spec.Name, testName)
- assert.Equal(t, len(insp.Spec.Labels), 2)
- assert.Equal(t, insp.Spec.Labels["key1"], "value1")
- assert.Equal(t, insp.Spec.Labels["key2"], "value2")
+ assert.NilError(t, err)
+ assert.Check(t, is.Equal(insp.Spec.Name, testName))
+ assert.Check(t, is.Equal(len(insp.Spec.Labels), 2))
+ assert.Check(t, is.Equal(insp.Spec.Labels["key1"], "value1"))
+ assert.Check(t, is.Equal(insp.Spec.Labels["key2"], "value2"))
}
func TestSecretsUpdate(t *testing.T) {
@@ -184,44 +184,44 @@ func TestSecretsUpdate(t *testing.T) {
d := swarm.NewSwarm(t, testEnv)
defer d.Stop(t)
client, err := client.NewClientWithOpts(client.WithHost((d.Sock())))
- require.NoError(t, err)
+ assert.NilError(t, err)
ctx := context.Background()
testName := "test_secret"
secretID := createSecret(ctx, t, client, testName, []byte("TESTINGDATA"), nil)
- require.NoError(t, err)
+ assert.NilError(t, err)
insp, _, err := client.SecretInspectWithRaw(ctx, secretID)
- require.NoError(t, err)
- assert.Equal(t, insp.ID, secretID)
+ assert.NilError(t, err)
+ assert.Check(t, is.Equal(insp.ID, secretID))
// test UpdateSecret with full ID
insp.Spec.Labels = map[string]string{"test": "test1"}
err = client.SecretUpdate(ctx, secretID, insp.Version, insp.Spec)
- require.NoError(t, err)
+ assert.NilError(t, err)
insp, _, err = client.SecretInspectWithRaw(ctx, secretID)
- require.NoError(t, err)
- assert.Equal(t, insp.Spec.Labels["test"], "test1")
+ assert.NilError(t, err)
+ assert.Check(t, is.Equal(insp.Spec.Labels["test"], "test1"))
// test UpdateSecret with full name
insp.Spec.Labels = map[string]string{"test": "test2"}
err = client.SecretUpdate(ctx, testName, insp.Version, insp.Spec)
- require.NoError(t, err)
+ assert.NilError(t, err)
insp, _, err = client.SecretInspectWithRaw(ctx, secretID)
- require.NoError(t, err)
- assert.Equal(t, insp.Spec.Labels["test"], "test2")
+ assert.NilError(t, err)
+ assert.Check(t, is.Equal(insp.Spec.Labels["test"], "test2"))
// test UpdateSecret with prefix ID
insp.Spec.Labels = map[string]string{"test": "test3"}
err = client.SecretUpdate(ctx, secretID[:1], insp.Version, insp.Spec)
- require.NoError(t, err)
+ assert.NilError(t, err)
insp, _, err = client.SecretInspectWithRaw(ctx, secretID)
- require.NoError(t, err)
- assert.Equal(t, insp.Spec.Labels["test"], "test3")
+ assert.NilError(t, err)
+ assert.Check(t, is.Equal(insp.Spec.Labels["test"], "test3"))
// test UpdateSecret in updating Data which is not supported in daemon
// this test will produce an error in func UpdateSecret
@@ -244,7 +244,7 @@ func TestTemplatedSecret(t *testing.T) {
Data: []byte("this is a secret"),
}
referencedSecret, err := client.SecretCreate(ctx, referencedSecretSpec)
- assert.NoError(t, err)
+ assert.Check(t, err)
referencedConfigSpec := swarmtypes.ConfigSpec{
Annotations: swarmtypes.Annotations{
@@ -253,7 +253,7 @@ func TestTemplatedSecret(t *testing.T) {
Data: []byte("this is a config"),
}
referencedConfig, err := client.ConfigCreate(ctx, referencedConfigSpec)
- assert.NoError(t, err)
+ assert.Check(t, err)
secretSpec := swarmtypes.SecretSpec{
Annotations: swarmtypes.Annotations{
@@ -268,7 +268,7 @@ func TestTemplatedSecret(t *testing.T) {
}
templatedSecret, err := client.SecretCreate(ctx, secretSpec)
- assert.NoError(t, err)
+ assert.Check(t, err)
serviceID := swarm.CreateService(t, d,
swarm.ServiceWithSecret(
@@ -346,8 +346,8 @@ func TestTemplatedSecret(t *testing.T) {
func assertAttachedStream(t *testing.T, attach types.HijackedResponse, expect string) {
buf := bytes.NewBuffer(nil)
_, err := stdcopy.StdCopy(buf, buf, attach.Reader)
- require.NoError(t, err)
- assert.Contains(t, buf.String(), expect)
+ assert.NilError(t, err)
+ assert.Check(t, is.Contains(buf.String(), expect))
}
func waitAndAssert(t *testing.T, timeout time.Duration, f func(*testing.T) bool) {
diff --git a/integration/service/create_test.go b/integration/service/create_test.go
index eb66cfc2f1..7170bda492 100644
--- a/integration/service/create_test.go
+++ b/integration/service/create_test.go
@@ -11,9 +11,9 @@ import (
swarmtypes "github.com/docker/docker/api/types/swarm"
"github.com/docker/docker/client"
"github.com/docker/docker/integration/internal/swarm"
+ "github.com/gotestyourself/gotestyourself/assert"
+ is "github.com/gotestyourself/gotestyourself/assert/cmp"
"github.com/gotestyourself/gotestyourself/poll"
- "github.com/stretchr/testify/assert"
- "github.com/stretchr/testify/require"
"golang.org/x/net/context"
)
@@ -22,7 +22,7 @@ func TestCreateServiceMultipleTimes(t *testing.T) {
d := swarm.NewSwarm(t, testEnv)
defer d.Stop(t)
client, err := client.NewClientWithOpts(client.WithHost((d.Sock())))
- require.NoError(t, err)
+ assert.NilError(t, err)
overlayName := "overlay1"
networkCreate := types.NetworkCreate{
@@ -31,7 +31,7 @@ func TestCreateServiceMultipleTimes(t *testing.T) {
}
netResp, err := client.NetworkCreate(context.Background(), overlayName, networkCreate)
- require.NoError(t, err)
+ assert.NilError(t, err)
overlayID := netResp.ID
var instances uint64 = 4
@@ -41,7 +41,7 @@ func TestCreateServiceMultipleTimes(t *testing.T) {
serviceResp, err := client.ServiceCreate(context.Background(), serviceSpec, types.ServiceCreateOptions{
QueryRegistry: false,
})
- require.NoError(t, err)
+ assert.NilError(t, err)
pollSettings := func(config *poll.Settings) {
// It takes about ~25s to finish the multi services creation in this case per the pratical observation on arm64/arm platform
@@ -55,10 +55,10 @@ func TestCreateServiceMultipleTimes(t *testing.T) {
poll.WaitOn(t, serviceRunningTasksCount(client, serviceID, instances), pollSettings)
_, _, err = client.ServiceInspectWithRaw(context.Background(), serviceID, types.ServiceInspectOptions{})
- require.NoError(t, err)
+ assert.NilError(t, err)
err = client.ServiceRemove(context.Background(), serviceID)
- require.NoError(t, err)
+ assert.NilError(t, err)
poll.WaitOn(t, serviceIsRemoved(client, serviceID), pollSettings)
poll.WaitOn(t, noTasks(client), pollSettings)
@@ -66,19 +66,19 @@ func TestCreateServiceMultipleTimes(t *testing.T) {
serviceResp, err = client.ServiceCreate(context.Background(), serviceSpec, types.ServiceCreateOptions{
QueryRegistry: false,
})
- require.NoError(t, err)
+ assert.NilError(t, err)
serviceID2 := serviceResp.ID
poll.WaitOn(t, serviceRunningTasksCount(client, serviceID2, instances), pollSettings)
err = client.ServiceRemove(context.Background(), serviceID2)
- require.NoError(t, err)
+ assert.NilError(t, err)
poll.WaitOn(t, serviceIsRemoved(client, serviceID2), pollSettings)
poll.WaitOn(t, noTasks(client), pollSettings)
err = client.NetworkRemove(context.Background(), overlayID)
- require.NoError(t, err)
+ assert.NilError(t, err)
poll.WaitOn(t, networkIsRemoved(client, overlayID), poll.WithTimeout(1*time.Minute), poll.WithDelay(10*time.Second))
}
@@ -88,7 +88,7 @@ func TestCreateWithDuplicateNetworkNames(t *testing.T) {
d := swarm.NewSwarm(t, testEnv)
defer d.Stop(t)
client, err := client.NewClientWithOpts(client.WithHost((d.Sock())))
- require.NoError(t, err)
+ assert.NilError(t, err)
name := "foo"
networkCreate := types.NetworkCreate{
@@ -97,15 +97,15 @@ func TestCreateWithDuplicateNetworkNames(t *testing.T) {
}
n1, err := client.NetworkCreate(context.Background(), name, networkCreate)
- require.NoError(t, err)
+ assert.NilError(t, err)
n2, err := client.NetworkCreate(context.Background(), name, networkCreate)
- require.NoError(t, err)
+ assert.NilError(t, err)
// Dupliates with name but with different driver
networkCreate.Driver = "overlay"
n3, err := client.NetworkCreate(context.Background(), name, networkCreate)
- require.NoError(t, err)
+ assert.NilError(t, err)
// Create Service with the same name
var instances uint64 = 1
@@ -114,30 +114,30 @@ func TestCreateWithDuplicateNetworkNames(t *testing.T) {
serviceSpec.TaskTemplate.Networks = append(serviceSpec.TaskTemplate.Networks, swarmtypes.NetworkAttachmentConfig{Target: name})
service, err := client.ServiceCreate(context.Background(), serviceSpec, types.ServiceCreateOptions{})
- require.NoError(t, err)
+ assert.NilError(t, err)
poll.WaitOn(t, serviceRunningTasksCount(client, service.ID, instances))
resp, _, err := client.ServiceInspectWithRaw(context.Background(), service.ID, types.ServiceInspectOptions{})
- require.NoError(t, err)
- assert.Equal(t, n3.ID, resp.Spec.TaskTemplate.Networks[0].Target)
+ assert.NilError(t, err)
+ assert.Check(t, is.Equal(n3.ID, resp.Spec.TaskTemplate.Networks[0].Target))
// Remove Service
err = client.ServiceRemove(context.Background(), service.ID)
- require.NoError(t, err)
+ assert.NilError(t, err)
// Make sure task has been destroyed.
poll.WaitOn(t, serviceIsRemoved(client, service.ID))
// Remove networks
err = client.NetworkRemove(context.Background(), n3.ID)
- require.NoError(t, err)
+ assert.NilError(t, err)
err = client.NetworkRemove(context.Background(), n2.ID)
- require.NoError(t, err)
+ assert.NilError(t, err)
err = client.NetworkRemove(context.Background(), n1.ID)
- require.NoError(t, err)
+ assert.NilError(t, err)
// Make sure networks have been destroyed.
poll.WaitOn(t, networkIsRemoved(client, n3.ID), poll.WithTimeout(1*time.Minute), poll.WithDelay(10*time.Second))
@@ -150,7 +150,7 @@ func TestCreateServiceSecretFileMode(t *testing.T) {
d := swarm.NewSwarm(t, testEnv)
defer d.Stop(t)
client, err := client.NewClientWithOpts(client.WithHost((d.Sock())))
- require.NoError(t, err)
+ assert.NilError(t, err)
ctx := context.Background()
secretResp, err := client.SecretCreate(ctx, swarmtypes.SecretSpec{
@@ -159,7 +159,7 @@ func TestCreateServiceSecretFileMode(t *testing.T) {
},
Data: []byte("TESTSECRET"),
})
- require.NoError(t, err)
+ assert.NilError(t, err)
var instances uint64 = 1
serviceSpec := swarmtypes.ServiceSpec{
@@ -194,7 +194,7 @@ func TestCreateServiceSecretFileMode(t *testing.T) {
serviceResp, err := client.ServiceCreate(ctx, serviceSpec, types.ServiceCreateOptions{
QueryRegistry: false,
})
- require.NoError(t, err)
+ assert.NilError(t, err)
poll.WaitOn(t, serviceRunningTasksCount(client, serviceResp.ID, instances))
@@ -203,27 +203,27 @@ func TestCreateServiceSecretFileMode(t *testing.T) {
tasks, err := client.TaskList(ctx, types.TaskListOptions{
Filters: filter,
})
- require.NoError(t, err)
- assert.Equal(t, len(tasks), 1)
+ assert.NilError(t, err)
+ assert.Check(t, is.Equal(len(tasks), 1))
body, err := client.ContainerLogs(ctx, tasks[0].Status.ContainerStatus.ContainerID, types.ContainerLogsOptions{
ShowStdout: true,
})
- require.NoError(t, err)
+ assert.NilError(t, err)
defer body.Close()
content, err := ioutil.ReadAll(body)
- require.NoError(t, err)
- assert.Contains(t, string(content), "-rwxrwxrwx")
+ assert.NilError(t, err)
+ assert.Check(t, is.Contains(string(content), "-rwxrwxrwx"))
err = client.ServiceRemove(ctx, serviceResp.ID)
- require.NoError(t, err)
+ assert.NilError(t, err)
poll.WaitOn(t, serviceIsRemoved(client, serviceResp.ID))
poll.WaitOn(t, noTasks(client))
err = client.SecretRemove(ctx, "TestSecret")
- require.NoError(t, err)
+ assert.NilError(t, err)
}
func TestCreateServiceConfigFileMode(t *testing.T) {
@@ -231,7 +231,7 @@ func TestCreateServiceConfigFileMode(t *testing.T) {
d := swarm.NewSwarm(t, testEnv)
defer d.Stop(t)
client, err := client.NewClientWithOpts(client.WithHost((d.Sock())))
- require.NoError(t, err)
+ assert.NilError(t, err)
ctx := context.Background()
configResp, err := client.ConfigCreate(ctx, swarmtypes.ConfigSpec{
@@ -240,7 +240,7 @@ func TestCreateServiceConfigFileMode(t *testing.T) {
},
Data: []byte("TESTCONFIG"),
})
- require.NoError(t, err)
+ assert.NilError(t, err)
var instances uint64 = 1
serviceSpec := swarmtypes.ServiceSpec{
@@ -275,7 +275,7 @@ func TestCreateServiceConfigFileMode(t *testing.T) {
serviceResp, err := client.ServiceCreate(ctx, serviceSpec, types.ServiceCreateOptions{
QueryRegistry: false,
})
- require.NoError(t, err)
+ assert.NilError(t, err)
poll.WaitOn(t, serviceRunningTasksCount(client, serviceResp.ID, instances))
@@ -284,27 +284,27 @@ func TestCreateServiceConfigFileMode(t *testing.T) {
tasks, err := client.TaskList(ctx, types.TaskListOptions{
Filters: filter,
})
- require.NoError(t, err)
- assert.Equal(t, len(tasks), 1)
+ assert.NilError(t, err)
+ assert.Check(t, is.Equal(len(tasks), 1))
body, err := client.ContainerLogs(ctx, tasks[0].Status.ContainerStatus.ContainerID, types.ContainerLogsOptions{
ShowStdout: true,
})
- require.NoError(t, err)
+ assert.NilError(t, err)
defer body.Close()
content, err := ioutil.ReadAll(body)
- require.NoError(t, err)
- assert.Contains(t, string(content), "-rwxrwxrwx")
+ assert.NilError(t, err)
+ assert.Check(t, is.Contains(string(content), "-rwxrwxrwx"))
err = client.ServiceRemove(ctx, serviceResp.ID)
- require.NoError(t, err)
+ assert.NilError(t, err)
poll.WaitOn(t, serviceIsRemoved(client, serviceResp.ID))
poll.WaitOn(t, noTasks(client))
err = client.ConfigRemove(ctx, "TestConfig")
- require.NoError(t, err)
+ assert.NilError(t, err)
}
func swarmServiceSpec(name string, replicas uint64) swarmtypes.ServiceSpec {
diff --git a/integration/service/inspect_test.go b/integration/service/inspect_test.go
index 8cd24bc31b..3a5b99d3ac 100644
--- a/integration/service/inspect_test.go
+++ b/integration/service/inspect_test.go
@@ -10,10 +10,10 @@ import (
swarmtypes "github.com/docker/docker/api/types/swarm"
"github.com/docker/docker/client"
"github.com/docker/docker/integration/internal/swarm"
+ "github.com/gotestyourself/gotestyourself/assert"
+ is "github.com/gotestyourself/gotestyourself/assert/cmp"
"github.com/gotestyourself/gotestyourself/poll"
"github.com/gotestyourself/gotestyourself/skip"
- "github.com/stretchr/testify/assert"
- "github.com/stretchr/testify/require"
"golang.org/x/net/context"
)
@@ -23,7 +23,7 @@ func TestInspect(t *testing.T) {
d := swarm.NewSwarm(t, testEnv)
defer d.Stop(t)
client, err := client.NewClientWithOpts(client.WithHost((d.Sock())))
- require.NoError(t, err)
+ assert.NilError(t, err)
var before = time.Now()
var instances uint64 = 2
@@ -33,16 +33,16 @@ func TestInspect(t *testing.T) {
resp, err := client.ServiceCreate(ctx, serviceSpec, types.ServiceCreateOptions{
QueryRegistry: false,
})
- require.NoError(t, err)
+ assert.NilError(t, err)
id := resp.ID
poll.WaitOn(t, serviceContainerCount(client, id, instances))
service, _, err := client.ServiceInspectWithRaw(ctx, id, types.ServiceInspectOptions{})
- require.NoError(t, err)
- assert.Equal(t, serviceSpec, service.Spec)
- assert.Equal(t, uint64(11), service.Meta.Version.Index)
- assert.Equal(t, id, service.ID)
+ assert.NilError(t, err)
+ assert.Check(t, is.DeepEqual(serviceSpec, service.Spec))
+ assert.Check(t, is.Equal(uint64(11), service.Meta.Version.Index))
+ assert.Check(t, is.Equal(id, service.ID))
assert.WithinDuration(t, before, service.CreatedAt, 30*time.Second)
assert.WithinDuration(t, before, service.UpdatedAt, 30*time.Second)
}
diff --git a/integration/service/network_test.go b/integration/service/network_test.go
index 09b0a1f12b..6b8c891cd8 100644
--- a/integration/service/network_test.go
+++ b/integration/service/network_test.go
@@ -9,8 +9,8 @@ import (
"github.com/docker/docker/client"
"github.com/docker/docker/integration/internal/container"
"github.com/docker/docker/integration/internal/swarm"
- "github.com/stretchr/testify/assert"
- "github.com/stretchr/testify/require"
+ "github.com/gotestyourself/gotestyourself/assert"
+ is "github.com/gotestyourself/gotestyourself/assert/cmp"
)
func TestDockerNetworkConnectAlias(t *testing.T) {
@@ -18,7 +18,7 @@ func TestDockerNetworkConnectAlias(t *testing.T) {
d := swarm.NewSwarm(t, testEnv)
defer d.Stop(t)
client, err := client.NewClientWithOpts(client.WithHost((d.Sock())))
- require.NoError(t, err)
+ assert.NilError(t, err)
ctx := context.Background()
name := "test-alias"
@@ -26,7 +26,7 @@ func TestDockerNetworkConnectAlias(t *testing.T) {
Driver: "overlay",
Attachable: true,
})
- require.NoError(t, err)
+ assert.NilError(t, err)
container.Create(t, ctx, client, container.WithName("ng1"), func(c *container.TestContainerConfig) {
c.NetworkingConfig = &network.NetworkingConfig{
@@ -41,15 +41,15 @@ func TestDockerNetworkConnectAlias(t *testing.T) {
"aaa",
},
})
- require.NoError(t, err)
+ assert.NilError(t, err)
err = client.ContainerStart(ctx, "ng1", types.ContainerStartOptions{})
- require.NoError(t, err)
+ assert.NilError(t, err)
ng1, err := client.ContainerInspect(ctx, "ng1")
- require.NoError(t, err)
- assert.Equal(t, len(ng1.NetworkSettings.Networks[name].Aliases), 2)
- assert.Equal(t, ng1.NetworkSettings.Networks[name].Aliases[0], "aaa")
+ assert.NilError(t, err)
+ assert.Check(t, is.Equal(len(ng1.NetworkSettings.Networks[name].Aliases), 2))
+ assert.Check(t, is.Equal(ng1.NetworkSettings.Networks[name].Aliases[0], "aaa"))
container.Create(t, ctx, client, container.WithName("ng2"), func(c *container.TestContainerConfig) {
c.NetworkingConfig = &network.NetworkingConfig{
@@ -64,13 +64,13 @@ func TestDockerNetworkConnectAlias(t *testing.T) {
"bbb",
},
})
- require.NoError(t, err)
+ assert.NilError(t, err)
err = client.ContainerStart(ctx, "ng2", types.ContainerStartOptions{})
- require.NoError(t, err)
+ assert.NilError(t, err)
ng2, err := client.ContainerInspect(ctx, "ng2")
- require.NoError(t, err)
- assert.Equal(t, len(ng2.NetworkSettings.Networks[name].Aliases), 2)
- assert.Equal(t, ng2.NetworkSettings.Networks[name].Aliases[0], "bbb")
+ assert.NilError(t, err)
+ assert.Check(t, is.Equal(len(ng2.NetworkSettings.Networks[name].Aliases), 2))
+ assert.Check(t, is.Equal(ng2.NetworkSettings.Networks[name].Aliases[0], "bbb"))
}
diff --git a/integration/session/session_test.go b/integration/session/session_test.go
index 310f544554..de9319436e 100644
--- a/integration/session/session_test.go
+++ b/integration/session/session_test.go
@@ -5,9 +5,9 @@ import (
"testing"
req "github.com/docker/docker/integration-cli/request"
+ "github.com/gotestyourself/gotestyourself/assert"
+ is "github.com/gotestyourself/gotestyourself/assert/cmp"
"github.com/gotestyourself/gotestyourself/skip"
- "github.com/stretchr/testify/assert"
- "github.com/stretchr/testify/require"
)
func TestSessionCreate(t *testing.T) {
@@ -20,29 +20,29 @@ func TestSessionCreate(t *testing.T) {
r.Header.Set("Upgrade", "h2c")
return nil
})
- require.NoError(t, err)
- require.NoError(t, body.Close())
- assert.Equal(t, res.StatusCode, http.StatusSwitchingProtocols)
- assert.Equal(t, res.Header.Get("Upgrade"), "h2c")
+ assert.NilError(t, err)
+ assert.NilError(t, body.Close())
+ assert.Check(t, is.DeepEqual(res.StatusCode, http.StatusSwitchingProtocols))
+ assert.Check(t, is.Equal(res.Header.Get("Upgrade"), "h2c"))
}
func TestSessionCreateWithBadUpgrade(t *testing.T) {
skip.If(t, !testEnv.DaemonInfo.ExperimentalBuild)
res, body, err := req.Post("/session")
- require.NoError(t, err)
- assert.Equal(t, res.StatusCode, http.StatusBadRequest)
+ assert.NilError(t, err)
+ assert.Check(t, is.DeepEqual(res.StatusCode, http.StatusBadRequest))
buf, err := req.ReadBody(body)
- require.NoError(t, err)
- assert.Contains(t, string(buf), "no upgrade")
+ assert.NilError(t, err)
+ assert.Check(t, is.Contains(string(buf), "no upgrade"))
res, body, err = req.Post("/session", func(r *http.Request) error {
r.Header.Set("Upgrade", "foo")
return nil
})
- require.NoError(t, err)
- assert.Equal(t, res.StatusCode, http.StatusBadRequest)
+ assert.NilError(t, err)
+ assert.Check(t, is.DeepEqual(res.StatusCode, http.StatusBadRequest))
buf, err = req.ReadBody(body)
- require.NoError(t, err)
- assert.Contains(t, string(buf), "not supported")
+ assert.NilError(t, err)
+ assert.Check(t, is.Contains(string(buf), "not supported"))
}
diff --git a/integration/system/event_test.go b/integration/system/event_test.go
index 688d7c27de..b270ffcb91 100644
--- a/integration/system/event_test.go
+++ b/integration/system/event_test.go
@@ -17,8 +17,8 @@ import (
"github.com/docker/docker/integration/internal/container"
"github.com/docker/docker/integration/internal/request"
"github.com/docker/docker/pkg/jsonmessage"
- "github.com/stretchr/testify/assert"
- "github.com/stretchr/testify/require"
+ "github.com/gotestyourself/gotestyourself/assert"
+ is "github.com/gotestyourself/gotestyourself/assert/cmp"
)
func TestEvents(t *testing.T) {
@@ -33,7 +33,7 @@ func TestEvents(t *testing.T) {
Cmd: strslice.StrSlice([]string{"echo", "hello"}),
},
)
- require.NoError(t, err)
+ assert.NilError(t, err)
filters := filters.NewArgs(
filters.Arg("container", cID),
@@ -49,15 +49,15 @@ func TestEvents(t *testing.T) {
Tty: false,
},
)
- require.NoError(t, err)
+ assert.NilError(t, err)
select {
case m := <-msg:
- require.Equal(t, m.Type, "container")
- require.Equal(t, m.Actor.ID, cID)
- require.Equal(t, m.Action, "exec_die")
- require.Equal(t, m.Actor.Attributes["execID"], id.ID)
- require.Equal(t, m.Actor.Attributes["exitCode"], "0")
+ assert.Equal(t, m.Type, "container")
+ assert.Equal(t, m.Actor.ID, cID)
+ assert.Equal(t, m.Action, "exec_die")
+ assert.Equal(t, m.Actor.Attributes["execID"], id.ID)
+ assert.Equal(t, m.Actor.Attributes["exitCode"], "0")
case err = <-errors:
t.Fatal(err)
case <-time.After(time.Second * 3):
@@ -84,16 +84,16 @@ func TestEventsBackwardsCompatible(t *testing.T) {
// The test here makes sure the response time is less than 3 sec.
expectedTime := time.Now().Add(3 * time.Second)
emptyResp, emptyBody, err := req.Get("/events")
- require.NoError(t, err)
+ assert.NilError(t, err)
defer emptyBody.Close()
- assert.Equal(t, http.StatusOK, emptyResp.StatusCode)
- assert.True(t, time.Now().Before(expectedTime), "timeout waiting for events api to respond, should have responded immediately")
+ assert.Check(t, is.DeepEqual(http.StatusOK, emptyResp.StatusCode))
+ assert.Check(t, time.Now().Before(expectedTime), "timeout waiting for events api to respond, should have responded immediately")
// We also test to make sure the `events.Message` is compatible with `JSONMessage`
q := url.Values{}
q.Set("since", ts)
_, body, err := req.Get("/events?" + q.Encode())
- require.NoError(t, err)
+ assert.NilError(t, err)
defer body.Close()
dec := json.NewDecoder(body)
@@ -112,8 +112,8 @@ func TestEventsBackwardsCompatible(t *testing.T) {
}
}
- assert.NotNil(t, containerCreateEvent)
- assert.Equal(t, "create", containerCreateEvent.Status)
- assert.Equal(t, cID, containerCreateEvent.ID)
- assert.Equal(t, "busybox", containerCreateEvent.From)
+ assert.Check(t, containerCreateEvent != nil)
+ assert.Check(t, is.Equal("create", containerCreateEvent.Status))
+ assert.Check(t, is.Equal(cID, containerCreateEvent.ID))
+ assert.Check(t, is.Equal("busybox", containerCreateEvent.From))
}
diff --git a/integration/system/info_linux_test.go b/integration/system/info_linux_test.go
index 8f0271e7a6..ad8dc2f9e2 100644
--- a/integration/system/info_linux_test.go
+++ b/integration/system/info_linux_test.go
@@ -8,8 +8,8 @@ import (
req "github.com/docker/docker/integration-cli/request"
"github.com/docker/docker/integration/internal/request"
- "github.com/stretchr/testify/assert"
- "github.com/stretchr/testify/require"
+ "github.com/gotestyourself/gotestyourself/assert"
+ is "github.com/gotestyourself/gotestyourself/assert/cmp"
"golang.org/x/net/context"
)
@@ -17,35 +17,35 @@ func TestInfoBinaryCommits(t *testing.T) {
client := request.NewAPIClient(t)
info, err := client.Info(context.Background())
- require.NoError(t, err)
-
- assert.NotNil(t, info.ContainerdCommit)
- assert.NotEqual(t, "N/A", info.ContainerdCommit.ID)
- assert.Equal(t, testEnv.DaemonInfo.ContainerdCommit.Expected, info.ContainerdCommit.Expected)
- assert.Equal(t, info.ContainerdCommit.Expected, info.ContainerdCommit.ID)
-
- assert.NotNil(t, info.InitCommit)
- assert.NotEqual(t, "N/A", info.InitCommit.ID)
- assert.Equal(t, testEnv.DaemonInfo.InitCommit.Expected, info.InitCommit.Expected)
- assert.Equal(t, info.InitCommit.Expected, info.InitCommit.ID)
-
- assert.NotNil(t, info.RuncCommit)
- assert.NotEqual(t, "N/A", info.RuncCommit.ID)
- assert.Equal(t, testEnv.DaemonInfo.RuncCommit.Expected, info.RuncCommit.Expected)
- assert.Equal(t, info.RuncCommit.Expected, info.RuncCommit.ID)
+ assert.NilError(t, err)
+
+ assert.Check(t, info.ContainerdCommit != nil)
+ assert.Check(t, "N/A" != info.ContainerdCommit.ID)
+ assert.Check(t, is.Equal(testEnv.DaemonInfo.ContainerdCommit.Expected, info.ContainerdCommit.Expected))
+ assert.Check(t, is.Equal(info.ContainerdCommit.Expected, info.ContainerdCommit.ID))
+
+ assert.Check(t, info.InitCommit != nil)
+ assert.Check(t, "N/A" != info.InitCommit.ID)
+ assert.Check(t, is.Equal(testEnv.DaemonInfo.InitCommit.Expected, info.InitCommit.Expected))
+ assert.Check(t, is.Equal(info.InitCommit.Expected, info.InitCommit.ID))
+
+ assert.Check(t, info.RuncCommit != nil)
+ assert.Check(t, "N/A" != info.RuncCommit.ID)
+ assert.Check(t, is.Equal(testEnv.DaemonInfo.RuncCommit.Expected, info.RuncCommit.Expected))
+ assert.Check(t, is.Equal(info.RuncCommit.Expected, info.RuncCommit.ID))
}
func TestInfoAPIVersioned(t *testing.T) {
// Windows only supports 1.25 or later
res, body, err := req.Get("/v1.20/info")
- require.NoError(t, err)
- assert.Equal(t, res.StatusCode, http.StatusOK)
+ assert.NilError(t, err)
+ assert.Check(t, is.DeepEqual(res.StatusCode, http.StatusOK))
b, err := req.ReadBody(body)
- require.NoError(t, err)
+ assert.NilError(t, err)
out := string(b)
- assert.Contains(t, out, "ExecutionDriver")
- assert.Contains(t, out, "not supported")
+ assert.Check(t, is.Contains(out, "ExecutionDriver"))
+ assert.Check(t, is.Contains(out, "not supported"))
}
diff --git a/integration/system/info_test.go b/integration/system/info_test.go
index d04fdcdc84..e19ba9ba3d 100644
--- a/integration/system/info_test.go
+++ b/integration/system/info_test.go
@@ -5,8 +5,8 @@ import (
"testing"
"github.com/docker/docker/integration/internal/request"
- "github.com/stretchr/testify/assert"
- "github.com/stretchr/testify/require"
+ "github.com/gotestyourself/gotestyourself/assert"
+ is "github.com/gotestyourself/gotestyourself/assert/cmp"
"golang.org/x/net/context"
)
@@ -14,7 +14,7 @@ func TestInfoAPI(t *testing.T) {
client := request.NewAPIClient(t)
info, err := client.Info(context.Background())
- require.NoError(t, err)
+ assert.NilError(t, err)
// always shown fields
stringsToCheck := []string{
@@ -37,6 +37,6 @@ func TestInfoAPI(t *testing.T) {
out := fmt.Sprintf("%+v", info)
for _, linePrefix := range stringsToCheck {
- assert.Contains(t, out, linePrefix)
+ assert.Check(t, is.Contains(out, linePrefix))
}
}
diff --git a/integration/system/login_test.go b/integration/system/login_test.go
index c075109d2b..e8ef10c30c 100644
--- a/integration/system/login_test.go
+++ b/integration/system/login_test.go
@@ -6,8 +6,9 @@ import (
"github.com/docker/docker/api/types"
"github.com/docker/docker/integration/internal/request"
"github.com/docker/docker/integration/internal/requirement"
+ "github.com/gotestyourself/gotestyourself/assert"
+ is "github.com/gotestyourself/gotestyourself/assert/cmp"
"github.com/gotestyourself/gotestyourself/skip"
- "github.com/stretchr/testify/assert"
"golang.org/x/net/context"
)
@@ -23,5 +24,5 @@ func TestLoginFailsWithBadCredentials(t *testing.T) {
}
_, err := client.RegistryLogin(context.Background(), config)
expected := "Error response from daemon: Get https://registry-1.docker.io/v2/: unauthorized: incorrect username or password"
- assert.EqualError(t, err, expected)
+ assert.Check(t, is.Error(err, expected))
}
diff --git a/integration/system/version_test.go b/integration/system/version_test.go
index 04888a604a..a676c31802 100644
--- a/integration/system/version_test.go
+++ b/integration/system/version_test.go
@@ -4,8 +4,8 @@ import (
"testing"
"github.com/docker/docker/integration/internal/request"
- "github.com/stretchr/testify/assert"
- "github.com/stretchr/testify/require"
+ "github.com/gotestyourself/gotestyourself/assert"
+ is "github.com/gotestyourself/gotestyourself/assert/cmp"
"golang.org/x/net/context"
)
@@ -13,11 +13,11 @@ func TestVersion(t *testing.T) {
client := request.NewAPIClient(t)
version, err := client.ServerVersion(context.Background())
- require.NoError(t, err)
+ assert.NilError(t, err)
- assert.NotNil(t, version.APIVersion)
- assert.NotNil(t, version.Version)
- assert.NotNil(t, version.MinAPIVersion)
- assert.Equal(t, testEnv.DaemonInfo.ExperimentalBuild, version.Experimental)
- assert.Equal(t, testEnv.OSType, version.Os)
+ assert.Check(t, version.APIVersion != nil)
+ assert.Check(t, version.Version != nil)
+ assert.Check(t, version.MinAPIVersion != nil)
+ assert.Check(t, is.Equal(testEnv.DaemonInfo.ExperimentalBuild, version.Experimental))
+ assert.Check(t, is.Equal(testEnv.OSType, version.Os))
}
diff --git a/integration/volume/volume_test.go b/integration/volume/volume_test.go
index 20dcfef9a6..2fe35cf5ed 100644
--- a/integration/volume/volume_test.go
+++ b/integration/volume/volume_test.go
@@ -13,8 +13,8 @@ import (
"github.com/docker/docker/integration/internal/container"
"github.com/docker/docker/integration/internal/request"
"github.com/docker/docker/internal/testutil"
- "github.com/stretchr/testify/assert"
- "github.com/stretchr/testify/require"
+ "github.com/gotestyourself/gotestyourself/assert"
+ is "github.com/gotestyourself/gotestyourself/assert/cmp"
)
func TestVolumesCreateAndList(t *testing.T) {
@@ -26,7 +26,7 @@ func TestVolumesCreateAndList(t *testing.T) {
vol, err := client.VolumeCreate(ctx, volumetypes.VolumesCreateBody{
Name: name,
})
- require.NoError(t, err)
+ assert.NilError(t, err)
expected := types.Volume{
// Ignore timestamp of CreatedAt
@@ -36,14 +36,14 @@ func TestVolumesCreateAndList(t *testing.T) {
Name: name,
Mountpoint: fmt.Sprintf("%s/volumes/%s/_data", testEnv.DaemonInfo.DockerRootDir, name),
}
- assert.Equal(t, vol, expected)
+ assert.Check(t, is.DeepEqual(vol, expected))
volumes, err := client.VolumeList(ctx, filters.Args{})
- require.NoError(t, err)
+ assert.NilError(t, err)
- assert.Equal(t, len(volumes.Volumes), 1)
- assert.NotNil(t, volumes.Volumes[0])
- assert.Equal(t, *volumes.Volumes[0], expected)
+ assert.Check(t, is.Equal(len(volumes.Volumes), 1))
+ assert.Check(t, volumes.Volumes[0] != nil)
+ assert.Check(t, is.DeepEqual(*volumes.Volumes[0], expected))
}
func TestVolumesRemove(t *testing.T) {
@@ -56,7 +56,7 @@ func TestVolumesRemove(t *testing.T) {
id := container.Create(t, ctx, client, container.WithVolume(prefix+"foo"))
c, err := client.ContainerInspect(ctx, id)
- require.NoError(t, err)
+ assert.NilError(t, err)
vname := c.Mounts[0].Name
err = client.VolumeRemove(ctx, vname, false)
@@ -65,10 +65,10 @@ func TestVolumesRemove(t *testing.T) {
err = client.ContainerRemove(ctx, id, types.ContainerRemoveOptions{
Force: true,
})
- require.NoError(t, err)
+ assert.NilError(t, err)
err = client.VolumeRemove(ctx, vname, false)
- require.NoError(t, err)
+ assert.NilError(t, err)
}
func TestVolumesInspect(t *testing.T) {
@@ -83,10 +83,10 @@ func TestVolumesInspect(t *testing.T) {
_, err := client.VolumeCreate(ctx, volumetypes.VolumesCreateBody{
Name: name,
})
- require.NoError(t, err)
+ assert.NilError(t, err)
vol, err := client.VolumeInspect(ctx, name)
- require.NoError(t, err)
+ assert.NilError(t, err)
expected := types.Volume{
// Ignore timestamp of CreatedAt
@@ -96,13 +96,13 @@ func TestVolumesInspect(t *testing.T) {
Name: name,
Mountpoint: fmt.Sprintf("%s/volumes/%s/_data", testEnv.DaemonInfo.DockerRootDir, name),
}
- assert.Equal(t, vol, expected)
+ assert.Check(t, is.DeepEqual(vol, expected))
// comparing CreatedAt field time for the new volume to now. Removing a minute from both to avoid false positive
testCreatedAt, err := time.Parse(time.RFC3339, strings.TrimSpace(vol.CreatedAt))
- require.NoError(t, err)
+ assert.NilError(t, err)
testCreatedAt = testCreatedAt.Truncate(time.Minute)
- assert.Equal(t, testCreatedAt.Equal(now), true, "Time Volume is CreatedAt not equal to current time")
+ assert.Check(t, is.Equal(testCreatedAt.Equal(now), true), "Time Volume is CreatedAt not equal to current time")
}
func getPrefixAndSlashFromDaemonPlatform() (prefix, slash string) {
diff --git a/internal/test/environment/clean.go b/internal/test/environment/clean.go
index 065b46bee8..d83175c845 100644
--- a/internal/test/environment/clean.go
+++ b/internal/test/environment/clean.go
@@ -7,13 +7,12 @@ import (
"github.com/docker/docker/api/types"
"github.com/docker/docker/api/types/filters"
"github.com/docker/docker/client"
- "github.com/stretchr/testify/assert"
- "github.com/stretchr/testify/require"
+ "github.com/gotestyourself/gotestyourself/assert"
"golang.org/x/net/context"
)
type testingT interface {
- require.TestingT
+ assert.TestingT
logT
Fatalf(string, ...interface{})
}
@@ -47,7 +46,7 @@ func unpauseAllContainers(t assert.TestingT, client client.ContainerAPIClient) {
if len(containers) > 0 {
for _, container := range containers {
err := client.ContainerUnpause(ctx, container.ID)
- assert.NoError(t, err, "failed to unpause container %s", container.ID)
+ assert.Check(t, err, "failed to unpause container %s", container.ID)
}
}
}
@@ -60,7 +59,7 @@ func getPausedContainers(ctx context.Context, t assert.TestingT, client client.C
Quiet: true,
All: true,
})
- assert.NoError(t, err, "failed to list containers")
+ assert.Check(t, err, "failed to list containers")
return containers
}
@@ -84,7 +83,7 @@ func deleteAllContainers(t assert.TestingT, apiclient client.ContainerAPIClient,
if err == nil || client.IsErrNotFound(err) || alreadyExists.MatchString(err.Error()) || isErrNotFoundSwarmClassic(err) {
continue
}
- assert.NoError(t, err, "failed to remove %s", container.ID)
+ assert.Check(t, err, "failed to remove %s", container.ID)
}
}
@@ -93,13 +92,13 @@ func getAllContainers(ctx context.Context, t assert.TestingT, client client.Cont
Quiet: true,
All: true,
})
- assert.NoError(t, err, "failed to list containers")
+ assert.Check(t, err, "failed to list containers")
return containers
}
func deleteAllImages(t testingT, apiclient client.ImageAPIClient, protectedImages map[string]struct{}) {
images, err := apiclient.ImageList(context.Background(), types.ImageListOptions{})
- assert.NoError(t, err, "failed to list images")
+ assert.Check(t, err, "failed to list images")
ctx := context.Background()
for _, image := range images {
@@ -126,12 +125,12 @@ func removeImage(ctx context.Context, t assert.TestingT, apiclient client.ImageA
if client.IsErrNotFound(err) {
return
}
- assert.NoError(t, err, "failed to remove image %s", ref)
+ assert.Check(t, err, "failed to remove image %s", ref)
}
func deleteAllVolumes(t assert.TestingT, c client.VolumeAPIClient, protectedVolumes map[string]struct{}) {
volumes, err := c.VolumeList(context.Background(), filters.Args{})
- assert.NoError(t, err, "failed to list volumes")
+ assert.Check(t, err, "failed to list volumes")
for _, v := range volumes.Volumes {
if _, ok := protectedVolumes[v.Name]; ok {
@@ -142,13 +141,13 @@ func deleteAllVolumes(t assert.TestingT, c client.VolumeAPIClient, protectedVolu
if isErrNotFoundSwarmClassic(err) {
continue
}
- assert.NoError(t, err, "failed to remove volume %s", v.Name)
+ assert.Check(t, err, "failed to remove volume %s", v.Name)
}
}
func deleteAllNetworks(t assert.TestingT, c client.NetworkAPIClient, daemonPlatform string, protectedNetworks map[string]struct{}) {
networks, err := c.NetworkList(context.Background(), types.NetworkListOptions{})
- assert.NoError(t, err, "failed to list networks")
+ assert.Check(t, err, "failed to list networks")
for _, n := range networks {
if n.Name == "bridge" || n.Name == "none" || n.Name == "host" {
@@ -162,7 +161,7 @@ func deleteAllNetworks(t assert.TestingT, c client.NetworkAPIClient, daemonPlatf
continue
}
err := c.NetworkRemove(context.Background(), n.ID)
- assert.NoError(t, err, "failed to remove network %s", n.ID)
+ assert.Check(t, err, "failed to remove network %s", n.ID)
}
}
@@ -172,14 +171,14 @@ func deleteAllPlugins(t assert.TestingT, c client.PluginAPIClient, protectedPlug
if client.IsErrNotImplemented(err) {
return
}
- assert.NoError(t, err, "failed to list plugins")
+ assert.Check(t, err, "failed to list plugins")
for _, p := range plugins {
if _, ok := protectedPlugins[p.Name]; ok {
continue
}
err := c.PluginRemove(context.Background(), p.Name, types.PluginRemoveOptions{Force: true})
- assert.NoError(t, err, "failed to remove plugin %s", p.ID)
+ assert.Check(t, err, "failed to remove plugin %s", p.ID)
}
}
diff --git a/internal/test/environment/protect.go b/internal/test/environment/protect.go
index ffbf985b73..3dfe606cea 100644
--- a/internal/test/environment/protect.go
+++ b/internal/test/environment/protect.go
@@ -6,7 +6,7 @@ import (
"github.com/docker/docker/api/types"
"github.com/docker/docker/api/types/filters"
dclient "github.com/docker/docker/client"
- "github.com/stretchr/testify/require"
+ "github.com/gotestyourself/gotestyourself/assert"
)
var frozenImages = []string{"busybox:latest", "busybox:glibc", "hello-world:frozen", "debian:jessie"}
@@ -57,12 +57,12 @@ func ProtectContainers(t testingT, testEnv *Execution) {
testEnv.ProtectContainer(t, containers...)
}
-func getExistingContainers(t require.TestingT, testEnv *Execution) []string {
+func getExistingContainers(t assert.TestingT, testEnv *Execution) []string {
client := testEnv.APIClient()
containerList, err := client.ContainerList(context.Background(), types.ContainerListOptions{
All: true,
})
- require.NoError(t, err, "failed to list containers")
+ assert.NilError(t, err, "failed to list containers")
containers := []string{}
for _, container := range containerList {
@@ -89,7 +89,7 @@ func ProtectImages(t testingT, testEnv *Execution) {
testEnv.ProtectImage(t, images...)
}
-func getExistingImages(t require.TestingT, testEnv *Execution) []string {
+func getExistingImages(t assert.TestingT, testEnv *Execution) []string {
client := testEnv.APIClient()
filter := filters.NewArgs()
filter.Add("dangling", "false")
@@ -97,7 +97,7 @@ func getExistingImages(t require.TestingT, testEnv *Execution) []string {
All: true,
Filters: filter,
})
- require.NoError(t, err, "failed to list images")
+ assert.NilError(t, err, "failed to list images")
images := []string{}
for _, image := range imageList {
@@ -136,10 +136,10 @@ func ProtectNetworks(t testingT, testEnv *Execution) {
testEnv.ProtectNetwork(t, networks...)
}
-func getExistingNetworks(t require.TestingT, testEnv *Execution) []string {
+func getExistingNetworks(t assert.TestingT, testEnv *Execution) []string {
client := testEnv.APIClient()
networkList, err := client.NetworkList(context.Background(), types.NetworkListOptions{})
- require.NoError(t, err, "failed to list networks")
+ assert.NilError(t, err, "failed to list networks")
networks := []string{}
for _, network := range networkList {
@@ -162,14 +162,14 @@ func ProtectPlugins(t testingT, testEnv *Execution) {
testEnv.ProtectPlugin(t, plugins...)
}
-func getExistingPlugins(t require.TestingT, testEnv *Execution) []string {
+func getExistingPlugins(t assert.TestingT, testEnv *Execution) []string {
client := testEnv.APIClient()
pluginList, err := client.PluginList(context.Background(), filters.Args{})
// Docker EE does not allow cluster-wide plugin management.
if dclient.IsErrNotImplemented(err) {
return []string{}
}
- require.NoError(t, err, "failed to list plugins")
+ assert.NilError(t, err, "failed to list plugins")
plugins := []string{}
for _, plugin := range pluginList {
@@ -192,10 +192,10 @@ func ProtectVolumes(t testingT, testEnv *Execution) {
testEnv.ProtectVolume(t, volumes...)
}
-func getExistingVolumes(t require.TestingT, testEnv *Execution) []string {
+func getExistingVolumes(t assert.TestingT, testEnv *Execution) []string {
client := testEnv.APIClient()
volumeList, err := client.VolumeList(context.Background(), filters.Args{})
- require.NoError(t, err, "failed to list volumes")
+ assert.NilError(t, err, "failed to list volumes")
volumes := []string{}
for _, volume := range volumeList.Volumes {
diff --git a/internal/testutil/helpers.go b/internal/testutil/helpers.go
index 77224a0071..b1d8f44e3e 100644
--- a/internal/testutil/helpers.go
+++ b/internal/testutil/helpers.go
@@ -3,15 +3,15 @@ package testutil // import "github.com/docker/docker/internal/testutil"
import (
"io"
- "github.com/stretchr/testify/assert"
- "github.com/stretchr/testify/require"
+ "github.com/gotestyourself/gotestyourself/assert"
+ is "github.com/gotestyourself/gotestyourself/assert/cmp"
)
// ErrorContains checks that the error is not nil, and contains the expected
// substring.
-func ErrorContains(t require.TestingT, err error, expectedError string, msgAndArgs ...interface{}) {
- require.Error(t, err, msgAndArgs...)
- assert.Contains(t, err.Error(), expectedError, msgAndArgs...)
+func ErrorContains(t assert.TestingT, err error, expectedError string, msgAndArgs ...interface{}) {
+ assert.Assert(t, is.ErrorContains(err, ""), msgAndArgs)
+ assert.Check(t, is.Contains(err.Error(), expectedError), msgAndArgs)
}
// DevZero acts like /dev/zero but in an OS-independent fashion.
diff --git a/internal/testutil/stringutils_test.go b/internal/testutil/stringutils_test.go
index a0f95755c7..1dd09af95f 100644
--- a/internal/testutil/stringutils_test.go
+++ b/internal/testutil/stringutils_test.go
@@ -3,13 +3,14 @@ package testutil // import "github.com/docker/docker/internal/testutil"
import (
"testing"
- "github.com/stretchr/testify/assert"
+ "github.com/gotestyourself/gotestyourself/assert"
+ is "github.com/gotestyourself/gotestyourself/assert/cmp"
)
func testLengthHelper(generator func(int) string, t *testing.T) {
expectedLength := 20
s := generator(expectedLength)
- assert.Equal(t, expectedLength, len(s))
+ assert.Check(t, is.Equal(expectedLength, len(s)))
}
func testUniquenessHelper(generator func(int) string, t *testing.T) {
@@ -17,9 +18,9 @@ func testUniquenessHelper(generator func(int) string, t *testing.T) {
set := make(map[string]struct{}, repeats)
for i := 0; i < repeats; i = i + 1 {
str := generator(64)
- assert.Equal(t, 64, len(str))
+ assert.Check(t, is.Equal(64, len(str)))
_, ok := set[str]
- assert.False(t, ok, "Random number is repeated")
+ assert.Check(t, !ok, "Random number is repeated")
set[str] = struct{}{}
}
}
diff --git a/libcontainerd/queue_test.go b/libcontainerd/queue_test.go
index 92ee22a9f3..df5332c128 100644
--- a/libcontainerd/queue_test.go
+++ b/libcontainerd/queue_test.go
@@ -4,7 +4,7 @@ import (
"testing"
"time"
- "github.com/stretchr/testify/require"
+ "github.com/gotestyourself/gotestyourself/assert"
)
func TestSerialization(t *testing.T) {
@@ -16,15 +16,15 @@ func TestSerialization(t *testing.T) {
q.append("aaa", func() {
//simulate a long time task
time.Sleep(10 * time.Millisecond)
- require.EqualValues(t, serialization, 1)
+ assert.Equal(t, serialization, 1)
serialization = 2
})
q.append("aaa", func() {
- require.EqualValues(t, serialization, 2)
+ assert.Equal(t, serialization, 2)
serialization = 3
})
q.append("aaa", func() {
- require.EqualValues(t, serialization, 3)
+ assert.Equal(t, serialization, 3)
serialization = 4
})
time.Sleep(20 * time.Millisecond)
diff --git a/opts/quotedstring_test.go b/opts/quotedstring_test.go
index e24257a5d4..21e6e4c85a 100644
--- a/opts/quotedstring_test.go
+++ b/opts/quotedstring_test.go
@@ -3,27 +3,28 @@ package opts // import "github.com/docker/docker/opts"
import (
"testing"
- "github.com/stretchr/testify/assert"
+ "github.com/gotestyourself/gotestyourself/assert"
+ is "github.com/gotestyourself/gotestyourself/assert/cmp"
)
func TestQuotedStringSetWithQuotes(t *testing.T) {
value := ""
qs := NewQuotedString(&value)
- assert.NoError(t, qs.Set(`"something"`))
- assert.Equal(t, "something", qs.String())
- assert.Equal(t, "something", value)
+ assert.Check(t, qs.Set(`"something"`))
+ assert.Check(t, is.Equal("something", qs.String()))
+ assert.Check(t, is.Equal("something", value))
}
func TestQuotedStringSetWithMismatchedQuotes(t *testing.T) {
value := ""
qs := NewQuotedString(&value)
- assert.NoError(t, qs.Set(`"something'`))
- assert.Equal(t, `"something'`, qs.String())
+ assert.Check(t, qs.Set(`"something'`))
+ assert.Check(t, is.Equal(`"something'`, qs.String()))
}
func TestQuotedStringSetWithNoQuotes(t *testing.T) {
value := ""
qs := NewQuotedString(&value)
- assert.NoError(t, qs.Set("something"))
- assert.Equal(t, "something", qs.String())
+ assert.Check(t, qs.Set("something"))
+ assert.Check(t, is.Equal("something", qs.String()))
}
diff --git a/pkg/archive/archive_linux_test.go b/pkg/archive/archive_linux_test.go
index e48ef1aa11..b397c8abfa 100644
--- a/pkg/archive/archive_linux_test.go
+++ b/pkg/archive/archive_linux_test.go
@@ -8,7 +8,7 @@ import (
"testing"
"github.com/docker/docker/pkg/system"
- "github.com/stretchr/testify/require"
+ "github.com/gotestyourself/gotestyourself/assert"
"golang.org/x/sys/unix"
)
@@ -24,35 +24,35 @@ import (
func setupOverlayTestDir(t *testing.T, src string) {
// Create opaque directory containing single file and permission 0700
err := os.Mkdir(filepath.Join(src, "d1"), 0700)
- require.NoError(t, err)
+ assert.NilError(t, err)
err = system.Lsetxattr(filepath.Join(src, "d1"), "trusted.overlay.opaque", []byte("y"), 0)
- require.NoError(t, err)
+ assert.NilError(t, err)
err = ioutil.WriteFile(filepath.Join(src, "d1", "f1"), []byte{}, 0600)
- require.NoError(t, err)
+ assert.NilError(t, err)
// Create another opaque directory containing single file but with permission 0750
err = os.Mkdir(filepath.Join(src, "d2"), 0750)
- require.NoError(t, err)
+ assert.NilError(t, err)
err = system.Lsetxattr(filepath.Join(src, "d2"), "trusted.overlay.opaque", []byte("y"), 0)
- require.NoError(t, err)
+ assert.NilError(t, err)
err = ioutil.WriteFile(filepath.Join(src, "d2", "f1"), []byte{}, 0660)
- require.NoError(t, err)
+ assert.NilError(t, err)
// Create regular directory with deleted file
err = os.Mkdir(filepath.Join(src, "d3"), 0700)
- require.NoError(t, err)
+ assert.NilError(t, err)
err = system.Mknod(filepath.Join(src, "d3", "f1"), unix.S_IFCHR, 0)
- require.NoError(t, err)
+ assert.NilError(t, err)
}
func checkOpaqueness(t *testing.T, path string, opaque string) {
xattrOpaque, err := system.Lgetxattr(path, "trusted.overlay.opaque")
- require.NoError(t, err)
+ assert.NilError(t, err)
if string(xattrOpaque) != opaque {
t.Fatalf("Unexpected opaque value: %q, expected %q", string(xattrOpaque), opaque)
@@ -62,7 +62,7 @@ func checkOpaqueness(t *testing.T, path string, opaque string) {
func checkOverlayWhiteout(t *testing.T, path string) {
stat, err := os.Stat(path)
- require.NoError(t, err)
+ assert.NilError(t, err)
statT, ok := stat.Sys().(*syscall.Stat_t)
if !ok {
@@ -75,7 +75,7 @@ func checkOverlayWhiteout(t *testing.T, path string) {
func checkFileMode(t *testing.T, path string, perm os.FileMode) {
stat, err := os.Stat(path)
- require.NoError(t, err)
+ assert.NilError(t, err)
if stat.Mode() != perm {
t.Fatalf("Unexpected file mode for %s: %o, expected %o", path, stat.Mode(), perm)
@@ -84,17 +84,17 @@ func checkFileMode(t *testing.T, path string, perm os.FileMode) {
func TestOverlayTarUntar(t *testing.T) {
oldmask, err := system.Umask(0)
- require.NoError(t, err)
+ assert.NilError(t, err)
defer system.Umask(oldmask)
src, err := ioutil.TempDir("", "docker-test-overlay-tar-src")
- require.NoError(t, err)
+ assert.NilError(t, err)
defer os.RemoveAll(src)
setupOverlayTestDir(t, src)
dst, err := ioutil.TempDir("", "docker-test-overlay-tar-dst")
- require.NoError(t, err)
+ assert.NilError(t, err)
defer os.RemoveAll(dst)
options := &TarOptions{
@@ -102,11 +102,11 @@ func TestOverlayTarUntar(t *testing.T) {
WhiteoutFormat: OverlayWhiteoutFormat,
}
archive, err := TarWithOptions(src, options)
- require.NoError(t, err)
+ assert.NilError(t, err)
defer archive.Close()
err = Untar(archive, dst, options)
- require.NoError(t, err)
+ assert.NilError(t, err)
checkFileMode(t, filepath.Join(dst, "d1"), 0700|os.ModeDir)
checkFileMode(t, filepath.Join(dst, "d2"), 0750|os.ModeDir)
@@ -123,31 +123,31 @@ func TestOverlayTarUntar(t *testing.T) {
func TestOverlayTarAUFSUntar(t *testing.T) {
oldmask, err := system.Umask(0)
- require.NoError(t, err)
+ assert.NilError(t, err)
defer system.Umask(oldmask)
src, err := ioutil.TempDir("", "docker-test-overlay-tar-src")
- require.NoError(t, err)
+ assert.NilError(t, err)
defer os.RemoveAll(src)
setupOverlayTestDir(t, src)
dst, err := ioutil.TempDir("", "docker-test-overlay-tar-dst")
- require.NoError(t, err)
+ assert.NilError(t, err)
defer os.RemoveAll(dst)
archive, err := TarWithOptions(src, &TarOptions{
Compression: Uncompressed,
WhiteoutFormat: OverlayWhiteoutFormat,
})
- require.NoError(t, err)
+ assert.NilError(t, err)
defer archive.Close()
err = Untar(archive, dst, &TarOptions{
Compression: Uncompressed,
WhiteoutFormat: AUFSWhiteoutFormat,
})
- require.NoError(t, err)
+ assert.NilError(t, err)
checkFileMode(t, filepath.Join(dst, "d1"), 0700|os.ModeDir)
checkFileMode(t, filepath.Join(dst, "d1", WhiteoutOpaqueDir), 0700)
diff --git a/pkg/archive/archive_test.go b/pkg/archive/archive_test.go
index 70db8d4a1b..296b636a6e 100644
--- a/pkg/archive/archive_test.go
+++ b/pkg/archive/archive_test.go
@@ -17,8 +17,8 @@ import (
"github.com/docker/docker/pkg/idtools"
"github.com/docker/docker/pkg/ioutils"
- "github.com/stretchr/testify/assert"
- "github.com/stretchr/testify/require"
+ "github.com/gotestyourself/gotestyourself/assert"
+ is "github.com/gotestyourself/gotestyourself/assert/cmp"
)
var tmp string
@@ -263,7 +263,7 @@ func TestCmdStreamGood(t *testing.T) {
func TestUntarPathWithInvalidDest(t *testing.T) {
tempFolder, err := ioutil.TempDir("", "docker-archive-test")
- require.NoError(t, err)
+ assert.NilError(t, err)
defer os.RemoveAll(tempFolder)
invalidDestFolder := filepath.Join(tempFolder, "invalidDest")
// Create a src file
@@ -282,7 +282,7 @@ func TestUntarPathWithInvalidDest(t *testing.T) {
cmd := exec.Command("sh", "-c", "tar cf "+tarFileU+" "+srcFileU)
_, err = cmd.CombinedOutput()
- require.NoError(t, err)
+ assert.NilError(t, err)
err = defaultUntarPath(tarFile, invalidDestFolder)
if err == nil {
@@ -304,7 +304,7 @@ func TestUntarPathWithInvalidSrc(t *testing.T) {
func TestUntarPath(t *testing.T) {
tmpFolder, err := ioutil.TempDir("", "docker-archive-test")
- require.NoError(t, err)
+ assert.NilError(t, err)
defer os.RemoveAll(tmpFolder)
srcFile := filepath.Join(tmpFolder, "src")
tarFile := filepath.Join(tmpFolder, "src.tar")
@@ -325,7 +325,7 @@ func TestUntarPath(t *testing.T) {
}
cmd := exec.Command("sh", "-c", "tar cf "+tarFileU+" "+srcFileU)
_, err = cmd.CombinedOutput()
- require.NoError(t, err)
+ assert.NilError(t, err)
err = defaultUntarPath(tarFile, destFolder)
if err != nil {
@@ -726,12 +726,12 @@ func TestTarUntar(t *testing.T) {
func TestTarWithOptionsChownOptsAlwaysOverridesIdPair(t *testing.T) {
origin, err := ioutil.TempDir("", "docker-test-tar-chown-opt")
- require.NoError(t, err)
+ assert.NilError(t, err)
defer os.RemoveAll(origin)
filePath := filepath.Join(origin, "1")
err = ioutil.WriteFile(filePath, []byte("hello world"), 0700)
- require.NoError(t, err)
+ assert.NilError(t, err)
idMaps := []idtools.IDMap{
0: {
@@ -759,7 +759,7 @@ func TestTarWithOptionsChownOptsAlwaysOverridesIdPair(t *testing.T) {
}
for _, testCase := range cases {
reader, err := TarWithOptions(filePath, testCase.opts)
- require.NoError(t, err)
+ assert.NilError(t, err)
tr := tar.NewReader(reader)
defer reader.Close()
for {
@@ -768,9 +768,9 @@ func TestTarWithOptionsChownOptsAlwaysOverridesIdPair(t *testing.T) {
// end of tar archive
break
}
- require.NoError(t, err)
- assert.Equal(t, hdr.Uid, testCase.expectedUID, "Uid equals expected value")
- assert.Equal(t, hdr.Gid, testCase.expectedGID, "Gid equals expected value")
+ assert.NilError(t, err)
+ assert.Check(t, is.Equal(hdr.Uid, testCase.expectedUID), "Uid equals expected value")
+ assert.Check(t, is.Equal(hdr.Gid, testCase.expectedGID), "Gid equals expected value")
}
}
}
@@ -1182,10 +1182,10 @@ func TestUntarInvalidSymlink(t *testing.T) {
func TestTempArchiveCloseMultipleTimes(t *testing.T) {
reader := ioutil.NopCloser(strings.NewReader("hello"))
tempArchive, err := NewTempArchive(reader, "")
- require.NoError(t, err)
+ assert.NilError(t, err)
buf := make([]byte, 10)
n, err := tempArchive.Read(buf)
- require.NoError(t, err)
+ assert.NilError(t, err)
if n != 5 {
t.Fatalf("Expected to read 5 bytes. Read %d instead", n)
}
@@ -1244,7 +1244,7 @@ func TestReplaceFileTarWrapper(t *testing.T) {
map[string]TarModifierFunc{testcase.filename: testcase.modifier})
actual := readFileFromArchive(t, resultArchive, testcase.filename, testcase.fileCount, testcase.doc)
- assert.Equal(t, testcase.expected, actual, testcase.doc)
+ assert.Check(t, is.Equal(testcase.expected, actual), testcase.doc)
}
}
@@ -1255,27 +1255,27 @@ func TestPrefixHeaderReadable(t *testing.T) {
var testFile = []byte("\x1f\x8b\x08\x08\x44\x21\x68\x59\x00\x03\x74\x2e\x74\x61\x72\x00\x4b\xcb\xcf\x67\xa0\x35\x30\x80\x00\x86\x06\x10\x47\x01\xc1\x37\x40\x00\x54\xb6\xb1\xa1\xa9\x99\x09\x48\x25\x1d\x40\x69\x71\x49\x62\x91\x02\xe5\x76\xa1\x79\x84\x21\x91\xd6\x80\x72\xaf\x8f\x82\x51\x30\x0a\x46\x36\x00\x00\xf0\x1c\x1e\x95\x00\x06\x00\x00")
tmpDir, err := ioutil.TempDir("", "prefix-test")
- require.NoError(t, err)
+ assert.NilError(t, err)
defer os.RemoveAll(tmpDir)
err = Untar(bytes.NewReader(testFile), tmpDir, nil)
- require.NoError(t, err)
+ assert.NilError(t, err)
baseName := "foo"
pth := strings.Repeat("a", 100-len(baseName)) + "/" + baseName
_, err = os.Lstat(filepath.Join(tmpDir, pth))
- require.NoError(t, err)
+ assert.NilError(t, err)
}
func buildSourceArchive(t *testing.T, numberOfFiles int) (io.ReadCloser, func()) {
srcDir, err := ioutil.TempDir("", "docker-test-srcDir")
- require.NoError(t, err)
+ assert.NilError(t, err)
_, err = prepareUntarSourceDirectory(numberOfFiles, srcDir, false)
- require.NoError(t, err)
+ assert.NilError(t, err)
sourceArchive, err := TarWithOptions(srcDir, &TarOptions{})
- require.NoError(t, err)
+ assert.NilError(t, err)
return sourceArchive, func() {
os.RemoveAll(srcDir)
sourceArchive.Close()
@@ -1291,7 +1291,7 @@ func createOrReplaceModifier(path string, header *tar.Header, content io.Reader)
func createModifier(t *testing.T) TarModifierFunc {
return func(path string, header *tar.Header, content io.Reader) (*tar.Header, []byte, error) {
- assert.Nil(t, content)
+ assert.Check(t, is.Nil(content))
return createOrReplaceModifier(path, header, content)
}
}
@@ -1309,17 +1309,17 @@ func appendModifier(path string, header *tar.Header, content io.Reader) (*tar.He
func readFileFromArchive(t *testing.T, archive io.ReadCloser, name string, expectedCount int, doc string) string {
destDir, err := ioutil.TempDir("", "docker-test-destDir")
- require.NoError(t, err)
+ assert.NilError(t, err)
defer os.RemoveAll(destDir)
err = Untar(archive, destDir, nil)
- require.NoError(t, err)
+ assert.NilError(t, err)
files, _ := ioutil.ReadDir(destDir)
- assert.Len(t, files, expectedCount, doc)
+ assert.Check(t, is.Len(files, expectedCount), doc)
content, err := ioutil.ReadFile(filepath.Join(destDir, name))
- assert.NoError(t, err)
+ assert.Check(t, err)
return string(content)
}
diff --git a/pkg/archive/archive_unix_test.go b/pkg/archive/archive_unix_test.go
index 17de96e94d..5d13c3542b 100644
--- a/pkg/archive/archive_unix_test.go
+++ b/pkg/archive/archive_unix_test.go
@@ -13,8 +13,8 @@ import (
"testing"
"github.com/docker/docker/pkg/system"
- "github.com/stretchr/testify/assert"
- "github.com/stretchr/testify/require"
+ "github.com/gotestyourself/gotestyourself/assert"
+ is "github.com/gotestyourself/gotestyourself/assert/cmp"
"golang.org/x/sys/unix"
)
@@ -72,18 +72,18 @@ func TestChmodTarEntry(t *testing.T) {
func TestTarWithHardLink(t *testing.T) {
origin, err := ioutil.TempDir("", "docker-test-tar-hardlink")
- require.NoError(t, err)
+ assert.NilError(t, err)
defer os.RemoveAll(origin)
err = ioutil.WriteFile(filepath.Join(origin, "1"), []byte("hello world"), 0700)
- require.NoError(t, err)
+ assert.NilError(t, err)
err = os.Link(filepath.Join(origin, "1"), filepath.Join(origin, "2"))
- require.NoError(t, err)
+ assert.NilError(t, err)
var i1, i2 uint64
i1, err = getNlink(filepath.Join(origin, "1"))
- require.NoError(t, err)
+ assert.NilError(t, err)
// sanity check that we can hardlink
if i1 != 2 {
@@ -91,48 +91,48 @@ func TestTarWithHardLink(t *testing.T) {
}
dest, err := ioutil.TempDir("", "docker-test-tar-hardlink-dest")
- require.NoError(t, err)
+ assert.NilError(t, err)
defer os.RemoveAll(dest)
// we'll do this in two steps to separate failure
fh, err := Tar(origin, Uncompressed)
- require.NoError(t, err)
+ assert.NilError(t, err)
// ensure we can read the whole thing with no error, before writing back out
buf, err := ioutil.ReadAll(fh)
- require.NoError(t, err)
+ assert.NilError(t, err)
bRdr := bytes.NewReader(buf)
err = Untar(bRdr, dest, &TarOptions{Compression: Uncompressed})
- require.NoError(t, err)
+ assert.NilError(t, err)
i1, err = getInode(filepath.Join(dest, "1"))
- require.NoError(t, err)
+ assert.NilError(t, err)
i2, err = getInode(filepath.Join(dest, "2"))
- require.NoError(t, err)
+ assert.NilError(t, err)
- assert.Equal(t, i1, i2)
+ assert.Check(t, is.Equal(i1, i2))
}
func TestTarWithHardLinkAndRebase(t *testing.T) {
tmpDir, err := ioutil.TempDir("", "docker-test-tar-hardlink-rebase")
- require.NoError(t, err)
+ assert.NilError(t, err)
defer os.RemoveAll(tmpDir)
origin := filepath.Join(tmpDir, "origin")
err = os.Mkdir(origin, 0700)
- require.NoError(t, err)
+ assert.NilError(t, err)
err = ioutil.WriteFile(filepath.Join(origin, "1"), []byte("hello world"), 0700)
- require.NoError(t, err)
+ assert.NilError(t, err)
err = os.Link(filepath.Join(origin, "1"), filepath.Join(origin, "2"))
- require.NoError(t, err)
+ assert.NilError(t, err)
var i1, i2 uint64
i1, err = getNlink(filepath.Join(origin, "1"))
- require.NoError(t, err)
+ assert.NilError(t, err)
// sanity check that we can hardlink
if i1 != 2 {
@@ -141,20 +141,20 @@ func TestTarWithHardLinkAndRebase(t *testing.T) {
dest := filepath.Join(tmpDir, "dest")
bRdr, err := TarResourceRebase(origin, "origin")
- require.NoError(t, err)
+ assert.NilError(t, err)
dstDir, srcBase := SplitPathDirEntry(origin)
_, dstBase := SplitPathDirEntry(dest)
content := RebaseArchiveEntries(bRdr, srcBase, dstBase)
err = Untar(content, dstDir, &TarOptions{Compression: Uncompressed, NoLchown: true, NoOverwriteDirNonDir: true})
- require.NoError(t, err)
+ assert.NilError(t, err)
i1, err = getInode(filepath.Join(dest, "1"))
- require.NoError(t, err)
+ assert.NilError(t, err)
i2, err = getInode(filepath.Join(dest, "2"))
- require.NoError(t, err)
+ assert.NilError(t, err)
- assert.Equal(t, i1, i2)
+ assert.Check(t, is.Equal(i1, i2))
}
func getNlink(path string) (uint64, error) {
@@ -184,37 +184,37 @@ func getInode(path string) (uint64, error) {
func TestTarWithBlockCharFifo(t *testing.T) {
origin, err := ioutil.TempDir("", "docker-test-tar-hardlink")
- require.NoError(t, err)
+ assert.NilError(t, err)
defer os.RemoveAll(origin)
err = ioutil.WriteFile(filepath.Join(origin, "1"), []byte("hello world"), 0700)
- require.NoError(t, err)
+ assert.NilError(t, err)
err = system.Mknod(filepath.Join(origin, "2"), unix.S_IFBLK, int(system.Mkdev(int64(12), int64(5))))
- require.NoError(t, err)
+ assert.NilError(t, err)
err = system.Mknod(filepath.Join(origin, "3"), unix.S_IFCHR, int(system.Mkdev(int64(12), int64(5))))
- require.NoError(t, err)
+ assert.NilError(t, err)
err = system.Mknod(filepath.Join(origin, "4"), unix.S_IFIFO, int(system.Mkdev(int64(12), int64(5))))
- require.NoError(t, err)
+ assert.NilError(t, err)
dest, err := ioutil.TempDir("", "docker-test-tar-hardlink-dest")
- require.NoError(t, err)
+ assert.NilError(t, err)
defer os.RemoveAll(dest)
// we'll do this in two steps to separate failure
fh, err := Tar(origin, Uncompressed)
- require.NoError(t, err)
+ assert.NilError(t, err)
// ensure we can read the whole thing with no error, before writing back out
buf, err := ioutil.ReadAll(fh)
- require.NoError(t, err)
+ assert.NilError(t, err)
bRdr := bytes.NewReader(buf)
err = Untar(bRdr, dest, &TarOptions{Compression: Uncompressed})
- require.NoError(t, err)
+ assert.NilError(t, err)
changes, err := ChangesDirs(origin, dest)
- require.NoError(t, err)
+ assert.NilError(t, err)
if len(changes) > 0 {
t.Fatalf("Tar with special device (block, char, fifo) should keep them (recreate them when untar) : %v", changes)
@@ -224,17 +224,17 @@ func TestTarWithBlockCharFifo(t *testing.T) {
// TestTarUntarWithXattr is Unix as Lsetxattr is not supported on Windows
func TestTarUntarWithXattr(t *testing.T) {
origin, err := ioutil.TempDir("", "docker-test-untar-origin")
- require.NoError(t, err)
+ assert.NilError(t, err)
defer os.RemoveAll(origin)
err = ioutil.WriteFile(filepath.Join(origin, "1"), []byte("hello world"), 0700)
- require.NoError(t, err)
+ assert.NilError(t, err)
err = ioutil.WriteFile(filepath.Join(origin, "2"), []byte("welcome!"), 0700)
- require.NoError(t, err)
+ assert.NilError(t, err)
err = ioutil.WriteFile(filepath.Join(origin, "3"), []byte("will be ignored"), 0700)
- require.NoError(t, err)
+ assert.NilError(t, err)
err = system.Lsetxattr(filepath.Join(origin, "2"), "security.capability", []byte{0x00}, 0)
- require.NoError(t, err)
+ assert.NilError(t, err)
for _, c := range []Compression{
Uncompressed,
@@ -309,7 +309,7 @@ func TestCopyInfoDestinationPathSymlink(t *testing.T) {
for _, info := range testData {
p := filepath.Join(tmpDir, info.resource.path, info.file)
ci, err := CopyInfoDestinationPath(p)
- assert.NoError(t, err)
- assert.Equal(t, info.expected, ci)
+ assert.Check(t, err)
+ assert.Check(t, is.DeepEqual(info.expected, ci))
}
}
diff --git a/pkg/archive/changes_test.go b/pkg/archive/changes_test.go
index f316cd3203..2d316e77be 100644
--- a/pkg/archive/changes_test.go
+++ b/pkg/archive/changes_test.go
@@ -11,7 +11,7 @@ import (
"time"
"github.com/docker/docker/pkg/system"
- "github.com/stretchr/testify/require"
+ "github.com/gotestyourself/gotestyourself/assert"
)
func max(x, y int) int {
@@ -76,19 +76,19 @@ func provisionSampleDir(t *testing.T, root string, files []FileData) {
p := path.Join(root, info.path)
if info.filetype == Dir {
err := os.MkdirAll(p, info.permissions)
- require.NoError(t, err)
+ assert.NilError(t, err)
} else if info.filetype == Regular {
err := ioutil.WriteFile(p, []byte(info.contents), info.permissions)
- require.NoError(t, err)
+ assert.NilError(t, err)
} else if info.filetype == Symlink {
err := os.Symlink(info.contents, p)
- require.NoError(t, err)
+ assert.NilError(t, err)
}
if info.filetype != Symlink {
// Set a consistent ctime, atime for all files and dirs
err := system.Chtimes(p, now, now)
- require.NoError(t, err)
+ assert.NilError(t, err)
}
}
}
@@ -118,14 +118,14 @@ func TestChangesWithNoChanges(t *testing.T) {
t.Skip("symlinks on Windows")
}
rwLayer, err := ioutil.TempDir("", "docker-changes-test")
- require.NoError(t, err)
+ assert.NilError(t, err)
defer os.RemoveAll(rwLayer)
layer, err := ioutil.TempDir("", "docker-changes-test-layer")
- require.NoError(t, err)
+ assert.NilError(t, err)
defer os.RemoveAll(layer)
createSampleDir(t, layer)
changes, err := Changes([]string{layer}, rwLayer)
- require.NoError(t, err)
+ assert.NilError(t, err)
if len(changes) != 0 {
t.Fatalf("Changes with no difference should have detect no changes, but detected %d", len(changes))
}
@@ -139,14 +139,14 @@ func TestChangesWithChanges(t *testing.T) {
}
// Mock the readonly layer
layer, err := ioutil.TempDir("", "docker-changes-test-layer")
- require.NoError(t, err)
+ assert.NilError(t, err)
defer os.RemoveAll(layer)
createSampleDir(t, layer)
os.MkdirAll(path.Join(layer, "dir1/subfolder"), 0740)
// Mock the RW layer
rwLayer, err := ioutil.TempDir("", "docker-changes-test")
- require.NoError(t, err)
+ assert.NilError(t, err)
defer os.RemoveAll(rwLayer)
// Create a folder in RW layer
@@ -163,7 +163,7 @@ func TestChangesWithChanges(t *testing.T) {
ioutil.WriteFile(newFile, []byte{}, 0740)
changes, err := Changes([]string{layer}, rwLayer)
- require.NoError(t, err)
+ assert.NilError(t, err)
expectedChanges := []Change{
{"/dir1", ChangeModify},
@@ -183,7 +183,7 @@ func TestChangesWithChangesGH13590(t *testing.T) {
t.Skip("symlinks on Windows")
}
baseLayer, err := ioutil.TempDir("", "docker-changes-test.")
- require.NoError(t, err)
+ assert.NilError(t, err)
defer os.RemoveAll(baseLayer)
dir3 := path.Join(baseLayer, "dir1/dir2/dir3")
@@ -193,7 +193,7 @@ func TestChangesWithChangesGH13590(t *testing.T) {
ioutil.WriteFile(file, []byte("hello"), 0666)
layer, err := ioutil.TempDir("", "docker-changes-test2.")
- require.NoError(t, err)
+ assert.NilError(t, err)
defer os.RemoveAll(layer)
// Test creating a new file
@@ -206,7 +206,7 @@ func TestChangesWithChangesGH13590(t *testing.T) {
ioutil.WriteFile(file, []byte("bye"), 0666)
changes, err := Changes([]string{baseLayer}, layer)
- require.NoError(t, err)
+ assert.NilError(t, err)
expectedChanges := []Change{
{"/dir1/dir2/dir3", ChangeModify},
@@ -216,7 +216,7 @@ func TestChangesWithChangesGH13590(t *testing.T) {
// Now test changing a file
layer, err = ioutil.TempDir("", "docker-changes-test3.")
- require.NoError(t, err)
+ assert.NilError(t, err)
defer os.RemoveAll(layer)
if err := copyDir(baseLayer+"/dir1", layer+"/"); err != nil {
@@ -227,7 +227,7 @@ func TestChangesWithChangesGH13590(t *testing.T) {
ioutil.WriteFile(file, []byte("bye"), 0666)
changes, err = Changes([]string{baseLayer}, layer)
- require.NoError(t, err)
+ assert.NilError(t, err)
expectedChanges = []Change{
{"/dir1/dir2/dir3/file.txt", ChangeModify},
@@ -243,15 +243,15 @@ func TestChangesDirsEmpty(t *testing.T) {
t.Skip("symlinks on Windows")
}
src, err := ioutil.TempDir("", "docker-changes-test")
- require.NoError(t, err)
+ assert.NilError(t, err)
defer os.RemoveAll(src)
createSampleDir(t, src)
dst := src + "-copy"
err = copyDir(src, dst)
- require.NoError(t, err)
+ assert.NilError(t, err)
defer os.RemoveAll(dst)
changes, err := ChangesDirs(dst, src)
- require.NoError(t, err)
+ assert.NilError(t, err)
if len(changes) != 0 {
t.Fatalf("Reported changes for identical dirs: %v", changes)
@@ -263,64 +263,64 @@ func TestChangesDirsEmpty(t *testing.T) {
func mutateSampleDir(t *testing.T, root string) {
// Remove a regular file
err := os.RemoveAll(path.Join(root, "file1"))
- require.NoError(t, err)
+ assert.NilError(t, err)
// Remove a directory
err = os.RemoveAll(path.Join(root, "dir1"))
- require.NoError(t, err)
+ assert.NilError(t, err)
// Remove a symlink
err = os.RemoveAll(path.Join(root, "symlink1"))
- require.NoError(t, err)
+ assert.NilError(t, err)
// Rewrite a file
err = ioutil.WriteFile(path.Join(root, "file2"), []byte("fileNN\n"), 0777)
- require.NoError(t, err)
+ assert.NilError(t, err)
// Replace a file
err = os.RemoveAll(path.Join(root, "file3"))
- require.NoError(t, err)
+ assert.NilError(t, err)
err = ioutil.WriteFile(path.Join(root, "file3"), []byte("fileMM\n"), 0404)
- require.NoError(t, err)
+ assert.NilError(t, err)
// Touch file
err = system.Chtimes(path.Join(root, "file4"), time.Now().Add(time.Second), time.Now().Add(time.Second))
- require.NoError(t, err)
+ assert.NilError(t, err)
// Replace file with dir
err = os.RemoveAll(path.Join(root, "file5"))
- require.NoError(t, err)
+ assert.NilError(t, err)
err = os.MkdirAll(path.Join(root, "file5"), 0666)
- require.NoError(t, err)
+ assert.NilError(t, err)
// Create new file
err = ioutil.WriteFile(path.Join(root, "filenew"), []byte("filenew\n"), 0777)
- require.NoError(t, err)
+ assert.NilError(t, err)
// Create new dir
err = os.MkdirAll(path.Join(root, "dirnew"), 0766)
- require.NoError(t, err)
+ assert.NilError(t, err)
// Create a new symlink
err = os.Symlink("targetnew", path.Join(root, "symlinknew"))
- require.NoError(t, err)
+ assert.NilError(t, err)
// Change a symlink
err = os.RemoveAll(path.Join(root, "symlink2"))
- require.NoError(t, err)
+ assert.NilError(t, err)
err = os.Symlink("target2change", path.Join(root, "symlink2"))
- require.NoError(t, err)
+ assert.NilError(t, err)
// Replace dir with file
err = os.RemoveAll(path.Join(root, "dir2"))
- require.NoError(t, err)
+ assert.NilError(t, err)
err = ioutil.WriteFile(path.Join(root, "dir2"), []byte("dir2\n"), 0777)
- require.NoError(t, err)
+ assert.NilError(t, err)
// Touch dir
err = system.Chtimes(path.Join(root, "dir3"), time.Now().Add(time.Second), time.Now().Add(time.Second))
- require.NoError(t, err)
+ assert.NilError(t, err)
}
func TestChangesDirsMutated(t *testing.T) {
@@ -330,18 +330,18 @@ func TestChangesDirsMutated(t *testing.T) {
t.Skip("symlinks on Windows")
}
src, err := ioutil.TempDir("", "docker-changes-test")
- require.NoError(t, err)
+ assert.NilError(t, err)
createSampleDir(t, src)
dst := src + "-copy"
err = copyDir(src, dst)
- require.NoError(t, err)
+ assert.NilError(t, err)
defer os.RemoveAll(src)
defer os.RemoveAll(dst)
mutateSampleDir(t, dst)
changes, err := ChangesDirs(dst, src)
- require.NoError(t, err)
+ assert.NilError(t, err)
sort.Sort(changesByPath(changes))
@@ -386,29 +386,29 @@ func TestApplyLayer(t *testing.T) {
t.Skip("symlinks on Windows")
}
src, err := ioutil.TempDir("", "docker-changes-test")
- require.NoError(t, err)
+ assert.NilError(t, err)
createSampleDir(t, src)
defer os.RemoveAll(src)
dst := src + "-copy"
err = copyDir(src, dst)
- require.NoError(t, err)
+ assert.NilError(t, err)
mutateSampleDir(t, dst)
defer os.RemoveAll(dst)
changes, err := ChangesDirs(dst, src)
- require.NoError(t, err)
+ assert.NilError(t, err)
layer, err := ExportChanges(dst, changes, nil, nil)
- require.NoError(t, err)
+ assert.NilError(t, err)
layerCopy, err := NewTempArchive(layer, "")
- require.NoError(t, err)
+ assert.NilError(t, err)
_, err = ApplyLayer(src, layerCopy)
- require.NoError(t, err)
+ assert.NilError(t, err)
changes2, err := ChangesDirs(src, dst)
- require.NoError(t, err)
+ assert.NilError(t, err)
if len(changes2) != 0 {
t.Fatalf("Unexpected differences after reapplying mutation: %v", changes2)
@@ -422,18 +422,18 @@ func TestChangesSizeWithHardlinks(t *testing.T) {
t.Skip("hardlinks on Windows")
}
srcDir, err := ioutil.TempDir("", "docker-test-srcDir")
- require.NoError(t, err)
+ assert.NilError(t, err)
defer os.RemoveAll(srcDir)
destDir, err := ioutil.TempDir("", "docker-test-destDir")
- require.NoError(t, err)
+ assert.NilError(t, err)
defer os.RemoveAll(destDir)
creationSize, err := prepareUntarSourceDirectory(100, destDir, true)
- require.NoError(t, err)
+ assert.NilError(t, err)
changes, err := ChangesDirs(destDir, srcDir)
- require.NoError(t, err)
+ assert.NilError(t, err)
got := ChangesSize(destDir, changes)
if got != int64(creationSize) {
@@ -460,14 +460,14 @@ func TestChangesSizeWithOnlyDeleteChanges(t *testing.T) {
func TestChangesSize(t *testing.T) {
parentPath, err := ioutil.TempDir("", "docker-changes-test")
- require.NoError(t, err)
+ assert.NilError(t, err)
defer os.RemoveAll(parentPath)
addition := path.Join(parentPath, "addition")
err = ioutil.WriteFile(addition, []byte{0x01, 0x01, 0x01}, 0744)
- require.NoError(t, err)
+ assert.NilError(t, err)
modification := path.Join(parentPath, "modification")
err = ioutil.WriteFile(modification, []byte{0x01, 0x01, 0x01}, 0744)
- require.NoError(t, err)
+ assert.NilError(t, err)
changes := []Change{
{Path: "addition", Kind: ChangeAdd},
diff --git a/pkg/archive/copy_unix_test.go b/pkg/archive/copy_unix_test.go
index 3126d8b51e..08b1702cf1 100644
--- a/pkg/archive/copy_unix_test.go
+++ b/pkg/archive/copy_unix_test.go
@@ -16,7 +16,7 @@ import (
"strings"
"testing"
- "github.com/stretchr/testify/require"
+ "github.com/gotestyourself/gotestyourself/assert"
)
func removeAllPaths(paths ...string) {
@@ -29,10 +29,10 @@ func getTestTempDirs(t *testing.T) (tmpDirA, tmpDirB string) {
var err error
tmpDirA, err = ioutil.TempDir("", "archive-copy-test")
- require.NoError(t, err)
+ assert.NilError(t, err)
tmpDirB, err = ioutil.TempDir("", "archive-copy-test")
- require.NoError(t, err)
+ assert.NilError(t, err)
return
}
@@ -119,7 +119,7 @@ func logDirContents(t *testing.T, dirPath string) {
t.Logf("logging directory contents: %q", dirPath)
err := filepath.Walk(dirPath, logWalkedPaths)
- require.NoError(t, err)
+ assert.NilError(t, err)
}
func testCopyHelper(t *testing.T, srcPath, dstPath string) (err error) {
@@ -293,7 +293,7 @@ func TestCopyCaseA(t *testing.T) {
}
err = fileContentsEqual(t, srcPath, dstPath)
- require.NoError(t, err)
+ assert.NilError(t, err)
os.Remove(dstPath)
symlinkPath := filepath.Join(tmpDirA, "symlink3")
@@ -305,14 +305,14 @@ func TestCopyCaseA(t *testing.T) {
}
err = fileContentsEqual(t, linkTarget, dstPath)
- require.NoError(t, err)
+ assert.NilError(t, err)
os.Remove(dstPath)
if err = testCopyHelperFSym(t, symlinkPath1, dstPath); err != nil {
t.Fatalf("unexpected error %T: %s", err, err)
}
err = fileContentsEqual(t, linkTarget, dstPath)
- require.NoError(t, err)
+ assert.NilError(t, err)
}
// B. SRC specifies a file and DST (with trailing path separator) doesn't
@@ -374,7 +374,7 @@ func TestCopyCaseC(t *testing.T) {
}
err = fileContentsEqual(t, srcPath, dstPath)
- require.NoError(t, err)
+ assert.NilError(t, err)
}
// C. Symbol link following version:
@@ -411,7 +411,7 @@ func TestCopyCaseCFSym(t *testing.T) {
}
err = fileContentsEqual(t, linkTarget, dstPath)
- require.NoError(t, err)
+ assert.NilError(t, err)
}
// D. SRC specifies a file and DST exists as a directory. This should place
@@ -441,7 +441,7 @@ func TestCopyCaseD(t *testing.T) {
}
err = fileContentsEqual(t, srcPath, dstPath)
- require.NoError(t, err)
+ assert.NilError(t, err)
// Now try again but using a trailing path separator for dstDir.
@@ -460,7 +460,7 @@ func TestCopyCaseD(t *testing.T) {
}
err = fileContentsEqual(t, srcPath, dstPath)
- require.NoError(t, err)
+ assert.NilError(t, err)
}
// D. Symbol link following version:
@@ -492,7 +492,7 @@ func TestCopyCaseDFSym(t *testing.T) {
}
err = fileContentsEqual(t, linkTarget, dstPath)
- require.NoError(t, err)
+ assert.NilError(t, err)
// Now try again but using a trailing path separator for dstDir.
@@ -511,7 +511,7 @@ func TestCopyCaseDFSym(t *testing.T) {
}
err = fileContentsEqual(t, linkTarget, dstPath)
- require.NoError(t, err)
+ assert.NilError(t, err)
}
// E. SRC specifies a directory and DST does not exist. This should create a
@@ -554,7 +554,7 @@ func TestCopyCaseE(t *testing.T) {
}
err = dirContentsEqual(t, dstDir, srcDir)
- require.NoError(t, err)
+ assert.NilError(t, err)
}
// E. Symbol link following version:
@@ -599,7 +599,7 @@ func TestCopyCaseEFSym(t *testing.T) {
}
err = dirContentsEqual(t, dstDir, linkTarget)
- require.NoError(t, err)
+ assert.NilError(t, err)
}
// F. SRC specifies a directory and DST exists as a file. This should cause an
@@ -658,7 +658,7 @@ func TestCopyCaseG(t *testing.T) {
}
err = dirContentsEqual(t, resultDir, srcDir)
- require.NoError(t, err)
+ assert.NilError(t, err)
// Now try again but using a trailing path separator for dstDir.
@@ -677,7 +677,7 @@ func TestCopyCaseG(t *testing.T) {
}
err = dirContentsEqual(t, resultDir, srcDir)
- require.NoError(t, err)
+ assert.NilError(t, err)
}
// G. Symbol link version:
@@ -704,7 +704,7 @@ func TestCopyCaseGFSym(t *testing.T) {
}
err = dirContentsEqual(t, resultDir, linkTarget)
- require.NoError(t, err)
+ assert.NilError(t, err)
// Now try again but using a trailing path separator for dstDir.
@@ -723,7 +723,7 @@ func TestCopyCaseGFSym(t *testing.T) {
}
err = dirContentsEqual(t, resultDir, linkTarget)
- require.NoError(t, err)
+ assert.NilError(t, err)
}
// H. SRC specifies a directory's contents only and DST does not exist. This
@@ -884,7 +884,7 @@ func TestCopyCaseJ(t *testing.T) {
}
err = dirContentsEqual(t, dstDir, srcDir)
- require.NoError(t, err)
+ assert.NilError(t, err)
// Now try again but using a trailing path separator for dstDir.
@@ -903,7 +903,7 @@ func TestCopyCaseJ(t *testing.T) {
}
err = dirContentsEqual(t, dstDir, srcDir)
- require.NoError(t, err)
+ assert.NilError(t, err)
}
// J. Symbol link following version:
@@ -935,7 +935,7 @@ func TestCopyCaseJFSym(t *testing.T) {
}
err = dirContentsEqual(t, dstDir, linkTarget)
- require.NoError(t, err)
+ assert.NilError(t, err)
// Now try again but using a trailing path separator for dstDir.
@@ -954,5 +954,5 @@ func TestCopyCaseJFSym(t *testing.T) {
}
err = dirContentsEqual(t, dstDir, linkTarget)
- require.NoError(t, err)
+ assert.NilError(t, err)
}
diff --git a/pkg/archive/wrap_test.go b/pkg/archive/wrap_test.go
index 6decf8fccb..979536777f 100644
--- a/pkg/archive/wrap_test.go
+++ b/pkg/archive/wrap_test.go
@@ -6,12 +6,12 @@ import (
"io"
"testing"
- "github.com/stretchr/testify/require"
+ "github.com/gotestyourself/gotestyourself/assert"
)
func TestGenerateEmptyFile(t *testing.T) {
archive, err := Generate("emptyFile")
- require.NoError(t, err)
+ assert.NilError(t, err)
if archive == nil {
t.Fatal("The generated archive should not be nil.")
}
@@ -28,7 +28,7 @@ func TestGenerateEmptyFile(t *testing.T) {
if err == io.EOF {
break
}
- require.NoError(t, err)
+ assert.NilError(t, err)
buf := new(bytes.Buffer)
buf.ReadFrom(tr)
content := buf.String()
@@ -52,7 +52,7 @@ func TestGenerateEmptyFile(t *testing.T) {
func TestGenerateWithContent(t *testing.T) {
archive, err := Generate("file", "content")
- require.NoError(t, err)
+ assert.NilError(t, err)
if archive == nil {
t.Fatal("The generated archive should not be nil.")
}
@@ -69,7 +69,7 @@ func TestGenerateWithContent(t *testing.T) {
if err == io.EOF {
break
}
- require.NoError(t, err)
+ assert.NilError(t, err)
buf := new(bytes.Buffer)
buf.ReadFrom(tr)
content := buf.String()
diff --git a/pkg/authorization/api_test.go b/pkg/authorization/api_test.go
index 90a984276d..84964d2c5e 100644
--- a/pkg/authorization/api_test.go
+++ b/pkg/authorization/api_test.go
@@ -11,7 +11,8 @@ import (
"testing"
"time"
- "github.com/stretchr/testify/require"
+ "github.com/gotestyourself/gotestyourself/assert"
+ is "github.com/gotestyourself/gotestyourself/assert/cmp"
)
func TestPeerCertificateMarshalJSON(t *testing.T) {
@@ -32,21 +33,21 @@ func TestPeerCertificateMarshalJSON(t *testing.T) {
}
// generate private key
privatekey, err := rsa.GenerateKey(rand.Reader, 2048)
- require.NoError(t, err)
+ assert.NilError(t, err)
publickey := &privatekey.PublicKey
// create a self-signed certificate. template = parent
var parent = template
raw, err := x509.CreateCertificate(rand.Reader, template, parent, publickey, privatekey)
- require.NoError(t, err)
+ assert.NilError(t, err)
cert, err := x509.ParseCertificate(raw)
- require.NoError(t, err)
+ assert.NilError(t, err)
var certs = []*x509.Certificate{cert}
addr := "www.authz.com/auth"
req, err := http.NewRequest("GET", addr, nil)
- require.NoError(t, err)
+ assert.NilError(t, err)
req.RequestURI = addr
req.TLS = &tls.ConnectionState{}
@@ -58,15 +59,15 @@ func TestPeerCertificateMarshalJSON(t *testing.T) {
t.Run("Marshalling :", func(t *testing.T) {
raw, err = pcObj.MarshalJSON()
- require.NotNil(t, raw)
- require.Nil(t, err)
+ assert.Assert(t, raw != nil)
+ assert.NilError(t, err)
})
t.Run("UnMarshalling :", func(t *testing.T) {
err := pcObj.UnmarshalJSON(raw)
- require.Nil(t, err)
- require.Equal(t, "Earth", pcObj.Subject.Country[0])
- require.Equal(t, true, pcObj.IsCA)
+ assert.Assert(t, is.Nil(err))
+ assert.Equal(t, "Earth", pcObj.Subject.Country[0])
+ assert.Equal(t, true, pcObj.IsCA)
})
diff --git a/pkg/authorization/middleware_test.go b/pkg/authorization/middleware_test.go
index 3812d804e3..e32e4bf427 100644
--- a/pkg/authorization/middleware_test.go
+++ b/pkg/authorization/middleware_test.go
@@ -7,7 +7,7 @@ import (
"testing"
"github.com/docker/docker/pkg/plugingetter"
- "github.com/stretchr/testify/require"
+ "github.com/gotestyourself/gotestyourself/assert"
)
func TestMiddleware(t *testing.T) {
@@ -15,9 +15,9 @@ func TestMiddleware(t *testing.T) {
var pluginGetter plugingetter.PluginGetter
m := NewMiddleware(pluginNames, pluginGetter)
authPlugins := m.getAuthzPlugins()
- require.Equal(t, 2, len(authPlugins))
- require.EqualValues(t, pluginNames[0], authPlugins[0].Name())
- require.EqualValues(t, pluginNames[1], authPlugins[1].Name())
+ assert.Equal(t, 2, len(authPlugins))
+ assert.Equal(t, pluginNames[0], authPlugins[0].Name())
+ assert.Equal(t, pluginNames[1], authPlugins[1].Name())
}
func TestNewResponseModifier(t *testing.T) {
@@ -25,17 +25,17 @@ func TestNewResponseModifier(t *testing.T) {
modifier := NewResponseModifier(recorder)
modifier.Header().Set("H1", "V1")
modifier.Write([]byte("body"))
- require.False(t, modifier.Hijacked())
+ assert.Assert(t, !modifier.Hijacked())
modifier.WriteHeader(http.StatusInternalServerError)
- require.NotNil(t, modifier.RawBody())
+ assert.Assert(t, modifier.RawBody() != nil)
raw, err := modifier.RawHeaders()
- require.NotNil(t, raw)
- require.Nil(t, err)
+ assert.Assert(t, raw != nil)
+ assert.NilError(t, err)
headerData := strings.Split(strings.TrimSpace(string(raw)), ":")
- require.EqualValues(t, "H1", strings.TrimSpace(headerData[0]))
- require.EqualValues(t, "V1", strings.TrimSpace(headerData[1]))
+ assert.Equal(t, "H1", strings.TrimSpace(headerData[0]))
+ assert.Equal(t, "V1", strings.TrimSpace(headerData[1]))
modifier.Flush()
modifier.FlushAll()
diff --git a/pkg/authorization/middleware_unix_test.go b/pkg/authorization/middleware_unix_test.go
index 257832b338..ddfe9d958f 100644
--- a/pkg/authorization/middleware_unix_test.go
+++ b/pkg/authorization/middleware_unix_test.go
@@ -8,7 +8,8 @@ import (
"testing"
"github.com/docker/docker/pkg/plugingetter"
- "github.com/stretchr/testify/require"
+ "github.com/gotestyourself/gotestyourself/assert"
+ is "github.com/gotestyourself/gotestyourself/assert/cmp"
"golang.org/x/net/context"
)
@@ -30,7 +31,7 @@ func TestMiddlewareWrapHandler(t *testing.T) {
middleWare.SetPlugins([]string{"My Test Plugin"})
setAuthzPlugins(middleWare, authList)
mdHandler := middleWare.WrapHandler(handler)
- require.NotNil(t, mdHandler)
+ assert.Assert(t, mdHandler != nil)
addr := "www.example.com/auth"
req, _ := http.NewRequest("GET", addr, nil)
@@ -46,7 +47,7 @@ func TestMiddlewareWrapHandler(t *testing.T) {
Msg: "Server Auth Not Allowed",
}
if err := mdHandler(ctx, resp, req, map[string]string{}); err == nil {
- require.Error(t, err)
+ assert.Assert(t, is.ErrorContains(err, ""))
}
})
@@ -57,7 +58,7 @@ func TestMiddlewareWrapHandler(t *testing.T) {
Msg: "Server Auth Allowed",
}
if err := mdHandler(ctx, resp, req, map[string]string{}); err != nil {
- require.NoError(t, err)
+ assert.NilError(t, err)
}
})
diff --git a/pkg/fileutils/fileutils_test.go b/pkg/fileutils/fileutils_test.go
index 0a648d1466..b167538d5a 100644
--- a/pkg/fileutils/fileutils_test.go
+++ b/pkg/fileutils/fileutils_test.go
@@ -10,8 +10,8 @@ import (
"strings"
"testing"
- "github.com/stretchr/testify/assert"
- "github.com/stretchr/testify/require"
+ "github.com/gotestyourself/gotestyourself/assert"
+ is "github.com/gotestyourself/gotestyourself/assert/cmp"
)
// CopyFile with invalid src
@@ -384,9 +384,9 @@ func TestMatches(t *testing.T) {
for _, test := range tests {
desc := fmt.Sprintf("pattern=%q text=%q", test.pattern, test.text)
pm, err := NewPatternMatcher([]string{test.pattern})
- require.NoError(t, err, desc)
+ assert.NilError(t, err, desc)
res, _ := pm.Matches(test.text)
- assert.Equal(t, test.pass, res, desc)
+ assert.Check(t, is.Equal(test.pass, res), desc)
}
}
diff --git a/pkg/idtools/idtools_unix_test.go b/pkg/idtools/idtools_unix_test.go
index 931e332bb9..e493b9e8d5 100644
--- a/pkg/idtools/idtools_unix_test.go
+++ b/pkg/idtools/idtools_unix_test.go
@@ -10,9 +10,9 @@ import (
"path/filepath"
"testing"
+ "github.com/gotestyourself/gotestyourself/assert"
+ is "github.com/gotestyourself/gotestyourself/assert/cmp"
"github.com/gotestyourself/gotestyourself/skip"
- "github.com/stretchr/testify/assert"
- "github.com/stretchr/testify/require"
"golang.org/x/sys/unix"
)
@@ -89,7 +89,7 @@ func TestMkdirAllAndChown(t *testing.T) {
func TestMkdirAllAndChownNew(t *testing.T) {
RequiresRoot(t)
dirName, err := ioutil.TempDir("", "mkdirnew")
- require.NoError(t, err)
+ assert.NilError(t, err)
defer os.RemoveAll(dirName)
testTree := map[string]node{
@@ -99,32 +99,32 @@ func TestMkdirAllAndChownNew(t *testing.T) {
"lib/x86_64": {45, 45},
"lib/x86_64/share": {1, 1},
}
- require.NoError(t, buildTree(dirName, testTree))
+ assert.NilError(t, buildTree(dirName, testTree))
// test adding a directory to a pre-existing dir; only the new dir is owned by the uid/gid
err = MkdirAllAndChownNew(filepath.Join(dirName, "usr", "share"), 0755, IDPair{UID: 99, GID: 99})
- require.NoError(t, err)
+ assert.NilError(t, err)
testTree["usr/share"] = node{99, 99}
verifyTree, err := readTree(dirName, "")
- require.NoError(t, err)
- require.NoError(t, compareTrees(testTree, verifyTree))
+ assert.NilError(t, err)
+ assert.NilError(t, compareTrees(testTree, verifyTree))
// test 2-deep new directories--both should be owned by the uid/gid pair
err = MkdirAllAndChownNew(filepath.Join(dirName, "lib", "some", "other"), 0755, IDPair{UID: 101, GID: 101})
- require.NoError(t, err)
+ assert.NilError(t, err)
testTree["lib/some"] = node{101, 101}
testTree["lib/some/other"] = node{101, 101}
verifyTree, err = readTree(dirName, "")
- require.NoError(t, err)
- require.NoError(t, compareTrees(testTree, verifyTree))
+ assert.NilError(t, err)
+ assert.NilError(t, compareTrees(testTree, verifyTree))
// test a directory that already exists; should NOT be chowned
err = MkdirAllAndChownNew(filepath.Join(dirName, "usr"), 0755, IDPair{UID: 102, GID: 102})
- require.NoError(t, err)
+ assert.NilError(t, err)
verifyTree, err = readTree(dirName, "")
- require.NoError(t, err)
- require.NoError(t, compareTrees(testTree, verifyTree))
+ assert.NilError(t, err)
+ assert.NilError(t, compareTrees(testTree, verifyTree))
}
func TestMkdirAndChown(t *testing.T) {
@@ -235,7 +235,7 @@ func compareTrees(left, right map[string]node) error {
func delUser(t *testing.T, name string) {
_, err := execCmd("userdel", name)
- assert.NoError(t, err)
+ assert.Check(t, err)
}
func TestParseSubidFileWithNewlinesAndComments(t *testing.T) {
@@ -283,9 +283,9 @@ func TestGetRootUIDGID(t *testing.T) {
}
uid, gid, err := GetRootUIDGID(uidMap, gidMap)
- assert.NoError(t, err)
- assert.Equal(t, os.Getegid(), uid)
- assert.Equal(t, os.Getegid(), gid)
+ assert.Check(t, err)
+ assert.Check(t, is.Equal(os.Getegid(), uid))
+ assert.Check(t, is.Equal(os.Getegid(), gid))
uidMapError := []IDMap{
{
@@ -295,7 +295,7 @@ func TestGetRootUIDGID(t *testing.T) {
},
}
_, _, err = GetRootUIDGID(uidMapError, gidMap)
- assert.EqualError(t, err, "Container ID 0 cannot be mapped to a host ID")
+ assert.Check(t, is.Error(err, "Container ID 0 cannot be mapped to a host ID"))
}
func TestToContainer(t *testing.T) {
@@ -308,74 +308,74 @@ func TestToContainer(t *testing.T) {
}
containerID, err := toContainer(2, uidMap)
- assert.NoError(t, err)
- assert.Equal(t, uidMap[0].ContainerID, containerID)
+ assert.Check(t, err)
+ assert.Check(t, is.Equal(uidMap[0].ContainerID, containerID))
}
func TestNewIDMappings(t *testing.T) {
RequiresRoot(t)
_, _, err := AddNamespaceRangesUser(tempUser)
- assert.NoError(t, err)
+ assert.Check(t, err)
defer delUser(t, tempUser)
tempUser, err := user.Lookup(tempUser)
- assert.NoError(t, err)
+ assert.Check(t, err)
gids, err := tempUser.GroupIds()
- assert.NoError(t, err)
+ assert.Check(t, err)
group, err := user.LookupGroupId(string(gids[0]))
- assert.NoError(t, err)
+ assert.Check(t, err)
idMappings, err := NewIDMappings(tempUser.Username, group.Name)
- assert.NoError(t, err)
+ assert.Check(t, err)
rootUID, rootGID, err := GetRootUIDGID(idMappings.UIDs(), idMappings.GIDs())
- assert.NoError(t, err)
+ assert.Check(t, err)
dirName, err := ioutil.TempDir("", "mkdirall")
- assert.NoError(t, err, "Couldn't create temp directory")
+ assert.Check(t, err, "Couldn't create temp directory")
defer os.RemoveAll(dirName)
err = MkdirAllAndChown(dirName, 0700, IDPair{UID: rootUID, GID: rootGID})
- assert.NoError(t, err, "Couldn't change ownership of file path. Got error")
- assert.True(t, CanAccess(dirName, idMappings.RootPair()), fmt.Sprintf("Unable to access %s directory with user UID:%d and GID:%d", dirName, rootUID, rootGID))
+ assert.Check(t, err, "Couldn't change ownership of file path. Got error")
+ assert.Check(t, CanAccess(dirName, idMappings.RootPair()), fmt.Sprintf("Unable to access %s directory with user UID:%d and GID:%d", dirName, rootUID, rootGID))
}
func TestLookupUserAndGroup(t *testing.T) {
RequiresRoot(t)
uid, gid, err := AddNamespaceRangesUser(tempUser)
- assert.NoError(t, err)
+ assert.Check(t, err)
defer delUser(t, tempUser)
fetchedUser, err := LookupUser(tempUser)
- assert.NoError(t, err)
+ assert.Check(t, err)
fetchedUserByID, err := LookupUID(uid)
- assert.NoError(t, err)
- assert.Equal(t, fetchedUserByID, fetchedUser)
+ assert.Check(t, err)
+ assert.Check(t, is.DeepEqual(fetchedUserByID, fetchedUser))
fetchedGroup, err := LookupGroup(tempUser)
- assert.NoError(t, err)
+ assert.Check(t, err)
fetchedGroupByID, err := LookupGID(gid)
- assert.NoError(t, err)
- assert.Equal(t, fetchedGroupByID, fetchedGroup)
+ assert.Check(t, err)
+ assert.Check(t, is.DeepEqual(fetchedGroupByID, fetchedGroup))
}
func TestLookupUserAndGroupThatDoesNotExist(t *testing.T) {
fakeUser := "fakeuser"
_, err := LookupUser(fakeUser)
- assert.EqualError(t, err, "getent unable to find entry \""+fakeUser+"\" in passwd database")
+ assert.Check(t, is.Error(err, "getent unable to find entry \""+fakeUser+"\" in passwd database"))
_, err = LookupUID(-1)
- assert.Error(t, err)
+ assert.Check(t, is.ErrorContains(err, ""))
fakeGroup := "fakegroup"
_, err = LookupGroup(fakeGroup)
- assert.EqualError(t, err, "getent unable to find entry \""+fakeGroup+"\" in group database")
+ assert.Check(t, is.Error(err, "getent unable to find entry \""+fakeGroup+"\" in group database"))
_, err = LookupGID(-1)
- assert.Error(t, err)
+ assert.Check(t, is.ErrorContains(err, ""))
}
// TestMkdirIsNotDir checks that mkdirAs() function (used by MkdirAll...)
@@ -389,7 +389,7 @@ func TestMkdirIsNotDir(t *testing.T) {
defer os.Remove(file.Name())
err = mkdirAs(file.Name(), 0755, 0, 0, false, false)
- assert.EqualError(t, err, "mkdir "+file.Name()+": not a directory")
+ assert.Check(t, is.Error(err, "mkdir "+file.Name()+": not a directory"))
}
func RequiresRoot(t *testing.T) {
diff --git a/pkg/ioutils/readers_test.go b/pkg/ioutils/readers_test.go
index e322fdf840..e009ab26f6 100644
--- a/pkg/ioutils/readers_test.go
+++ b/pkg/ioutils/readers_test.go
@@ -7,7 +7,8 @@ import (
"testing"
"time"
- "github.com/stretchr/testify/assert"
+ "github.com/gotestyourself/gotestyourself/assert"
+ is "github.com/gotestyourself/gotestyourself/assert/cmp"
"golang.org/x/net/context"
)
@@ -36,7 +37,7 @@ func TestReaderErrWrapperReadOnError(t *testing.T) {
called = true
})
_, err := wrapper.Read([]byte{})
- assert.EqualError(t, err, "error reader always fail")
+ assert.Check(t, is.Error(err, "error reader always fail"))
if !called {
t.Fatalf("readErrWrapper should have call the anonymous function on failure")
}
diff --git a/pkg/jsonmessage/jsonmessage_test.go b/pkg/jsonmessage/jsonmessage_test.go
index 2bad8a2025..ab1d879c5a 100644
--- a/pkg/jsonmessage/jsonmessage_test.go
+++ b/pkg/jsonmessage/jsonmessage_test.go
@@ -9,7 +9,8 @@ import (
"time"
"github.com/docker/docker/pkg/term"
- "github.com/stretchr/testify/assert"
+ "github.com/gotestyourself/gotestyourself/assert"
+ is "github.com/gotestyourself/gotestyourself/assert/cmp"
)
func TestError(t *testing.T) {
@@ -198,7 +199,7 @@ func TestJSONMessageDisplayWithJSONError(t *testing.T) {
jsonMessage = JSONMessage{Error: &JSONError{401, "Anything"}}
err = jsonMessage.Display(data, &noTermInfo{})
- assert.EqualError(t, err, "authentication is required")
+ assert.Check(t, is.Error(err, "authentication is required"))
}
func TestDisplayJSONMessagesStreamInvalidJSON(t *testing.T) {
diff --git a/pkg/plugins/client_test.go b/pkg/plugins/client_test.go
index 10c8d8fd56..d420010f1a 100644
--- a/pkg/plugins/client_test.go
+++ b/pkg/plugins/client_test.go
@@ -14,9 +14,9 @@ import (
"github.com/docker/docker/pkg/plugins/transport"
"github.com/docker/go-connections/tlsconfig"
+ "github.com/gotestyourself/gotestyourself/assert"
+ is "github.com/gotestyourself/gotestyourself/assert/cmp"
"github.com/pkg/errors"
- "github.com/stretchr/testify/assert"
- "github.com/stretchr/testify/require"
)
var (
@@ -88,7 +88,7 @@ func TestEchoInputOutput(t *testing.T) {
t.Fatal(err)
}
- assert.Equal(t, m, output)
+ assert.Check(t, is.DeepEqual(m, output))
err = c.Call("Test.Echo", nil, nil)
if err != nil {
t.Fatal(err)
@@ -205,7 +205,7 @@ func TestClientStream(t *testing.T) {
if err := json.NewDecoder(body).Decode(&output); err != nil {
t.Fatalf("Test.Echo: error reading plugin resp: %v", err)
}
- assert.Equal(t, m, output)
+ assert.Check(t, is.DeepEqual(m, output))
}
func TestClientSendFile(t *testing.T) {
@@ -233,7 +233,7 @@ func TestClientSendFile(t *testing.T) {
if err := c.SendFile("Test.Echo", &buf, &output); err != nil {
t.Fatal(err)
}
- assert.Equal(t, m, output)
+ assert.Check(t, is.DeepEqual(m, output))
}
func TestClientWithRequestTimeout(t *testing.T) {
@@ -248,7 +248,7 @@ func TestClientWithRequestTimeout(t *testing.T) {
client := &Client{http: srv.Client(), requestFactory: &testRequestWrapper{srv}}
_, err := client.callWithRetry("/Plugin.Hello", nil, false, WithRequestTimeout(timeout))
- require.Error(t, err, "expected error")
+ assert.Assert(t, is.ErrorContains(err, ""), "expected error")
err = errors.Cause(err)
@@ -256,7 +256,7 @@ func TestClientWithRequestTimeout(t *testing.T) {
case *url.Error:
err = e.Err
}
- require.Equal(t, context.DeadlineExceeded, err)
+ assert.DeepEqual(t, context.DeadlineExceeded, err)
}
type testRequestWrapper struct {
diff --git a/pkg/plugins/discovery_unix_test.go b/pkg/plugins/discovery_unix_test.go
index 9212946b2e..2c718d8bee 100644
--- a/pkg/plugins/discovery_unix_test.go
+++ b/pkg/plugins/discovery_unix_test.go
@@ -11,7 +11,7 @@ import (
"reflect"
"testing"
- "github.com/stretchr/testify/require"
+ "github.com/gotestyourself/gotestyourself/assert"
)
func TestLocalSocket(t *testing.T) {
@@ -91,7 +91,7 @@ func TestScan(t *testing.T) {
r := newLocalRegistry()
p, err := r.Plugin(name)
- require.NoError(t, err)
+ assert.NilError(t, err)
pluginNamesNotEmpty, err := Scan()
if err != nil {
diff --git a/pkg/plugins/plugin_test.go b/pkg/plugins/plugin_test.go
index 1540a19a64..0efd5e3aa0 100644
--- a/pkg/plugins/plugin_test.go
+++ b/pkg/plugins/plugin_test.go
@@ -14,8 +14,9 @@ import (
"github.com/docker/docker/pkg/plugins/transport"
"github.com/docker/go-connections/tlsconfig"
+ "github.com/gotestyourself/gotestyourself/assert"
+ is "github.com/gotestyourself/gotestyourself/assert/cmp"
"github.com/pkg/errors"
- "github.com/stretchr/testify/assert"
)
const (
@@ -78,11 +79,11 @@ func TestGet(t *testing.T) {
// check negative case where plugin fruit doesn't implement banana
_, err = Get("fruit", "banana")
- assert.Equal(t, errors.Cause(err), ErrNotImplements)
+ assert.Check(t, is.DeepEqual(errors.Cause(err), ErrNotImplements))
// check negative case where plugin vegetable doesn't exist
_, err = Get("vegetable", "potato")
- assert.Equal(t, errors.Cause(err), ErrNotFound)
+ assert.Check(t, is.DeepEqual(errors.Cause(err), ErrNotFound))
}
diff --git a/pkg/plugins/transport/http_test.go b/pkg/plugins/transport/http_test.go
index 2e48b0fe0a..081f60424d 100644
--- a/pkg/plugins/transport/http_test.go
+++ b/pkg/plugins/transport/http_test.go
@@ -5,7 +5,8 @@ import (
"net/http"
"testing"
- "github.com/stretchr/testify/assert"
+ "github.com/gotestyourself/gotestyourself/assert"
+ is "github.com/gotestyourself/gotestyourself/assert/cmp"
)
func TestHTTPTransport(t *testing.T) {
@@ -16,5 +17,5 @@ func TestHTTPTransport(t *testing.T) {
if err != nil {
t.Fatal(err)
}
- assert.Equal(t, "POST", request.Method)
+ assert.Check(t, is.Equal("POST", request.Method))
}
diff --git a/pkg/pools/pools_test.go b/pkg/pools/pools_test.go
index 2dbea36ae0..76015169d4 100644
--- a/pkg/pools/pools_test.go
+++ b/pkg/pools/pools_test.go
@@ -7,8 +7,8 @@ import (
"strings"
"testing"
- "github.com/stretchr/testify/assert"
- "github.com/stretchr/testify/require"
+ "github.com/gotestyourself/gotestyourself/assert"
+ is "github.com/gotestyourself/gotestyourself/assert/cmp"
)
func TestBufioReaderPoolGetWithNoReaderShouldCreateOne(t *testing.T) {
@@ -95,16 +95,16 @@ func TestBufioWriterPoolPutAndGet(t *testing.T) {
buf := new(bytes.Buffer)
bw := bufio.NewWriter(buf)
writer := BufioWriter32KPool.Get(bw)
- require.NotNil(t, writer)
+ assert.Assert(t, writer != nil)
written, err := writer.Write([]byte("foobar"))
- require.NoError(t, err)
- assert.Equal(t, 6, written)
+ assert.NilError(t, err)
+ assert.Check(t, is.Equal(6, written))
// Make sure we Flush all the way ?
writer.Flush()
bw.Flush()
- assert.Len(t, buf.Bytes(), 6)
+ assert.Check(t, is.Len(buf.Bytes(), 6))
// Reset the buffer
buf.Reset()
BufioWriter32KPool.Put(writer)
diff --git a/pkg/reexec/reexec_test.go b/pkg/reexec/reexec_test.go
index e6bbe9f9a0..90aa01a390 100644
--- a/pkg/reexec/reexec_test.go
+++ b/pkg/reexec/reexec_test.go
@@ -5,8 +5,7 @@ import (
"os/exec"
"testing"
- "github.com/stretchr/testify/assert"
- "github.com/stretchr/testify/require"
+ "github.com/gotestyourself/gotestyourself/assert"
)
func init() {
@@ -19,7 +18,7 @@ func init() {
func TestRegister(t *testing.T) {
defer func() {
if r := recover(); r != nil {
- require.Equal(t, `reexec func already registered under name "reexec"`, r)
+ assert.Equal(t, `reexec func already registered under name "reexec"`, r)
}
}()
Register("reexec", func() {})
@@ -28,13 +27,13 @@ func TestRegister(t *testing.T) {
func TestCommand(t *testing.T) {
cmd := Command("reexec")
w, err := cmd.StdinPipe()
- require.NoError(t, err, "Error on pipe creation: %v", err)
+ assert.NilError(t, err, "Error on pipe creation: %v", err)
defer w.Close()
err = cmd.Start()
- require.NoError(t, err, "Error on re-exec cmd: %v", err)
+ assert.NilError(t, err, "Error on re-exec cmd: %v", err)
err = cmd.Wait()
- require.EqualError(t, err, "exit status 2")
+ assert.Error(t, err, "exit status 2")
}
func TestNaiveSelf(t *testing.T) {
@@ -44,10 +43,10 @@ func TestNaiveSelf(t *testing.T) {
cmd := exec.Command(naiveSelf(), "-test.run=TestNaiveSelf")
cmd.Env = append(os.Environ(), "TEST_CHECK=1")
err := cmd.Start()
- require.NoError(t, err, "Unable to start command")
+ assert.NilError(t, err, "Unable to start command")
err = cmd.Wait()
- require.EqualError(t, err, "exit status 2")
+ assert.Error(t, err, "exit status 2")
os.Args[0] = "mkdir"
- assert.NotEqual(t, naiveSelf(), os.Args[0])
+ assert.Check(t, naiveSelf() != os.Args[0])
}
diff --git a/pkg/signal/signal_linux_test.go b/pkg/signal/signal_linux_test.go
index d7e8da2523..71c577ed64 100644
--- a/pkg/signal/signal_linux_test.go
+++ b/pkg/signal/signal_linux_test.go
@@ -8,7 +8,8 @@ import (
"testing"
"time"
- "github.com/stretchr/testify/assert"
+ "github.com/gotestyourself/gotestyourself/assert"
+ is "github.com/gotestyourself/gotestyourself/assert/cmp"
)
func TestCatchAll(t *testing.T) {
@@ -34,7 +35,7 @@ func TestCatchAll(t *testing.T) {
}()
s := <-sigs
- assert.EqualValues(t, s.String(), signal.String())
+ assert.Check(t, is.Equal(s.String(), signal.String()))
}
}
@@ -50,9 +51,9 @@ func TestStopCatch(t *testing.T) {
syscall.Kill(syscall.Getpid(), signal)
}()
signalString := <-channel
- assert.EqualValues(t, signalString.String(), signal.String())
+ assert.Check(t, is.Equal(signalString.String(), signal.String()))
StopCatch(channel)
_, ok := <-channel
- assert.EqualValues(t, ok, false)
+ assert.Check(t, is.Equal(ok, false))
}
diff --git a/pkg/signal/signal_test.go b/pkg/signal/signal_test.go
index 1add526d16..bbf3736fc8 100644
--- a/pkg/signal/signal_test.go
+++ b/pkg/signal/signal_test.go
@@ -4,30 +4,31 @@ import (
"syscall"
"testing"
- "github.com/stretchr/testify/assert"
+ "github.com/gotestyourself/gotestyourself/assert"
+ is "github.com/gotestyourself/gotestyourself/assert/cmp"
)
func TestParseSignal(t *testing.T) {
_, checkAtoiError := ParseSignal("0")
- assert.EqualError(t, checkAtoiError, "Invalid signal: 0")
+ assert.Check(t, is.Error(checkAtoiError, "Invalid signal: 0"))
_, error := ParseSignal("SIG")
- assert.EqualError(t, error, "Invalid signal: SIG")
+ assert.Check(t, is.Error(error, "Invalid signal: SIG"))
for sigStr := range SignalMap {
responseSignal, error := ParseSignal(sigStr)
- assert.NoError(t, error)
+ assert.Check(t, error)
signal := SignalMap[sigStr]
- assert.EqualValues(t, signal, responseSignal)
+ assert.Check(t, is.DeepEqual(signal, responseSignal))
}
}
func TestValidSignalForPlatform(t *testing.T) {
isValidSignal := ValidSignalForPlatform(syscall.Signal(0))
- assert.EqualValues(t, false, isValidSignal)
+ assert.Check(t, is.Equal(false, isValidSignal))
for _, sigN := range SignalMap {
isValidSignal = ValidSignalForPlatform(syscall.Signal(sigN))
- assert.EqualValues(t, true, isValidSignal)
+ assert.Check(t, is.Equal(true, isValidSignal))
}
}
diff --git a/pkg/signal/trap_linux_test.go b/pkg/signal/trap_linux_test.go
index d32a4366f4..a3afe7a7b6 100644
--- a/pkg/signal/trap_linux_test.go
+++ b/pkg/signal/trap_linux_test.go
@@ -10,19 +10,19 @@ import (
"syscall"
"testing"
- "github.com/stretchr/testify/assert"
- "github.com/stretchr/testify/require"
+ "github.com/gotestyourself/gotestyourself/assert"
+ is "github.com/gotestyourself/gotestyourself/assert/cmp"
)
func buildTestBinary(t *testing.T, tmpdir string, prefix string) (string, string) {
tmpDir, err := ioutil.TempDir(tmpdir, prefix)
- require.NoError(t, err)
+ assert.NilError(t, err)
exePath := tmpDir + "/" + prefix
wd, _ := os.Getwd()
testHelperCode := wd + "/testfiles/main.go"
cmd := exec.Command("go", "build", "-o", exePath, testHelperCode)
err = cmd.Run()
- require.NoError(t, err)
+ assert.NilError(t, err)
return exePath, tmpDir
}
@@ -48,14 +48,14 @@ func TestTrap(t *testing.T) {
cmd.Env = append(cmd.Env, "IF_MULTIPLE=1")
}
err := cmd.Start()
- require.NoError(t, err)
+ assert.NilError(t, err)
err = cmd.Wait()
if e, ok := err.(*exec.ExitError); ok {
code := e.Sys().(syscall.WaitStatus).ExitStatus()
if v.multiple {
- assert.Equal(t, 128+int(v.signal.(syscall.Signal)), code)
+ assert.Check(t, is.DeepEqual(128+int(v.signal.(syscall.Signal)), code))
} else {
- assert.Equal(t, 99, code)
+ assert.Check(t, is.Equal(99, code))
}
continue
}
@@ -66,17 +66,17 @@ func TestTrap(t *testing.T) {
func TestDumpStacks(t *testing.T) {
directory, err := ioutil.TempDir("", "test-dump-tasks")
- assert.NoError(t, err)
+ assert.Check(t, err)
defer os.RemoveAll(directory)
dumpPath, err := DumpStacks(directory)
- assert.NoError(t, err)
+ assert.Check(t, err)
readFile, _ := ioutil.ReadFile(dumpPath)
fileData := string(readFile)
- assert.Contains(t, fileData, "goroutine")
+ assert.Check(t, is.Contains(fileData, "goroutine"))
}
func TestDumpStacksWithEmptyInput(t *testing.T) {
path, err := DumpStacks("")
- assert.NoError(t, err)
- assert.Equal(t, os.Stderr.Name(), path)
+ assert.Check(t, err)
+ assert.Check(t, is.Equal(os.Stderr.Name(), path))
}
diff --git a/pkg/streamformatter/streamformatter_test.go b/pkg/streamformatter/streamformatter_test.go
index 7259c54df8..e655f9140a 100644
--- a/pkg/streamformatter/streamformatter_test.go
+++ b/pkg/streamformatter/streamformatter_test.go
@@ -8,14 +8,14 @@ import (
"testing"
"github.com/docker/docker/pkg/jsonmessage"
- "github.com/stretchr/testify/assert"
- "github.com/stretchr/testify/require"
+ "github.com/gotestyourself/gotestyourself/assert"
+ is "github.com/gotestyourself/gotestyourself/assert/cmp"
)
func TestRawProgressFormatterFormatStatus(t *testing.T) {
sf := rawProgressFormatter{}
res := sf.formatStatus("ID", "%s%d", "a", 1)
- assert.Equal(t, "a1\r\n", string(res))
+ assert.Check(t, is.Equal("a1\r\n", string(res)))
}
func TestRawProgressFormatterFormatProgress(t *testing.T) {
@@ -27,28 +27,28 @@ func TestRawProgressFormatterFormatProgress(t *testing.T) {
}
res := sf.formatProgress("id", "action", jsonProgress, nil)
out := string(res)
- assert.True(t, strings.HasPrefix(out, "action [===="))
- assert.Contains(t, out, "15B/30B")
- assert.True(t, strings.HasSuffix(out, "\r"))
+ assert.Check(t, strings.HasPrefix(out, "action [===="))
+ assert.Check(t, is.Contains(out, "15B/30B"))
+ assert.Check(t, strings.HasSuffix(out, "\r"))
}
func TestFormatStatus(t *testing.T) {
res := FormatStatus("ID", "%s%d", "a", 1)
expected := `{"status":"a1","id":"ID"}` + streamNewline
- assert.Equal(t, expected, string(res))
+ assert.Check(t, is.Equal(expected, string(res)))
}
func TestFormatError(t *testing.T) {
res := FormatError(errors.New("Error for formatter"))
expected := `{"errorDetail":{"message":"Error for formatter"},"error":"Error for formatter"}` + "\r\n"
- assert.Equal(t, expected, string(res))
+ assert.Check(t, is.Equal(expected, string(res)))
}
func TestFormatJSONError(t *testing.T) {
err := &jsonmessage.JSONError{Code: 50, Message: "Json error"}
res := FormatError(err)
expected := `{"errorDetail":{"code":50,"message":"Json error"},"error":"Json error"}` + streamNewline
- assert.Equal(t, expected, string(res))
+ assert.Check(t, is.Equal(expected, string(res)))
}
func TestJsonProgressFormatterFormatProgress(t *testing.T) {
@@ -61,9 +61,9 @@ func TestJsonProgressFormatterFormatProgress(t *testing.T) {
res := sf.formatProgress("id", "action", jsonProgress, &AuxFormatter{Writer: &bytes.Buffer{}})
msg := &jsonmessage.JSONMessage{}
- require.NoError(t, json.Unmarshal(res, msg))
- assert.Equal(t, "id", msg.ID)
- assert.Equal(t, "action", msg.Status)
+ assert.NilError(t, json.Unmarshal(res, msg))
+ assert.Check(t, is.Equal("id", msg.ID))
+ assert.Check(t, is.Equal("action", msg.Status))
// jsonProgress will always be in the format of:
// [=========================> ] 15B/30B 412910h51m30s
@@ -81,20 +81,20 @@ func TestJsonProgressFormatterFormatProgress(t *testing.T) {
expectedProgress, expectedProgressShort, msg.ProgressMessage)
}
- assert.Equal(t, jsonProgress, msg.Progress)
+ assert.Check(t, is.DeepEqual(jsonProgress, msg.Progress))
}
func TestJsonProgressFormatterFormatStatus(t *testing.T) {
sf := jsonProgressFormatter{}
res := sf.formatStatus("ID", "%s%d", "a", 1)
- assert.Equal(t, `{"status":"a1","id":"ID"}`+streamNewline, string(res))
+ assert.Check(t, is.Equal(`{"status":"a1","id":"ID"}`+streamNewline, string(res)))
}
func TestNewJSONProgressOutput(t *testing.T) {
b := bytes.Buffer{}
b.Write(FormatStatus("id", "Downloading"))
_ = NewJSONProgressOutput(&b, false)
- assert.Equal(t, `{"status":"Downloading","id":"id"}`+streamNewline, b.String())
+ assert.Check(t, is.Equal(`{"status":"Downloading","id":"id"}`+streamNewline, b.String()))
}
func TestAuxFormatterEmit(t *testing.T) {
@@ -104,6 +104,6 @@ func TestAuxFormatterEmit(t *testing.T) {
Data string
}{"Additional data"}
err := aux.Emit(sampleAux)
- require.NoError(t, err)
- assert.Equal(t, `{"aux":{"Data":"Additional data"}}`+streamNewline, b.String())
+ assert.NilError(t, err)
+ assert.Check(t, is.Equal(`{"aux":{"Data":"Additional data"}}`+streamNewline, b.String()))
}
diff --git a/pkg/streamformatter/streamwriter_test.go b/pkg/streamformatter/streamwriter_test.go
index 332d66414f..b74d6fb2d3 100644
--- a/pkg/streamformatter/streamwriter_test.go
+++ b/pkg/streamformatter/streamwriter_test.go
@@ -4,8 +4,8 @@ import (
"bytes"
"testing"
- "github.com/stretchr/testify/assert"
- "github.com/stretchr/testify/require"
+ "github.com/gotestyourself/gotestyourself/assert"
+ is "github.com/gotestyourself/gotestyourself/assert/cmp"
)
func TestStreamWriterStdout(t *testing.T) {
@@ -14,11 +14,11 @@ func TestStreamWriterStdout(t *testing.T) {
sw := NewStdoutWriter(buffer)
size, err := sw.Write([]byte(content))
- require.NoError(t, err)
- assert.Equal(t, len(content), size)
+ assert.NilError(t, err)
+ assert.Check(t, is.Equal(len(content), size))
expected := `{"stream":"content"}` + streamNewline
- assert.Equal(t, expected, buffer.String())
+ assert.Check(t, is.Equal(expected, buffer.String()))
}
func TestStreamWriterStderr(t *testing.T) {
@@ -27,9 +27,9 @@ func TestStreamWriterStderr(t *testing.T) {
sw := NewStderrWriter(buffer)
size, err := sw.Write([]byte(content))
- require.NoError(t, err)
- assert.Equal(t, len(content), size)
+ assert.NilError(t, err)
+ assert.Check(t, is.Equal(len(content), size))
expected := `{"stream":"\u001b[91mcontent\u001b[0m"}` + streamNewline
- assert.Equal(t, expected, buffer.String())
+ assert.Check(t, is.Equal(expected, buffer.String()))
}
diff --git a/pkg/sysinfo/sysinfo_linux_test.go b/pkg/sysinfo/sysinfo_linux_test.go
index a798bf6e85..e8a12a35c9 100644
--- a/pkg/sysinfo/sysinfo_linux_test.go
+++ b/pkg/sysinfo/sysinfo_linux_test.go
@@ -7,18 +7,18 @@ import (
"path/filepath"
"testing"
- "github.com/stretchr/testify/require"
+ "github.com/gotestyourself/gotestyourself/assert"
"golang.org/x/sys/unix"
)
func TestReadProcBool(t *testing.T) {
tmpDir, err := ioutil.TempDir("", "test-sysinfo-proc")
- require.NoError(t, err)
+ assert.NilError(t, err)
defer os.RemoveAll(tmpDir)
procFile := filepath.Join(tmpDir, "read-proc-bool")
err = ioutil.WriteFile(procFile, []byte("1"), 0644)
- require.NoError(t, err)
+ assert.NilError(t, err)
if !readProcBool(procFile) {
t.Fatal("expected proc bool to be true, got false")
@@ -39,7 +39,7 @@ func TestReadProcBool(t *testing.T) {
func TestCgroupEnabled(t *testing.T) {
cgroupDir, err := ioutil.TempDir("", "cgroup-test")
- require.NoError(t, err)
+ assert.NilError(t, err)
defer os.RemoveAll(cgroupDir)
if cgroupEnabled(cgroupDir, "test") {
@@ -47,7 +47,7 @@ func TestCgroupEnabled(t *testing.T) {
}
err = ioutil.WriteFile(path.Join(cgroupDir, "test"), []byte{}, 0644)
- require.NoError(t, err)
+ assert.NilError(t, err)
if !cgroupEnabled(cgroupDir, "test") {
t.Fatal("cgroupEnabled should be true")
@@ -56,11 +56,11 @@ func TestCgroupEnabled(t *testing.T) {
func TestNew(t *testing.T) {
sysInfo := New(false)
- require.NotNil(t, sysInfo)
+ assert.Assert(t, sysInfo != nil)
checkSysInfo(t, sysInfo)
sysInfo = New(true)
- require.NotNil(t, sysInfo)
+ assert.Assert(t, sysInfo != nil)
checkSysInfo(t, sysInfo)
}
@@ -69,10 +69,10 @@ func checkSysInfo(t *testing.T, sysInfo *SysInfo) {
if err := unix.Prctl(unix.PR_GET_SECCOMP, 0, 0, 0, 0); err != unix.EINVAL {
// Make sure the kernel has CONFIG_SECCOMP_FILTER.
if err := unix.Prctl(unix.PR_SET_SECCOMP, unix.SECCOMP_MODE_FILTER, 0, 0, 0); err != unix.EINVAL {
- require.True(t, sysInfo.Seccomp)
+ assert.Assert(t, sysInfo.Seccomp)
}
} else {
- require.False(t, sysInfo.Seccomp)
+ assert.Assert(t, !sysInfo.Seccomp)
}
}
@@ -83,7 +83,7 @@ func TestNewAppArmorEnabled(t *testing.T) {
}
sysInfo := New(true)
- require.True(t, sysInfo.AppArmor)
+ assert.Assert(t, sysInfo.AppArmor)
}
func TestNewAppArmorDisabled(t *testing.T) {
@@ -93,7 +93,7 @@ func TestNewAppArmorDisabled(t *testing.T) {
}
sysInfo := New(true)
- require.False(t, sysInfo.AppArmor)
+ assert.Assert(t, !sysInfo.AppArmor)
}
func TestNumCPU(t *testing.T) {
diff --git a/pkg/system/stat_unix_test.go b/pkg/system/stat_unix_test.go
index 12687b33c1..fd68a96656 100644
--- a/pkg/system/stat_unix_test.go
+++ b/pkg/system/stat_unix_test.go
@@ -7,7 +7,7 @@ import (
"syscall"
"testing"
- "github.com/stretchr/testify/require"
+ "github.com/gotestyourself/gotestyourself/assert"
)
// TestFromStatT tests fromStatT for a tempfile
@@ -17,10 +17,10 @@ func TestFromStatT(t *testing.T) {
stat := &syscall.Stat_t{}
err := syscall.Lstat(file, stat)
- require.NoError(t, err)
+ assert.NilError(t, err)
s, err := fromStatT(stat)
- require.NoError(t, err)
+ assert.NilError(t, err)
if stat.Mode != s.Mode() {
t.Fatal("got invalid mode")
diff --git a/pkg/tarsum/tarsum_test.go b/pkg/tarsum/tarsum_test.go
index 466eda0aec..35f08ebce9 100644
--- a/pkg/tarsum/tarsum_test.go
+++ b/pkg/tarsum/tarsum_test.go
@@ -17,8 +17,8 @@ import (
"strings"
"testing"
- "github.com/stretchr/testify/assert"
- "github.com/stretchr/testify/require"
+ "github.com/gotestyourself/gotestyourself/assert"
+ is "github.com/gotestyourself/gotestyourself/assert/cmp"
)
type testLayer struct {
@@ -225,13 +225,13 @@ func TestNewTarSumForLabel(t *testing.T) {
func TestEmptyTar(t *testing.T) {
// Test without gzip.
ts, err := emptyTarSum(false)
- require.NoError(t, err)
+ assert.NilError(t, err)
zeroBlock := make([]byte, 1024)
buf := new(bytes.Buffer)
n, err := io.Copy(buf, ts)
- require.NoError(t, err)
+ assert.NilError(t, err)
if n != int64(len(zeroBlock)) || !bytes.Equal(buf.Bytes(), zeroBlock) {
t.Fatalf("tarSum did not write the correct number of zeroed bytes: %d", n)
@@ -246,16 +246,16 @@ func TestEmptyTar(t *testing.T) {
// Test with gzip.
ts, err = emptyTarSum(true)
- require.NoError(t, err)
+ assert.NilError(t, err)
buf.Reset()
_, err = io.Copy(buf, ts)
- require.NoError(t, err)
+ assert.NilError(t, err)
bufgz := new(bytes.Buffer)
gz := gzip.NewWriter(bufgz)
n, err = io.Copy(gz, bytes.NewBuffer(zeroBlock))
- require.NoError(t, err)
+ assert.NilError(t, err)
gz.Close()
gzBytes := bufgz.Bytes()
@@ -275,7 +275,7 @@ func TestEmptyTar(t *testing.T) {
}
resultSum = ts.Sum(nil)
- assert.Equal(t, expectedSum, resultSum)
+ assert.Check(t, is.Equal(expectedSum, resultSum))
}
var (
diff --git a/pkg/term/ascii_test.go b/pkg/term/ascii_test.go
index e426de35b4..321d1b87de 100644
--- a/pkg/term/ascii_test.go
+++ b/pkg/term/ascii_test.go
@@ -3,23 +3,23 @@ package term // import "github.com/docker/docker/pkg/term"
import (
"testing"
- "github.com/stretchr/testify/assert"
- "github.com/stretchr/testify/require"
+ "github.com/gotestyourself/gotestyourself/assert"
+ is "github.com/gotestyourself/gotestyourself/assert/cmp"
)
func TestToBytes(t *testing.T) {
codes, err := ToBytes("ctrl-a,a")
- require.NoError(t, err)
- assert.Equal(t, []byte{1, 97}, codes)
+ assert.NilError(t, err)
+ assert.Check(t, is.DeepEqual([]byte{1, 97}, codes))
_, err = ToBytes("shift-z")
- assert.Error(t, err)
+ assert.Check(t, is.ErrorContains(err, ""))
codes, err = ToBytes("ctrl-@,ctrl-[,~,ctrl-o")
- require.NoError(t, err)
- assert.Equal(t, []byte{0, 27, 126, 15}, codes)
+ assert.NilError(t, err)
+ assert.Check(t, is.DeepEqual([]byte{0, 27, 126, 15}, codes))
codes, err = ToBytes("DEL,+")
- require.NoError(t, err)
- assert.Equal(t, []byte{127, 43}, codes)
+ assert.NilError(t, err)
+ assert.Check(t, is.DeepEqual([]byte{127, 43}, codes))
}
diff --git a/pkg/term/proxy_test.go b/pkg/term/proxy_test.go
index 01be1d55be..9a53e2bc71 100644
--- a/pkg/term/proxy_test.go
+++ b/pkg/term/proxy_test.go
@@ -5,8 +5,8 @@ import (
"fmt"
"testing"
- "github.com/stretchr/testify/assert"
- "github.com/stretchr/testify/require"
+ "github.com/gotestyourself/gotestyourself/assert"
+ is "github.com/gotestyourself/gotestyourself/assert/cmp"
)
func TestEscapeProxyRead(t *testing.T) {
@@ -15,75 +15,75 @@ func TestEscapeProxyRead(t *testing.T) {
reader := NewEscapeProxy(bytes.NewReader(keys), escapeKeys)
buf := make([]byte, len(keys))
nr, err := reader.Read(buf)
- require.NoError(t, err)
- require.EqualValues(t, nr, len(keys), fmt.Sprintf("nr %d should be equal to the number of %d", nr, len(keys)))
- require.Equal(t, keys, buf, "keys & the read buffer should be equal")
+ assert.NilError(t, err)
+ assert.Equal(t, nr, len(keys), fmt.Sprintf("nr %d should be equal to the number of %d", nr, len(keys)))
+ assert.Assert(t, is.DeepEqual(keys, buf), "keys & the read buffer should be equal")
keys, _ = ToBytes("")
reader = NewEscapeProxy(bytes.NewReader(keys), escapeKeys)
buf = make([]byte, len(keys))
nr, err = reader.Read(buf)
- require.Error(t, err, "Should throw error when no keys are to read")
- require.EqualValues(t, nr, 0, "nr should be zero")
- assert.Len(t, keys, 0)
- assert.Len(t, buf, 0)
+ assert.Assert(t, is.ErrorContains(err, ""), "Should throw error when no keys are to read")
+ assert.Equal(t, nr, 0, "nr should be zero")
+ assert.Check(t, is.Len(keys, 0))
+ assert.Check(t, is.Len(buf, 0))
escapeKeys, _ = ToBytes("ctrl-x,ctrl-@")
keys, _ = ToBytes("DEL")
reader = NewEscapeProxy(bytes.NewReader(keys), escapeKeys)
buf = make([]byte, len(keys))
nr, err = reader.Read(buf)
- require.NoError(t, err)
- require.EqualValues(t, nr, 1, fmt.Sprintf("nr %d should be equal to the number of 1", nr))
- require.Equal(t, keys, buf, "keys & the read buffer should be equal")
+ assert.NilError(t, err)
+ assert.Equal(t, nr, 1, fmt.Sprintf("nr %d should be equal to the number of 1", nr))
+ assert.Assert(t, is.DeepEqual(keys, buf), "keys & the read buffer should be equal")
escapeKeys, _ = ToBytes("ctrl-c")
keys, _ = ToBytes("ctrl-c")
reader = NewEscapeProxy(bytes.NewReader(keys), escapeKeys)
buf = make([]byte, len(keys))
nr, err = reader.Read(buf)
- require.EqualError(t, err, "read escape sequence")
- require.EqualValues(t, nr, 0, "nr should be equal to 0")
- require.Equal(t, keys, buf, "keys & the read buffer should be equal")
+ assert.Error(t, err, "read escape sequence")
+ assert.Equal(t, nr, 0, "nr should be equal to 0")
+ assert.Assert(t, is.DeepEqual(keys, buf), "keys & the read buffer should be equal")
escapeKeys, _ = ToBytes("ctrl-c,ctrl-z")
keys, _ = ToBytes("ctrl-c,ctrl-z")
reader = NewEscapeProxy(bytes.NewReader(keys), escapeKeys)
buf = make([]byte, 1)
nr, err = reader.Read(buf)
- require.NoError(t, err)
- require.EqualValues(t, nr, 0, "nr should be equal to 0")
- require.Equal(t, keys[0:1], buf, "keys & the read buffer should be equal")
+ assert.NilError(t, err)
+ assert.Equal(t, nr, 0, "nr should be equal to 0")
+ assert.Assert(t, is.DeepEqual(keys[0:1], buf), "keys & the read buffer should be equal")
nr, err = reader.Read(buf)
- require.EqualError(t, err, "read escape sequence")
- require.EqualValues(t, nr, 0, "nr should be equal to 0")
- require.Equal(t, keys[1:], buf, "keys & the read buffer should be equal")
+ assert.Error(t, err, "read escape sequence")
+ assert.Equal(t, nr, 0, "nr should be equal to 0")
+ assert.Assert(t, is.DeepEqual(keys[1:], buf), "keys & the read buffer should be equal")
escapeKeys, _ = ToBytes("ctrl-c,ctrl-z")
keys, _ = ToBytes("ctrl-c,DEL,+")
reader = NewEscapeProxy(bytes.NewReader(keys), escapeKeys)
buf = make([]byte, 1)
nr, err = reader.Read(buf)
- require.NoError(t, err)
- require.EqualValues(t, nr, 0, "nr should be equal to 0")
- require.Equal(t, keys[0:1], buf, "keys & the read buffer should be equal")
+ assert.NilError(t, err)
+ assert.Equal(t, nr, 0, "nr should be equal to 0")
+ assert.Assert(t, is.DeepEqual(keys[0:1], buf), "keys & the read buffer should be equal")
buf = make([]byte, len(keys))
nr, err = reader.Read(buf)
- require.NoError(t, err)
- require.EqualValues(t, nr, len(keys), fmt.Sprintf("nr should be equal to %d", len(keys)))
- require.Equal(t, keys, buf, "keys & the read buffer should be equal")
+ assert.NilError(t, err)
+ assert.Equal(t, nr, len(keys), fmt.Sprintf("nr should be equal to %d", len(keys)))
+ assert.Assert(t, is.DeepEqual(keys, buf), "keys & the read buffer should be equal")
escapeKeys, _ = ToBytes("ctrl-c,ctrl-z")
keys, _ = ToBytes("ctrl-c,DEL")
reader = NewEscapeProxy(bytes.NewReader(keys), escapeKeys)
buf = make([]byte, 1)
nr, err = reader.Read(buf)
- require.NoError(t, err)
- require.EqualValues(t, nr, 0, "nr should be equal to 0")
- require.Equal(t, keys[0:1], buf, "keys & the read buffer should be equal")
+ assert.NilError(t, err)
+ assert.Equal(t, nr, 0, "nr should be equal to 0")
+ assert.Assert(t, is.DeepEqual(keys[0:1], buf), "keys & the read buffer should be equal")
buf = make([]byte, len(keys))
nr, err = reader.Read(buf)
- require.NoError(t, err)
- require.EqualValues(t, nr, len(keys), fmt.Sprintf("nr should be equal to %d", len(keys)))
- require.Equal(t, keys, buf, "keys & the read buffer should be equal")
+ assert.NilError(t, err)
+ assert.Equal(t, nr, len(keys), fmt.Sprintf("nr should be equal to %d", len(keys)))
+ assert.Assert(t, is.DeepEqual(keys, buf), "keys & the read buffer should be equal")
}
diff --git a/pkg/term/term_linux_test.go b/pkg/term/term_linux_test.go
index 6e42d3edd7..98d2b1a3f2 100644
--- a/pkg/term/term_linux_test.go
+++ b/pkg/term/term_linux_test.go
@@ -7,7 +7,7 @@ import (
"os"
"testing"
- "github.com/stretchr/testify/require"
+ "github.com/gotestyourself/gotestyourself/assert"
)
// RequiresRoot skips tests that require root, unless the test.root flag has
@@ -31,85 +31,85 @@ func newTempFile() (*os.File, error) {
func TestGetWinsize(t *testing.T) {
tty, err := newTtyForTest(t)
defer tty.Close()
- require.NoError(t, err)
+ assert.NilError(t, err)
winSize, err := GetWinsize(tty.Fd())
- require.NoError(t, err)
- require.NotNil(t, winSize)
- require.NotNil(t, winSize.Height)
- require.NotNil(t, winSize.Width)
+ assert.NilError(t, err)
+ assert.Assert(t, winSize != nil)
+ assert.Assert(t, winSize.Height != nil)
+ assert.Assert(t, winSize.Width != nil)
newSize := Winsize{Width: 200, Height: 200, x: winSize.x, y: winSize.y}
err = SetWinsize(tty.Fd(), &newSize)
- require.NoError(t, err)
+ assert.NilError(t, err)
winSize, err = GetWinsize(tty.Fd())
- require.NoError(t, err)
- require.Equal(t, *winSize, newSize)
+ assert.NilError(t, err)
+ assert.DeepEqual(t, *winSize, newSize)
}
func TestSetWinsize(t *testing.T) {
tty, err := newTtyForTest(t)
defer tty.Close()
- require.NoError(t, err)
+ assert.NilError(t, err)
winSize, err := GetWinsize(tty.Fd())
- require.NoError(t, err)
- require.NotNil(t, winSize)
+ assert.NilError(t, err)
+ assert.Assert(t, winSize != nil)
newSize := Winsize{Width: 200, Height: 200, x: winSize.x, y: winSize.y}
err = SetWinsize(tty.Fd(), &newSize)
- require.NoError(t, err)
+ assert.NilError(t, err)
winSize, err = GetWinsize(tty.Fd())
- require.NoError(t, err)
- require.Equal(t, *winSize, newSize)
+ assert.NilError(t, err)
+ assert.DeepEqual(t, *winSize, newSize)
}
func TestGetFdInfo(t *testing.T) {
tty, err := newTtyForTest(t)
defer tty.Close()
- require.NoError(t, err)
+ assert.NilError(t, err)
inFd, isTerminal := GetFdInfo(tty)
- require.Equal(t, inFd, tty.Fd())
- require.Equal(t, isTerminal, true)
+ assert.Equal(t, inFd, tty.Fd())
+ assert.Equal(t, isTerminal, true)
tmpFile, err := newTempFile()
- require.NoError(t, err)
+ assert.NilError(t, err)
defer tmpFile.Close()
inFd, isTerminal = GetFdInfo(tmpFile)
- require.Equal(t, inFd, tmpFile.Fd())
- require.Equal(t, isTerminal, false)
+ assert.Equal(t, inFd, tmpFile.Fd())
+ assert.Equal(t, isTerminal, false)
}
func TestIsTerminal(t *testing.T) {
tty, err := newTtyForTest(t)
defer tty.Close()
- require.NoError(t, err)
+ assert.NilError(t, err)
isTerminal := IsTerminal(tty.Fd())
- require.Equal(t, isTerminal, true)
+ assert.Equal(t, isTerminal, true)
tmpFile, err := newTempFile()
- require.NoError(t, err)
+ assert.NilError(t, err)
defer tmpFile.Close()
isTerminal = IsTerminal(tmpFile.Fd())
- require.Equal(t, isTerminal, false)
+ assert.Equal(t, isTerminal, false)
}
func TestSaveState(t *testing.T) {
tty, err := newTtyForTest(t)
defer tty.Close()
- require.NoError(t, err)
+ assert.NilError(t, err)
state, err := SaveState(tty.Fd())
- require.NoError(t, err)
- require.NotNil(t, state)
+ assert.NilError(t, err)
+ assert.Assert(t, state != nil)
tty, err = newTtyForTest(t)
- require.NoError(t, err)
+ assert.NilError(t, err)
defer tty.Close()
err = RestoreTerminal(tty.Fd(), state)
- require.NoError(t, err)
+ assert.NilError(t, err)
}
func TestDisableEcho(t *testing.T) {
tty, err := newTtyForTest(t)
defer tty.Close()
- require.NoError(t, err)
+ assert.NilError(t, err)
state, err := SetRawTerminal(tty.Fd())
defer RestoreTerminal(tty.Fd(), state)
- require.NoError(t, err)
- require.NotNil(t, state)
+ assert.NilError(t, err)
+ assert.Assert(t, state != nil)
err = DisableEcho(tty.Fd(), state)
- require.NoError(t, err)
+ assert.NilError(t, err)
}
diff --git a/reference/store_test.go b/reference/store_test.go
index e423f5db2e..24c0597a3e 100644
--- a/reference/store_test.go
+++ b/reference/store_test.go
@@ -9,9 +9,9 @@ import (
"testing"
"github.com/docker/distribution/reference"
+ "github.com/gotestyourself/gotestyourself/assert"
+ is "github.com/gotestyourself/gotestyourself/assert/cmp"
digest "github.com/opencontainers/go-digest"
- "github.com/stretchr/testify/assert"
- "github.com/stretchr/testify/require"
)
var (
@@ -64,10 +64,10 @@ func TestLoad(t *testing.T) {
func TestSave(t *testing.T) {
jsonFile, err := ioutil.TempFile("", "tag-store-test")
- require.NoError(t, err)
+ assert.NilError(t, err)
_, err = jsonFile.Write([]byte(`{}`))
- require.NoError(t, err)
+ assert.NilError(t, err)
jsonFile.Close()
defer os.RemoveAll(jsonFile.Name())
@@ -328,23 +328,23 @@ func TestAddDeleteGet(t *testing.T) {
func TestInvalidTags(t *testing.T) {
tmpDir, err := ioutil.TempDir("", "tag-store-test")
- require.NoError(t, err)
+ assert.NilError(t, err)
defer os.RemoveAll(tmpDir)
store, err := NewReferenceStore(filepath.Join(tmpDir, "repositories.json"))
- require.NoError(t, err)
+ assert.NilError(t, err)
id := digest.Digest("sha256:470022b8af682154f57a2163d030eb369549549cba00edc69e1b99b46bb924d6")
// sha256 as repo name
ref, err := reference.ParseNormalizedNamed("sha256:abc")
- require.NoError(t, err)
+ assert.NilError(t, err)
err = store.AddTag(ref, id, true)
- assert.Error(t, err)
+ assert.Check(t, is.ErrorContains(err, ""))
// setting digest as a tag
ref, err = reference.ParseNormalizedNamed("registry@sha256:367eb40fd0330a7e464777121e39d2f5b3e8e23a1e159342e53ab05c9e4d94e6")
- require.NoError(t, err)
+ assert.NilError(t, err)
err = store.AddTag(ref, id, true)
- assert.Error(t, err)
+ assert.Check(t, is.ErrorContains(err, ""))
}
diff --git a/registry/config_test.go b/registry/config_test.go
index 61b1c26d35..4df9cdb948 100644
--- a/registry/config_test.go
+++ b/registry/config_test.go
@@ -6,7 +6,8 @@ import (
"strings"
"testing"
- "github.com/stretchr/testify/assert"
+ "github.com/gotestyourself/gotestyourself/assert"
+ is "github.com/gotestyourself/gotestyourself/assert/cmp"
)
func TestLoadAllowNondistributableArtifacts(t *testing.T) {
@@ -311,9 +312,9 @@ func TestNewServiceConfig(t *testing.T) {
for _, testCase := range testCases {
_, err := newServiceConfig(testCase.opts)
if testCase.errStr != "" {
- assert.EqualError(t, err, testCase.errStr)
+ assert.Check(t, is.Error(err, testCase.errStr))
} else {
- assert.Nil(t, err)
+ assert.Check(t, err)
}
}
}
@@ -347,8 +348,8 @@ func TestValidateIndexName(t *testing.T) {
for _, testCase := range valid {
result, err := ValidateIndexName(testCase.index)
- if assert.NoError(t, err) {
- assert.Equal(t, testCase.expect, result)
+ if assert.Check(t, err) {
+ assert.Check(t, is.Equal(testCase.expect, result))
}
}
@@ -375,6 +376,6 @@ func TestValidateIndexNameWithError(t *testing.T) {
}
for _, testCase := range invalid {
_, err := ValidateIndexName(testCase.index)
- assert.EqualError(t, err, testCase.err)
+ assert.Check(t, is.Error(err, testCase.err))
}
}
diff --git a/registry/registry_test.go b/registry/registry_test.go
index 6375301469..b4420d558c 100644
--- a/registry/registry_test.go
+++ b/registry/registry_test.go
@@ -12,7 +12,7 @@ import (
"github.com/docker/distribution/registry/client/transport"
"github.com/docker/docker/api/types"
registrytypes "github.com/docker/docker/api/types/registry"
- "github.com/stretchr/testify/assert"
+ "github.com/gotestyourself/gotestyourself/assert"
)
var (
@@ -757,12 +757,12 @@ func TestSearchRepositories(t *testing.T) {
func TestTrustedLocation(t *testing.T) {
for _, url := range []string{"http://example.com", "https://example.com:7777", "http://docker.io", "http://test.docker.com", "https://fakedocker.com"} {
req, _ := http.NewRequest("GET", url, nil)
- assert.False(t, trustedLocation(req))
+ assert.Check(t, !trustedLocation(req))
}
for _, url := range []string{"https://docker.io", "https://test.docker.com:80"} {
req, _ := http.NewRequest("GET", url, nil)
- assert.True(t, trustedLocation(req))
+ assert.Check(t, trustedLocation(req))
}
}
diff --git a/registry/resumable/resumablerequestreader_test.go b/registry/resumable/resumablerequestreader_test.go
index 9a08e3416e..bd3d55885f 100644
--- a/registry/resumable/resumablerequestreader_test.go
+++ b/registry/resumable/resumablerequestreader_test.go
@@ -10,8 +10,8 @@ import (
"testing"
"time"
- "github.com/stretchr/testify/assert"
- "github.com/stretchr/testify/require"
+ "github.com/gotestyourself/gotestyourself/assert"
+ is "github.com/gotestyourself/gotestyourself/assert/cmp"
)
func TestResumableRequestHeaderSimpleErrors(t *testing.T) {
@@ -24,11 +24,11 @@ func TestResumableRequestHeaderSimpleErrors(t *testing.T) {
var req *http.Request
req, err := http.NewRequest("GET", ts.URL, nil)
- require.NoError(t, err)
+ assert.NilError(t, err)
resreq := &requestReader{}
_, err = resreq.Read([]byte{})
- assert.EqualError(t, err, "client and request can't be nil")
+ assert.Check(t, is.Error(err, "client and request can't be nil"))
resreq = &requestReader{
client: client,
@@ -36,7 +36,7 @@ func TestResumableRequestHeaderSimpleErrors(t *testing.T) {
totalSize: -1,
}
_, err = resreq.Read([]byte{})
- assert.EqualError(t, err, "failed to auto detect content length")
+ assert.Check(t, is.Error(err, "failed to auto detect content length"))
}
// Not too much failures, bails out after some wait
@@ -45,7 +45,7 @@ func TestResumableRequestHeaderNotTooMuchFailures(t *testing.T) {
var badReq *http.Request
badReq, err := http.NewRequest("GET", "I'm not an url", nil)
- require.NoError(t, err)
+ assert.NilError(t, err)
resreq := &requestReader{
client: client,
@@ -55,8 +55,8 @@ func TestResumableRequestHeaderNotTooMuchFailures(t *testing.T) {
waitDuration: 10 * time.Millisecond,
}
read, err := resreq.Read([]byte{})
- require.NoError(t, err)
- assert.Equal(t, 0, read)
+ assert.NilError(t, err)
+ assert.Check(t, is.Equal(0, read))
}
// Too much failures, returns the error
@@ -65,7 +65,7 @@ func TestResumableRequestHeaderTooMuchFailures(t *testing.T) {
var badReq *http.Request
badReq, err := http.NewRequest("GET", "I'm not an url", nil)
- require.NoError(t, err)
+ assert.NilError(t, err)
resreq := &requestReader{
client: client,
@@ -77,8 +77,8 @@ func TestResumableRequestHeaderTooMuchFailures(t *testing.T) {
expectedError := `Get I%27m%20not%20an%20url: unsupported protocol scheme ""`
read, err := resreq.Read([]byte{})
- assert.EqualError(t, err, expectedError)
- assert.Equal(t, 0, read)
+ assert.Check(t, is.Error(err, expectedError))
+ assert.Check(t, is.Equal(0, read))
}
type errorReaderCloser struct{}
@@ -93,7 +93,7 @@ func (errorReaderCloser) Read(p []byte) (n int, err error) {
func TestResumableRequestReaderWithReadError(t *testing.T) {
var req *http.Request
req, err := http.NewRequest("GET", "", nil)
- require.NoError(t, err)
+ assert.NilError(t, err)
client := &http.Client{}
@@ -116,15 +116,15 @@ func TestResumableRequestReaderWithReadError(t *testing.T) {
buf := make([]byte, 1)
read, err := resreq.Read(buf)
- require.NoError(t, err)
+ assert.NilError(t, err)
- assert.Equal(t, 0, read)
+ assert.Check(t, is.Equal(0, read))
}
func TestResumableRequestReaderWithEOFWith416Response(t *testing.T) {
var req *http.Request
req, err := http.NewRequest("GET", "", nil)
- require.NoError(t, err)
+ assert.NilError(t, err)
client := &http.Client{}
@@ -147,7 +147,7 @@ func TestResumableRequestReaderWithEOFWith416Response(t *testing.T) {
buf := make([]byte, 1)
_, err = resreq.Read(buf)
- assert.EqualError(t, err, io.EOF.Error())
+ assert.Check(t, is.Error(err, io.EOF.Error()))
}
func TestResumableRequestReaderWithServerDoesntSupportByteRanges(t *testing.T) {
@@ -160,7 +160,7 @@ func TestResumableRequestReaderWithServerDoesntSupportByteRanges(t *testing.T) {
var req *http.Request
req, err := http.NewRequest("GET", ts.URL, nil)
- require.NoError(t, err)
+ assert.NilError(t, err)
client := &http.Client{}
@@ -173,7 +173,7 @@ func TestResumableRequestReaderWithServerDoesntSupportByteRanges(t *testing.T) {
buf := make([]byte, 2)
_, err = resreq.Read(buf)
- assert.EqualError(t, err, "the server doesn't support byte ranges")
+ assert.Check(t, is.Error(err, "the server doesn't support byte ranges"))
}
func TestResumableRequestReaderWithZeroTotalSize(t *testing.T) {
@@ -186,7 +186,7 @@ func TestResumableRequestReaderWithZeroTotalSize(t *testing.T) {
var req *http.Request
req, err := http.NewRequest("GET", ts.URL, nil)
- require.NoError(t, err)
+ assert.NilError(t, err)
client := &http.Client{}
retries := uint32(5)
@@ -195,10 +195,10 @@ func TestResumableRequestReaderWithZeroTotalSize(t *testing.T) {
defer resreq.Close()
data, err := ioutil.ReadAll(resreq)
- require.NoError(t, err)
+ assert.NilError(t, err)
resstr := strings.TrimSuffix(string(data), "\n")
- assert.Equal(t, srvtxt, resstr)
+ assert.Check(t, is.Equal(srvtxt, resstr))
}
func TestResumableRequestReader(t *testing.T) {
@@ -211,7 +211,7 @@ func TestResumableRequestReader(t *testing.T) {
var req *http.Request
req, err := http.NewRequest("GET", ts.URL, nil)
- require.NoError(t, err)
+ assert.NilError(t, err)
client := &http.Client{}
retries := uint32(5)
@@ -221,10 +221,10 @@ func TestResumableRequestReader(t *testing.T) {
defer resreq.Close()
data, err := ioutil.ReadAll(resreq)
- require.NoError(t, err)
+ assert.NilError(t, err)
resstr := strings.TrimSuffix(string(data), "\n")
- assert.Equal(t, srvtxt, resstr)
+ assert.Check(t, is.Equal(srvtxt, resstr))
}
func TestResumableRequestReaderWithInitialResponse(t *testing.T) {
@@ -237,21 +237,21 @@ func TestResumableRequestReaderWithInitialResponse(t *testing.T) {
var req *http.Request
req, err := http.NewRequest("GET", ts.URL, nil)
- require.NoError(t, err)
+ assert.NilError(t, err)
client := &http.Client{}
retries := uint32(5)
imgSize := int64(len(srvtxt))
res, err := client.Do(req)
- require.NoError(t, err)
+ assert.NilError(t, err)
resreq := NewRequestReaderWithInitialResponse(client, req, retries, imgSize, res)
defer resreq.Close()
data, err := ioutil.ReadAll(resreq)
- require.NoError(t, err)
+ assert.NilError(t, err)
resstr := strings.TrimSuffix(string(data), "\n")
- assert.Equal(t, srvtxt, resstr)
+ assert.Check(t, is.Equal(srvtxt, resstr))
}
diff --git a/runconfig/config_test.go b/runconfig/config_test.go
index 63619fe53f..58e3a9f788 100644
--- a/runconfig/config_test.go
+++ b/runconfig/config_test.go
@@ -12,8 +12,8 @@ import (
"github.com/docker/docker/api/types/container"
networktypes "github.com/docker/docker/api/types/network"
"github.com/docker/docker/api/types/strslice"
- "github.com/stretchr/testify/assert"
- "github.com/stretchr/testify/require"
+ "github.com/gotestyourself/gotestyourself/assert"
+ is "github.com/gotestyourself/gotestyourself/assert/cmp"
)
type f struct {
@@ -149,21 +149,21 @@ func runDecodeContainerConfigTestCase(testcase decodeConfigTestcase) func(t *tes
raw := marshal(t, testcase.wrapper, testcase.doc)
config, hostConfig, _, err := decodeContainerConfig(bytes.NewReader(raw))
if testcase.expectedErr != "" {
- if !assert.Error(t, err) {
+ if !assert.Check(t, is.ErrorContains(err, "")) {
return
}
- assert.Contains(t, err.Error(), testcase.expectedErr)
+ assert.Check(t, is.Contains(err.Error(), testcase.expectedErr))
return
}
- assert.NoError(t, err)
- assert.Equal(t, testcase.expectedConfig, config)
- assert.Equal(t, testcase.expectedHostConfig, hostConfig)
+ assert.Check(t, err)
+ assert.Check(t, is.DeepEqual(testcase.expectedConfig, config))
+ assert.Check(t, is.DeepEqual(testcase.expectedHostConfig, hostConfig))
}
}
func marshal(t *testing.T, w ContainerConfigWrapper, doc string) []byte {
b, err := json.Marshal(w)
- require.NoError(t, err, "%s: failed to encode config wrapper", doc)
+ assert.NilError(t, err, "%s: failed to encode config wrapper", doc)
return b
}
diff --git a/runconfig/hostconfig_test.go b/runconfig/hostconfig_test.go
index 48d902d4d7..d2482fbe7b 100644
--- a/runconfig/hostconfig_test.go
+++ b/runconfig/hostconfig_test.go
@@ -10,7 +10,8 @@ import (
"github.com/docker/docker/api/types/container"
"github.com/docker/docker/pkg/sysinfo"
- "github.com/stretchr/testify/assert"
+ "github.com/gotestyourself/gotestyourself/assert"
+ is "github.com/gotestyourself/gotestyourself/assert/cmp"
)
// TODO Windows: This will need addressing for a Windows daemon.
@@ -83,12 +84,12 @@ func TestIpcModeTest(t *testing.T) {
}
for ipcMode, state := range ipcModes {
- assert.Equal(t, state.private, ipcMode.IsPrivate(), "IpcMode.IsPrivate() parsing failed for %q", ipcMode)
- assert.Equal(t, state.host, ipcMode.IsHost(), "IpcMode.IsHost() parsing failed for %q", ipcMode)
- assert.Equal(t, state.container, ipcMode.IsContainer(), "IpcMode.IsContainer() parsing failed for %q", ipcMode)
- assert.Equal(t, state.shareable, ipcMode.IsShareable(), "IpcMode.IsShareable() parsing failed for %q", ipcMode)
- assert.Equal(t, state.valid, ipcMode.Valid(), "IpcMode.Valid() parsing failed for %q", ipcMode)
- assert.Equal(t, state.ctrName, ipcMode.Container(), "IpcMode.Container() parsing failed for %q", ipcMode)
+ assert.Check(t, is.Equal(state.private, ipcMode.IsPrivate()), "IpcMode.IsPrivate() parsing failed for %q", ipcMode)
+ assert.Check(t, is.Equal(state.host, ipcMode.IsHost()), "IpcMode.IsHost() parsing failed for %q", ipcMode)
+ assert.Check(t, is.Equal(state.container, ipcMode.IsContainer()), "IpcMode.IsContainer() parsing failed for %q", ipcMode)
+ assert.Check(t, is.Equal(state.shareable, ipcMode.IsShareable()), "IpcMode.IsShareable() parsing failed for %q", ipcMode)
+ assert.Check(t, is.Equal(state.valid, ipcMode.Valid()), "IpcMode.Valid() parsing failed for %q", ipcMode)
+ assert.Check(t, is.Equal(state.ctrName, ipcMode.Container()), "IpcMode.Container() parsing failed for %q", ipcMode)
}
}
@@ -195,7 +196,7 @@ func TestDecodeHostConfig(t *testing.T) {
t.Fatal(fmt.Errorf("Error parsing %s: %v", f, err))
}
- assert.False(t, c.Privileged)
+ assert.Check(t, !c.Privileged)
if l := len(c.Binds); l != 1 {
t.Fatalf("Expected 1 bind, found %d\n", l)
diff --git a/volume/store/db_test.go b/volume/store/db_test.go
index 9c45cd13ba..0a2727e749 100644
--- a/volume/store/db_test.go
+++ b/volume/store/db_test.go
@@ -8,33 +8,34 @@ import (
"time"
"github.com/boltdb/bolt"
- "github.com/stretchr/testify/require"
+ "github.com/gotestyourself/gotestyourself/assert"
+ is "github.com/gotestyourself/gotestyourself/assert/cmp"
)
func TestSetGetMeta(t *testing.T) {
t.Parallel()
dir, err := ioutil.TempDir("", "test-set-get")
- require.NoError(t, err)
+ assert.NilError(t, err)
defer os.RemoveAll(dir)
db, err := bolt.Open(filepath.Join(dir, "db"), 0600, &bolt.Options{Timeout: 1 * time.Second})
- require.NoError(t, err)
+ assert.NilError(t, err)
store := &VolumeStore{db: db}
_, err = store.getMeta("test")
- require.Error(t, err)
+ assert.Assert(t, is.ErrorContains(err, ""))
err = db.Update(func(tx *bolt.Tx) error {
_, err := tx.CreateBucket(volumeBucketName)
return err
})
- require.NoError(t, err)
+ assert.NilError(t, err)
meta, err := store.getMeta("test")
- require.NoError(t, err)
- require.Equal(t, volumeMetadata{}, meta)
+ assert.NilError(t, err)
+ assert.DeepEqual(t, volumeMetadata{}, meta)
testMeta := volumeMetadata{
Name: "test",
@@ -43,9 +44,9 @@ func TestSetGetMeta(t *testing.T) {
Options: map[string]string{"foo": "bar"},
}
err = store.setMeta("test", testMeta)
- require.NoError(t, err)
+ assert.NilError(t, err)
meta, err = store.getMeta("test")
- require.NoError(t, err)
- require.Equal(t, testMeta, meta)
+ assert.NilError(t, err)
+ assert.DeepEqual(t, testMeta, meta)
}
diff --git a/volume/store/restore_test.go b/volume/store/restore_test.go
index 83efd36b63..680735a384 100644
--- a/volume/store/restore_test.go
+++ b/volume/store/restore_test.go
@@ -8,14 +8,14 @@ import (
"github.com/docker/docker/volume"
volumedrivers "github.com/docker/docker/volume/drivers"
volumetestutils "github.com/docker/docker/volume/testutils"
- "github.com/stretchr/testify/require"
+ "github.com/gotestyourself/gotestyourself/assert"
)
func TestRestore(t *testing.T) {
t.Parallel()
dir, err := ioutil.TempDir("", "test-restore")
- require.NoError(t, err)
+ assert.NilError(t, err)
defer os.RemoveAll(dir)
driverName := "test-restore"
@@ -23,33 +23,33 @@ func TestRestore(t *testing.T) {
defer volumedrivers.Unregister("test-restore")
s, err := New(dir)
- require.NoError(t, err)
+ assert.NilError(t, err)
defer s.Shutdown()
_, err = s.Create("test1", driverName, nil, nil)
- require.NoError(t, err)
+ assert.NilError(t, err)
testLabels := map[string]string{"a": "1"}
testOpts := map[string]string{"foo": "bar"}
_, err = s.Create("test2", driverName, testOpts, testLabels)
- require.NoError(t, err)
+ assert.NilError(t, err)
s.Shutdown()
s, err = New(dir)
- require.NoError(t, err)
+ assert.NilError(t, err)
v, err := s.Get("test1")
- require.NoError(t, err)
+ assert.NilError(t, err)
dv := v.(volume.DetailedVolume)
var nilMap map[string]string
- require.Equal(t, nilMap, dv.Options())
- require.Equal(t, nilMap, dv.Labels())
+ assert.DeepEqual(t, nilMap, dv.Options())
+ assert.DeepEqual(t, nilMap, dv.Labels())
v, err = s.Get("test2")
- require.NoError(t, err)
+ assert.NilError(t, err)
dv = v.(volume.DetailedVolume)
- require.Equal(t, testOpts, dv.Options())
- require.Equal(t, testLabels, dv.Labels())
+ assert.DeepEqual(t, testOpts, dv.Options())
+ assert.DeepEqual(t, testLabels, dv.Labels())
}
diff --git a/volume/store/store_test.go b/volume/store/store_test.go
index e53c728dd0..c6d31364ac 100644
--- a/volume/store/store_test.go
+++ b/volume/store/store_test.go
@@ -12,8 +12,8 @@ import (
"github.com/docker/docker/volume"
"github.com/docker/docker/volume/drivers"
volumetestutils "github.com/docker/docker/volume/testutils"
- "github.com/stretchr/testify/assert"
- "github.com/stretchr/testify/require"
+ "github.com/gotestyourself/gotestyourself/assert"
+ is "github.com/gotestyourself/gotestyourself/assert/cmp"
)
func TestCreate(t *testing.T) {
@@ -332,15 +332,15 @@ func TestRefDerefRemove(t *testing.T) {
defer cleanup(t)
v, err := s.CreateWithRef("test", driverName, "test-ref", nil, nil)
- require.NoError(t, err)
+ assert.NilError(t, err)
err = s.Remove(v)
- require.Error(t, err)
- require.Equal(t, errVolumeInUse, err.(*OpErr).Err)
+ assert.Assert(t, is.ErrorContains(err, ""))
+ assert.Equal(t, errVolumeInUse, err.(*OpErr).Err)
s.Dereference(v, "test-ref")
err = s.Remove(v)
- require.NoError(t, err)
+ assert.NilError(t, err)
}
func TestGet(t *testing.T) {
@@ -351,21 +351,21 @@ func TestGet(t *testing.T) {
defer cleanup(t)
_, err := s.Get("not-exist")
- require.Error(t, err)
- require.Equal(t, errNoSuchVolume, err.(*OpErr).Err)
+ assert.Assert(t, is.ErrorContains(err, ""))
+ assert.Equal(t, errNoSuchVolume, err.(*OpErr).Err)
v1, err := s.Create("test", driverName, nil, map[string]string{"a": "1"})
- require.NoError(t, err)
+ assert.NilError(t, err)
v2, err := s.Get("test")
- require.NoError(t, err)
- require.Equal(t, v1, v2)
+ assert.NilError(t, err)
+ assert.DeepEqual(t, v1, v2)
dv := v2.(volume.DetailedVolume)
- require.Equal(t, "1", dv.Labels()["a"])
+ assert.Equal(t, "1", dv.Labels()["a"])
err = s.Remove(v1)
- require.NoError(t, err)
+ assert.NilError(t, err)
}
func TestGetWithRef(t *testing.T) {
@@ -376,22 +376,22 @@ func TestGetWithRef(t *testing.T) {
defer cleanup(t)
_, err := s.GetWithRef("not-exist", driverName, "test-ref")
- require.Error(t, err)
+ assert.Assert(t, is.ErrorContains(err, ""))
v1, err := s.Create("test", driverName, nil, map[string]string{"a": "1"})
- require.NoError(t, err)
+ assert.NilError(t, err)
v2, err := s.GetWithRef("test", driverName, "test-ref")
- require.NoError(t, err)
- require.Equal(t, v1, v2)
+ assert.NilError(t, err)
+ assert.DeepEqual(t, v1, v2)
err = s.Remove(v2)
- require.Error(t, err)
- require.Equal(t, errVolumeInUse, err.(*OpErr).Err)
+ assert.Assert(t, is.ErrorContains(err, ""))
+ assert.Equal(t, errVolumeInUse, err.(*OpErr).Err)
s.Dereference(v2, "test-ref")
err = s.Remove(v2)
- require.NoError(t, err)
+ assert.NilError(t, err)
}
func setupTest(t *testing.T, name string) (*VolumeStore, func(*testing.T)) {
@@ -409,15 +409,15 @@ func newTestStore(t *testing.T) (*VolumeStore, func(*testing.T)) {
t.Helper()
dir, err := ioutil.TempDir("", "store-root")
- require.NoError(t, err)
+ assert.NilError(t, err)
cleanup := func(t *testing.T) {
err := os.RemoveAll(dir)
- assert.NoError(t, err)
+ assert.Check(t, err)
}
s, err := New(dir)
- assert.NoError(t, err)
+ assert.Check(t, err)
return s, func(t *testing.T) {
s.Shutdown()
cleanup(t)