|
5 | 5 | from leapp.exceptions import StopActorExecutionError |
6 | 6 | from leapp.libraries.common import kernel as kernel_lib |
7 | 7 | from leapp.libraries.common.kernel import KernelType |
| 8 | +from leapp.libraries.common.testutils import CurrentActorMocked |
| 9 | +from leapp.libraries.stdlib import api |
8 | 10 |
|
9 | 11 |
|
10 | 12 | @pytest.mark.parametrize( |
11 | | - ('rhel_version', 'uname_r', 'expected_kernel_type'), |
| 13 | + ('version', 'uname_r', 'expected_kernel_type'), |
12 | 14 | ( |
13 | | - ('7.9', '3.10.0-1160.el7.x86_64', KernelType.ORDINARY), |
14 | | - ('7.9', '3.10.0-1160.rt56.1131.el7.x86_64', KernelType.REALTIME), |
15 | | - ('8.7', '4.18.0-425.3.1.el8.x86_64', KernelType.ORDINARY), |
16 | | - ('8.7', '4.18.0-425.3.1.rt7.213.el8.x86_64', KernelType.REALTIME), |
17 | | - ('9.2', '5.14.0-284.11.1.el9_2.x86_64', KernelType.ORDINARY), |
18 | | - ('9.2', '5.14.0-284.11.1.rt14.296.el9_2.x86_64', KernelType.REALTIME), |
19 | | - ('9.3', '5.14.0-354.el9.x86_64', KernelType.ORDINARY), |
20 | | - ('9.3', '5.14.0-354.el9.x86_64+rt', KernelType.REALTIME), |
| 15 | + # (version, virtual_version) |
| 16 | + (('7.9', None), '3.10.0-1160.el7.x86_64', KernelType.ORDINARY), |
| 17 | + (('7.9', None), '3.10.0-1160.rt56.1131.el7.x86_64', KernelType.REALTIME), |
| 18 | + (('8.7', None), '4.18.0-425.3.1.el8.x86_64', KernelType.ORDINARY), |
| 19 | + (('8.7', None), '4.18.0-425.3.1.rt7.213.el8.x86_64', KernelType.REALTIME), |
| 20 | + (('9.2', None), '5.14.0-284.11.1.el9_2.x86_64', KernelType.ORDINARY), |
| 21 | + (('9.2', None), '5.14.0-284.11.1.rt14.296.el9_2.x86_64', KernelType.REALTIME), |
| 22 | + (('9.3', None), '5.14.0-354.el9.x86_64', KernelType.ORDINARY), |
| 23 | + (('9.3', None), '5.14.0-354.el9.x86_64+rt', KernelType.REALTIME), |
| 24 | + # centos |
| 25 | + (('8', '8.7'), '4.18.0-425.3.1.el8.x86_64', KernelType.ORDINARY), |
| 26 | + (('8', '8.7'), '4.18.0-425.3.1.rt7.213.el8.x86_64', KernelType.REALTIME), |
| 27 | + (('9', '9.2'), '5.14.0-284.11.1.el9_2.x86_64', KernelType.ORDINARY), |
| 28 | + (('9', '9.2'), '5.14.0-284.11.1.rt14.296.el9_2.x86_64', KernelType.REALTIME), |
| 29 | + (('9', '9.3'), '5.14.0-354.el9.x86_64', KernelType.ORDINARY), |
| 30 | + (('9', '9.3'), '5.14.0-354.el9.x86_64+rt', KernelType.REALTIME), |
21 | 31 | ) |
22 | 32 | ) |
23 | | -def test_determine_kernel_type_from_uname(rhel_version, uname_r, expected_kernel_type): |
24 | | - kernel_type = kernel_lib.determine_kernel_type_from_uname(rhel_version, uname_r) |
| 33 | +def test_determine_kernel_type_from_uname(monkeypatch, version, uname_r, expected_kernel_type): |
| 34 | + real_ver, virtual_ver = version |
| 35 | + # needed to for lookups of virtual versions in matches_version |
| 36 | + actor_mock = CurrentActorMocked( |
| 37 | + release_id='centos' if '.' not in real_ver else 'rhel', |
| 38 | + src_ver=real_ver, |
| 39 | + dst_ver="irrelevant", |
| 40 | + virtual_source_version=virtual_ver or real_ver, |
| 41 | + virtual_target_version="irrelevant", |
| 42 | + ) |
| 43 | + monkeypatch.setattr(api, 'current_actor', actor_mock) |
| 44 | + |
| 45 | + kernel_type = kernel_lib.determine_kernel_type_from_uname(real_ver, uname_r) |
25 | 46 | assert kernel_type == expected_kernel_type |
26 | 47 |
|
27 | 48 |
|
|
0 commit comments