mirror of
https://github.com/containers/podman.git
synced 2025-05-20 08:36:23 +08:00
libpod/runtime_img_test.go Unit Tests
Unit tests for getRegistry related functions. Signed-off-by: baude <bbaude@redhat.com>
This commit is contained in:
@ -36,7 +36,7 @@ func getAllEnvironmentVariables(envFiles, envInput []string) ([]string, error) {
|
|||||||
env = append(env, defaultEnvVariables...)
|
env = append(env, defaultEnvVariables...)
|
||||||
}
|
}
|
||||||
// Each environment variable must be in the K=V format
|
// Each environment variable must be in the K=V format
|
||||||
for _,i := range env{
|
for _, i := range env {
|
||||||
spliti := strings.Split(i, "=")
|
spliti := strings.Split(i, "=")
|
||||||
if len(spliti) != 2 {
|
if len(spliti) != 2 {
|
||||||
return env, errors.Errorf("environment variables must be in the format KEY=VALUE: %s is invalid", i)
|
return env, errors.Errorf("environment variables must be in the format KEY=VALUE: %s is invalid", i)
|
||||||
|
@ -1,20 +1,19 @@
|
|||||||
package main
|
package main
|
||||||
|
|
||||||
|
|
||||||
import (
|
import (
|
||||||
"testing"
|
|
||||||
"reflect"
|
"reflect"
|
||||||
|
"testing"
|
||||||
|
|
||||||
"github.com/stretchr/testify/assert"
|
|
||||||
spec "github.com/opencontainers/runtime-spec/specs-go"
|
spec "github.com/opencontainers/runtime-spec/specs-go"
|
||||||
|
"github.com/stretchr/testify/assert"
|
||||||
)
|
)
|
||||||
|
|
||||||
func TestCreateConfig_GetVolumeMounts(t *testing.T) {
|
func TestCreateConfig_GetVolumeMounts(t *testing.T) {
|
||||||
data := spec.Mount{
|
data := spec.Mount{
|
||||||
Destination: "/foobar",
|
Destination: "/foobar",
|
||||||
Type: "bind",
|
Type: "bind",
|
||||||
Source: "foobar",
|
Source: "foobar",
|
||||||
Options: []string{"ro", "rbind"},
|
Options: []string{"ro", "rbind"},
|
||||||
}
|
}
|
||||||
config := createConfig{
|
config := createConfig{
|
||||||
volumes: []string{"foobar:/foobar:ro"},
|
volumes: []string{"foobar:/foobar:ro"},
|
||||||
@ -26,11 +25,11 @@ func TestCreateConfig_GetVolumeMounts(t *testing.T) {
|
|||||||
func TestCreateConfig_GetTmpfsMounts(t *testing.T) {
|
func TestCreateConfig_GetTmpfsMounts(t *testing.T) {
|
||||||
data := spec.Mount{
|
data := spec.Mount{
|
||||||
Destination: "/homer",
|
Destination: "/homer",
|
||||||
Type: "tmpfs",
|
Type: "tmpfs",
|
||||||
Source: "tmpfs",
|
Source: "tmpfs",
|
||||||
Options: []string{"rw", "size=787448k", "mode=1777"},
|
Options: []string{"rw", "size=787448k", "mode=1777"},
|
||||||
}
|
}
|
||||||
config:= createConfig{
|
config := createConfig{
|
||||||
tmpfs: []string{"/homer:rw,size=787448k,mode=1777"},
|
tmpfs: []string{"/homer:rw,size=787448k,mode=1777"},
|
||||||
}
|
}
|
||||||
tmpfsMount := config.GetTmpfsMounts()
|
tmpfsMount := config.GetTmpfsMounts()
|
||||||
|
54
libpod/runtime_img_test.go
Normal file
54
libpod/runtime_img_test.go
Normal file
@ -0,0 +1,54 @@
|
|||||||
|
package libpod
|
||||||
|
|
||||||
|
import (
|
||||||
|
"io/ioutil"
|
||||||
|
"os"
|
||||||
|
"reflect"
|
||||||
|
"testing"
|
||||||
|
|
||||||
|
"github.com/stretchr/testify/assert"
|
||||||
|
)
|
||||||
|
|
||||||
|
var (
|
||||||
|
registry = `[registries.search]
|
||||||
|
registries = ['one']
|
||||||
|
|
||||||
|
[registries.insecure]
|
||||||
|
registries = ['two']`
|
||||||
|
)
|
||||||
|
|
||||||
|
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 TestGetRegistries(t *testing.T) {
|
||||||
|
registryPath, err := createTmpFile([]byte(registry))
|
||||||
|
assert.NoError(t, err)
|
||||||
|
defer os.Remove(registryPath)
|
||||||
|
os.Setenv("REGISTRIES_CONFIG_PATH", registryPath)
|
||||||
|
registries, err := GetRegistries()
|
||||||
|
assert.NoError(t, err)
|
||||||
|
assert.True(t, reflect.DeepEqual(registries, []string{"one"}))
|
||||||
|
}
|
||||||
|
|
||||||
|
func TestGetInsecureRegistries(t *testing.T) {
|
||||||
|
registryPath, err := createTmpFile([]byte(registry))
|
||||||
|
assert.NoError(t, err)
|
||||||
|
os.Setenv("REGISTRIES_CONFIG_PATH", registryPath)
|
||||||
|
defer os.Remove(registryPath)
|
||||||
|
registries, err := GetInsecureRegistries()
|
||||||
|
assert.NoError(t, err)
|
||||||
|
assert.True(t, reflect.DeepEqual(registries, []string{"two"}))
|
||||||
|
}
|
@ -1,10 +1,10 @@
|
|||||||
package libpod
|
package libpod
|
||||||
|
|
||||||
|
|
||||||
import (
|
import (
|
||||||
"testing"
|
|
||||||
"github.com/stretchr/testify/assert"
|
"github.com/stretchr/testify/assert"
|
||||||
|
"testing"
|
||||||
)
|
)
|
||||||
|
|
||||||
var (
|
var (
|
||||||
sliceData = []string{"one", "two", "three", "four"}
|
sliceData = []string{"one", "two", "three", "four"}
|
||||||
)
|
)
|
||||||
@ -16,4 +16,4 @@ func TestStringInSlice(t *testing.T) {
|
|||||||
assert.False(t, StringInSlice("five", sliceData))
|
assert.False(t, StringInSlice("five", sliceData))
|
||||||
// string is not in empty slice
|
// string is not in empty slice
|
||||||
assert.False(t, StringInSlice("one", []string{}))
|
assert.False(t, StringInSlice("one", []string{}))
|
||||||
}
|
}
|
||||||
|
Reference in New Issue
Block a user