Browse Source

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 <linus@cosmos-ink.net>
[yann.morin.1998@free.fr: keep exisitng test with default size]
Signed-off-by: Yann E. MORIN <yann.morin.1998@free.fr>
Linus Kaschulla 3 years ago
parent
commit
001e0aab23
1 changed files with 24 additions and 0 deletions
  1. 24 0
      support/testing/tests/fs/test_squashfs.py

+ 24 - 0
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