summaryrefslogtreecommitdiffstats
path: root/meta/lib/oeqa/selftest/cases/wic.py
diff options
context:
space:
mode:
Diffstat (limited to 'meta/lib/oeqa/selftest/cases/wic.py')
-rw-r--r--meta/lib/oeqa/selftest/cases/wic.py36
1 files changed, 29 insertions, 7 deletions
diff --git a/meta/lib/oeqa/selftest/cases/wic.py b/meta/lib/oeqa/selftest/cases/wic.py
index 714637ec1e..39c6828f59 100644
--- a/meta/lib/oeqa/selftest/cases/wic.py
+++ b/meta/lib/oeqa/selftest/cases/wic.py
@@ -318,6 +318,7 @@ class Wic(WicTestCase):
318 "--image-name=core-image-minimal " 318 "--image-name=core-image-minimal "
319 "-D -o %s" % self.resultdir) 319 "-D -o %s" % self.resultdir)
320 self.assertEqual(1, len(glob(self.resultdir + "wictestdisk-*.direct"))) 320 self.assertEqual(1, len(glob(self.resultdir + "wictestdisk-*.direct")))
321 self.assertEqual(1, len(glob(self.resultdir + "tmp.wic*")))
321 322
322 def test_debug_long(self): 323 def test_debug_long(self):
323 """Test --debug option""" 324 """Test --debug option"""
@@ -325,6 +326,7 @@ class Wic(WicTestCase):
325 "--image-name=core-image-minimal " 326 "--image-name=core-image-minimal "
326 "--debug -o %s" % self.resultdir) 327 "--debug -o %s" % self.resultdir)
327 self.assertEqual(1, len(glob(self.resultdir + "wictestdisk-*.direct"))) 328 self.assertEqual(1, len(glob(self.resultdir + "wictestdisk-*.direct")))
329 self.assertEqual(1, len(glob(self.resultdir + "tmp.wic*")))
328 330
329 def test_skip_build_check_short(self): 331 def test_skip_build_check_short(self):
330 """Test -s option""" 332 """Test -s option"""
@@ -588,6 +590,9 @@ part / --source rootfs --fstype=ext4 --include-path %s --include-path core-imag
588 def test_permissions(self): 590 def test_permissions(self):
589 """Test permissions are respected""" 591 """Test permissions are respected"""
590 592
593 # prepare wicenv and rootfs
594 bitbake('core-image-minimal core-image-minimal-mtdutils -c do_rootfs_wicenv')
595
591 oldpath = os.environ['PATH'] 596 oldpath = os.environ['PATH']
592 os.environ['PATH'] = get_bb_var("PATH", "wic-tools") 597 os.environ['PATH'] = get_bb_var("PATH", "wic-tools")
593 598
@@ -621,6 +626,19 @@ part /etc --source rootfs --fstype=ext4 --change-directory=etc
621 res = runCmd("debugfs -R 'ls -p' %s 2>/dev/null" % (part)) 626 res = runCmd("debugfs -R 'ls -p' %s 2>/dev/null" % (part))
622 self.assertEqual(True, files_own_by_root(res.output)) 627 self.assertEqual(True, files_own_by_root(res.output))
623 628
629 config = 'IMAGE_FSTYPES += "wic"\nWKS_FILE = "%s"\n' % wks_file
630 self.append_config(config)
631 bitbake('core-image-minimal')
632 tmpdir = os.path.join(get_bb_var('WORKDIR', 'core-image-minimal'),'build-wic')
633
634 # check each partition for permission
635 for part in glob(os.path.join(tmpdir, 'temp-*.direct.p*')):
636 res = runCmd("debugfs -R 'ls -p' %s 2>/dev/null" % (part))
637 self.assertTrue(files_own_by_root(res.output)
638 ,msg='Files permission incorrect using wks set "%s"' % test)
639
640 # clean config and result directory for next cases
641 self.remove_config(config)
624 rmtree(self.resultdir, ignore_errors=True) 642 rmtree(self.resultdir, ignore_errors=True)
625 643
626 finally: 644 finally:
@@ -961,14 +979,18 @@ class Wic2(WicTestCase):
961 @only_for_arch(['i586', 'i686', 'x86_64']) 979 @only_for_arch(['i586', 'i686', 'x86_64'])
962 def test_rawcopy_plugin_qemu(self): 980 def test_rawcopy_plugin_qemu(self):
963 """Test rawcopy plugin in qemu""" 981 """Test rawcopy plugin in qemu"""
964 # build ext4 and wic images 982 # build ext4 and then use it for a wic image
965 for fstype in ("ext4", "wic"): 983 config = 'IMAGE_FSTYPES = "ext4"\n'
966 config = 'IMAGE_FSTYPES = "%s"\nWKS_FILE = "test_rawcopy_plugin.wks.in"\n' % fstype 984 self.append_config(config)
967 self.append_config(config) 985 self.assertEqual(0, bitbake('core-image-minimal').status)
968 self.assertEqual(0, bitbake('core-image-minimal').status) 986 self.remove_config(config)
969 self.remove_config(config)
970 987
971 with runqemu('core-image-minimal', ssh=False, image_fstype='wic') as qemu: 988 config = 'IMAGE_FSTYPES = "wic"\nWKS_FILE = "test_rawcopy_plugin.wks.in"\n'
989 self.append_config(config)
990 self.assertEqual(0, bitbake('core-image-minimal-mtdutils').status)
991 self.remove_config(config)
992
993 with runqemu('core-image-minimal-mtdutils', ssh=False, image_fstype='wic') as qemu:
972 cmd = "grep sda. /proc/partitions |wc -l" 994 cmd = "grep sda. /proc/partitions |wc -l"
973 status, output = qemu.run_serial(cmd) 995 status, output = qemu.run_serial(cmd)
974 self.assertEqual(1, status, 'Failed to run command "%s": %s' % (cmd, output)) 996 self.assertEqual(1, status, 'Failed to run command "%s": %s' % (cmd, output))