1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64
|
package testing
import (
"io/ioutil"
"os"
"path/filepath"
"testing"
th "github.com/gophercloud/gophercloud/testhelper"
"github.com/gophercloud/utils/openstack/baremetal/v1/nodes"
)
func TestUserDataFromMap(t *testing.T) {
userData, err := IgnitionUserData.ToUserData()
th.AssertNoErr(t, err)
th.CheckJSONEquals(t, string(userData), IgnitionUserData)
}
func TestUserDataFromString(t *testing.T) {
cloudInit := nodes.UserDataString(CloudInitString)
userData, err := cloudInit.ToUserData()
th.AssertNoErr(t, err)
th.AssertByteArrayEquals(t, userData, []byte(cloudInit))
}
func TestConfigDriveToDirectory(t *testing.T) {
path, err := ConfigDrive.ToDirectory()
th.AssertNoErr(t, err)
defer os.RemoveAll(path)
basePath := filepath.FromSlash(path + "/openstack/latest")
userData, err := ioutil.ReadFile(filepath.FromSlash(basePath + "/user_data"))
th.AssertNoErr(t, err)
th.CheckJSONEquals(t, string(userData), IgnitionUserData)
metaData, err := ioutil.ReadFile(filepath.FromSlash(basePath + "/meta_data.json"))
th.AssertNoErr(t, err)
th.CheckJSONEquals(t, string(metaData), OpenStackMetaData)
networkData, err := ioutil.ReadFile(filepath.FromSlash(basePath + "/network_data.json"))
th.AssertNoErr(t, err)
th.CheckJSONEquals(t, string(networkData), NetworkData)
}
func TestConfigDriveVersionToDirectory(t *testing.T) {
path, err := ConfigDriveVersioned.ToDirectory()
th.AssertNoErr(t, err)
defer os.RemoveAll(path)
basePath := filepath.FromSlash(path + "/openstack/" + ConfigDriveVersioned.Version)
userData, err := ioutil.ReadFile(filepath.FromSlash(basePath + "/user_data"))
th.AssertNoErr(t, err)
th.CheckJSONEquals(t, string(userData), IgnitionUserData)
metaData, err := ioutil.ReadFile(filepath.FromSlash(basePath + "/meta_data.json"))
th.AssertNoErr(t, err)
th.CheckJSONEquals(t, string(metaData), OpenStackMetaData)
networkData, err := ioutil.ReadFile(filepath.FromSlash(basePath + "/network_data.json"))
th.AssertNoErr(t, err)
th.CheckJSONEquals(t, string(networkData), NetworkData)
}
|