mirror of
https://github.com/aljazceru/kata-containers.git
synced 2025-12-29 12:04:21 +01:00
Since arch-specific func getExpectedHostDetails holds undefined struct field SupportVSocks on arm64, unit test TestEnvGetEnvInfoSetsCPUType, TestEnvGetHostInfo and so on failed. I'm trying to use generic func genericgetExpectedHostDetails on arm64 to avoid similar issues. Fixes: #1287 Signed-off-by: Penny Zheng <penny.zheng@arm.com>
64 lines
1.6 KiB
Go
64 lines
1.6 KiB
Go
// Copyright (c) 2018 Intel Corporation
|
|
//
|
|
// SPDX-License-Identifier: Apache-2.0
|
|
//
|
|
|
|
package main
|
|
|
|
import (
|
|
"io/ioutil"
|
|
"os"
|
|
"testing"
|
|
|
|
"github.com/stretchr/testify/assert"
|
|
)
|
|
|
|
func getExpectedHostDetails(tmpdir string) (HostInfo, error) {
|
|
expectedVendor := "moi"
|
|
expectedModel := "awesome XI"
|
|
expectedVMContainerCapable := false
|
|
return genericGetExpectedHostDetails(tmpdir, expectedVendor, expectedModel, expectedVMContainerCapable)
|
|
}
|
|
|
|
func TestEnvGetEnvInfoSetsCPUType(t *testing.T) {
|
|
assert := assert.New(t)
|
|
|
|
tmpdir, err := ioutil.TempDir("", "")
|
|
assert.NoError(err)
|
|
defer os.RemoveAll(tmpdir)
|
|
|
|
savedArchRequiredCPUFlags := archRequiredCPUFlags
|
|
savedArchRequiredCPUAttribs := archRequiredCPUAttribs
|
|
savedArchRequiredKernelModules := archRequiredKernelModules
|
|
|
|
defer func() {
|
|
archRequiredCPUFlags = savedArchRequiredCPUFlags
|
|
archRequiredCPUAttribs = savedArchRequiredCPUAttribs
|
|
archRequiredKernelModules = savedArchRequiredKernelModules
|
|
}()
|
|
|
|
archRequiredCPUFlags = map[string]string{}
|
|
archRequiredCPUAttribs = map[string]string{}
|
|
archRequiredKernelModules = map[string]kernelModule{}
|
|
|
|
configFile, config, err := makeRuntimeConfig(tmpdir)
|
|
assert.NoError(err)
|
|
|
|
expectedEnv, err := getExpectedSettings(config, tmpdir, configFile)
|
|
assert.NoError(err)
|
|
|
|
env, err := getEnvInfo(configFile, config)
|
|
assert.NoError(err)
|
|
|
|
assert.Equal(expectedEnv, env)
|
|
|
|
assert.NotEmpty(archRequiredCPUFlags)
|
|
assert.NotEmpty(archRequiredCPUAttribs)
|
|
assert.NotEmpty(archRequiredKernelModules)
|
|
|
|
assert.Equal(archRequiredCPUFlags["vmx"], "Virtualization support")
|
|
|
|
_, ok := archRequiredKernelModules["kvm"]
|
|
assert.True(ok)
|
|
}
|