tests: use pytest instead of unittest
pytest provides session scoped fixtures, making it much easier to reuse resources across tests.
This commit is contained in:
@@ -4,30 +4,30 @@
|
||||
"""Exercise the VDDK-compatible openvixdisklib handle against the lab."""
|
||||
|
||||
from openvixdisklib import openvixdisklib as vixdisklib
|
||||
from tests.integration.base import TestBase
|
||||
from tests.integration.base import (
|
||||
LabEnv, SECTOR_AT_1GB, SECTOR_SIZE, pattern_bytes)
|
||||
|
||||
|
||||
class OpenVixDiskLibTest(TestBase):
|
||||
def test_write_and_read_sector_zero_and_one_gib(self) -> None:
|
||||
class TestOpenvixdisklib:
|
||||
def test_write_and_read_sector_zero_and_one_gib(self, lab: LabEnv) -> None:
|
||||
"""Write then read sector 0 and the sector at a 1 GiB offset."""
|
||||
handle = vixdisklib.VixDiskLibHandle(
|
||||
vixdisklib_compatibility_version="8.0",
|
||||
config_path=None)
|
||||
write_buf = vixdisklib.get_buffer(self.SECTOR_SIZE)
|
||||
read_buf = vixdisklib.get_buffer(self.SECTOR_SIZE)
|
||||
connect_kwargs = self.vixdisklib_connect_kwargs({
|
||||
"allow_untrusted": self.ALLOW_UNTRUSTED,
|
||||
write_buf = vixdisklib.get_buffer(SECTOR_SIZE)
|
||||
read_buf = vixdisklib.get_buffer(SECTOR_SIZE)
|
||||
connect_kwargs = lab.vixdisklib_connect_kwargs({
|
||||
"allow_untrusted": lab.allow_untrusted,
|
||||
})
|
||||
patterns = {
|
||||
0: self.pattern_bytes(self.SECTOR_SIZE, b"OVDL-S0"),
|
||||
self.SECTOR_AT_1GB: self.pattern_bytes(
|
||||
self.SECTOR_SIZE, b"OVDL-1GB"),
|
||||
0: pattern_bytes(SECTOR_SIZE, b"OVDL-S0"),
|
||||
SECTOR_AT_1GB: pattern_bytes(SECTOR_SIZE, b"OVDL-1GB"),
|
||||
}
|
||||
with handle.connect(**connect_kwargs) as conn:
|
||||
with handle.open(conn, self.DISK_PATH, flags=0) as disk:
|
||||
with handle.open(conn, lab.disk_path, flags=0) as disk:
|
||||
for start, expected in patterns.items():
|
||||
write_buf[:self.SECTOR_SIZE] = expected
|
||||
write_buf[:SECTOR_SIZE] = expected
|
||||
handle.write(disk, start, 1, write_buf)
|
||||
read_buf[:self.SECTOR_SIZE] = b"\xa5" * self.SECTOR_SIZE
|
||||
read_buf[:SECTOR_SIZE] = b"\xa5" * SECTOR_SIZE
|
||||
handle.read(disk, start, 1, read_buf)
|
||||
self.assertEqual(read_buf.raw[:self.SECTOR_SIZE], expected)
|
||||
assert read_buf.raw[:SECTOR_SIZE] == expected
|
||||
|
||||
Reference in New Issue
Block a user