diff options
author | Joshua Lock <joshua.g.lock@intel.com> | 2016-09-05 09:25:29 +0100 |
---|---|---|
committer | Joshua Lock <joshua.g.lock@intel.com> | 2016-09-05 09:28:52 +0100 |
commit | 20e654a621e5101a7fb7f10d1e4e0eb0c1efcbf3 (patch) | |
tree | 282f4005f5b9601786802458498145bb7aa3661e | |
parent | 967bc92b0b4daec99210ebca7ef0b896ef22de38 (diff) | |
download | openembedded-core-contrib-joshuagl/copyhard.tar.gz |
selftest/liboe: add a test for copyhardlinktree()joshuagl/copyhard
Add a simple test to validate that the number of files in the
destination matches the number of files in the source after the
copyhardlinktree() has been performed.
Signed-off-by: Joshua Lock <joshua.g.lock@intel.com>
-rw-r--r-- | meta/lib/oeqa/selftest/liboe.py | 29 |
1 files changed, 29 insertions, 0 deletions
diff --git a/meta/lib/oeqa/selftest/liboe.py b/meta/lib/oeqa/selftest/liboe.py index 5c93069b5d..35131eb240 100644 --- a/meta/lib/oeqa/selftest/liboe.py +++ b/meta/lib/oeqa/selftest/liboe.py @@ -62,3 +62,32 @@ class LibOE(oeSelfTest): self.assertIn('user.oetest="testing liboe"', result.output, 'Extended attribute not sert in dst') oe.path.remove(testloc) + + def test_copy_hardlink_tree_count(self): + """ + Summary: oe.path.copyhardlinktree() shouldn't miss out files + Expected: src and dst should have the same number of files + Product: OE-Core + Author: Joshua Lock <joshua.g.lock@intel.com> + """ + tmp_dir = get_bb_var('TMPDIR') + testloc = oe.path.join(tmp_dir, 'liboetests') + src = oe.path.join(testloc, 'src') + dst = oe.path.join(testloc, 'dst') + bb.utils.mkdirhier(testloc) + bb.utils.mkdirhier(src) + testfiles = ['foo', 'bar', '.baz', 'quux'] + + def touchfile(tf): + open(oe.path.join(src, tf), 'w+b').close() + + for f in testfiles: + touchfile(f) + + oe.path.copyhardlinktree(src, dst) + + dstcnt = len(os.listdir(dst)) + srccnt = len(os.listdir(src)) + self.assertEquals(dstcnt, len(testfiles), "Number of files in dst (%s) differs from number of files in src(%s)." % (dstcnt, srccnt)) + + oe.path.remove(testloc) |