kiwi-el8/test/unit/bootloader_template_grub2_test.py
Marcus Schäfer a4a9ffa9aa Added support for setting the bootloader console
Some bootloader e.g grub supports graphics, text and also
serial consoles to hand over the output of the bootloader
menu. With this patch we allow to customize the console
used by the bootloader. So far only grub makes use of the
new attribute

    <type ... bootloader_console="serial|console|gfxterm"/>

This references Trello:

    https://trello.com/c/q9EhNKKV/155-support-for-grub2-serial-console
2016-06-20 18:24:43 +02:00

298 lines
10 KiB
Python

from mock import patch
import mock
from .test_helper import *
from kiwi.bootloader.template.grub2 import BootLoaderTemplateGrub2
class TestBootLoaderTemplateGrub2(object):
def setup(self):
self.grub2 = BootLoaderTemplateGrub2()
def test_get_disk_template(self):
assert self.grub2.get_disk_template().substitute(
search_params='--fs-uuid --set=root 0815',
default_boot='0',
kernel_file='boot/linux.vmx',
initrd_file='boot/initrd.vmx',
boot_options='splash',
failsafe_boot_options='splash',
gfxmode='800x600',
theme='SLE',
boot_timeout='10',
title='LimeJeOS-SLE12-Community [ VMX ]',
bootpath='/boot'
)
def test_get_disk_template_console(self):
assert self.grub2.get_disk_template(
terminal='console'
).substitute(
search_params='--fs-uuid --set=root 0815',
default_boot='0',
kernel_file='boot/linux.vmx',
initrd_file='boot/initrd.vmx',
boot_options='splash',
failsafe_boot_options='splash',
boot_timeout='10',
title='LimeJeOS-SLE12-Community [ VMX ]',
bootpath='/boot'
)
def test_get_disk_template_serial_no_hybird(self):
assert self.grub2.get_disk_template(
terminal='serial',
hybrid=False
).substitute(
search_params='--fs-uuid --set=root 0815',
default_boot='0',
kernel_file='boot/linux.vmx',
initrd_file='boot/initrd.vmx',
boot_options='splash',
failsafe_boot_options='splash',
boot_timeout='10',
title='LimeJeOS-SLE12-Community [ VMX ]',
bootpath='/boot'
)
def test_get_multiboot_disk_template(self):
assert self.grub2.get_multiboot_disk_template().substitute(
search_params='--fs-uuid --set=root 0815',
default_boot='0',
kernel_file='linux.vmx',
initrd_file='initrd.vmx',
boot_options='splash',
failsafe_boot_options='splash',
gfxmode='800x600',
theme='SLE',
boot_timeout='10',
title='LimeJeOS-SLE12-Community [ VMX ]',
bootpath='/boot',
hypervisor='xen.gz'
)
def test_get_multiboot_disk_template_console(self):
assert self.grub2.get_multiboot_disk_template(
terminal='console'
).substitute(
search_params='--fs-uuid --set=root 0815',
default_boot='0',
kernel_file='linux.vmx',
initrd_file='initrd.vmx',
boot_options='splash',
failsafe_boot_options='splash',
boot_timeout='10',
title='LimeJeOS-SLE12-Community [ VMX ]',
bootpath='/boot',
hypervisor='xen.gz'
)
def test_get_multiboot_disk_template_serial(self):
assert self.grub2.get_multiboot_disk_template(
terminal='serial'
).substitute(
search_params='--fs-uuid --set=root 0815',
default_boot='0',
kernel_file='linux.vmx',
initrd_file='initrd.vmx',
boot_options='splash',
failsafe_boot_options='splash',
boot_timeout='10',
title='LimeJeOS-SLE12-Community [ VMX ]',
bootpath='/boot',
hypervisor='xen.gz'
)
def test_get_multiboot_install_template(self):
assert self.grub2.get_multiboot_install_template().substitute(
search_params='--fs-uuid --set=root 0815',
default_boot='0',
kernel_file='linux.vmx',
initrd_file='initrd.vmx',
boot_options='splash',
failsafe_boot_options='splash',
gfxmode='800x600',
theme='SLE',
boot_timeout='10',
title='LimeJeOS-SLE12-Community [ VMX ]',
bootpath='/boot',
hypervisor='xen.gz'
)
def test_get_multiboot_install_template_console(self):
assert self.grub2.get_multiboot_install_template(
terminal='console'
).substitute(
search_params='--fs-uuid --set=root 0815',
default_boot='0',
kernel_file='linux.vmx',
initrd_file='initrd.vmx',
boot_options='splash',
failsafe_boot_options='splash',
boot_timeout='10',
title='LimeJeOS-SLE12-Community [ VMX ]',
bootpath='/boot',
hypervisor='xen.gz'
)
def test_get_multiboot_install_template_serial(self):
assert self.grub2.get_multiboot_install_template(
terminal='serial'
).substitute(
search_params='--fs-uuid --set=root 0815',
default_boot='0',
kernel_file='linux.vmx',
initrd_file='initrd.vmx',
boot_options='splash',
failsafe_boot_options='splash',
boot_timeout='10',
title='LimeJeOS-SLE12-Community [ VMX ]',
bootpath='/boot',
hypervisor='xen.gz'
)
def test_get_install_template(self):
assert self.grub2.get_install_template().substitute(
search_params='--file --set=root /boot/0xd305fb7d',
default_boot='0',
kernel_file='boot/linux.vmx',
initrd_file='boot/initrd.vmx',
boot_options='cdinst=1 splash',
failsafe_boot_options='cdinst=1 splash',
gfxmode='800x600',
theme='SLE',
boot_timeout='10',
title='LimeJeOS-SLE12-Community [ VMX ]',
bootpath='/boot'
)
def test_get_install_template_console_no_hybrid(self):
assert self.grub2.get_install_template(
terminal='console',
hybrid=False
).substitute(
search_params='--file --set=root /boot/0xd305fb7d',
default_boot='0',
kernel_file='boot/linux.vmx',
initrd_file='boot/initrd.vmx',
boot_options='cdinst=1 splash',
failsafe_boot_options='cdinst=1 splash',
boot_timeout='10',
title='LimeJeOS-SLE12-Community [ VMX ]',
bootpath='/boot'
)
def test_get_install_template_serial_no_hybrid(self):
assert self.grub2.get_install_template(
terminal='serial',
hybrid=False
).substitute(
search_params='--file --set=root /boot/0xd305fb7d',
default_boot='0',
kernel_file='boot/linux.vmx',
initrd_file='boot/initrd.vmx',
boot_options='cdinst=1 splash',
failsafe_boot_options='cdinst=1 splash',
boot_timeout='10',
title='LimeJeOS-SLE12-Community [ VMX ]',
bootpath='/boot'
)
def test_get_iso_template(self):
assert self.grub2.get_iso_template().substitute(
search_params='--file --set=root /boot/0xd305fb7d',
default_boot='0',
kernel_file='boot/linux.vmx',
initrd_file='boot/initrd.vmx',
boot_options='splash',
failsafe_boot_options='splash',
gfxmode='800x600',
theme='SLE',
boot_timeout='10',
title='LimeJeOS-SLE12-Community',
bootpath='/boot'
)
def test_get_iso_template_console_no_hybrid(self):
assert self.grub2.get_iso_template(
terminal='console',
hybrid=False
).substitute(
search_params='--file --set=root /boot/0xd305fb7d',
default_boot='0',
kernel_file='boot/linux.vmx',
initrd_file='boot/initrd.vmx',
boot_options='splash',
failsafe_boot_options='splash',
boot_timeout='10',
title='LimeJeOS-SLE12-Community',
bootpath='/boot'
)
def test_get_iso_template_serial_no_hybrid(self):
assert self.grub2.get_iso_template(
terminal='serial',
hybrid=False
).substitute(
search_params='--file --set=root /boot/0xd305fb7d',
default_boot='0',
kernel_file='boot/linux.vmx',
initrd_file='boot/initrd.vmx',
boot_options='splash',
failsafe_boot_options='splash',
boot_timeout='10',
title='LimeJeOS-SLE12-Community',
bootpath='/boot'
)
def test_get_multiboot_iso_template(self):
assert self.grub2.get_multiboot_iso_template().substitute(
search_params='--fs-uuid --set=root 0815',
default_boot='0',
kernel_file='linux.vmx',
initrd_file='initrd.vmx',
boot_options='splash',
failsafe_boot_options='splash',
gfxmode='800x600',
theme='SLE',
boot_timeout='10',
title='LimeJeOS-SLE12-Community',
bootpath='/boot',
hypervisor='xen.gz'
)
def test_get_multiboot_iso_template_console(self):
assert self.grub2.get_multiboot_iso_template(
terminal='console'
).substitute(
search_params='--fs-uuid --set=root 0815',
default_boot='0',
kernel_file='linux.vmx',
initrd_file='initrd.vmx',
boot_options='splash',
failsafe_boot_options='splash',
boot_timeout='10',
title='LimeJeOS-SLE12-Community',
bootpath='/boot',
hypervisor='xen.gz'
)
def test_get_multiboot_iso_template_serial(self):
assert self.grub2.get_multiboot_iso_template(
terminal='serial'
).substitute(
search_params='--fs-uuid --set=root 0815',
default_boot='0',
kernel_file='linux.vmx',
initrd_file='initrd.vmx',
boot_options='splash',
failsafe_boot_options='splash',
boot_timeout='10',
title='LimeJeOS-SLE12-Community',
bootpath='/boot',
hypervisor='xen.gz'
)