From 672f99bdcef11fa8cda742293d83649f925c263b Mon Sep 17 00:00:00 2001 From: El Mehdi YOUNES Date: Thu, 24 Apr 2025 11:48:07 +0200 Subject: [PATCH] support/test: new bat runtime test Add a runtime test for the 'bat' package to verify that the binary executes correctly in a minimal Buildroot rootfs.The test cheks that: - 'bat --version' runs without error - 'bat' can read and display a text file - the displayed content matches the expected string Signed-off-by: El Mehdi YOUNES Signed-off-by: Julien Olivain (cherry picked from commit dacf8e3c39652c595519ab6d424009962d8ae9ba) Signed-off-by: Thomas Perale --- support/testing/tests/package/test_bat.py | 27 +++++++++++++++++++++++ 1 file changed, 27 insertions(+) create mode 100644 support/testing/tests/package/test_bat.py diff --git a/support/testing/tests/package/test_bat.py b/support/testing/tests/package/test_bat.py new file mode 100644 index 0000000000..018d0e002f --- /dev/null +++ b/support/testing/tests/package/test_bat.py @@ -0,0 +1,27 @@ +import os +import infra.basetest + + +class TestBat(infra.basetest.BRTest): + config = infra.basetest.BASIC_TOOLCHAIN_CONFIG + \ + """ + BR2_PACKAGE_BAT=y + BR2_TARGET_ROOTFS_CPIO=y + # BR2_TARGET_ROOTFS_TAR is not set + """ + + def test_run(self): + cpio_file = os.path.join(self.builddir, "images", "rootfs.cpio") + self.emulator.boot(arch="armv7", + kernel="builtin", + options=["-initrd", cpio_file]) + self.emulator.login() + + # Check the programs can execute + self.assertRunOk("bat --version") + self.assertRunOk("echo 'hello test' > test.txt") + + # Run bat and capture output + output, exit_code = self.emulator.run("bat test.txt", timeout=10) + self.assertEqual(exit_code, 0) + self.assertIn("hello test", "\n".join(output))