77 lines
2.7 KiB
Python
77 lines
2.7 KiB
Python
#
|
|
# Copyright(c) 2019 Intel Corporation
|
|
# SPDX-License-Identifier: BSD-3-Clause-Clear
|
|
#
|
|
|
|
|
|
import logging
|
|
import pytest
|
|
from api.cas import casadm, casadm_parser
|
|
from tests.conftest import base_prepare
|
|
from core.test_run import TestRun
|
|
from storage_devices.disk import DiskType
|
|
from test_utils.size import Unit, Size
|
|
|
|
LOGGER = logging.getLogger(__name__)
|
|
|
|
|
|
@pytest.mark.parametrize("shortcut", [True, False])
|
|
@pytest.mark.parametrize('prepare_and_cleanup',
|
|
[{"core_count": 0, "cache_count": 1, "cache_type": "optane"}, ],
|
|
indirect=True)
|
|
def test_cli_start_stop_default_value(prepare_and_cleanup, shortcut):
|
|
prepare()
|
|
cache_device = next(
|
|
disk for disk in TestRun.dut.disks if disk.disk_type == DiskType.optane)
|
|
cache_device.create_partitions([Size(500, Unit.MebiByte)])
|
|
cache_device = cache_device.partitions[0]
|
|
casadm.start_cache(cache_device, shortcut=shortcut, force=True)
|
|
|
|
caches = casadm_parser.get_caches()
|
|
assert len(caches) == 1
|
|
assert caches[0].cache_device.system_path == cache_device.system_path
|
|
|
|
casadm.stop_cache(cache_id=caches[0].cache_id, shortcut=shortcut)
|
|
|
|
output = casadm.list_caches(shortcut=shortcut)
|
|
caches = casadm_parser.get_caches()
|
|
assert len(caches) == 0
|
|
assert output.stdout == "No caches running"
|
|
|
|
|
|
@pytest.mark.parametrize("shortcut", [True, False])
|
|
@pytest.mark.parametrize('prepare_and_cleanup',
|
|
[{"core_count": 1, "cache_count": 1, "cache_type": "optane"}],
|
|
indirect=True)
|
|
def test_cli_add_remove_default_value(prepare_and_cleanup, shortcut):
|
|
prepare()
|
|
cache_device = next(
|
|
disk for disk in TestRun.dut.disks if disk.disk_type == DiskType.optane)
|
|
cache_device.create_partitions([Size(500, Unit.MebiByte)])
|
|
cache_device = cache_device.partitions[0]
|
|
cache = casadm.start_cache(cache_device, shortcut=shortcut, force=True)
|
|
|
|
core_device = next(
|
|
disk for disk in TestRun.dut.disks if disk.disk_type != DiskType.optane)
|
|
casadm.add_core(cache, core_device, shortcut=shortcut)
|
|
|
|
caches = casadm_parser.get_caches()
|
|
assert len(caches[0].get_core_devices()) == 1
|
|
assert caches[0].get_core_devices()[0].core_device.system_path == core_device.system_path
|
|
|
|
casadm.remove_core(cache.cache_id, 1, shortcut=shortcut)
|
|
caches = casadm_parser.get_caches()
|
|
assert len(caches) == 1
|
|
assert len(caches[0].get_core_devices()) == 0
|
|
|
|
casadm.stop_cache(cache_id=cache.cache_id, shortcut=shortcut)
|
|
|
|
output = casadm.list_caches(shortcut=shortcut)
|
|
caches = casadm_parser.get_caches()
|
|
assert len(caches) == 0
|
|
assert output.stdout == "No caches running"
|
|
|
|
|
|
def prepare():
|
|
base_prepare()
|