def test_device_exclusion_logic_no_name(): """ Same as above but with default configuration values and device='' to expose a bug in #2359 """ instances = [{ 'use_mount': 'yes', 'excluded_mountpoint_re': '^/run$', 'all_partitions': 'yes' }] c = Disk('disk', None, {}, instances) assert c._exclude_disk_psutil(MockPart(device='', mountpoint='/run')) is True assert c._exclude_disk_psutil(MockPart(device='', mountpoint='/run/shm')) is False
def test__exclude_disk_psutil(): """ Test exclusion logic """ instance = { 'use_mount': 'no', 'excluded_filesystems': ['aaaaaa'], 'excluded_mountpoint_re': '^/run$', 'excluded_disks': ['bbbbbb'], 'excluded_disk_re': '^tev+$' } c = Disk('disk', None, {}, [instance]) # should pass, default mock is a normal disk assert c._exclude_disk_psutil(MockPart()) is False # standard fake devices assert c._exclude_disk_psutil(MockPart(device='')) is True assert c._exclude_disk_psutil(MockPart(device='none')) is True assert c._exclude_disk_psutil(MockPart(device='udev')) is False # excluded filesystems list assert c._exclude_disk_psutil(MockPart(fstype='aaaaaa')) is True assert c._exclude_disk_psutil(MockPart(fstype='a')) is False # excluded devices list assert c._exclude_disk_psutil(MockPart(device='bbbbbb')) is True assert c._exclude_disk_psutil(MockPart(device='b')) is False # excluded devices regex assert c._exclude_disk_psutil(MockPart(device='tevvv')) is True assert c._exclude_disk_psutil(MockPart(device='tevvs')) is False # and now with all_partitions c._all_partitions = True assert c._exclude_disk_psutil(MockPart(device='')) is False assert c._exclude_disk_psutil(MockPart(device='none')) is False assert c._exclude_disk_psutil(MockPart(device='udev')) is False # excluded mountpoint regex assert c._exclude_disk_psutil(MockPart(device='sdz', mountpoint='/run')) is True assert c._exclude_disk_psutil(MockPart(device='sdz', mountpoint='/run/shm')) is False