From b118c9dcf344c489b3e78a325060f01540f03eb3 Mon Sep 17 00:00:00 2001 From: Julien Olivain Date: Mon, 30 Dec 2024 21:11:03 +0100 Subject: [PATCH] support/testing: new xxhash runtime test Signed-off-by: Julien Olivain Signed-off-by: Thomas Petazzoni --- DEVELOPERS | 1 + support/testing/tests/package/test_xxhash.py | 35 ++++++++++++++++++++ 2 files changed, 36 insertions(+) create mode 100644 support/testing/tests/package/test_xxhash.py diff --git a/DEVELOPERS b/DEVELOPERS index 4fb5ae023d..a5e273056d 100644 --- a/DEVELOPERS +++ b/DEVELOPERS @@ -2004,6 +2004,7 @@ F: support/testing/tests/package/test_wine.py F: support/testing/tests/package/test_xfsprogs.py F: support/testing/tests/package/test_xfsprogs/ F: support/testing/tests/package/test_xvisor.py +F: support/testing/tests/package/test_xxhash.py F: support/testing/tests/package/test_xz.py F: support/testing/tests/package/test_z3.py F: support/testing/tests/package/test_z3/ diff --git a/support/testing/tests/package/test_xxhash.py b/support/testing/tests/package/test_xxhash.py new file mode 100644 index 0000000000..00e0f245fc --- /dev/null +++ b/support/testing/tests/package/test_xxhash.py @@ -0,0 +1,35 @@ +import os + +import infra.basetest + + +class TestXxHash(infra.basetest.BRTest): + config = infra.basetest.BASIC_TOOLCHAIN_CONFIG + \ + """ + BR2_PACKAGE_XXHASH=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="armv5", + kernel="builtin", + options=["-initrd", cpio_file]) + self.emulator.login() + + testfile = "data.bin" + + # Check we can run the program. + self.assertRunOk("xxhsum --version") + + # We create a test data file with random data. + cmd = f"dd if=/dev/urandom of={testfile} bs=1M count=1" + self.assertRunOk(cmd) + + # For the three hash sizes, we compute the xxhash and check + # the integrity of the file. + for hsize in [32, 64, 128]: + hashfile = f"{testfile}.xxh{hsize}" + self.assertRunOk(f"xxh{hsize}sum {testfile} | tee {hashfile}") + self.assertRunOk(f"xxh{hsize}sum -c {hashfile}")