support/testing: add openrc tests

Two simple tests to ensure that openrc boots without any services crashing
with a read only and a read write filing system.

Signed-off-by: Adam Duskett <Aduskett@gmail.com>
Signed-off-by: Carlos Santos <unixmania@gmail.com>
[yann.morin.1998@free.fr: really check the init process]
Signed-off-by: Yann E. MORIN <yann.morin.1998@free.fr>
This commit is contained in:
Adam Duskett 2020-03-01 12:17:47 -03:00 committed by Yann E. MORIN
parent 5bcf91b81d
commit 23d3433302
2 changed files with 53 additions and 0 deletions

View File

@ -369,6 +369,8 @@ tests.init.test_busybox.TestInitSystemBusyboxRoNet: { extends: .runtime_test }
tests.init.test_busybox.TestInitSystemBusyboxRw: { extends: .runtime_test }
tests.init.test_busybox.TestInitSystemBusyboxRwNet: { extends: .runtime_test }
tests.init.test_none.TestInitSystemNone: { extends: .runtime_test }
tests.init.test_openrc.TestInitSystemOpenrcRoFull: { extends: .runtime_test }
tests.init.test_openrc.TestInitSystemOpenrcRwFull: { extends: .runtime_test }
tests.init.test_systemd.TestInitSystemSystemdRoFull: { extends: .runtime_test }
tests.init.test_systemd.TestInitSystemSystemdRoIfupdown: { extends: .runtime_test }
tests.init.test_systemd.TestInitSystemSystemdRoNetworkd: { extends: .runtime_test }

View File

@ -0,0 +1,51 @@
import infra.basetest
from tests.init.base import InitSystemBase as InitSystemBase
class InitSystemOpenrcBase(InitSystemBase):
config = \
"""
BR2_arm=y
BR2_TOOLCHAIN_EXTERNAL=y
BR2_INIT_OPENRC=y
BR2_TARGET_GENERIC_GETTY_PORT="ttyAMA0"
BR2_LINUX_KERNEL=y
BR2_LINUX_KERNEL_CUSTOM_VERSION=y
BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="5.5.7"
BR2_LINUX_KERNEL_DEFCONFIG="vexpress"
BR2_LINUX_KERNEL_DTS_SUPPORT=y
BR2_LINUX_KERNEL_INTREE_DTS_NAME="vexpress-v2p-ca9"
# BR2_TARGET_ROOTFS_TAR is not set
"""
def check_init(self):
super(InitSystemOpenrcBase, self).check_init('/sbin/openrc-init')
# Test all services are OK
output, _ = self.emulator.run("rc-status -c")
self.assertEqual(len(output), 0)
class TestInitSystemOpenrcRoFull(InitSystemOpenrcBase):
config = InitSystemOpenrcBase.config + \
"""
BR2_SYSTEM_DHCP="eth0"
# BR2_TARGET_GENERIC_REMOUNT_ROOTFS_RW is not set
BR2_TARGET_ROOTFS_SQUASHFS=y
"""
def test_run(self):
self.start_emulator("squashfs", "zImage", "vexpress-v2p-ca9")
self.check_init()
class TestInitSystemOpenrcRwFull(InitSystemOpenrcBase):
config = InitSystemOpenrcBase.config + \
"""
BR2_SYSTEM_DHCP="eth0"
BR2_TARGET_ROOTFS_EXT2=y
"""
def test_run(self):
self.start_emulator("ext2", "zImage", "vexpress-v2p-ca9")
self.check_init()