Functional tests for WO cache mode

Signed-off-by: Adam Rutkowski <adam.j.rutkowski@intel.com>
This commit is contained in:
Adam Rutkowski
2019-05-31 13:31:06 -04:00
parent b97bb6f53b
commit 641fba1708
3 changed files with 194 additions and 5 deletions

View File

@@ -96,10 +96,12 @@ class Data:
return cls(pages * Data.PAGE_SIZE)
@classmethod
def from_bytes(cls, source: bytes):
d = cls(len(source))
def from_bytes(cls, source: bytes, offset: int = 0, size: int = 0):
if size == 0:
size = len(source) - offset
d = cls(size)
memmove(d.handle, cast(source, c_void_p), len(source))
memmove(d.handle, cast(source, c_void_p).value + offset, size)
return d

View File

@@ -108,9 +108,9 @@ class Io(Structure):
byref(self), addr, length, direction, io_class, flags
)
def set_data(self, data: Data):
def set_data(self, data: Data, offset: int = 0):
self.data = data
OcfLib.getInstance().ocf_io_set_data_wrapper(byref(self), data, 0)
OcfLib.getInstance().ocf_io_set_data_wrapper(byref(self), data, offset)
def set_queue(self, queue: Queue):
OcfLib.getInstance().ocf_io_set_queue_wrapper(byref(self), queue.handle)