mirror of
https://github.com/cloud-hypervisor/cloud-hypervisor.git
synced 2024-10-03 20:15:45 +00:00
unit tests: Fix broken AArch64 unit tests
https://github.com/cloud-hypervisor/cloud-hypervisor/pull/1225 introduces a hypervisor abstraction crate, which breaks some of the unit test cases on AArch64. This commit fixes related test cases. Signed-off-by: Henry Wang <henry.wang@arm.com>
This commit is contained in:
parent
462c58d58b
commit
d824d55562
@ -531,7 +531,7 @@ mod tests {
|
|||||||
use super::*;
|
use super::*;
|
||||||
use crate::aarch64::gic::create_gic;
|
use crate::aarch64::gic::create_gic;
|
||||||
use crate::aarch64::layout;
|
use crate::aarch64::layout;
|
||||||
use kvm_ioctls::Kvm;
|
use std::sync::Arc;
|
||||||
|
|
||||||
const LEN: u64 = 4096;
|
const LEN: u64 = 4096;
|
||||||
|
|
||||||
@ -585,8 +585,10 @@ mod tests {
|
|||||||
.iter()
|
.iter()
|
||||||
.cloned()
|
.cloned()
|
||||||
.collect();
|
.collect();
|
||||||
let kvm = Kvm::new().unwrap();
|
|
||||||
let vm = kvm.create_vm().unwrap();
|
let kvm = hypervisor::kvm::KvmHypervisor::new().unwrap();
|
||||||
|
let hv: Arc<dyn hypervisor::Hypervisor> = Arc::new(kvm);
|
||||||
|
let vm = hv.create_vm().unwrap();
|
||||||
let gic = create_gic(&vm, 1).unwrap();
|
let gic = create_gic(&vm, 1).unwrap();
|
||||||
assert!(create_fdt(
|
assert!(create_fdt(
|
||||||
&mem,
|
&mem,
|
||||||
|
@ -146,14 +146,14 @@ pub fn create_gic(vm: &Arc<dyn hypervisor::Vm>, vcpu_count: u64) -> Result<Box<d
|
|||||||
|
|
||||||
#[cfg(test)]
|
#[cfg(test)]
|
||||||
mod tests {
|
mod tests {
|
||||||
|
|
||||||
use super::*;
|
use super::*;
|
||||||
use kvm_ioctls::Kvm;
|
|
||||||
|
|
||||||
#[test]
|
#[test]
|
||||||
fn test_create_gic() {
|
fn test_create_gic() {
|
||||||
let kvm = Kvm::new().unwrap();
|
let kvm = hypervisor::kvm::KvmHypervisor::new().unwrap();
|
||||||
let vm = kvm.create_vm().unwrap();
|
let hv: Arc<dyn hypervisor::Hypervisor> = Arc::new(kvm);
|
||||||
|
let vm = hv.create_vm().unwrap();
|
||||||
|
|
||||||
assert!(create_gic(&vm, 1).is_ok());
|
assert!(create_gic(&vm, 1).is_ok());
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -159,13 +159,13 @@ pub fn read_mpidr(vcpu: &Arc<dyn hypervisor::Vcpu>) -> Result<u64> {
|
|||||||
mod tests {
|
mod tests {
|
||||||
use super::*;
|
use super::*;
|
||||||
use crate::aarch64::layout;
|
use crate::aarch64::layout;
|
||||||
use kvm_ioctls::Kvm;
|
|
||||||
use vm_memory::{GuestAddress, GuestMemoryMmap};
|
use vm_memory::{GuestAddress, GuestMemoryMmap};
|
||||||
|
|
||||||
#[test]
|
#[test]
|
||||||
fn test_setup_regs() {
|
fn test_setup_regs() {
|
||||||
let kvm = Kvm::new().unwrap();
|
let kvm = hypervisor::kvm::KvmHypervisor::new().unwrap();
|
||||||
let vm = kvm.create_vm().unwrap();
|
let hv: Arc<dyn hypervisor::Hypervisor> = Arc::new(kvm);
|
||||||
|
let vm = hv.create_vm().unwrap();
|
||||||
let vcpu = vm.create_vcpu(0).unwrap();
|
let vcpu = vm.create_vcpu(0).unwrap();
|
||||||
let mut regions = Vec::new();
|
let mut regions = Vec::new();
|
||||||
regions.push((
|
regions.push((
|
||||||
@ -174,10 +174,6 @@ mod tests {
|
|||||||
));
|
));
|
||||||
let mem = GuestMemoryMmap::from_ranges(®ions).expect("Cannot initialize memory");
|
let mem = GuestMemoryMmap::from_ranges(®ions).expect("Cannot initialize memory");
|
||||||
|
|
||||||
match setup_regs(&vcpu, 0, 0x0, &mem).unwrap_err() {
|
|
||||||
Error::SetCoreRegister(ref e) => assert_eq!(e.errno(), libc::ENOEXEC),
|
|
||||||
_ => panic!("Expected to receive Error::SetCoreRegister"),
|
|
||||||
}
|
|
||||||
let mut kvi: kvm_bindings::kvm_vcpu_init = kvm_bindings::kvm_vcpu_init::default();
|
let mut kvi: kvm_bindings::kvm_vcpu_init = kvm_bindings::kvm_vcpu_init::default();
|
||||||
vm.get_preferred_target(&mut kvi).unwrap();
|
vm.get_preferred_target(&mut kvi).unwrap();
|
||||||
vcpu.vcpu_init(&kvi).unwrap();
|
vcpu.vcpu_init(&kvi).unwrap();
|
||||||
@ -186,8 +182,9 @@ mod tests {
|
|||||||
}
|
}
|
||||||
#[test]
|
#[test]
|
||||||
fn test_read_mpidr() {
|
fn test_read_mpidr() {
|
||||||
let kvm = Kvm::new().unwrap();
|
let kvm = hypervisor::kvm::KvmHypervisor::new().unwrap();
|
||||||
let vm = kvm.create_vm().unwrap();
|
let hv: Arc<dyn hypervisor::Hypervisor> = Arc::new(kvm);
|
||||||
|
let vm = hv.create_vm().unwrap();
|
||||||
let vcpu = vm.create_vcpu(0).unwrap();
|
let vcpu = vm.create_vcpu(0).unwrap();
|
||||||
let mut kvi: kvm_bindings::kvm_vcpu_init = kvm_bindings::kvm_vcpu_init::default();
|
let mut kvi: kvm_bindings::kvm_vcpu_init = kvm_bindings::kvm_vcpu_init::default();
|
||||||
vm.get_preferred_target(&mut kvi).unwrap();
|
vm.get_preferred_target(&mut kvi).unwrap();
|
||||||
|
Loading…
Reference in New Issue
Block a user