libbtrfsutil: use local mkfs.btrfs for tests if it exists

The system might not have mkfs installed at all.

Signed-off-by: Omar Sandoval <osandov@fb.com>
Signed-off-by: David Sterba <dsterba@suse.com>
master
Omar Sandoval 2018-03-29 00:53:55 -07:00 committed by David Sterba
parent f5dd778f52
commit 660adc0e1c
2 changed files with 6 additions and 2 deletions

View File

@ -357,7 +357,7 @@ testsuite: btrfs-corrupt-block fssum
$(Q)cd tests && ./export-testsuite.sh
ifeq ($(PYTHON_BINDINGS),1)
test-libbtrfsutil: libbtrfsutil_python
test-libbtrfsutil: libbtrfsutil_python mkfs.btrfs
$(Q)cd libbtrfsutil/python; \
LD_LIBRARY_PATH=../.. $(PYTHON) -m unittest discover -v tests

View File

@ -37,8 +37,12 @@ class BtrfsTestCase(unittest.TestCase):
os.rmdir(self.mountpoint)
raise e
if os.path.exists('../../mkfs.btrfs'):
mkfs = '../../mkfs.btrfs'
else:
mkfs = 'mkfs.btrfs'
try:
subprocess.check_call(['mkfs.btrfs', '-q', self.image])
subprocess.check_call([mkfs, '-q', self.image])
subprocess.check_call(['mount', '-o', 'loop', '--', self.image, self.mountpoint])
except Exception as e:
os.remove(self.image)