From 0e631348db15df28d5b576c17097a3ea8a38387c Mon Sep 17 00:00:00 2001 From: Franciszek Stachura Date: Mon, 31 Aug 2026 23:43:52 +0200 Subject: [PATCH] support/testing: add nano test Add a basic runtime test for nano. The test attempts to write a file using the editor. Signed-off-by: Franciszek Stachura Signed-off-by: Thomas Petazzoni --- DEVELOPERS | 1 + support/testing/tests/package/test_nano.py | 41 ++++++++++++++++++++++ 2 files changed, 42 insertions(+) create mode 100644 support/testing/tests/package/test_nano.py diff --git a/DEVELOPERS b/DEVELOPERS index 48b1a4fb1e..1fd93b1de5 100644 --- a/DEVELOPERS +++ b/DEVELOPERS @@ -1170,6 +1170,7 @@ F: package/ser2net/ N: Franciszek Stachura F: support/testing/tests/package/test_memcached.py +F: support/testing/tests/package/test_nano.py N: Francois Dugast F: board/sipeed/licheepi_nano/ diff --git a/support/testing/tests/package/test_nano.py b/support/testing/tests/package/test_nano.py new file mode 100644 index 0000000000..c1cc56d031 --- /dev/null +++ b/support/testing/tests/package/test_nano.py @@ -0,0 +1,41 @@ +import os + +import infra.basetest + + +class TestNano(infra.basetest.BRTest): + config = infra.basetest.BASIC_TOOLCHAIN_CONFIG + """ + BR2_TARGET_ROOTFS_CPIO=y + BR2_PACKAGE_NANO=y + """ + + def test_run(self): + cpio_file = os.path.join(self.builddir, "images", "rootfs.cpio") + self.emulator.boot(arch="armv5", + kernel="builtin", + options=["-initrd", cpio_file]) + self.emulator.login() + + cmd = "nano -V | grep 'GNU nano'" + self.assertRunOk(cmd) + + self.emulator.qemu.sendline("nano") + + # send file contents + self.emulator.qemu.send("test") + # ^X for exit + self.emulator.qemu.send(chr(0x18)) + # y for 'Save modified buffer?' + self.emulator.qemu.send("y") + # target filename + self.emulator.qemu.send("file") + # ^M for enter + self.emulator.qemu.send(chr(0xd)) + + self.emulator.qemu.sendline("clear; reset") + + # wait for prompt + self.emulator.qemu.expect("# ") + + cmd = "cat file | grep '^test$'" + self.assertRunOk(cmd)