mirror of
https://github.com/cloud-hypervisor/cloud-hypervisor.git
synced 2026-08-05 02:19:16 +00:00
virtio-devices: Test cap_len of sibling compound virtio PCI caps
Assert VirtioPciNotifyCap and VirtioPciCap64 size cap_len from their own type. Catches a future regression of the same shape as the VirtioPciCfgCap one in any of the sibling capabilities. Signed-off-by: Anatol Belski <anbelski@linux.microsoft.com>
This commit is contained in:
committed by
Rob Bradford
parent
b776c6d317
commit
2c86362674
@@ -1458,4 +1458,19 @@ mod unit_tests {
|
||||
assert_eq!(cap.cap.cfg_type, PciCapabilityType::Pci as u8);
|
||||
assert_eq!(cap.cap.cfg_type, 5);
|
||||
}
|
||||
|
||||
#[test]
|
||||
fn compound_caps_size_cap_len_from_own_type() {
|
||||
let notify = VirtioPciNotifyCap::new(PciCapabilityType::Notify, 0, 0, 0, Le32::from(0));
|
||||
assert_eq!(
|
||||
notify.cap.cap_len,
|
||||
(size_of::<VirtioPciNotifyCap>() as u8) + VIRTIO_PCI_CAP_LEN_OFFSET
|
||||
);
|
||||
|
||||
let cap64 = VirtioPciCap64::new(PciCapabilityType::SharedMemory, 0, 0, 0, 0);
|
||||
assert_eq!(
|
||||
cap64.cap.cap_len,
|
||||
(size_of::<VirtioPciCap64>() as u8) + VIRTIO_PCI_CAP_LEN_OFFSET
|
||||
);
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user