import pexpect import infra.basetest from tests.init.base import InitSystemBase as InitSystemBase class TestInitSystemNone(InitSystemBase): config = infra.basetest.BASIC_TOOLCHAIN_CONFIG + \ """ BR2_INIT_NONE=y # BR2_TARGET_ROOTFS_TAR is not set BR2_TARGET_ROOTFS_SQUASHFS=y """ def test_run(self): self.start_emulator(fs_type="squashfs", init="/bin/sh") index = self.emulator.qemu.expect(["/bin/sh: can't access tty; job control turned off", pexpect.TIMEOUT], timeout=60) if index != 0: self.emulator.logfile.write("==> System does not boot") raise SystemError("System does not boot") index = self.emulator.qemu.expect(["#", pexpect.TIMEOUT], timeout=60) if index != 0: self.emulator.logfile.write("==> System does not boot") raise SystemError("System does not boot") out, exit_code = self.emulator.run("sh -c 'echo $PPID'") self.assertEqual(exit_code, 0) self.assertEqual(out[0], "1") _, exit_code = self.emulator.run("mount -t proc none /proc") self.assertEqual(exit_code, 0) self.check_init("/bin/sh")