Skip to content

Commit c43a19e

Browse files
committed
Create tests for vdi_revert on lvm based SRs
Signed-off-by: Antoine Bartuccio <antoine.bartuccio@vates.tech>
1 parent 1ba8310 commit c43a19e

3 files changed

Lines changed: 123 additions & 0 deletions

File tree

tests/storage/lvm/test_lvm_sr.py

Lines changed: 34 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -23,6 +23,12 @@
2323
vdi_is_open,
2424
xva_export_import,
2525
)
26+
from tests.storage.storage import (
27+
check_vdi_revert,
28+
check_vdi_revert_cbt,
29+
check_vdi_revert_journal,
30+
check_vdi_revert_journal_cbt,
31+
)
2632

2733
# Requirements:
2834
# - one XCP-ng host with an additional unused disk for the SR
@@ -150,6 +156,34 @@ def test_vdi_export_import(self, storage_test_vm: VM, lvm_sr: SR, image_format:
150156
defer: Defer) -> None:
151157
vdi_export_import(storage_test_vm, lvm_sr, image_format, temp_large_dir, defer)
152158

159+
@pytest.mark.small_vm
160+
@pytest.mark.big_vm
161+
def test_revert(self, vm_on_lvm_sr: VM, defer: Defer) -> None:
162+
check_vdi_revert(defer, vm_on_lvm_sr)
163+
164+
@pytest.mark.small_vm
165+
@pytest.mark.big_vm
166+
def test_revert_cbt(self, vm_on_lvm_sr: VM, defer: Defer) -> None:
167+
check_vdi_revert_cbt(defer, vm_on_lvm_sr)
168+
169+
@pytest.mark.small_vm
170+
@pytest.mark.big_vm
171+
def test_revert_journal_cbt(self, vm_on_lvm_sr: VM, defer: Defer, exit_on_fistpoint: None):
172+
check_vdi_revert_journal_cbt(defer, vm_on_lvm_sr, "LVM_revert_create_src")
173+
174+
@pytest.mark.small_vm
175+
@pytest.mark.big_vm
176+
@pytest.mark.parametrize(
177+
"fistpoint",
178+
[
179+
"LVM_revert_create_insert",
180+
"LVM_revert_create_src",
181+
"LVM_revert_create_dest",
182+
]
183+
)
184+
def test_revert_journal(self, vm_on_lvm_sr: VM, defer: Defer, exit_on_fistpoint: None, fistpoint: str):
185+
check_vdi_revert_journal(defer, vm_on_lvm_sr, fistpoint)
186+
153187
# *** tests with reboots (longer tests).
154188

155189
@pytest.mark.reboot

tests/storage/lvmohba/test_lvmohba_sr.py

Lines changed: 45 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,7 @@
22

33
from lib.commands import SSHCommandFailed
44
from lib.common import Defer, vm_image, wait_for
5+
from lib.host import Host
56
from lib.sr import SR
67
from lib.vdi import VDI, ImageFormat
78
from lib.vm import VM
@@ -16,6 +17,13 @@
1617
vdi_is_open,
1718
xva_export_import,
1819
)
20+
from tests.storage.storage import (
21+
check_critical_journal_revert,
22+
check_vdi_revert,
23+
check_vdi_revert_cbt,
24+
check_vdi_revert_journal,
25+
check_vdi_revert_journal_cbt,
26+
)
1927

2028
# Requirements:
2129
# - one XCP-ng host >= 8.2
@@ -82,6 +90,43 @@ def test_vdi_export_import(self, storage_test_vm: VM, lvmohba_sr: SR, image_form
8290
temp_large_dir: str, defer: Defer):
8391
vdi_export_import(storage_test_vm, lvmohba_sr, image_format, temp_large_dir, defer)
8492

93+
@pytest.mark.small_vm
94+
@pytest.mark.big_vm
95+
def test_revert(self, vm_on_lvmohba_sr: VM, defer: Defer) -> None:
96+
check_vdi_revert(defer, vm_on_lvmohba_sr)
97+
98+
@pytest.mark.small_vm
99+
@pytest.mark.big_vm
100+
def test_revert_cbt(self, vm_on_lvmohba_sr: VM, defer: Defer) -> None:
101+
check_vdi_revert_cbt(defer, vm_on_lvmohba_sr)
102+
103+
@pytest.mark.small_vm
104+
@pytest.mark.big_vm
105+
def test_revert_journal_cbt(self, vm_on_lvmohba_sr: VM, defer: Defer, exit_on_fistpoint: None):
106+
check_vdi_revert_journal_cbt(
107+
defer, vm_on_lvmohba_sr, "LVM_revert_create_src", vm_on_lvmohba_sr.host.pool.master
108+
)
109+
110+
@pytest.mark.small_vm
111+
@pytest.mark.big_vm
112+
@pytest.mark.parametrize(
113+
"fistpoint",
114+
[
115+
"LVM_revert_create_insert",
116+
"LVM_revert_create_src",
117+
"LVM_revert_create_dest",
118+
]
119+
)
120+
def test_revert_journal(self, vm_on_lvmohba_sr: VM, defer: Defer, exit_on_fistpoint: None, fistpoint: str):
121+
check_vdi_revert_journal(defer, vm_on_lvmohba_sr, fistpoint, vm_on_lvmohba_sr.host.pool.master)
122+
123+
@pytest.mark.small_vm
124+
@pytest.mark.big_vm
125+
def test_critical_journal_revert(
126+
self, vm_on_lvmohba_sr: VM, defer: Defer, exit_on_fistpoint: None, hostA2: Host
127+
) -> None:
128+
check_critical_journal_revert(defer, vm_on_lvmohba_sr, hostA2, "LVM_revert_create_src")
129+
85130
# *** tests with reboots (longer tests).
86131

87132
@pytest.mark.reboot

tests/storage/lvmoiscsi/test_lvmoiscsi_sr.py

Lines changed: 44 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -17,6 +17,13 @@
1717
vdi_is_open,
1818
xva_export_import,
1919
)
20+
from tests.storage.storage import (
21+
check_critical_journal_revert,
22+
check_vdi_revert,
23+
check_vdi_revert_cbt,
24+
check_vdi_revert_journal,
25+
check_vdi_revert_journal_cbt,
26+
)
2027

2128
# Requirements:
2229
# - one XCP-ng host >= 8.2
@@ -84,6 +91,43 @@ def test_vdi_export_import(self, storage_test_vm: VM, lvmoiscsi_sr: SR, image_fo
8491
temp_large_dir: str, defer: Defer) -> None:
8592
vdi_export_import(storage_test_vm, lvmoiscsi_sr, image_format, temp_large_dir, defer)
8693

94+
@pytest.mark.small_vm
95+
@pytest.mark.big_vm
96+
def test_revert(self, vm_on_lvmoiscsi_sr: VM, defer: Defer) -> None:
97+
check_vdi_revert(defer, vm_on_lvmoiscsi_sr)
98+
99+
@pytest.mark.small_vm
100+
@pytest.mark.big_vm
101+
def test_revert_cbt(self, vm_on_lvmoiscsi_sr: VM, defer: Defer) -> None:
102+
check_vdi_revert_cbt(defer, vm_on_lvmoiscsi_sr)
103+
104+
@pytest.mark.small_vm
105+
@pytest.mark.big_vm
106+
def test_revert_journal_cbt(self, vm_on_lvmoiscsi_sr: VM, defer: Defer, exit_on_fistpoint: None):
107+
check_vdi_revert_journal_cbt(
108+
defer, vm_on_lvmoiscsi_sr, "LVM_revert_create_src", vm_on_lvmoiscsi_sr.host.pool.master
109+
)
110+
111+
@pytest.mark.small_vm
112+
@pytest.mark.big_vm
113+
@pytest.mark.parametrize(
114+
"fistpoint",
115+
[
116+
"LVM_revert_create_insert",
117+
"LVM_revert_create_src",
118+
"LVM_revert_create_dest",
119+
]
120+
)
121+
def test_revert_journal(self, vm_on_lvmoiscsi_sr: VM, defer: Defer, exit_on_fistpoint: None, fistpoint: str):
122+
check_vdi_revert_journal(defer, vm_on_lvmoiscsi_sr, fistpoint, vm_on_lvmoiscsi_sr.host.pool.master)
123+
124+
@pytest.mark.small_vm
125+
@pytest.mark.big_vm
126+
def test_critical_journal_revert(
127+
self, vm_on_lvmoiscsi_sr: VM, defer: Defer, exit_on_fistpoint: None, hostA2: Host
128+
) -> None:
129+
check_critical_journal_revert(defer, vm_on_lvmoiscsi_sr, hostA2, "LVM_revert_create_src")
130+
87131
# *** tests with reboots (longer tests).
88132

89133
@pytest.mark.reboot

0 commit comments

Comments
 (0)