def test_match(self): """Test boot format populator helper match method""" if self.helper_class is None: return partition = PartitionDevice("testpartitiondev") storagedev = StorageDevice("teststoragedev") storagedev.bootable = True data = dict() fmt_class = get_device_format_class(self.helper_class._type_specifier) if fmt_class is None: self.skipTest("failed to look up format class for %s" % self.helper_class._type_specifier) data["ID_FS_TYPE"] = self.helper_class._base_type_specifier partition._bootable = self.helper_class._bootable min_size = fmt_class._min_size max_size = fmt_class._max_size partition._size = min_size storagedev._size = min_size if fmt_class._name: partition._parted_partition = FakePartedPart( partition, fmt_class._name) self.assertTrue(self.helper_class.match(data, partition)) # These are only valid for partitions. self.assertFalse(self.helper_class.match(data, storagedev)) data["ID_FS_TYPE"] += "x" self.assertFalse(self.helper_class.match(data, partition)) data["ID_FS_TYPE"] = self.helper_class._base_type_specifier if self.helper_class._bootable: partition._bootable = False self.assertFalse(self.helper_class.match(data, partition)) partition._bootable = True if max_size: partition._size = max_size + 1 elif min_size: partition._size = min_size - 1 self.assertFalse(self.helper_class.match(data, partition)) partition._size = min_size # we don't always match on the parted partition name, so allow # subclasses to decide if not self.name_mismatch_ok: orig = partition._parted_partition partition._parted_partition = FakePartedPart( partition, 'dontmatchanything') self.assertFalse(self.helper_class.match(data, partition)) # shouldn't crash partition._parted_partition = None self.assertFalse(self.helper_class.match(data, partition)) partition._parted_partition = orig
def test_match(self): """Test boot format populator helper match method""" if self.helper_class is None: return partition = PartitionDevice("testpartitiondev") storagedev = StorageDevice("teststoragedev") storagedev.bootable = True data = dict() fmt_class = get_device_format_class(self.helper_class._type_specifier) if fmt_class is None: self.skipTest("failed to look up format class for %s" % self.helper_class._type_specifier) data["ID_FS_TYPE"] = self.helper_class._base_type_specifier partition._bootable = self.helper_class._bootable min_size = fmt_class._min_size max_size = fmt_class._max_size partition._size = min_size storagedev._size = min_size if fmt_class._name: partition._parted_partition = FakePartedPart(partition, fmt_class._name) self.assertTrue(self.helper_class.match(data, partition)) # These are only valid for partitions. self.assertFalse(self.helper_class.match(data, storagedev)) data["ID_FS_TYPE"] += "x" self.assertFalse(self.helper_class.match(data, partition)) data["ID_FS_TYPE"] = self.helper_class._base_type_specifier if self.helper_class._bootable: partition._bootable = False self.assertFalse(self.helper_class.match(data, partition)) partition._bootable = True if max_size: partition._size = max_size + 1 elif min_size: partition._size = min_size - 1 self.assertFalse(self.helper_class.match(data, partition)) partition._size = min_size # we don't always match on the parted partition name, so allow # subclasses to decide if not self.name_mismatch_ok: orig = partition._parted_partition partition._parted_partition = FakePartedPart(partition, 'dontmatchanything') self.assertFalse(self.helper_class.match(data, partition)) # shouldn't crash partition._parted_partition = None self.assertFalse(self.helper_class.match(data, partition)) partition._parted_partition = orig
def test_match(self): """Test boot format populator helper match method""" if self.helper_class is None: return partition = PartitionDevice("testpartitiondev") storagedev = StorageDevice("teststoragedev") storagedev.bootable = True data = dict() fmt_class = get_device_format_class(self.helper_class._type_specifier) if fmt_class is None: self.skipTest("failed to look up format class for %s" % self.helper_class._type_specifier) data["ID_FS_TYPE"] = self.helper_class._base_type_specifier partition._bootable = self.helper_class._bootable min_size = fmt_class._min_size max_size = fmt_class._max_size partition._size = min_size storagedev._size = min_size self.assertTrue(self.helper_class.match(data, partition)) # These are only valid for partitions. self.assertFalse(self.helper_class.match(data, storagedev)) data["ID_FS_TYPE"] += "x" self.assertFalse(self.helper_class.match(data, partition)) data["ID_FS_TYPE"] = self.helper_class._base_type_specifier if self.helper_class._bootable: partition._bootable = False self.assertFalse(self.helper_class.match(data, partition)) partition._bootable = True if max_size: partition._size = max_size + 1 elif min_size: partition._size = min_size - 1 self.assertFalse(self.helper_class.match(data, partition)) partition._size = min_size