kiwi-el8/test/unit/boot/image/init_test.py
Marcus Schäfer 9c9250ebc4
Support nose and xunit style tests
The modifications in this commit allows the unit tests
to run on both, pytest 6.x (nose test layout) and the new
pytest 7.x (xunit test layout). This Fixes #2072 in a
much nicer way. Thanks much to @smarlowucf
2022-02-26 20:26:18 +01:00

40 lines
1.2 KiB
Python

from mock import (
Mock, patch
)
from pytest import raises
from kiwi.exceptions import KiwiBootImageSetupError
from kiwi.boot.image import BootImage
class TestBootImage:
def setup(self):
self.xml_state = Mock()
self.xml_state.get_initrd_system = Mock(
return_value='kiwi'
)
def setup_method(self, cls):
self.setup()
def test_boot_image_not_implemented(self):
self.xml_state.get_initrd_system.return_value = 'foo'
with raises(KiwiBootImageSetupError):
BootImage.new(self.xml_state, 'target_dir')
@patch('kiwi.boot.image.builtin_kiwi.BootImageKiwi')
def test_boot_image_task_kiwi(self, mock_kiwi):
self.xml_state.get_initrd_system.return_value = 'kiwi'
BootImage.new(self.xml_state, 'target_dir')
mock_kiwi.assert_called_once_with(
self.xml_state, 'target_dir', None, None
)
@patch('kiwi.boot.image.dracut.BootImageDracut')
def test_boot_image_task_dracut(self, mock_dracut):
self.xml_state.get_initrd_system.return_value = 'dracut'
BootImage.new(self.xml_state, 'target_dir', 'root_dir')
mock_dracut.assert_called_once_with(
self.xml_state, 'target_dir', 'root_dir', None
)