Skip to content

Commit 2afaaee

Browse files
committed
Hibernation: Move before case to common file
1 parent 5583d29 commit 2afaaee

File tree

3 files changed

+19
-16
lines changed

3 files changed

+19
-16
lines changed

lisa/microsoft/testsuites/power/common.py

Lines changed: 15 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@
88
from lisa import Environment, Logger, Node, RemoteNode, features
99
from lisa.features import StartStop
1010
from lisa.features.startstop import VMStatus
11-
from lisa.operating_system import SLES, AlmaLinux, Debian, Redhat, Ubuntu
11+
from lisa.operating_system import BSD, SLES, AlmaLinux, Debian, Redhat, Ubuntu, Windows
1212
from lisa.sut_orchestrator.azure.features import AzureExtension
1313
from lisa.tools import (
1414
Cat,
@@ -112,6 +112,20 @@ def _prepare_hibernation_environment(node: Node) -> None:
112112
resize.expand_os_partition()
113113

114114

115+
def hibernation_before_case(node: Node, log: Logger) -> None:
116+
"""
117+
Common before_case logic for hibernation tests.
118+
Validates OS support and prepares the environment.
119+
"""
120+
if isinstance(node.os, BSD) or isinstance(node.os, Windows):
121+
raise SkippedException(f"{node.os} is not supported.")
122+
123+
# Expand OS partition first (needed for RHEL/LVM before checking disk space)
124+
_prepare_hibernation_environment(node)
125+
126+
check_hibernation_disk_requirements(node)
127+
128+
115129
def _perform_hibernation_cycle(
116130
node: Node, log: Logger, throw_error: bool = True
117131
) -> tuple[Any, Any]:

lisa/microsoft/testsuites/power/power.py

Lines changed: 2 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -7,9 +7,8 @@
77
from assertpy import assert_that
88
from func_timeout import func_timeout
99
from microsoft.testsuites.power.common import (
10-
_prepare_hibernation_environment,
11-
check_hibernation_disk_requirements,
1210
cleanup_env,
11+
hibernation_before_case,
1312
is_distro_supported,
1413
run_network_workload,
1514
run_storage_workload,
@@ -28,12 +27,10 @@
2827
from lisa.features import Disk, HibernationEnabled, Sriov, Synthetic
2928
from lisa.features.availability import AvailabilityTypeNoRedundancy
3029
from lisa.node import Node
31-
from lisa.operating_system import BSD, Windows
3230
from lisa.search_space import IntRange
3331
from lisa.sut_orchestrator.azure.features import AzureExtension
3432
from lisa.testsuite import simple_requirement
3533
from lisa.tools import Date, Hwclock, StressNg
36-
from lisa.util import SkippedException
3734
from lisa.util.perf_timer import create_timer
3835

3936

@@ -47,13 +44,7 @@
4744
class Power(TestSuite):
4845
def before_case(self, log: Logger, **kwargs: Any) -> None:
4946
node: Node = kwargs["node"]
50-
if isinstance(node.os, BSD) or isinstance(node.os, Windows):
51-
raise SkippedException(f"{node.os} is not supported.")
52-
53-
# Expand OS partition first (needed for RHEL/LVM before checking disk space)
54-
_prepare_hibernation_environment(node)
55-
56-
check_hibernation_disk_requirements(node)
47+
hibernation_before_case(node, log)
5748

5849
@TestCaseMetadata(
5950
description="""

lisa/microsoft/testsuites/power/stress.py

Lines changed: 2 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,7 @@
55

66
from microsoft.testsuites.power.common import (
77
cleanup_env,
8+
hibernation_before_case,
89
is_distro_supported,
910
verify_hibernation,
1011
)
@@ -20,9 +21,7 @@
2021
from lisa.features import HibernationEnabled, Sriov
2122
from lisa.features.availability import AvailabilityTypeNoRedundancy
2223
from lisa.node import Node
23-
from lisa.operating_system import BSD, Windows
2424
from lisa.testsuite import simple_requirement
25-
from lisa.util import SkippedException
2625

2726

2827
@TestSuiteMetadata(
@@ -37,8 +36,7 @@ class PowerStress(TestSuite):
3736

3837
def before_case(self, log: Logger, **kwargs: Any) -> None:
3938
node: Node = kwargs["node"]
40-
if isinstance(node.os, BSD) or isinstance(node.os, Windows):
41-
raise SkippedException(f"{node.os} is not supported.")
39+
hibernation_before_case(node, log)
4240

4341
@TestCaseMetadata(
4442
description="""

0 commit comments

Comments
 (0)