Diskmanage: replace check for zpool binary with a function and mock it
so the test still works when it's not installed. Signed-off-by: Fabian Ebner <f.ebner@proxmox.com>
This commit is contained in:
committed by
Thomas Lamprecht
parent
26de022b56
commit
525b4a6ebe
@ -19,6 +19,12 @@ my $PVS = "/sbin/pvs";
|
|||||||
my $LVS = "/sbin/lvs";
|
my $LVS = "/sbin/lvs";
|
||||||
my $LSBLK = "/bin/lsblk";
|
my $LSBLK = "/bin/lsblk";
|
||||||
|
|
||||||
|
sub check_bin {
|
||||||
|
my ($path) = @_;
|
||||||
|
|
||||||
|
return -x $path;
|
||||||
|
}
|
||||||
|
|
||||||
sub verify_blockdev_path {
|
sub verify_blockdev_path {
|
||||||
my ($rel_path) = @_;
|
my ($rel_path) = @_;
|
||||||
|
|
||||||
@ -201,7 +207,7 @@ sub get_zfs_devices {
|
|||||||
my ($lsblk_info) = @_;
|
my ($lsblk_info) = @_;
|
||||||
my $res = {};
|
my $res = {};
|
||||||
|
|
||||||
return {} if ! -x $ZPOOL;
|
return {} if !check_bin($ZPOOL);
|
||||||
|
|
||||||
# use zpool and parttype uuid,
|
# use zpool and parttype uuid,
|
||||||
# because log and cache do not have
|
# because log and cache do not have
|
||||||
|
|||||||
@ -244,6 +244,8 @@ $diskmanage_module->mock('dir_is_empty' => sub {
|
|||||||
return 1;
|
return 1;
|
||||||
});
|
});
|
||||||
print("\tMocked dir_is_empty\n");
|
print("\tMocked dir_is_empty\n");
|
||||||
|
$diskmanage_module->mock('check_bin' => sub { return 1; });
|
||||||
|
print("\tMocked check_bin\n");
|
||||||
my $tools_module= new Test::MockModule('PVE::ProcFSTools', no_auto => 1);
|
my $tools_module= new Test::MockModule('PVE::ProcFSTools', no_auto => 1);
|
||||||
$tools_module->mock('parse_proc_mounts' => \&mocked_parse_proc_mounts);
|
$tools_module->mock('parse_proc_mounts' => \&mocked_parse_proc_mounts);
|
||||||
print("\tMocked parse_proc_mounts\n");
|
print("\tMocked parse_proc_mounts\n");
|
||||||
|
|||||||
Reference in New Issue
Block a user