diff options
| author | OpenShift Merge Robot <openshift-merge-robot@users.noreply.github.com> | 2021-11-06 10:39:16 +0100 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2021-11-06 10:39:16 +0100 |
| commit | abbd6c167e8163a711680db80137a0731e06e564 (patch) | |
| tree | c11c98dc0eeac187c62b74443ba98c5dcb0961f0 /libpod/state_test.go | |
| parent | 6805befec2ca9b9a816b1efda0bf43a67cee09a7 (diff) | |
| parent | 0136a66a83d027049da6338f8ce6dfa8052c8ca3 (diff) | |
| download | podman-abbd6c167e8163a711680db80137a0731e06e564.tar.gz podman-abbd6c167e8163a711680db80137a0731e06e564.tar.bz2 podman-abbd6c167e8163a711680db80137a0731e06e564.zip | |
Merge pull request #11890 from Luap99/ports
libpod: deduplicate ports in db
Diffstat (limited to 'libpod/state_test.go')
| -rw-r--r-- | libpod/state_test.go | 40 |
1 files changed, 40 insertions, 0 deletions
diff --git a/libpod/state_test.go b/libpod/state_test.go index 4799d7b8d..5c3b0d7f7 100644 --- a/libpod/state_test.go +++ b/libpod/state_test.go @@ -11,6 +11,7 @@ import ( "github.com/containers/common/pkg/config" "github.com/containers/podman/v3/libpod/define" "github.com/containers/podman/v3/libpod/lock" + "github.com/containers/podman/v3/libpod/network/types" "github.com/containers/storage" "github.com/stretchr/testify/assert" "github.com/stretchr/testify/require" @@ -3705,3 +3706,42 @@ func TestGetContainerConfigNonExistentIDFails(t *testing.T) { assert.Error(t, err) }) } + +// Test that the state will convert the ports to the new format +func TestConvertPortMapping(t *testing.T) { + runForAllStates(t, func(t *testing.T, state State, manager lock.Manager) { + testCtr, err := getTestCtr1(manager) + assert.NoError(t, err) + + ports := testCtr.config.PortMappings + + oldPorts := []types.OCICNIPortMapping{ + { + HostPort: 80, + ContainerPort: 90, + Protocol: "tcp", + HostIP: "192.168.3.3", + }, + { + HostPort: 100, + ContainerPort: 110, + Protocol: "udp", + HostIP: "192.168.4.4", + }, + } + + testCtr.config.OldPortMappings = oldPorts + testCtr.config.PortMappings = nil + + err = state.AddContainer(testCtr) + assert.NoError(t, err) + + retrievedCtr, err := state.Container(testCtr.ID()) + assert.NoError(t, err) + + // set values to expected ones + testCtr.config.PortMappings = ports + + testContainersEqual(t, retrievedCtr, testCtr, true) + }) +} |
