in selftest/selftest.py [0:0]
def validate_azure_nvme_id_json(self, disk_info: DiskInfo) -> None:
"""Validate azure-nvme-id --format json outputs."""
assert self.azure_nvme_id_json_returncode == 0, "azure-nvme-id failed"
if not os.path.exists("/sys/class/nvme"):
assert (
self.azure_nvme_id_json_stderr
== "no NVMe devices in /sys/class/nvme: No such file or directory\n"
), f"unexpected azure-nvme-id stderr without /sys/class/nvme: {self.azure_nvme_id_json_stderr}"
else:
assert (
self.azure_nvme_id_json_stderr == ""
), f"unexpected azure-nvme-id stderr: {self.azure_nvme_id_json_stderr}"
self._validate_azure_nvme_disks(self.azure_nvme_id_disks, disk_info)
assert all(
disk.model
in (
"MSFT NVMe Accelerator v1.0",
"Microsoft NVMe Direct Disk",
"Microsoft NVMe Direct Disk v2",
)
for disk in self.azure_nvme_id_json_disks.values()
), "missing model in azure-nvme-id --format json"
logger.info(
"validate_azure_nvmve_id_json OK: %r", self.azure_nvme_id_json_stdout
)