diff options
author | baude <bbaude@redhat.com> | 2019-03-07 15:20:29 -0600 |
---|---|---|
committer | baude <bbaude@redhat.com> | 2019-03-11 09:42:22 -0500 |
commit | 651520389d239f335248a27595d39a815ef95238 (patch) | |
tree | 819492990e69d0d5f5b9b276aa789e0d21e31297 /cmd/podman/shared/create_cli_test.go | |
parent | 9b42577c322b74906d4dfa64926d9f187e2e2976 (diff) | |
download | podman-651520389d239f335248a27595d39a815ef95238.tar.gz podman-651520389d239f335248a27595d39a815ef95238.tar.bz2 podman-651520389d239f335248a27595d39a815ef95238.zip |
preparation for remote-client create container
to prepare for being able to remotely run a container, we need to
perform a refactor to get code out of main because it is not
reusable. the shared location is a good starting spot though
eventually some will likely end up in pkg/spec/ at some point.
Signed-off-by: baude <bbaude@redhat.com>
Diffstat (limited to 'cmd/podman/shared/create_cli_test.go')
-rw-r--r-- | cmd/podman/shared/create_cli_test.go | 70 |
1 files changed, 70 insertions, 0 deletions
diff --git a/cmd/podman/shared/create_cli_test.go b/cmd/podman/shared/create_cli_test.go new file mode 100644 index 000000000..fea1a2390 --- /dev/null +++ b/cmd/podman/shared/create_cli_test.go @@ -0,0 +1,70 @@ +package shared + +import ( + "io/ioutil" + "os" + "testing" + + "github.com/stretchr/testify/assert" +) + +var ( + Var1 = []string{"ONE=1", "TWO=2"} +) + +func createTmpFile(content []byte) (string, error) { + tmpfile, err := ioutil.TempFile(os.TempDir(), "unittest") + if err != nil { + return "", err + } + + if _, err := tmpfile.Write(content); err != nil { + return "", err + + } + if err := tmpfile.Close(); err != nil { + return "", err + } + return tmpfile.Name(), nil +} + +func TestValidateSysctl(t *testing.T) { + strSlice := []string{"net.core.test1=4", "kernel.msgmax=2"} + result, _ := validateSysctl(strSlice) + assert.Equal(t, result["net.core.test1"], "4") +} + +func TestValidateSysctlBadSysctl(t *testing.T) { + strSlice := []string{"BLAU=BLUE", "GELB^YELLOW"} + _, err := validateSysctl(strSlice) + assert.Error(t, err) +} + +func TestGetAllLabels(t *testing.T) { + fileLabels := []string{} + labels, _ := GetAllLabels(fileLabels, Var1) + assert.Equal(t, len(labels), 2) +} + +func TestGetAllLabelsBadKeyValue(t *testing.T) { + inLabels := []string{"=badValue", "="} + fileLabels := []string{} + _, err := GetAllLabels(fileLabels, inLabels) + assert.Error(t, err, assert.AnError) +} + +func TestGetAllLabelsBadLabelFile(t *testing.T) { + fileLabels := []string{"/foobar5001/be"} + _, err := GetAllLabels(fileLabels, Var1) + assert.Error(t, err, assert.AnError) +} + +func TestGetAllLabelsFile(t *testing.T) { + content := []byte("THREE=3") + tFile, err := createTmpFile(content) + defer os.Remove(tFile) + assert.NoError(t, err) + fileLabels := []string{tFile} + result, _ := GetAllLabels(fileLabels, Var1) + assert.Equal(t, len(result), 3) +} |