blob: a61cf9bcb30dd11eec0e55a5b37874d6bf0bacbc [file] [log] [blame]
Brad Bishop316dfdd2018-06-25 12:45:53 -04001# Based on runqemu.py test file
2#
3# Copyright (c) 2017 Wind River Systems, Inc.
4#
Brad Bishopc342db32019-05-15 21:57:59 -04005# SPDX-License-Identifier: MIT
6#
Brad Bishop316dfdd2018-06-25 12:45:53 -04007
8import re
9
10from oeqa.selftest.case import OESelftestTestCase
11from oeqa.utils.commands import bitbake, runqemu, get_bb_var
12
13class GenericEFITest(OESelftestTestCase):
14 """EFI booting test class"""
15
Brad Bishop316dfdd2018-06-25 12:45:53 -040016 cmd_common = "runqemu nographic serial wic ovmf"
17 efi_provider = "systemd-boot"
18 image = "core-image-minimal"
19 machine = "qemux86-64"
20 recipes_built = False
21
22 @classmethod
23 def setUpLocal(self):
24 super(GenericEFITest, self).setUpLocal(self)
25
26 self.write_config(self,
27"""
28EFI_PROVIDER = "%s"
29IMAGE_FSTYPES_pn-%s_append = " wic"
30MACHINE = "%s"
31MACHINE_FEATURES_append = " efi"
32WKS_FILE = "efi-bootdisk.wks.in"
33IMAGE_INSTALL_append = " grub-efi systemd-boot kernel-image-bzimage"
34"""
35% (self.efi_provider, self.image, self.machine))
36 if not self.recipes_built:
37 bitbake("ovmf")
38 bitbake(self.image)
39 self.recipes_built = True
40
41 @classmethod
42 def test_boot_efi(self):
43 """Test generic boot partition with qemu"""
44 cmd = "%s %s" % (self.cmd_common, self.machine)
45 with runqemu(self.image, ssh=False, launch_cmd=cmd) as qemu:
46 self.assertTrue(qemu.runner.logged, "Failed: %s" % cmd)