Use parametrizex in tests
Signed-off-by: Jan Musial <jan.musial@intel.com>
This commit is contained in:
@@ -20,7 +20,7 @@ ioclass_config_path = "/tmp/opencas_ioclass.conf"
|
||||
|
||||
@pytest.mark.require_disk("cache", DiskTypeSet([DiskType.optane, DiskType.nand]))
|
||||
@pytest.mark.require_disk("core", DiskTypeLowerThan("cache"))
|
||||
@pytest.mark.parametrize("cache_mode", CacheMode)
|
||||
@pytest.mark.parametrizex("cache_mode", CacheMode)
|
||||
def test_ioclass_export_configuration(cache_mode):
|
||||
"""
|
||||
title: Export IO class configuration to a file
|
||||
|
||||
@@ -25,7 +25,7 @@ not_cached_mountpoint = "/tmp/ioclass_core_id_test/not_cached"
|
||||
|
||||
@pytest.mark.require_disk("cache", DiskTypeSet([DiskType.optane, DiskType.nand]))
|
||||
@pytest.mark.require_disk("core", DiskTypeLowerThan("cache"))
|
||||
@pytest.mark.parametrize("filesystem", [fs for fs in Filesystem] + [None])
|
||||
@pytest.mark.parametrizex("filesystem", [fs for fs in Filesystem] + [None])
|
||||
def test_ioclass_core_id(filesystem):
|
||||
"""
|
||||
title: Test for `core_id` classification rule
|
||||
|
||||
@@ -20,7 +20,7 @@ from .io_class_common import *
|
||||
|
||||
@pytest.mark.require_disk("cache", DiskTypeSet([DiskType.optane, DiskType.nand]))
|
||||
@pytest.mark.require_disk("core", DiskTypeLowerThan("cache"))
|
||||
@pytest.mark.parametrize("filesystem", Filesystem)
|
||||
@pytest.mark.parametrizex("filesystem", Filesystem)
|
||||
def test_ioclass_directory_depth(filesystem):
|
||||
"""
|
||||
Test if directory classification works properly for deeply nested directories for read and
|
||||
@@ -111,7 +111,7 @@ def test_ioclass_directory_depth(filesystem):
|
||||
|
||||
@pytest.mark.require_disk("cache", DiskTypeSet([DiskType.optane, DiskType.nand]))
|
||||
@pytest.mark.require_disk("core", DiskTypeLowerThan("cache"))
|
||||
@pytest.mark.parametrize("filesystem", Filesystem)
|
||||
@pytest.mark.parametrizex("filesystem", Filesystem)
|
||||
def test_ioclass_directory_dir_operations(filesystem):
|
||||
"""
|
||||
Test if directory classification works properly after directory operations like move or rename.
|
||||
@@ -283,7 +283,7 @@ def test_ioclass_directory_dir_operations(filesystem):
|
||||
|
||||
@pytest.mark.require_disk("cache", DiskTypeSet([DiskType.optane, DiskType.nand]))
|
||||
@pytest.mark.require_disk("core", DiskTypeLowerThan("cache"))
|
||||
@pytest.mark.parametrize("filesystem", Filesystem)
|
||||
@pytest.mark.parametrizex("filesystem", Filesystem)
|
||||
def test_ioclass_directory_file_operations(filesystem):
|
||||
"""
|
||||
Test if directory classification works properly after file operations like move or rename.
|
||||
|
||||
@@ -305,7 +305,7 @@ def test_ioclass_file_offset():
|
||||
|
||||
@pytest.mark.require_disk("cache", DiskTypeSet([DiskType.optane, DiskType.nand]))
|
||||
@pytest.mark.require_disk("core", DiskTypeLowerThan("cache"))
|
||||
@pytest.mark.parametrize("filesystem", Filesystem)
|
||||
@pytest.mark.parametrizex("filesystem", Filesystem)
|
||||
def test_ioclass_file_size(filesystem):
|
||||
"""
|
||||
File size IO class rules are configured in a way that each tested file size is unambiguously
|
||||
|
||||
@@ -161,7 +161,7 @@ def test_ioclass_request_size():
|
||||
|
||||
@pytest.mark.require_disk("cache", DiskTypeSet([DiskType.optane, DiskType.nand]))
|
||||
@pytest.mark.require_disk("core", DiskTypeLowerThan("cache"))
|
||||
@pytest.mark.parametrize("filesystem", list(Filesystem) + [False])
|
||||
@pytest.mark.parametrizex("filesystem", list(Filesystem) + [False])
|
||||
def test_ioclass_direct(filesystem):
|
||||
"""
|
||||
Perform buffered/direct IO to/from files or raw block device.
|
||||
@@ -246,7 +246,7 @@ def test_ioclass_direct(filesystem):
|
||||
|
||||
@pytest.mark.require_disk("cache", DiskTypeSet([DiskType.optane, DiskType.nand]))
|
||||
@pytest.mark.require_disk("core", DiskTypeLowerThan("cache"))
|
||||
@pytest.mark.parametrize("filesystem", Filesystem)
|
||||
@pytest.mark.parametrizex("filesystem", Filesystem)
|
||||
def test_ioclass_metadata(filesystem):
|
||||
"""
|
||||
Perform operations on files that cause metadata update.
|
||||
@@ -336,7 +336,7 @@ def test_ioclass_metadata(filesystem):
|
||||
|
||||
@pytest.mark.require_disk("cache", DiskTypeSet([DiskType.optane, DiskType.nand]))
|
||||
@pytest.mark.require_disk("core", DiskTypeLowerThan("cache"))
|
||||
@pytest.mark.parametrize("filesystem", Filesystem)
|
||||
@pytest.mark.parametrizex("filesystem", Filesystem)
|
||||
def test_ioclass_id_as_condition(filesystem):
|
||||
"""
|
||||
Load config in which IO class ids are used as conditions in other IO class definitions.
|
||||
@@ -475,7 +475,7 @@ def test_ioclass_id_as_condition(filesystem):
|
||||
|
||||
@pytest.mark.require_disk("cache", DiskTypeSet([DiskType.optane, DiskType.nand]))
|
||||
@pytest.mark.require_disk("core", DiskTypeLowerThan("cache"))
|
||||
@pytest.mark.parametrize("filesystem", Filesystem)
|
||||
@pytest.mark.parametrizex("filesystem", Filesystem)
|
||||
def test_ioclass_conditions_or(filesystem):
|
||||
"""
|
||||
Load config with IO class combining 5 contradicting conditions connected by OR operator.
|
||||
@@ -523,7 +523,7 @@ def test_ioclass_conditions_or(filesystem):
|
||||
|
||||
@pytest.mark.require_disk("cache", DiskTypeSet([DiskType.optane, DiskType.nand]))
|
||||
@pytest.mark.require_disk("core", DiskTypeLowerThan("cache"))
|
||||
@pytest.mark.parametrize("filesystem", Filesystem)
|
||||
@pytest.mark.parametrizex("filesystem", Filesystem)
|
||||
def test_ioclass_conditions_and(filesystem):
|
||||
"""
|
||||
Load config with IO class combining 5 conditions contradicting at least one other condition
|
||||
@@ -572,7 +572,7 @@ def test_ioclass_conditions_and(filesystem):
|
||||
|
||||
@pytest.mark.require_disk("cache", DiskTypeSet([DiskType.optane, DiskType.nand]))
|
||||
@pytest.mark.require_disk("core", DiskTypeLowerThan("cache"))
|
||||
@pytest.mark.parametrize("filesystem", Filesystem)
|
||||
@pytest.mark.parametrizex("filesystem", Filesystem)
|
||||
def test_ioclass_effective_ioclass(filesystem):
|
||||
"""
|
||||
title: Effective IO class with multiple non-exclusive conditions
|
||||
|
||||
Reference in New Issue
Block a user