[Buildroot] [PATCH 1/1] fs/squashfs: needs more test cases

Linus Kaschulla linus at cosmos-ink.net
Tue May 17 14:19:38 UTC 2022


For the new patch, adding block size options (commit 555f8dfd),
Yann E. MORIN requested updated testcases that specifically ensure
the extreme blocksizes (4K and 1024K) don't cause issues.

This patch splits the current test case in 2, testing with both
block sizes and ensuring the block size was applied in the same
fashion as for the specified compression.

Signed-off-by: Linus Kaschulla <linus at cosmos-ink.net>
---
 support/testing/tests/fs/test_squashfs.py | 17 ++++++++++++++++-
 1 file changed, 16 insertions(+), 1 deletion(-)

diff --git a/support/testing/tests/fs/test_squashfs.py b/support/testing/tests/fs/test_squashfs.py
index a914f5aac7..07239fcce2 100644
--- a/support/testing/tests/fs/test_squashfs.py
+++ b/support/testing/tests/fs/test_squashfs.py
@@ -3,13 +3,15 @@ import os
 import infra.basetest
 
 
-class TestSquashfs(infra.basetest.BRTest):
+class TestSquashfsMinBlocksize(infra.basetest.BRTest):
     config = infra.basetest.BASIC_TOOLCHAIN_CONFIG + \
         """
         BR2_TARGET_ROOTFS_SQUASHFS=y
+        BR2_TARGET_ROOTFS_SQUASHFS_BS_4K=y
         BR2_TARGET_ROOTFS_SQUASHFS4_LZO=y
         # BR2_TARGET_ROOTFS_TAR is not set
         """
+    expected_blocksize_in_bytes = 1024 * 4
 
     def test_run(self):
         unsquashfs_cmd = ["host/bin/unsquashfs", "-s", "images/rootfs.squashfs"]
@@ -18,6 +20,7 @@ class TestSquashfs(infra.basetest.BRTest):
         self.assertEqual(out[0],
                          "Found a valid SQUASHFS 4:0 superblock on images/rootfs.squashfs.")
         self.assertEqual(out[3], "Compression lzo")
+        self.assertEqual(out[4], "Block size {}".format(self.expected_blocksize_in_bytes))
 
         img = os.path.join(self.builddir, "images", "rootfs.squashfs")
         infra.img_round_power2(img)
@@ -31,3 +34,15 @@ class TestSquashfs(infra.basetest.BRTest):
 
         cmd = "mount | grep '/dev/root on / type squashfs'"
         self.assertRunOk(cmd)
+
+# Reusing TestSquashfsMinBlocksize's test_run(), but change
+# blocksize in config the maxium to ensure all extemes work.
+class TestSquashfsMaxBlocksize(TestSquashfsMinBlocksize):
+    config = infra.basetest.BASIC_TOOLCHAIN_CONFIG + \
+        """
+        BR2_TARGET_ROOTFS_SQUASHFS=y
+        BR2_TARGET_ROOTFS_SQUASHFS_BS_1024K=y
+        BR2_TARGET_ROOTFS_SQUASHFS4_LZO=y
+        # BR2_TARGET_ROOTFS_TAR is not set
+        """
+    expected_blocksize_in_bytes = 1024 * 1024
-- 
2.35.1




More information about the buildroot mailing list