|
@@ -16,8 +16,8 @@ import (
|
|
"github.com/docker/docker/image"
|
|
"github.com/docker/docker/image"
|
|
"github.com/docker/docker/pkg/system"
|
|
"github.com/docker/docker/pkg/system"
|
|
"github.com/docker/go-connections/nat"
|
|
"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 {
|
|
func newBuilderWithMockBackend() *Builder {
|
|
@@ -49,13 +49,13 @@ func TestEnv2Variables(t *testing.T) {
|
|
},
|
|
},
|
|
}
|
|
}
|
|
err := dispatch(sb, envCommand)
|
|
err := dispatch(sb, envCommand)
|
|
- require.NoError(t, err)
|
|
|
|
|
|
+ assert.NilError(t, err)
|
|
|
|
|
|
expected := []string{
|
|
expected := []string{
|
|
"var1=val1",
|
|
"var1=val1",
|
|
"var2=val2",
|
|
"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) {
|
|
func TestEnvValueWithExistingRunConfigEnv(t *testing.T) {
|
|
@@ -68,12 +68,12 @@ func TestEnvValueWithExistingRunConfigEnv(t *testing.T) {
|
|
},
|
|
},
|
|
}
|
|
}
|
|
err := dispatch(sb, envCommand)
|
|
err := dispatch(sb, envCommand)
|
|
- require.NoError(t, err)
|
|
|
|
|
|
+ assert.NilError(t, err)
|
|
expected := []string{
|
|
expected := []string{
|
|
"var1=val1",
|
|
"var1=val1",
|
|
"var2=fromenv",
|
|
"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) {
|
|
func TestMaintainer(t *testing.T) {
|
|
@@ -82,8 +82,8 @@ func TestMaintainer(t *testing.T) {
|
|
sb := newDispatchRequest(b, '\\', nil, newBuildArgs(make(map[string]*string)), newStagesBuildResults())
|
|
sb := newDispatchRequest(b, '\\', nil, newBuildArgs(make(map[string]*string)), newStagesBuildResults())
|
|
cmd := &instructions.MaintainerCommand{Maintainer: maintainerEntry}
|
|
cmd := &instructions.MaintainerCommand{Maintainer: maintainerEntry}
|
|
err := dispatch(sb, cmd)
|
|
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) {
|
|
func TestLabel(t *testing.T) {
|
|
@@ -98,10 +98,10 @@ func TestLabel(t *testing.T) {
|
|
},
|
|
},
|
|
}
|
|
}
|
|
err := dispatch(sb, cmd)
|
|
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) {
|
|
func TestFromScratch(t *testing.T) {
|
|
@@ -113,22 +113,22 @@ func TestFromScratch(t *testing.T) {
|
|
err := initializeStage(sb, cmd)
|
|
err := initializeStage(sb, cmd)
|
|
|
|
|
|
if runtime.GOOS == "windows" && !system.LCOWSupported() {
|
|
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
|
|
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)
|
|
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) {
|
|
func TestFromWithArg(t *testing.T) {
|
|
tag, expected := ":sometag", "expectedthisid"
|
|
tag, expected := ":sometag", "expectedthisid"
|
|
|
|
|
|
getImage := func(name string) (builder.Image, builder.ROLayer, error) {
|
|
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
|
|
return &mockImage{id: "expectedthisid"}, nil, nil
|
|
}
|
|
}
|
|
b := newBuilderWithMockBackend()
|
|
b := newBuilderWithMockBackend()
|
|
@@ -146,21 +146,21 @@ func TestFromWithArg(t *testing.T) {
|
|
err := processMetaArg(metaArg, shell.NewLex('\\'), args)
|
|
err := processMetaArg(metaArg, shell.NewLex('\\'), args)
|
|
|
|
|
|
sb := newDispatchRequest(b, '\\', nil, args, newStagesBuildResults())
|
|
sb := newDispatchRequest(b, '\\', nil, args, newStagesBuildResults())
|
|
- require.NoError(t, err)
|
|
|
|
|
|
+ assert.NilError(t, err)
|
|
err = initializeStage(sb, cmd)
|
|
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) {
|
|
func TestFromWithUndefinedArg(t *testing.T) {
|
|
tag, expected := "sometag", "expectedthisid"
|
|
tag, expected := "sometag", "expectedthisid"
|
|
|
|
|
|
getImage := func(name string) (builder.Image, builder.ROLayer, error) {
|
|
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
|
|
return &mockImage{id: "expectedthisid"}, nil, nil
|
|
}
|
|
}
|
|
b := newBuilderWithMockBackend()
|
|
b := newBuilderWithMockBackend()
|
|
@@ -173,8 +173,8 @@ func TestFromWithUndefinedArg(t *testing.T) {
|
|
BaseName: "alpine${THETAG}",
|
|
BaseName: "alpine${THETAG}",
|
|
}
|
|
}
|
|
err := initializeStage(sb, cmd)
|
|
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) {
|
|
func TestFromMultiStageWithNamedStage(t *testing.T) {
|
|
@@ -185,13 +185,13 @@ func TestFromMultiStageWithNamedStage(t *testing.T) {
|
|
firstSB := newDispatchRequest(b, '\\', nil, newBuildArgs(make(map[string]*string)), previousResults)
|
|
firstSB := newDispatchRequest(b, '\\', nil, newBuildArgs(make(map[string]*string)), previousResults)
|
|
secondSB := newDispatchRequest(b, '\\', nil, newBuildArgs(make(map[string]*string)), previousResults)
|
|
secondSB := newDispatchRequest(b, '\\', nil, newBuildArgs(make(map[string]*string)), previousResults)
|
|
err := initializeStage(firstSB, firstFrom)
|
|
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.indexed["base"] = firstSB.state.runConfig
|
|
previousResults.flat = append(previousResults.flat, firstSB.state.runConfig)
|
|
previousResults.flat = append(previousResults.flat, firstSB.state.runConfig)
|
|
err = initializeStage(secondSB, secondFrom)
|
|
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) {
|
|
func TestOnbuild(t *testing.T) {
|
|
@@ -201,8 +201,8 @@ func TestOnbuild(t *testing.T) {
|
|
Expression: "ADD . /app/src",
|
|
Expression: "ADD . /app/src",
|
|
}
|
|
}
|
|
err := dispatch(sb, cmd)
|
|
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) {
|
|
func TestWorkdir(t *testing.T) {
|
|
@@ -217,8 +217,8 @@ func TestWorkdir(t *testing.T) {
|
|
}
|
|
}
|
|
|
|
|
|
err := dispatch(sb, cmd)
|
|
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) {
|
|
func TestCmd(t *testing.T) {
|
|
@@ -233,7 +233,7 @@ func TestCmd(t *testing.T) {
|
|
},
|
|
},
|
|
}
|
|
}
|
|
err := dispatch(sb, cmd)
|
|
err := dispatch(sb, cmd)
|
|
- require.NoError(t, err)
|
|
|
|
|
|
+ assert.NilError(t, err)
|
|
|
|
|
|
var expectedCommand strslice.StrSlice
|
|
var expectedCommand strslice.StrSlice
|
|
if runtime.GOOS == "windows" {
|
|
if runtime.GOOS == "windows" {
|
|
@@ -242,8 +242,8 @@ func TestCmd(t *testing.T) {
|
|
expectedCommand = strslice.StrSlice(append([]string{"/bin/sh"}, "-c", command))
|
|
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) {
|
|
func TestHealthcheckNone(t *testing.T) {
|
|
@@ -255,10 +255,10 @@ func TestHealthcheckNone(t *testing.T) {
|
|
},
|
|
},
|
|
}
|
|
}
|
|
err := dispatch(sb, cmd)
|
|
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) {
|
|
func TestHealthcheckCmd(t *testing.T) {
|
|
@@ -272,10 +272,10 @@ func TestHealthcheckCmd(t *testing.T) {
|
|
},
|
|
},
|
|
}
|
|
}
|
|
err := dispatch(sb, cmd)
|
|
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) {
|
|
func TestEntrypoint(t *testing.T) {
|
|
@@ -290,8 +290,8 @@ func TestEntrypoint(t *testing.T) {
|
|
},
|
|
},
|
|
}
|
|
}
|
|
err := dispatch(sb, cmd)
|
|
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
|
|
var expectedEntrypoint strslice.StrSlice
|
|
if runtime.GOOS == "windows" {
|
|
if runtime.GOOS == "windows" {
|
|
@@ -299,7 +299,7 @@ func TestEntrypoint(t *testing.T) {
|
|
} else {
|
|
} else {
|
|
expectedEntrypoint = strslice.StrSlice(append([]string{"/bin/sh"}, "-c", entrypointCmd))
|
|
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) {
|
|
func TestExpose(t *testing.T) {
|
|
@@ -311,14 +311,14 @@ func TestExpose(t *testing.T) {
|
|
Ports: []string{exposedPort},
|
|
Ports: []string{exposedPort},
|
|
}
|
|
}
|
|
err := dispatch(sb, cmd)
|
|
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)
|
|
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) {
|
|
func TestUser(t *testing.T) {
|
|
@@ -329,8 +329,8 @@ func TestUser(t *testing.T) {
|
|
User: "test",
|
|
User: "test",
|
|
}
|
|
}
|
|
err := dispatch(sb, cmd)
|
|
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) {
|
|
func TestVolume(t *testing.T) {
|
|
@@ -343,10 +343,10 @@ func TestVolume(t *testing.T) {
|
|
Volumes: []string{exposedVolume},
|
|
Volumes: []string{exposedVolume},
|
|
}
|
|
}
|
|
err := dispatch(sb, cmd)
|
|
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) {
|
|
func TestStopSignal(t *testing.T) {
|
|
@@ -362,8 +362,8 @@ func TestStopSignal(t *testing.T) {
|
|
Signal: signal,
|
|
Signal: signal,
|
|
}
|
|
}
|
|
err := dispatch(sb, cmd)
|
|
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) {
|
|
func TestArg(t *testing.T) {
|
|
@@ -374,10 +374,10 @@ func TestArg(t *testing.T) {
|
|
argVal := "bar"
|
|
argVal := "bar"
|
|
cmd := &instructions.ArgCommand{Key: argName, Value: &argVal}
|
|
cmd := &instructions.ArgCommand{Key: argName, Value: &argVal}
|
|
err := dispatch(sb, cmd)
|
|
err := dispatch(sb, cmd)
|
|
- require.NoError(t, err)
|
|
|
|
|
|
+ assert.NilError(t, err)
|
|
|
|
|
|
expected := map[string]string{argName: argVal}
|
|
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) {
|
|
func TestShell(t *testing.T) {
|
|
@@ -388,10 +388,10 @@ func TestShell(t *testing.T) {
|
|
cmd := &instructions.ShellCommand{Shell: strslice.StrSlice{shellCmd}}
|
|
cmd := &instructions.ShellCommand{Shell: strslice.StrSlice{shellCmd}}
|
|
|
|
|
|
err := dispatch(sb, cmd)
|
|
err := dispatch(sb, cmd)
|
|
- require.NoError(t, err)
|
|
|
|
|
|
+ assert.NilError(t, err)
|
|
|
|
|
|
expectedShell := strslice.StrSlice([]string{shellCmd})
|
|
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) {
|
|
func TestPrependEnvOnCmd(t *testing.T) {
|
|
@@ -403,7 +403,7 @@ func TestPrependEnvOnCmd(t *testing.T) {
|
|
cmdWithEnv := prependEnvOnCmd(buildArgs, args, cmd)
|
|
cmdWithEnv := prependEnvOnCmd(buildArgs, args, cmd)
|
|
expected := strslice.StrSlice([]string{
|
|
expected := strslice.StrSlice([]string{
|
|
"|3", "NO_PROXY=YA", "args=not", "sorted=nope", "foo", "bar"})
|
|
"|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) {
|
|
func TestRunWithBuildArgs(t *testing.T) {
|
|
@@ -422,8 +422,8 @@ func TestRunWithBuildArgs(t *testing.T) {
|
|
imageCache := &mockImageCache{
|
|
imageCache := &mockImageCache{
|
|
getCacheFunc: func(parentID string, cfg *container.Config) (string, error) {
|
|
getCacheFunc: func(parentID string, cfg *container.Config) (string, error) {
|
|
// Check the runConfig.Cmd sent to probeCache()
|
|
// 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
|
|
return "", nil
|
|
},
|
|
},
|
|
}
|
|
}
|
|
@@ -441,21 +441,21 @@ func TestRunWithBuildArgs(t *testing.T) {
|
|
}
|
|
}
|
|
mockBackend.containerCreateFunc = func(config types.ContainerCreateConfig) (container.ContainerCreateCreatedBody, error) {
|
|
mockBackend.containerCreateFunc = func(config types.ContainerCreateConfig) (container.ContainerCreateCreatedBody, error) {
|
|
// Check the runConfig.Cmd sent to create()
|
|
// 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
|
|
return container.ContainerCreateCreatedBody{ID: "12345"}, nil
|
|
}
|
|
}
|
|
mockBackend.commitFunc = func(cfg backend.CommitConfig) (image.ID, error) {
|
|
mockBackend.commitFunc = func(cfg backend.CommitConfig) (image.ID, error) {
|
|
// Check the runConfig.Cmd sent to commit()
|
|
// 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
|
|
return "", nil
|
|
}
|
|
}
|
|
from := &instructions.Stage{BaseName: "abcdef"}
|
|
from := &instructions.Stage{BaseName: "abcdef"}
|
|
err := initializeStage(sb, from)
|
|
err := initializeStage(sb, from)
|
|
- require.NoError(t, err)
|
|
|
|
|
|
+ assert.NilError(t, err)
|
|
sb.state.buildArgs.AddArg("one", strPtr("two"))
|
|
sb.state.buildArgs.AddArg("one", strPtr("two"))
|
|
run := &instructions.RunCommand{
|
|
run := &instructions.RunCommand{
|
|
ShellDependantCmdLine: instructions.ShellDependantCmdLine{
|
|
ShellDependantCmdLine: instructions.ShellDependantCmdLine{
|
|
@@ -463,8 +463,8 @@ func TestRunWithBuildArgs(t *testing.T) {
|
|
PrependShell: true,
|
|
PrependShell: true,
|
|
},
|
|
},
|
|
}
|
|
}
|
|
- require.NoError(t, dispatch(sb, run))
|
|
|
|
|
|
+ assert.NilError(t, dispatch(sb, run))
|
|
|
|
|
|
// Check that runConfig.Cmd has not been modified by 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))
|
|
}
|
|
}
|