Module harvester_e2e_tests.apis.test_addons
Classes
class TestDefaultAddons
-
Expand source code
@pytest.mark.p0 @pytest.mark.parametrize("addon", [ 'cattle-logging-system/rancher-logging', 'cattle-monitoring-system/rancher-monitoring', 'harvester-system/harvester-seeder', 'harvester-system/nvidia-driver-toolkit', 'harvester-system/pcidevices-controller', 'harvester-system/vm-import-controller', ]) class TestDefaultAddons: def test_get(self, api_client, addon): code, data = api_client.addons.get(addon) assert 200 == code, (code, data) assert not data.get('spec', {}).get('enabled', True), (code, data) assert "AddonDisabled" == data.get('status', {}).get('status') @pytest.mark.dependency(name="enable_addon") def test_enable(self, api_client, wait_timeout, addon): code, data = api_client.addons.enable(addon) assert 200 == code, (code, data) assert data.get('spec', {}).get('enabled', False), (code, data) endtime = datetime.now() + timedelta(seconds=wait_timeout) while endtime > datetime.now(): code, data = api_client.addons.get(addon) if data.get('status', {}).get('status', "") in ("deployed", "AddonDeploySuccessful"): break sleep(3) else: raise AssertionError( f"Failed to enable addon {addon} with {wait_timeout} timed out\n" f"API Status({code}): {data}" ) @pytest.mark.dependency(depends=["enable_addon"]) def test_disable(self, api_client, addon, wait_timeout): code, data = api_client.addons.disable(addon) assert 200 == code, (code, data) assert not data.get('spec', {}).get('enabled', True), (code, data) endtime = datetime.now() + timedelta(seconds=wait_timeout) while endtime > datetime.now(): code, data = api_client.addons.get(addon) if "Disabled" in data.get('status', {}).get('status', ""): break sleep(3) else: raise AssertionError( f"Failed to disable addon {addon} with {wait_timeout} timed out\n" f"API Status({code}): {data}" )
Class variables
var pytestmark
Methods
def test_disable(self, api_client, addon, wait_timeout)
-
Expand source code
@pytest.mark.dependency(depends=["enable_addon"]) def test_disable(self, api_client, addon, wait_timeout): code, data = api_client.addons.disable(addon) assert 200 == code, (code, data) assert not data.get('spec', {}).get('enabled', True), (code, data) endtime = datetime.now() + timedelta(seconds=wait_timeout) while endtime > datetime.now(): code, data = api_client.addons.get(addon) if "Disabled" in data.get('status', {}).get('status', ""): break sleep(3) else: raise AssertionError( f"Failed to disable addon {addon} with {wait_timeout} timed out\n" f"API Status({code}): {data}" )
def test_enable(self, api_client, wait_timeout, addon)
-
Expand source code
@pytest.mark.dependency(name="enable_addon") def test_enable(self, api_client, wait_timeout, addon): code, data = api_client.addons.enable(addon) assert 200 == code, (code, data) assert data.get('spec', {}).get('enabled', False), (code, data) endtime = datetime.now() + timedelta(seconds=wait_timeout) while endtime > datetime.now(): code, data = api_client.addons.get(addon) if data.get('status', {}).get('status', "") in ("deployed", "AddonDeploySuccessful"): break sleep(3) else: raise AssertionError( f"Failed to enable addon {addon} with {wait_timeout} timed out\n" f"API Status({code}): {data}" )
def test_get(self, api_client, addon)
-
Expand source code
def test_get(self, api_client, addon): code, data = api_client.addons.get(addon) assert 200 == code, (code, data) assert not data.get('spec', {}).get('enabled', True), (code, data) assert "AddonDisabled" == data.get('status', {}).get('status')