pytest provides session scoped fixtures, making it much easier to reuse resources across tests.
24 lines
943 B
Python
24 lines
943 B
Python
# Copyright 2026 Cloudbase Solutions Srl
|
|
# All Rights Reserved.
|
|
|
|
"""Exercise NFC disk open and a one-sector write/read against the lab."""
|
|
|
|
from openvixdisklib import nfc_open
|
|
from tests.integration.base import LabEnv, SECTOR_SIZE, pattern_bytes
|
|
|
|
|
|
class TestNfcOpen:
|
|
def test_open_disk_and_read_first_sector(self, lab: LabEnv) -> None:
|
|
"""Open the temp VMDK, write sector 0, and read it back."""
|
|
expected = pattern_bytes(SECTOR_SIZE, b"NFC-OPEN-S0")
|
|
with lab.authenticate(read_only=False) as session:
|
|
with nfc_open.open_disk(
|
|
session, lab.disk_path, read_only=False) as disk:
|
|
assert disk.path == lab.disk_path
|
|
assert disk.handle > 0
|
|
assert disk.sector_size == SECTOR_SIZE
|
|
disk.write(0, 1, expected)
|
|
got = disk.read(0, 1)
|
|
assert got is not expected
|
|
assert got == expected
|