From 001e0aab23c832579b6a5c046db8f5b0716cea61 Mon Sep 17 00:00:00 2001 From: Linus Kaschulla Date: Tue, 17 May 2022 14:19:38 +0000 Subject: [PATCH] fs/squashfs: needs more test cases 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 [yann.morin.1998@free.fr: keep exisitng test with default size] Signed-off-by: Yann E. MORIN --- support/testing/tests/fs/test_squashfs.py | 24 +++++++++++++++++++++++ 1 file changed, 24 insertions(+) diff --git a/support/testing/tests/fs/test_squashfs.py b/support/testing/tests/fs/test_squashfs.py index a914f5aac7..0ceb4cab58 100644 --- a/support/testing/tests/fs/test_squashfs.py +++ b/support/testing/tests/fs/test_squashfs.py @@ -10,6 +10,7 @@ class TestSquashfs(infra.basetest.BRTest): BR2_TARGET_ROOTFS_SQUASHFS4_LZO=y # BR2_TARGET_ROOTFS_TAR is not set """ + expected_blocksize_in_bytes = 128*1024 def test_run(self): unsquashfs_cmd = ["host/bin/unsquashfs", "-s", "images/rootfs.squashfs"] @@ -18,6 +19,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 +33,25 @@ class TestSquashfs(infra.basetest.BRTest): cmd = "mount | grep '/dev/root on / type squashfs'" self.assertRunOk(cmd) + + +class TestSquashfsMinBlocksize(TestSquashfs): + 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 = 4*1024 + + +class TestSquashfsMaxBlocksize(TestSquashfs): + 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