1# Based on runqemu.py test file 2# 3# Copyright (c) 2017 Wind River Systems, Inc. 4# 5# SPDX-License-Identifier: MIT 6# 7 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 16 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) 47