def test_post_init_grub2_boot_directory(self, mock_which, mock_machine): xml_state = mock.MagicMock() xml_state.build_type.get_firmware = mock.Mock(return_value=None) mock_machine.return_value = 'i686' mock_which.return_value = None bootloader = BootLoaderConfigGrub2(xml_state, 'root_dir') assert bootloader.boot_directory_name == 'grub'
def test_post_init_ix86_platform(self, mock_machine): xml_state = mock.MagicMock() xml_state.get_initrd_system = mock.Mock(return_value='dracut') xml_state.build_type.get_firmware = mock.Mock(return_value=None) mock_machine.return_value = 'i686' bootloader = BootLoaderConfigGrub2(xml_state, 'root_dir') assert bootloader.arch == 'ix86'
def test_post_init_arm64_platform(self, mock_machine): xml_state = mock.MagicMock() xml_state.build_type.get_firmware = mock.Mock( return_value=None ) mock_machine.return_value = 'arm64' bootloader = BootLoaderConfigGrub2(xml_state, 'root_dir') assert bootloader.arch == mock_machine.return_value
def __new__(self, name, xml_state, root_dir, custom_args=None): if name == 'grub2': return BootLoaderConfigGrub2(xml_state, root_dir, custom_args) elif name == 'grub2_s390x_emu': return BootLoaderConfigZipl(xml_state, root_dir, custom_args) elif name == 'isolinux': return BootLoaderConfigIsoLinux(xml_state, root_dir, custom_args) else: raise KiwiBootLoaderConfigSetupError( 'Support for %s bootloader config not implemented' % name)
def setup(self, mock_machine, mock_theme, mock_firmware): self.context_manager_mock = mock.Mock() self.file_mock = mock.Mock() self.enter_mock = mock.Mock() self.exit_mock = mock.Mock() self.enter_mock.return_value = self.file_mock setattr(self.context_manager_mock, '__enter__', self.enter_mock) setattr(self.context_manager_mock, '__exit__', self.exit_mock) self.find_grub = {} self.os_exists = { 'root_dir/boot/grub2/fonts/unicode.pf2': True, 'root_dir/boot/x86_64/loader/grub2/fonts/unicode.pf2': True, 'root_dir/boot/grub2/themes/some-theme/background.png': True, 'root_dir/usr/share/grub2': True, 'root_dir/usr/share/grub': False, 'root_dir/boot/grub2/themes': False, 'root_dir/boot/grub/themes': False, 'root_dir/boot/grub/fonts/unicode.pf2': False, 'root_dir/usr/lib/grub2': True, 'root_dir/usr/lib/grub': False, 'root_dir/boot/grub2/x86_64-efi': False, 'root_dir/boot/grub2/i386-pc': False, 'root_dir/boot/grub2/x86_64-xen': False, 'root_dir/usr/lib64/efi/shim.efi': True, 'root_dir/usr/lib64/efi/grub.efi': True, 'root_dir/usr/lib64/efi/does-not-exist': False, 'root_dir/boot/efi/': True } self.glob_iglob = [['root_dir/usr/lib64/efi/shim.efi'], ['root_dir/usr/lib64/efi/grub.efi']] mock_machine.return_value = 'x86_64' mock_theme.return_value = None kiwi.bootloader.config.grub2.Path = mock.Mock() kiwi.bootloader.config.base.Path = mock.Mock() self.firmware = mock.Mock() self.firmware.ec2_mode = mock.Mock(return_value=None) self.firmware.efi_mode = mock.Mock(return_value=None) mock_firmware.return_value = self.firmware self.mbrid = mock.Mock() self.mbrid.get_id = mock.Mock(return_value='0xffffffff') self.grub2 = mock.Mock() kiwi.bootloader.config.grub2.BootLoaderTemplateGrub2 = mock.Mock( return_value=self.grub2) self.state = XMLState( XMLDescription('../data/example_config.xml').load()) self.state.is_xen_server = mock.Mock(return_value=False) self.state.is_xen_guest = mock.Mock(return_value=False) self.bootloader = BootLoaderConfigGrub2(self.state, 'root_dir', None, { 'grub_directory_name': 'grub2', 'boot_is_crypto': True })
def setup(self, mock_machine, mock_domain, mock_theme, mock_firmware): self.os_exists = { 'root_dir/boot/unicode.pf2': True, 'root_dir/usr/share/grub2': True, 'root_dir/usr/share/grub': False, 'root_dir/boot/grub2/themes': False, 'root_dir/boot/grub/themes': False, 'root_dir/boot/grub/unicode.pf2': False, 'root_dir/usr/lib/grub2': True, 'root_dir/usr/lib/grub': False, 'root_dir/boot/grub2/x86_64-efi': False, 'root_dir/boot/grub2/i386-pc': False, 'root_dir/boot/grub2/x86_64-xen': False, 'root_dir/usr/lib64/efi/shim.efi': True, 'root_dir/usr/lib64/efi/grub.efi': True } mock_machine.return_value = 'x86_64' mock_theme.return_value = None mock_domain.return_value = None kiwi.bootloader.config.grub2.Path = mock.Mock() kiwi.bootloader.config.base.Path = mock.Mock() self.firmware = mock.Mock() self.firmware.ec2_mode = mock.Mock( return_value=None ) self.firmware.efi_mode = mock.Mock( return_value=None ) mock_firmware.return_value = self.firmware self.mbrid = mock.Mock() self.mbrid.get_id = mock.Mock( return_value='0xffffffff' ) self.grub2 = mock.Mock() kiwi.bootloader.config.grub2.BootLoaderTemplateGrub2 = mock.Mock( return_value=self.grub2 ) self.state = XMLState( XMLDescription('../data/example_config.xml').load() ) self.bootloader = BootLoaderConfigGrub2( self.state, 'root_dir' )
def test_post_init_invalid_platform(self, mock_machine): mock_machine.return_value = 'unsupported-arch' BootLoaderConfigGrub2(mock.Mock(), 'root_dir')
def test_post_init_invalid_platform(self, mock_machine): mock_machine.return_value = 'unsupported-arch' with raises(KiwiBootLoaderGrubPlatformError): BootLoaderConfigGrub2(Mock(), 'root_dir')