mirror of
https://github.com/kata-containers/kata-containers.git
synced 2025-08-01 15:57:20 +00:00
Merge pull request #8700 from justxuewei/dbs-ut
dragonball: Trigger unit tests of dbs_* subcrates by `make test`
This commit is contained in:
commit
ec30d5a9a8
@ -4,6 +4,8 @@
|
||||
|
||||
include ../../utils.mk
|
||||
|
||||
PROJECT_DIRS := $(shell find . -name Cargo.toml -printf '%h\n' | sort -u)
|
||||
|
||||
ifeq ($(ARCH), s390x)
|
||||
default build check test clippy:
|
||||
@echo "s390x not support currently"
|
||||
@ -40,7 +42,10 @@ clean:
|
||||
|
||||
test:
|
||||
ifdef SUPPORT_VIRTUALIZATION
|
||||
RUST_BACKTRACE=1 cargo test --all-features --target $(TRIPLE) -- --nocapture --test-threads=1
|
||||
@set -e; \
|
||||
for dir in $(PROJECT_DIRS); do \
|
||||
bash -c "pushd $${dir} && RUST_BACKTRACE=1 cargo test --all-features --target $(TRIPLE) -- --nocapture --test-threads=1 && popd"; \
|
||||
done
|
||||
else
|
||||
@echo "INFO: skip testing dragonball, it need virtualization support."
|
||||
exit 0
|
||||
|
@ -86,7 +86,7 @@ mod tests {
|
||||
fn test_i8042_valid_ops() {
|
||||
let reset_evt = EventFdTrigger::new(EventFd::new(libc::EFD_NONBLOCK).unwrap());
|
||||
let metrics = Arc::new(I8042DeviceMetrics::default());
|
||||
let mut i8042 = I8042Device::new(reset_evt.try_clone().unwrap(), metrics);
|
||||
let mut i8042 = I8042Device::new(reset_evt.try_clone().unwrap());
|
||||
|
||||
let mut v = [0x00u8; 1];
|
||||
i8042.pio_read(PioAddress(0), PioAddress(0), &mut v);
|
||||
@ -107,7 +107,7 @@ mod tests {
|
||||
fn test_i8042_invalid_ops() {
|
||||
let reset_evt = EventFdTrigger::new(EventFd::new(libc::EFD_NONBLOCK).unwrap());
|
||||
let metrics = Arc::new(I8042DeviceMetrics::default());
|
||||
let mut i8042 = I8042Device::new(reset_evt.try_clone().unwrap(), metrics);
|
||||
let mut i8042 = I8042Device::new(reset_evt.try_clone().unwrap());
|
||||
|
||||
let mut v = [0x00u8; 2];
|
||||
i8042.pio_read(PioAddress(0), PioAddress(0), &mut v);
|
||||
@ -128,7 +128,7 @@ mod tests {
|
||||
fn test_i8042_reset_err() {
|
||||
let reset_evt = EventFdTrigger::new(unsafe { EventFd::from_raw_fd(i32::MAX) });
|
||||
let metrics = Arc::new(I8042DeviceMetrics::default());
|
||||
let mut i8042 = I8042Device::new(reset_evt, metrics);
|
||||
let mut i8042 = I8042Device::new(reset_evt);
|
||||
i8042.pio_write(
|
||||
PioAddress(0),
|
||||
PioAddress(COMMAND_OFFSET as u16),
|
||||
|
@ -576,6 +576,7 @@ pub(crate) mod tests {
|
||||
use vm_memory::{GuestMemoryAtomic, GuestMemoryMmap, GuestMemoryRegion, MmapRegion};
|
||||
|
||||
use super::*;
|
||||
use crate::tests::VirtQueue;
|
||||
use crate::{VIRTIO_INTR_CONFIG, VIRTIO_INTR_VRING};
|
||||
|
||||
pub fn create_virtio_device_config() -> VirtioDeviceConfig<Arc<GuestMemoryMmap>> {
|
||||
@ -625,11 +626,17 @@ pub(crate) mod tests {
|
||||
let status = Arc::new(InterruptStatusRegister32::new());
|
||||
let notifier = Arc::new(LegacyNotifier::new(group, status, VIRTIO_INTR_VRING));
|
||||
|
||||
let mut cfg = VirtioQueueConfig::<QueueSync>::create(1024, 1).unwrap();
|
||||
cfg.set_interrupt_notifier(notifier);
|
||||
|
||||
let mem =
|
||||
Arc::new(GuestMemoryMmap::<()>::from_ranges(&[(GuestAddress(0), 0x10000)]).unwrap());
|
||||
let vq = VirtQueue::new(GuestAddress(0), &mem, 1024);
|
||||
let q = vq.create_queue();
|
||||
let mut cfg = VirtioQueueConfig::new(
|
||||
q,
|
||||
Arc::new(EventFd::new(EFD_NONBLOCK).unwrap()),
|
||||
notifier,
|
||||
1,
|
||||
);
|
||||
|
||||
let desc = cfg.get_next_descriptor(mem.memory()).unwrap();
|
||||
assert!(matches!(desc, None));
|
||||
|
||||
@ -650,12 +657,17 @@ pub(crate) mod tests {
|
||||
let status = Arc::new(InterruptStatusRegister32::new());
|
||||
let notifier = Arc::new(LegacyNotifier::new(group, status, VIRTIO_INTR_VRING));
|
||||
|
||||
let mut cfg = VirtioQueueConfig::<QueueSync>::create(1024, 1).unwrap();
|
||||
cfg.set_interrupt_notifier(notifier);
|
||||
let mut cfg = cfg.clone();
|
||||
|
||||
let mem =
|
||||
Arc::new(GuestMemoryMmap::<()>::from_ranges(&[(GuestAddress(0), 0x10000)]).unwrap());
|
||||
let vq = VirtQueue::new(GuestAddress(0), &mem, 1024);
|
||||
let q = vq.create_queue();
|
||||
let mut cfg = VirtioQueueConfig::new(
|
||||
q,
|
||||
Arc::new(EventFd::new(EFD_NONBLOCK).unwrap()),
|
||||
notifier,
|
||||
1,
|
||||
);
|
||||
|
||||
let desc = cfg.get_next_descriptor(mem.memory()).unwrap();
|
||||
assert!(matches!(desc, None));
|
||||
|
||||
|
@ -813,7 +813,7 @@ mod tests {
|
||||
|
||||
#[test]
|
||||
fn test_vhost_user_fs_virtio_device_normal() {
|
||||
let device_socket = "/var/tmp/vhost.1";
|
||||
let device_socket = "/tmp/vhost.1";
|
||||
let tag = "test_fs";
|
||||
|
||||
let handler = thread::spawn(move || {
|
||||
@ -882,7 +882,7 @@ mod tests {
|
||||
|
||||
#[test]
|
||||
fn test_vhost_user_fs_virtio_device_activate() {
|
||||
let device_socket = "/var/tmp/vhost.1";
|
||||
let device_socket = "/tmp/vhost.1";
|
||||
let tag = "test_fs";
|
||||
|
||||
let handler = thread::spawn(move || {
|
||||
|
Loading…
Reference in New Issue
Block a user