mirror of
https://github.com/kata-containers/kata-containers.git
synced 2025-04-28 19:54:35 +00:00
runtime: Add test cases for checkPCIeConfig
These test cases shows which options are valid for CLH/Qemu, and test that we correctly catch unsupported combinations. Signed-off-by: Jeremi Piotrowski <jpiotrowski@microsoft.com>
This commit is contained in:
parent
fc51e4b9eb
commit
7c4e73b609
@ -18,8 +18,10 @@ import (
|
||||
"syscall"
|
||||
"testing"
|
||||
|
||||
config "github.com/kata-containers/kata-containers/src/runtime/pkg/device/config"
|
||||
ktu "github.com/kata-containers/kata-containers/src/runtime/pkg/katatestutils"
|
||||
"github.com/kata-containers/kata-containers/src/runtime/pkg/oci"
|
||||
"github.com/kata-containers/kata-containers/src/runtime/virtcontainers"
|
||||
vc "github.com/kata-containers/kata-containers/src/runtime/virtcontainers"
|
||||
"github.com/kata-containers/kata-containers/src/runtime/virtcontainers/pkg/compatoci"
|
||||
"github.com/kata-containers/kata-containers/src/runtime/virtcontainers/pkg/vcmock"
|
||||
@ -419,3 +421,32 @@ func TestCreateContainer(t *testing.T) {
|
||||
assert.NoError(err)
|
||||
}
|
||||
}
|
||||
|
||||
func TestVfioChecksClh(t *testing.T) {
|
||||
assert := assert.New(t)
|
||||
|
||||
// Check valid CLH vfio configs
|
||||
f := func(coldPlug, hotPlug config.PCIePort) error {
|
||||
return checkPCIeConfig(coldPlug, hotPlug, defaultMachineType, virtcontainers.ClhHypervisor)
|
||||
}
|
||||
assert.NoError(f(config.NoPort, config.NoPort))
|
||||
assert.NoError(f(config.NoPort, config.RootPort))
|
||||
assert.Error(f(config.RootPort, config.RootPort))
|
||||
assert.Error(f(config.RootPort, config.NoPort))
|
||||
assert.Error(f(config.NoPort, config.SwitchPort))
|
||||
}
|
||||
|
||||
func TestVfioCheckQemu(t *testing.T) {
|
||||
assert := assert.New(t)
|
||||
|
||||
// Check valid Qemu vfio configs
|
||||
f := func(coldPlug, hotPlug config.PCIePort) error {
|
||||
return checkPCIeConfig(coldPlug, hotPlug, defaultMachineType, virtcontainers.QemuHypervisor)
|
||||
}
|
||||
|
||||
assert.NoError(f(config.NoPort, config.NoPort))
|
||||
assert.NoError(f(config.RootPort, config.NoPort))
|
||||
assert.NoError(f(config.NoPort, config.RootPort))
|
||||
assert.Error(f(config.RootPort, config.RootPort))
|
||||
assert.Error(f(config.SwitchPort, config.RootPort))
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user