def __init__(self, data, storage, payload): super().__init__(data) self.storage = storage self.payload = payload self._initialFreeSpace = Size(0) self._selectedReclaimableSpace = Size(0) self._diskStore = self.builder.get_object("diskStore") self._selection = self.builder.get_object("diskView-selection") self._view = self.builder.get_object("diskView") self._diskStore = self.builder.get_object("diskStore") self._reclaimable_label = self.builder.get_object("reclaimableSpaceLabel") self._selected_label = self.builder.get_object("selectedSpaceLabel") self._required_label = self.builder.get_object("requiredSpaceLabel") markup = _("Installation requires a total of <b>%s</b> for system data.") required_dev_size = self.payload.requiredDeviceSize(FS.biggest_overhead_FS()) self._required_label.set_markup(markup % escape_markup(str(required_dev_size))) self._reclaimDescLabel = self.builder.get_object("reclaimDescLabel") self._resizeButton = self.builder.get_object("resizeButton") self._preserveButton = self.builder.get_object("preserveButton") self._shrinkButton = self.builder.get_object("shrinkButton") self._deleteButton = self.builder.get_object("deleteButton") self._resizeSlider = self.builder.get_object("resizeSlider")
def __init__(self, data, storage, payload): GUIObject.__init__(self, data) self.storage = storage self.payload = payload self._initialFreeSpace = Size(0) self._selectedReclaimableSpace = Size(0) self._actionStore = self.builder.get_object("actionStore") self._diskStore = self.builder.get_object("diskStore") self._selection = self.builder.get_object("diskView-selection") self._view = self.builder.get_object("diskView") self._diskStore = self.builder.get_object("diskStore") self._reclaimable_label = self.builder.get_object( "reclaimableSpaceLabel") self._selected_label = self.builder.get_object("selectedSpaceLabel") self._required_label = self.builder.get_object("requiredSpaceLabel") markup = self._required_label.get_label() required_dev_size = self.payload.requiredDeviceSize( FS.biggestOverheadFS()) self._required_label.set_markup(markup % escape_markup(str(required_dev_size))) self._reclaimDescLabel = self.builder.get_object("reclaimDescLabel") self._resizeButton = self.builder.get_object("resizeButton") self._preserveButton = self.builder.get_object("preserveButton") self._shrinkButton = self.builder.get_object("shrinkButton") self._deleteButton = self.builder.get_object("deleteButton") self._resizeSlider = self.builder.get_object("resizeSlider")
def __init__(self, data, storage, payload): GUIObject.__init__(self, data) self.storage = storage self.payload = payload self._initialFreeSpace = Size(0) self._selectedReclaimableSpace = Size(0) self._actionStore = self.builder.get_object("actionStore") self._diskStore = self.builder.get_object("diskStore") self._selection = self.builder.get_object("diskView-selection") self._view = self.builder.get_object("diskView") self._diskStore = self.builder.get_object("diskStore") self._reclaimable_label = self.builder.get_object("reclaimableSpaceLabel") self._selected_label = self.builder.get_object("selectedSpaceLabel") self._required_label = self.builder.get_object("requiredSpaceLabel") markup = _("Installation requires a total of <b>%s</b> for system data.") required_dev_size = self.payload.requiredDeviceSize(FS.biggest_overhead_FS()) self._required_label.set_markup(markup % escape_markup(str(required_dev_size))) self._reclaimDescLabel = self.builder.get_object("reclaimDescLabel") self._resizeButton = self.builder.get_object("resizeButton") self._preserveButton = self.builder.get_object("preserveButton") self._shrinkButton = self.builder.get_object("shrinkButton") self._deleteButton = self.builder.get_object("deleteButton") self._resizeSlider = self.builder.get_object("resizeSlider")
def get_required_device_size(required_space, format_class=None): """Get the required device size for the given space. We need to provide information how big device is required to have successful installation. The argument ``format_class`` should be filesystem format class for the **root** filesystem this class carry information about metadata size. :param required_space: the required space :param format_class: the class of the filesystem format. :returns: Size of the device with given filesystem format. """ if not format_class: format_class = FS.biggest_overhead_FS() device_size = format_class.get_required_size(required_space) return device_size.round_to_nearest(Size("1 MiB"), ROUND_HALF_UP)
def test_biggest_overhead_FS(self): self.assertTrue(FS.biggest_overhead_FS() is BTRFS) self.assertTrue(FS.biggest_overhead_FS([FATFS, Ext2FS, Ext3FS, Ext4FS]) is Ext4FS) with self.assertRaises(ValueError): FS.biggest_overhead_FS([]) # only classes with FS parent will be used with self.assertRaises(ValueError): class Dummy(object): pass FS.biggest_overhead_FS([Dummy])
def test_biggest_overhead_FS(self): self.assertTrue(FS.biggest_overhead_FS() is BTRFS) self.assertTrue( FS.biggest_overhead_FS([FATFS, Ext2FS, Ext3FS, Ext4FS]) is Ext4FS) with self.assertRaises(ValueError): FS.biggest_overhead_FS([]) # only classes with FS parent will be used with self.assertRaises(ValueError): class Dummy(object): pass FS.biggest_overhead_FS([Dummy])
def _update_reclaim_button(self, got): required_dev_size = self.payload.requiredDeviceSize(FS.biggest_overhead_FS()) self._resizeButton.set_sensitive(got+self._initialFreeSpace >= required_dev_size)
def test_required_size_FS(self): # FS is abstract parent which doesn't have metadata self.assertEqual(FS.get_required_size(Size("100 MiB")), Size("100 MiB")) self.assertEqual(Ext2FS.get_required_size(Size("100 MiB")), Size(Decimal(int(Size("100 MiB"))) / Decimal(0.93)))