diff --git a/test/functional/api/cas/cache.py b/test/functional/api/cas/cache.py index 811217a..9395d84 100644 --- a/test/functional/api/cas/cache.py +++ b/test/functional/api/cas/cache.py @@ -139,8 +139,8 @@ class Cache: def load_io_class(self, file_path: str): return casadm.load_io_classes(self.cache_id, file_path) - def list_io_classes(self, output_format: OutputFormat): - return casadm.list_io_classes(self.cache_id, output_format) + def list_io_classes(self): + return get_io_class_list(self.cache_id) def set_seq_cutoff_parameters(self, seq_cutoff_param: SeqCutOffParameters): return casadm.set_param_cutoff(self.cache_id, diff --git a/test/functional/api/cas/casadm_parser.py b/test/functional/api/cas/casadm_parser.py index 399c698..2699da5 100644 --- a/test/functional/api/cas/casadm_parser.py +++ b/test/functional/api/cas/casadm_parser.py @@ -275,3 +275,19 @@ def get_casadm_version(): casadm_output = casadm.print_version(OutputFormat.csv).stdout.split('\n') version_str = casadm_output[1].split(',')[-1] return CasVersion.from_version_string(version_str) + + +def get_io_class_list(cache_id: int): + ret = [] + casadm_output = casadm.list_io_classes(cache_id, OutputFormat.csv).stdout.splitlines() + casadm_output.pop(0) # Remove header + for line in casadm_output: + values = line.split(",") + ioclass = { + "id": int(values[0]), + "rule": values[1], + "eviction_priority": int(values[2]), + "allocation": float(values[3]), + } + ret.append(ioclass) + return ret