[blivet:master 15/16] Change Size so that it takes a single value parameter.
Martin Kolman
mkolman at redhat.com
Fri May 2 11:39:22 UTC 2014
----- Original Message -----
> From: "mulhern" <amulhern at redhat.com>
> To: anaconda-patches at lists.fedorahosted.org
> Sent: Thursday, May 1, 2014 3:08:52 PM
> Subject: [blivet:master 15/16] Change Size so that it takes a single value parameter.
>
> Update calls, remove SizeParamsError, and remove tests about SizeParamsError.
>
> Signed-off-by: mulhern <amulhern at redhat.com>
> ---
> blivet/__init__.py | 8 +-
> blivet/devicefactory.py | 16 ++--
> blivet/devicelibs/crypto.py | 2 +-
> blivet/devicelibs/lvm.py | 20 ++---
> blivet/devicelibs/mdraid.py | 10 +--
> blivet/devicelibs/swap.py | 8 +-
> blivet/devices.py | 32 ++++----
> blivet/devicetree.py | 2 +-
> blivet/errors.py | 3 -
> blivet/formats/__init__.py | 4 +-
> blivet/formats/biosboot.py | 4 +-
> blivet/formats/disklabel.py | 6 +-
> blivet/formats/fs.py | 48 ++++++------
> blivet/formats/prepboot.py | 4 +-
> blivet/formats/swap.py | 2 +-
> blivet/partitioning.py | 32 ++++----
> blivet/platform.py | 20 ++---
> blivet/size.py | 59 +++++++-------
> blivet/udev.py | 10 +--
> blivet/util.py | 4 +-
> tests/action_test.py | 146
> +++++++++++++++++------------------
> tests/devicefactory_test.py | 4 +-
> tests/devicelibs_test/lvm_test.py | 38 ++++-----
> tests/devicelibs_test/mdraid_test.py | 36 ++++-----
> tests/devices_test.py | 114 +++++++++++++--------------
> tests/size_test.py | 65 ++++++++--------
> 26 files changed, 342 insertions(+), 355 deletions(-)
>
> diff --git a/blivet/__init__.py b/blivet/__init__.py
> index 9f94300..7dfbd2a 100644
> --- a/blivet/__init__.py
> +++ b/blivet/__init__.py
> @@ -899,11 +899,11 @@ class Blivet(object):
> should_clear = self.shouldClear(disk,
> clearPartType=clearPartType,
> clearPartDisks=[disk.name])
> if should_clear:
> - free[disk.name] = (disk.size, Size(bytes=0))
> + free[disk.name] = (disk.size, Size(0))
> continue
>
> - disk_free = Size(bytes=0)
> - fs_free = Size(bytes=0)
> + disk_free = Size(0)
> + fs_free = Size(0)
> if disk.partitioned:
> disk_free = disk.format.free
> for partition in [p for p in self.partitions if p.disk ==
> disk]:
> @@ -1641,7 +1641,7 @@ class Blivet(object):
>
> if not swaps:
> installed = util.total_memory()
> - required = Size(spec="%s KiB" % isys.EARLY_SWAP_RAM)
> + required = Size("%s KiB" % isys.EARLY_SWAP_RAM)
>
> if installed < required:
> exns.append(
> diff --git a/blivet/devicefactory.py b/blivet/devicefactory.py
> index 30b8efb..c655a71 100644
> --- a/blivet/devicefactory.py
> +++ b/blivet/devicefactory.py
> @@ -156,7 +156,7 @@ class DeviceFactory(object):
> # PVs on each of the specified disks. No free space is
> maintained in
> # new VGs by default.
> factory = blivet.devicefactory.LVMFactory(_blivet,
> - Size(spec="10000 MB"),
> + Size("10000 MB"),
> disks,
> fstype="xfs",
> label="music",
> @@ -169,7 +169,7 @@ class DeviceFactory(object):
> # Now add another LV to the "data" VG, adjusting the size of a
> non-
> # existent "data" VG so that it can contain the new LV.
> factory = blivet.devicefactory.LVMFactory(_blivet,
> - Size(spec="20000 MB"),
> + Size("20000 MB"),
> disks,
> fstype="xfs",
> label="videos",
> @@ -180,7 +180,7 @@ class DeviceFactory(object):
> # Now change the size of the "music" LV and adjust the size of
> the
> # "data" VG accordingly.
> factory = blivet.devicefactory.LVMFactory(_blivet,
> - Size(spec="15000 MB"),
> + Size("15000 MB"),
> disks,
> device=music_lv)
> factory.configure()
> @@ -815,7 +815,7 @@ class PartitionFactory(DeviceFactory):
> if self.encrypted:
> min_format_size += getFormat("luks").minSize
>
> - return max(Size(spec="1MiB"), min_format_size)
> + return max(Size("1MiB"), min_format_size)
>
> def _get_device_size(self):
> """ Return the factory device size including container limitations.
> """
> @@ -953,7 +953,7 @@ class PartitionSetFactory(PartitionFactory):
> add_disks = self.disks
>
> # drop any new disks that don't have free space
> - min_free = min(Size(spec="500MiB"), self.parent_factory.size)
> + min_free = min(Size("500MiB"), self.parent_factory.size)
> add_disks = [d for d in add_disks if d.partitioned and
> d.format.free >= min_free]
>
> @@ -1135,7 +1135,7 @@ class LVMFactory(DeviceFactory):
>
> def _get_total_space(self):
> """ Total disk space requirement for this device and its container.
> """
> - size = Size(bytes=0)
> + size = Size(0)
> if self.container and self.container.exists:
> return size
>
> @@ -1442,7 +1442,7 @@ class LVMThinPFactory(LVMFactory):
>
> log.debug("requested size is %s", self.size)
> size = self.size # projected size for the pool (not padded)
> - free = Size(bytes=0)# total space within the vg that is available to
> us
> + free = Size(0)# total space within the vg that is available to us
> if self.pool:
> free += self.pool.freeSpace # pools are always auto-sized
> # pool lv sizes go toward projected pool size and vg free space
> @@ -1597,7 +1597,7 @@ class BTRFSFactory(DeviceFactory):
>
> def _get_total_space(self):
> """ Return the total space needed for the specified container. """
> - size = Size(bytes=0)
> + size = Size(0)
> if self.container and self.container.exists:
> return size
>
> diff --git a/blivet/devicelibs/crypto.py b/blivet/devicelibs/crypto.py
> index dd2fcdf..da17b34 100644
> --- a/blivet/devicelibs/crypto.py
> +++ b/blivet/devicelibs/crypto.py
> @@ -26,7 +26,7 @@ from pycryptsetup import CryptSetup
> from ..errors import CryptoError
> from ..size import Size
>
> -LUKS_METADATA_SIZE = Size(spec="2 MiB")
> +LUKS_METADATA_SIZE = Size("2 MiB")
>
> # Keep the character set size a power of two to make sure all characters are
> # equally likely
> diff --git a/blivet/devicelibs/lvm.py b/blivet/devicelibs/lvm.py
> index 2324db1..67fc1e5 100644
> --- a/blivet/devicelibs/lvm.py
> +++ b/blivet/devicelibs/lvm.py
> @@ -35,14 +35,14 @@ from ..i18n import _
> MAX_LV_SLOTS = 256
>
> # some of lvm's defaults that we have no way to ask it for
> -LVM_PE_START = Size(spec="1 MiB")
> -LVM_PE_SIZE = Size(spec="4 MiB")
> +LVM_PE_START = Size("1 MiB")
> +LVM_PE_SIZE = Size("4 MiB")
>
> # thinp constants
> -LVM_THINP_MIN_METADATA_SIZE = Size(spec="2 MiB")
> -LVM_THINP_MAX_METADATA_SIZE = Size(spec="16 GiB")
> -LVM_THINP_MIN_CHUNK_SIZE = Size(spec="64 KiB")
> -LVM_THINP_MAX_CHUNK_SIZE = Size(spec="1 GiB")
> +LVM_THINP_MIN_METADATA_SIZE = Size("2 MiB")
> +LVM_THINP_MAX_METADATA_SIZE = Size("16 GiB")
> +LVM_THINP_MIN_CHUNK_SIZE = Size("64 KiB")
> +LVM_THINP_MAX_CHUNK_SIZE = Size("1 GiB")
>
> def has_lvm():
> if util.find_program_in_path("lvm"):
> @@ -119,8 +119,8 @@ def getPossiblePhysicalExtents():
> """
>
> possiblePE = []
> - curpe = Size(spec="1 KiB")
> - while curpe <= Size(spec="16 GiB"):
> + curpe = Size("1 KiB")
> + while curpe <= Size("16 GiB"):
> possiblePE.append(curpe)
> curpe = curpe * 2
>
> @@ -129,9 +129,9 @@ def getPossiblePhysicalExtents():
> def getMaxLVSize():
> """ Return the maximum size of a logical volume. """
> if arch.getArch() in ("x86_64", "ppc64", "alpha", "ia64", "s390"):
> #64bit architectures
> - return Size(spec="8 EiB")
> + return Size("8 EiB")
> else:
> - return Size(spec="16 TiB")
> + return Size("16 TiB")
>
> def clampSize(size, pesize, roundup=None):
> delta = size % pesize
> diff --git a/blivet/devicelibs/mdraid.py b/blivet/devicelibs/mdraid.py
> index 1077400..00364a3 100644
> --- a/blivet/devicelibs/mdraid.py
> +++ b/blivet/devicelibs/mdraid.py
> @@ -31,8 +31,8 @@ import logging
> log = logging.getLogger("blivet")
>
> # these defaults were determined empirically
> -MD_SUPERBLOCK_SIZE = Size(spec="2 MiB")
> -MD_CHUNK_SIZE = Size(spec="512 KiB")
> +MD_SUPERBLOCK_SIZE = Size("2 MiB")
> +MD_CHUNK_SIZE = Size("512 KiB")
>
> class MDRaidLevels(raid.RAIDLevels):
> @classmethod
> @@ -95,11 +95,11 @@ def get_raid_superblock_size(size, version=None):
> # MDADM: operations, but limit this to 128Meg (0.1% of 10Gig)
> # MDADM: which is plenty for efficient reshapes
> # NOTE: In the mdadm code this is in 512b sectors. Converted to use
> MiB
> - headroom = int(Size(spec="128 MiB"))
> - while headroom << 10 > size and headroom > Size(spec="1 MiB"):
> + headroom = int(Size("128 MiB"))
> + while headroom << 10 > size and headroom > Size("1 MiB"):
> headroom >>= 1
>
> - headroom = Size(bytes=headroom)
> + headroom = Size(headroom)
>
> log.info("Using %s superBlockSize", headroom)
> return headroom
> diff --git a/blivet/devicelibs/swap.py b/blivet/devicelibs/swap.py
> index 2ba9e23..6cfe04f 100644
> --- a/blivet/devicelibs/swap.py
> +++ b/blivet/devicelibs/swap.py
> @@ -137,10 +137,10 @@ def swapSuggestion(quiet=False, hibernation=False,
> disk_space=None):
> if not quiet:
> log.info("Detected %s of memory", mem)
>
> - two_GiB = Size(spec="2GiB")
> - four_GiB = Size(spec="4GiB")
> - eight_GiB = Size(spec="8GiB")
> - sixtyfour_GiB = Size(spec="64 GiB")
> + two_GiB = Size("2GiB")
> + four_GiB = Size("4GiB")
> + eight_GiB = Size("8GiB")
> + sixtyfour_GiB = Size("64 GiB")
>
> #chart suggested in the discussion with other teams
> if mem < two_GiB:
> diff --git a/blivet/devices.py b/blivet/devices.py
> index 7abf6c8..aa34e88 100644
> --- a/blivet/devices.py
> +++ b/blivet/devices.py
> @@ -539,7 +539,7 @@ class StorageDevice(Device):
> Device.__init__(self, name, parents=parents)
>
> self._format = None
> - self._size = Size(bytes=util.numeric_type(size))
> + self._size = Size(util.numeric_type(size))
> self.major = util.numeric_type(major)
> self.minor = util.numeric_type(minor)
> self.sysfsPath = sysfsPath
> @@ -569,7 +569,7 @@ class StorageDevice(Device):
> sector_size =
> read_int_from_sys("%s/queue/logical_block_size"
> % device_root)
> size = read_int_from_sys("%s/size" % device_root)
> - self._size = Size(bytes=(size * sector_size))
> + self._size = Size(size * sector_size)
>
> def __str__(self):
> exist = "existing"
> @@ -958,7 +958,7 @@ class StorageDevice(Device):
> """
> size = 0
> if self.exists and self.partedDevice:
> - size = Size(bytes=self.partedDevice.getLength(unit="B"))
> + size = Size(self.partedDevice.getLength(unit="B"))
> elif self.exists:
> size = self._size
> return size
> @@ -1179,7 +1179,7 @@ class PartitionDevice(StorageDevice):
> """
> _type = "partition"
> _resizable = True
> - defaultSize = Size(spec="500MiB")
> + defaultSize = Size("500MiB")
>
> def __init__(self, name, fmt=None,
> size=None, grow=False, maxsize=None, start=None, end=None,
> @@ -1297,7 +1297,7 @@ class PartitionDevice(StorageDevice):
> self.req_name = name
> self.req_partType = partType
> self.req_primary = primary
> - self.req_max_size = Size(bytes=util.numeric_type(maxsize))
> + self.req_max_size = Size(util.numeric_type(maxsize))
> self.req_grow = grow
> self.req_bootable = bootable
>
> @@ -1582,7 +1582,7 @@ class PartitionDevice(StorageDevice):
> if not self.exists:
> return
>
> - self._size = Size(bytes=self.partedPartition.getLength(unit="B"))
> + self._size = Size(self.partedPartition.getLength(unit="B"))
> self._currentSize = self._size
> self.targetSize = self._size
>
> @@ -1600,7 +1600,7 @@ class PartitionDevice(StorageDevice):
> device = self.partedPartition.geometry.device.path
>
> # Erase 1MiB or to end of partition
> - count = int(Size(spec="1 MiB") / bs)
> + count = int(Size("1 MiB") / bs)
> count = min(count, part_len)
>
> cmd = ["dd", "if=/dev/zero", "of=%s" % device, "bs=%s" % bs,
> @@ -1644,7 +1644,7 @@ class PartitionDevice(StorageDevice):
> DeviceFormat(device=self.path, exists=True).destroy()
>
> StorageDevice._postCreate(self)
> - self._currentSize =
> Size(bytes=self.partedPartition.getLength(unit="B"))
> + self._currentSize = Size(self.partedPartition.getLength(unit="B"))
>
> def create(self):
> """ Create the device. """
> @@ -1693,7 +1693,7 @@ class PartitionDevice(StorageDevice):
> end=geometry.end)
>
> self.disk.format.commit()
> - self._currentSize = Size(bytes=partition.getLength(unit="B"))
> + self._currentSize = Size(partition.getLength(unit="B"))
>
> def _preDestroy(self):
> StorageDevice._preDestroy(self)
> @@ -1742,7 +1742,7 @@ class PartitionDevice(StorageDevice):
> """ Get the device's size. """
> size = self._size
> if self.partedPartition:
> - size = Size(bytes=self.partedPartition.getLength(unit="B"))
> + size = Size(self.partedPartition.getLength(unit="B"))
> return size
>
> def _setSize(self, newsize):
> @@ -1764,7 +1764,7 @@ class PartitionDevice(StorageDevice):
> if newsize > self.disk.size:
> raise ValueError("partition size would exceed disk size")
>
> - maxAvailableSize =
> Size(bytes=self.partedPartition.getMaxAvailableSize(unit="B"))
> + maxAvailableSize =
> Size(self.partedPartition.getMaxAvailableSize(unit="B"))
>
> if newsize > maxAvailableSize:
> raise ValueError("new size is greater than available space")
> @@ -1813,7 +1813,7 @@ class PartitionDevice(StorageDevice):
> pass
> else:
> if partition.type == parted.PARTITION_FREESPACE:
> - maxPartSize = self.size +
> Size(bytes=partition.getLength(unit="B"))
> + maxPartSize = self.size +
> Size(partition.getLength(unit="B"))
>
> maxFormatSize = self.format.maxSize
> return min(maxFormatSize, maxPartSize) if maxFormatSize else
> maxPartSize
> @@ -2305,7 +2305,7 @@ class LVMVolumeGroupDevice(ContainerDevice):
> self.peCount = util.numeric_type(peCount)
> self.peFree = util.numeric_type(peFree)
> self.reserved_percent = 0
> - self.reserved_space = Size(bytes=0)
> + self.reserved_space = Size(0)
>
> # this will have to be covered by the 20% pad for non-existent pools
> self.poolMetaData = 0
> @@ -2880,7 +2880,7 @@ class LVMLogicalVolumeDevice(DMDevice):
> # nothing more can be done, we don't know the VG's free space
> return
>
> - extent_size = Size(spec=vg_info["LVM2_VG_EXTENT_SIZE"] + "MiB")
> + extent_size = Size(vg_info["LVM2_VG_EXTENT_SIZE"] + "MiB")
> extents_free = int(vg_info["LVM2_VG_FREE_COUNT"])
> can_use = extent_size * extents_free
>
> @@ -3305,7 +3305,7 @@ class MDRaidArrayDevice(ContainerDevice):
> size = 0
> log.debug("non-existent RAID %s size == %s", self.level, size)
> else:
> - size = Size(bytes=self.partedDevice.getLength(unit="B"))
> + size = Size(self.partedDevice.getLength(unit="B"))
> log.debug("existing RAID %s size == %s", self.level, size)
>
> return size
> @@ -4024,7 +4024,7 @@ class FileDevice(StorageDevice):
> fd = os.open(self.path, os.O_WRONLY|os.O_CREAT|os.O_TRUNC)
> # all this fuss is so we write the zeros 1MiB at a time
> zero = "\0"
> - MiB = Size(spec="1 MiB")
> + MiB = Size("1 MiB")
> count = int(self.size.convertTo(spec="MiB"))
> rem = self.size % MiB
>
> diff --git a/blivet/devicetree.py b/blivet/devicetree.py
> index 142a8df..698f7fa 100644
> --- a/blivet/devicetree.py
> +++ b/blivet/devicetree.py
> @@ -1441,7 +1441,7 @@ class DeviceTree(object):
> self.addUdevDevice(lv_info)
>
> raid = dict((n.replace("[", "").replace("]", ""),
> - {"copies": 0, "log": Size(bytes=0), "meta":
> Size(bytes=0)})
> + {"copies": 0, "log": Size(0), "meta": Size(0)})
> for n in lv_info.keys())
> for lv in lv_info.values():
> addLV(lv)
> diff --git a/blivet/errors.py b/blivet/errors.py
> index 1ce970b..e0e5871 100644
> --- a/blivet/errors.py
> +++ b/blivet/errors.py
> @@ -180,9 +180,6 @@ class DasdFormatError(StorageError):
> pass
>
> # size
> -class SizeParamsError(StorageError):
> - pass
> -
> class SizePlacesError(StorageError):
> pass
>
> diff --git a/blivet/formats/__init__.py b/blivet/formats/__init__.py
> index f052ef8..e4cee42 100644
> --- a/blivet/formats/__init__.py
> +++ b/blivet/formats/__init__.py
> @@ -156,8 +156,8 @@ class DeviceFormat(ObjectID):
> _packages = [] # required packages
> _services = [] # required services
> _resizable = False # can be resized
> - _maxSize = Size(bytes=0) # maximum size
> - _minSize = Size(bytes=0) # minimum size
> + _maxSize = Size(0) # maximum size
> + _minSize = Size(0) # minimum size
> _dump = False
> _check = False
> _hidden = False # hide devices with this formatting?
> diff --git a/blivet/formats/biosboot.py b/blivet/formats/biosboot.py
> index 1688927..4d885f7 100644
> --- a/blivet/formats/biosboot.py
> +++ b/blivet/formats/biosboot.py
> @@ -35,8 +35,8 @@ class BIOSBoot(DeviceFormat):
> partedFlag = PARTITION_BIOS_GRUB
> _formattable = True # can be formatted
> _linuxNative = True # for clearpart
> - _maxSize = Size(spec="2 MiB")
> - _minSize = Size(spec="512 KiB")
> + _maxSize = Size("2 MiB")
> + _minSize = Size("512 KiB")
>
> def __init__(self, *args, **kwargs):
> """
> diff --git a/blivet/formats/disklabel.py b/blivet/formats/disklabel.py
> index fe408dc..e06c39f 100644
> --- a/blivet/formats/disklabel.py
> +++ b/blivet/formats/disklabel.py
> @@ -221,7 +221,7 @@ class DiskLabel(DeviceFormat):
> size = self._size
> if not size:
> try:
> - size = Size(bytes=self.partedDevice.getLength(unit="B"))
> + size = Size(self.partedDevice.getLength(unit="B"))
> except Exception: # pylint: disable=broad-except
> log_exception_info()
> size = 0
> @@ -417,7 +417,7 @@ class DiskLabel(DeviceFormat):
> return int(open(path).readline().strip())
>
> try:
> - free = sum(Size(bytes=f.getLength(unit="B"))
> + free = sum(Size(f.getLength(unit="B"))
> for f in self.partedDisk.getFreeSpacePartitions())
> except Exception: # pylint: disable=broad-except
> log_exception_info()
> @@ -436,7 +436,7 @@ class DiskLabel(DeviceFormat):
> partition_length = read_int_from_sys("%s/size" %
> partition_root)
> used_sectors += partition_length
>
> - free = Size(bytes=((disk_length - used_sectors) * sector_size))
> + free = Size((disk_length - used_sectors) * sector_size)
>
> return free
>
> diff --git a/blivet/formats/fs.py b/blivet/formats/fs.py
> index eb8e66a..8312bd4 100644
> --- a/blivet/formats/fs.py
> +++ b/blivet/formats/fs.py
> @@ -106,7 +106,7 @@ class FS(DeviceFormat):
> self.fsprofile = kwargs.get("fsprofile")
>
> # filesystem size does not necessarily equal device size
> - self._size = kwargs.get("size", Size(bytes=0))
> + self._size = kwargs.get("size", Size(0))
> self._minInstanceSize = None # min size of this FS instance
> self._mountpoint = None # the current mountpoint when mounted
>
> @@ -311,7 +311,7 @@ class FS(DeviceFormat):
> for value in values:
> size *= value
>
> - size = Size(bytes=size)
> + size = Size(size)
> except Exception: # pylint: disable=broad-except
> log_exception_info(log.error, "failed to obtain size of
> filesystem on %s", [self.device])
>
> @@ -320,7 +320,7 @@ class FS(DeviceFormat):
> @property
> def currentSize(self):
> """ The filesystem's current actual size. """
> - size = Size(bytes=0)
> + size = Size(0)
> if self.exists:
> size = self._size
> return size
> @@ -878,8 +878,8 @@ class Ext2FS(FS):
> _supported = True
> _resizable = True
> _linuxNative = True
> - _maxSize = Size(spec="8 TiB")
> - _minSize = Size(bytes=0)
> + _maxSize = Size("8 TiB")
> + _minSize = Size(0)
> _defaultMountOptions = ["defaults"]
> _defaultCheckOptions = ["-f", "-p", "-C", "0"]
> _dump = True
> @@ -949,7 +949,7 @@ class Ext2FS(FS):
> minSize = minSize.strip()
> if not minSize:
> break
> - size = Size(bytes=long(minSize) * blockSize)
> + size = Size(long(minSize) * blockSize)
> break
>
> if size is None:
> @@ -993,7 +993,7 @@ class Ext3FS(Ext2FS):
> # smaller than the default of 4096 bytes and therefore to make liars of
> us
> # with regard to this maximum filesystem size, but if they're doing such
> # things they should know the implications of their chosen block size.
> - _maxSize = Size(spec="16 TiB")
> + _maxSize = Size("16 TiB")
>
> @property
> def needsFSCheck(self):
> @@ -1024,7 +1024,7 @@ class FATFS(FS):
> 2: N_("Usage error.")}
> _supported = True
> _formattable = True
> - _maxSize = Size(spec="1 TiB")
> + _maxSize = Size("1 TiB")
> _packages = [ "dosfstools" ]
> _defaultMountOptions = ["umask=0077", "shortname=winnt"]
> # FIXME this should be fat32 in some cases
> @@ -1046,7 +1046,7 @@ class EFIFS(FATFS):
> _mountType = "vfat"
> _modules = ["vfat"]
> _name = N_("EFI System Partition")
> - _minSize = Size(spec="50 MiB")
> + _minSize = Size("50 MiB")
>
> @property
> def supported(self):
> @@ -1066,8 +1066,8 @@ class BTRFS(FS):
> _maxLabelChars = 256
> _supported = True
> _packages = ["btrfs-progs"]
> - _minSize = Size(spec="256 MiB")
> - _maxSize = Size(spec="16 TiB")
> + _minSize = Size("256 MiB")
> + _maxSize = Size("16 TiB")
> # FIXME parted needs to be taught about btrfs so that we can set the
> # partition table type correctly for btrfs partitions
> # partedSystem = fileSystemType["btrfs"]
> @@ -1155,7 +1155,7 @@ class JFS(FS):
> _labelfs = fslabeling.JFSLabeling()
> _defaultFormatOptions = ["-q"]
> _maxLabelChars = 16
> - _maxSize = Size(spec="8 TiB")
> + _maxSize = Size("8 TiB")
> _formattable = True
> _linuxNative = True
> _supported = False
> @@ -1187,7 +1187,7 @@ class ReiserFS(FS):
> _modules = ["reiserfs"]
> _defaultFormatOptions = ["-f", "-f"]
> _maxLabelChars = 16
> - _maxSize = Size(spec="16 TiB")
> + _maxSize = Size("16 TiB")
> _formattable = True
> _linuxNative = True
> _supported = False
> @@ -1224,7 +1224,7 @@ class XFS(FS):
> _labelfs = fslabeling.XFSLabeling()
> _defaultFormatOptions = ["-f"]
> _maxLabelChars = 16
> - _maxSize = Size(spec="16 EiB")
> + _maxSize = Size("16 EiB")
> _formattable = True
> _linuxNative = True
> _supported = True
> @@ -1272,8 +1272,8 @@ class AppleBootstrapFS(HFS):
> _type = "appleboot"
> _mountType = "hfs"
> _name = N_("Apple Bootstrap")
> - _minSize = Size(spec="768 KiB")
> - _maxSize = Size(spec="1 MiB")
> + _minSize = Size("768 KiB")
> + _maxSize = Size("1 MiB")
>
> @property
> def supported(self):
> @@ -1292,8 +1292,8 @@ class HFSPlus(FS):
> _packages = ["hfsplus-tools"]
> _formattable = True
> _mountType = "hfsplus"
> - _minSize = Size(spec="1 MiB")
> - _maxSize = Size(spec="2 TiB")
> + _minSize = Size("1 MiB")
> + _maxSize = Size("2 TiB")
> _check = True
> partedSystem = fileSystemType["hfs+"]
>
> @@ -1322,8 +1322,8 @@ class NTFS(FS):
> _labelfs = fslabeling.NTFSLabeling()
> _fsck = "ntfsresize"
> _resizable = True
> - _minSize = Size(spec="1 MiB")
> - _maxSize = Size(spec="16 TiB")
> + _minSize = Size("1 MiB")
> + _maxSize = Size("16 TiB")
> _defaultMountOptions = ["defaults", "ro"]
> _defaultCheckOptions = ["-c"]
> _packages = ["ntfsprogs"]
> @@ -1354,7 +1354,7 @@ class NTFS(FS):
> continue
> try:
> # ntfsresize uses SI unit prefixes
> - minSize = Size(spec="%d mb" %
> int(l.split(":")[1].strip()))
> + minSize = Size("%d mb" % int(l.split(":")[1].strip()))
> except (IndexError, ValueError) as e:
> minSize = None
> log.warning("Unable to parse output for minimum size on
> %s: %s", self.device, e)
> @@ -1519,9 +1519,9 @@ class TmpFS(NoDevFS):
> # and 16EB on 64 bit systems
> bits = arch.numBits()
> if bits == 32:
> - self._maxSize = Size(spec="16TiB")
> + self._maxSize = Size("16TiB")
> elif bits == 64:
> - self._maxSize = Size(spec="16EiB")
> + self._maxSize = Size("16EiB")
> # if the architecture is other than 32 or 64 bit or unknown
> # just use the default maxsize, which is 0, this disables
> # resizing but other operations such as mounting should work fine
> @@ -1596,7 +1596,7 @@ class TmpFS(NoDevFS):
> # self._mountpoint is set to the full changeroot path once
> mounted,
> # so even with changeroot, statvfs should still work fine.
> st = os.statvfs(self._mountpoint)
> - free_space = Size(bytes=st.f_bavail*st.f_frsize)
> + free_space = Size(st.f_bavail*st.f_frsize)
> else:
> # Free might be called even if the tmpfs mount has not been
> # mounted yet, in this case just return the size set for the
> mount.
> diff --git a/blivet/formats/prepboot.py b/blivet/formats/prepboot.py
> index 9bb8c56..73b8cee 100644
> --- a/blivet/formats/prepboot.py
> +++ b/blivet/formats/prepboot.py
> @@ -38,8 +38,8 @@ class PPCPRePBoot(DeviceFormat):
> partedFlag = PARTITION_PREP
> _formattable = True # can be formatted
> _linuxNative = True # for clearpart
> - _maxSize = Size(spec="10 MiB")
> - _minSize = Size(spec="4 MiB")
> + _maxSize = Size("10 MiB")
> + _minSize = Size("4 MiB")
>
> def __init__(self, *args, **kwargs):
> """
> diff --git a/blivet/formats/swap.py b/blivet/formats/swap.py
> index d7f5efb..5b1d0c5 100644
> --- a/blivet/formats/swap.py
> +++ b/blivet/formats/swap.py
> @@ -43,7 +43,7 @@ class SwapSpace(DeviceFormat):
> _linuxNative = True # for clearpart
>
> #see rhbz#744129 for details
> - _maxSize = Size(spec="128 GiB")
> + _maxSize = Size("128 GiB")
>
> def __init__(self, *args, **kwargs):
> """
> diff --git a/blivet/partitioning.py b/blivet/partitioning.py
> index 78956bc..abf9ace 100644
> --- a/blivet/partitioning.py
> +++ b/blivet/partitioning.py
> @@ -60,7 +60,7 @@ def _getCandidateDisks(storage):
> part = part.nextPartition()
> continue
>
> - if Size(bytes=part.getLength(unit="B")) >
> PartitionDevice.defaultSize:
> + if Size(part.getLength(unit="B")) > PartitionDevice.defaultSize:
> disks.append(disk)
> break
>
> @@ -132,9 +132,9 @@ def _schedulePartitions(storage, disks):
> log.error("no free space on disks %s", [d.name for d in disks])
> return
>
> - free = Size(bytes=all_free[0].getLength(unit="B"))
> + free = Size(all_free[0].getLength(unit="B"))
> if len(all_free) > 1:
> - free += Size(bytes=all_free[1].getLength(unit="B"))
> + free += Size(all_free[1].getLength(unit="B"))
>
> # The boot disk must be set at this point. See if any platform-specific
> # stage1 device we might allocate already exists on the boot disk.
> @@ -577,7 +577,7 @@ def getBestFreeSpaceRegion(disk, part_type, req_size,
> start=None,
>
> for free_geom in disk.getFreeSpaceRegions():
> log.debug("checking %d-%d (%s)", free_geom.start, free_geom.end,
> -
> Size(bytes=free_geom.getLength(unit="B")))
> +
> Size(free_geom.getLength(unit="B")))
> if start is not None and not free_geom.containsSector(start):
> log.debug("free region does not contain requested start sector")
> continue
> @@ -594,8 +594,8 @@ def getBestFreeSpaceRegion(disk, part_type, req_size,
> start=None,
> continue
>
> if boot:
> - max_boot = Size(spec="2 TiB")
> - free_start = Size(bytes=(free_geom.start *
> disk.device.sectorSize))
> + max_boot = Size("2 TiB")
> + free_start = Size(free_geom.start * disk.device.sectorSize)
> req_end = free_start + req_size
> if req_end > max_boot:
> log.debug("free range position would place boot req above
> %s",
> @@ -604,8 +604,8 @@ def getBestFreeSpaceRegion(disk, part_type, req_size,
> start=None,
>
> log.debug("current free range is %d-%d (%s)", free_geom.start,
> free_geom.end,
> -
> Size(bytes=free_geom.getLength(unit="B")))
> - free_size = Size(bytes=free_geom.getLength(unit="B"))
> +
> Size(free_geom.getLength(unit="B")))
> + free_size = Size(free_geom.getLength(unit="B"))
>
> # For boot partitions, we want the first suitable region we find.
> # For growable or extended partitions, we want the largest possible
> @@ -637,7 +637,7 @@ def sectorsToSize(sectors, sectorSize):
> :returns: the size
> :rtype: :class:`~.size.Size`
> """
> - return Size(bytes=(sectors * sectorSize))
> + return Size(sectors * sectorSize)
>
> def sizeToSectors(size, sectorSize):
> """ Convert size to length in sectors.
> @@ -717,7 +717,7 @@ def addPartition(disklabel, free, part_type, size,
> start=None, end=None):
> alignment unless a start sector is provided.
>
> """
> - sectorSize = Size(bytes=disklabel.partedDevice.sectorSize)
> + sectorSize = Size(disklabel.partedDevice.sectorSize)
> if start is not None:
> if end is None:
> end = start + sizeToSectors(size, sectorSize) - 1
> @@ -1113,7 +1113,7 @@ def allocatePartitions(storage, disks, partitions,
> freespace):
>
> # grow all growable requests
> disk_growth = 0 # in sectors
> - disk_sector_size =
> Size(bytes=disklabels[disk_path].partedDevice.sectorSize)
> + disk_sector_size =
> Size(disklabels[disk_path].partedDevice.sectorSize)
> for chunk in chunks:
> chunk.growRequests()
> # record the growth for this layout
> @@ -1162,7 +1162,7 @@ def allocatePartitions(storage, disks, partitions,
> freespace):
> use_disk = _disk
> log.debug("new free: %d-%d / %s", best.start,
> best.end,
> -
> Size(bytes=best.getLength(unit="B")))
> +
> Size(best.getLength(unit="B")))
> log.debug("new free allows for %d sectors of growth",
> growth)
> free = best
>
> @@ -1204,7 +1204,7 @@ def allocatePartitions(storage, disks, partitions,
> freespace):
> _part.req_start_sector,
> _part.req_end_sector)
> log.debug("created partition %s of %s and added it to %s",
> partition.getDeviceNodeName(),
> - Size(bytes=partition.getLength(unit="B")),
> + Size(partition.getLength(unit="B")),
> disklabel.device)
>
> # this one sets the name
> @@ -1265,7 +1265,7 @@ class PartitionRequest(Request):
> super(PartitionRequest, self).__init__(partition)
> self.base = partition.partedPartition.geometry.length # base
> sectors
>
> - sector_size =
> Size(bytes=partition.partedPartition.disk.device.sectorSize)
> + sector_size = Size(partition.partedPartition.disk.device.sectorSize)
>
> if partition.req_grow:
> limits = filter(lambda l: l > 0,
> @@ -1544,7 +1544,7 @@ class DiskChunk(Chunk):
>
> """
> self.geometry = geometry # parted.Geometry
> - self.sectorSize = Size(bytes=self.geometry.device.sectorSize)
> + self.sectorSize = Size(self.geometry.device.sectorSize)
> self.path = self.geometry.device.path
> super(DiskChunk, self).__init__(self.geometry.length,
> requests=requests)
>
> @@ -1622,7 +1622,7 @@ class DiskChunk(Chunk):
>
> # 2TB limit on bootable partitions, regardless of disklabel
> if req.device.req_bootable:
> - max_boot = sizeToSectors(Size(spec="2 TiB"), self.sectorSize)
> + max_boot = sizeToSectors(Size("2 TiB"), self.sectorSize)
> limits.append(max_boot - req_end)
>
> # request-specific maximum (see Request.__init__, above, for
> details)
> diff --git a/blivet/platform.py b/blivet/platform.py
> index 5315132..62eb9ac 100644
> --- a/blivet/platform.py
> +++ b/blivet/platform.py
> @@ -129,7 +129,7 @@ class Platform(object):
>
> def setDefaultPartitioning(self):
> """Return the default platform-specific partitioning information."""
> - return [PartSpec(mountpoint="/boot", size=Size(spec="500MiB"),
> + return [PartSpec(mountpoint="/boot", size=Size("500MiB"),
> weight=self.weight(mountpoint="/boot"))]
>
> def weight(self, fstype=None, mountpoint=None):
> @@ -167,7 +167,7 @@ class X86(Platform):
> def setDefaultPartitioning(self):
> """Return the default platform-specific partitioning information."""
> ret = Platform.setDefaultPartitioning(self)
> - ret.append(PartSpec(fstype="biosboot", size=Size(spec="1MiB"),
> + ret.append(PartSpec(fstype="biosboot", size=Size("1MiB"),
> weight=self.weight(fstype="biosboot")))
> return ret
>
> @@ -199,7 +199,7 @@ class EFI(Platform):
> def setDefaultPartitioning(self):
> ret = Platform.setDefaultPartitioning(self)
> ret.append(PartSpec(mountpoint="/boot/efi", fstype="efi",
> - size=Size(spec="20MiB"),
> maxSize=Size(spec="200MiB"),
> + size=Size("20MiB"), maxSize=Size("200MiB"),
> grow=True, weight=self.weight(fstype="efi")))
> return ret
>
> @@ -221,7 +221,7 @@ class MacEFI(EFI):
> def setDefaultPartitioning(self):
> ret = Platform.setDefaultPartitioning(self)
> ret.append(PartSpec(mountpoint="/boot/efi", fstype="macefi",
> - size=Size(spec="20MiB"),
> maxSize=Size(spec="200MiB"),
> + size=Size("20MiB"), maxSize=Size("200MiB"),
> grow=True,
> weight=self.weight(mountpoint="/boot/efi")))
> return ret
>
> @@ -238,7 +238,7 @@ class PPC(Platform):
>
> class IPSeriesPPC(PPC):
> _boot_stage1_format_types = ["prepboot"]
> - _boot_stage1_max_end = Size(spec="4 GiB")
> + _boot_stage1_max_end = Size("4 GiB")
> _boot_prep_description = N_("PReP Boot Partition")
> _boot_descriptions = {"partition": _boot_prep_description}
> _disklabel_types = ["msdos"]
> @@ -248,7 +248,7 @@ class IPSeriesPPC(PPC):
>
> def setDefaultPartitioning(self):
> ret = PPC.setDefaultPartitioning(self)
> - ret.append(PartSpec(fstype="prepboot", size=Size(spec="4MiB"),
> + ret.append(PartSpec(fstype="prepboot", size=Size("4MiB"),
> weight=self.weight(fstype="prepboot")))
> return ret
>
> @@ -273,7 +273,7 @@ class NewWorldPPC(PPC):
>
> def setDefaultPartitioning(self):
> ret = Platform.setDefaultPartitioning(self)
> - ret.append(PartSpec(fstype="appleboot", size=Size(spec="1MiB"),
> + ret.append(PartSpec(fstype="appleboot", size=Size("1MiB"),
> weight=self.weight(fstype="appleboot")))
> return ret
>
> @@ -308,7 +308,7 @@ class S390(Platform):
>
> def setDefaultPartitioning(self):
> """Return the default platform-specific partitioning information."""
> - return [PartSpec(mountpoint="/boot", size=Size(spec="500MiB"),
> + return [PartSpec(mountpoint="/boot", size=Size("500MiB"),
> weight=self.weight(mountpoint="/boot"), lv=True,
> singlePV=True)]
>
> @@ -357,11 +357,11 @@ class omapARM(ARM):
> def setDefaultPartitioning(self):
> """Return the ARM-OMAP platform-specific partitioning
> information."""
> ret = [PartSpec(mountpoint="/boot/uboot", fstype="vfat",
> - size=Size(spec="20MiB"),
> maxSize=Size(spec="200MiB"),
> + size=Size("20MiB"), maxSize=Size("200MiB"),
> grow=True,
> weight=self.weight(fstype="vfat",
> mountpoint="/boot/uboot"))]
> ret.append(PartSpec(mountpoint="/", fstype="ext4",
> - size=Size(spec="2GiB"),
> maxSize=Size(spec="3GiB"),
> + size=Size("2GiB"), maxSize=Size("3GiB"),
> weight=self.weight(mountpoint="/")))
> return ret
>
> diff --git a/blivet/size.py b/blivet/size.py
> index 02ae536..a317ad3 100644
> --- a/blivet/size.py
> +++ b/blivet/size.py
> @@ -28,7 +28,7 @@ from decimal import Decimal
> from decimal import InvalidOperation
> from decimal import ROUND_DOWN
>
> -from .errors import SizeParamsError, SizePlacesError
> +from .errors import SizePlacesError
> from .i18n import _, P_, N_
>
> # Container for size unit prefix information
> @@ -181,39 +181,32 @@ class Size(Decimal):
> decimal places.
> """
>
> - def __new__(cls, bytes=None, spec=None):
> - """ Initialize a new Size object. Must pass either bytes or spec,
> - but not both. The bytes parameter is a numerical value for the
> size
> - this object represents, in bytes. The spec parameter is a
> string
> + def __new__(cls, size):
> + """ Initialize a new Size object. Must pass a bytes or a spec value
> + for size. The bytes value is a numerical value for the size
> + this object represents, in bytes. The spec value is a string
> specification of the size using any of the size specifiers in
> the
> _decimalPrefixes or _binaryPrefixes lists combined with a 'b' or
> 'B'. For example, to specify 640 kilobytes, you could pass any
> of
> - these parameters:
> + these spec parameters:
>
> - spec="640kb"
> - spec="640 kb"
> - spec="640KB"
> - spec="640 KB"
> - spec="640 kilobytes"
> + "640kb"
> + "640 kb"
> + "640KB"
> + "640 KB"
> + "640 kilobytes"
>
> - If you want to use spec to pass a bytes value, you can use the
> - letter 'b' or 'B' or simply leave the specifier off and bytes
> - will be assumed.
> + If you want to use a spec value to represent a bytes value,
> + you can use the letter 'b' or 'B' or omit the size specifier.
> """
> - if bytes and spec:
> - raise SizeParamsError("only specify one parameter")
> -
> - if bytes is not None:
> - if isinstance(bytes, (int, long, float, Decimal)):
> - value = Decimal(bytes)
> - elif isinstance(bytes, Size):
> - value = Decimal(bytes.convertTo("b"))
> - else:
> - raise ValueError("invalid value for bytes param")
> - elif spec:
> - value = _parseSpec(spec)
> + if isinstance(size, (unicode, str)):
> + value = _parseSpec(size)
> + elif isinstance(size, (int, long, float, Decimal)):
> + value = Decimal(size)
> + elif isinstance(size, Size):
> + value = Decimal(size.convertTo("b"))
> else:
> - raise SizeParamsError("missing bytes= or spec=")
> + raise ValueError("invalid value for size")
What about appending the content of the value variable to the error message ?
Could be handy when debugging some garbage being passed to the Size constructor by mistake.
>
> # drop any partial byte
> value = value.to_integral_value(rounding=ROUND_DOWN)
> @@ -228,14 +221,14 @@ class Size(Decimal):
> return "Size('%s')" % self
>
> def __deepcopy__(self, memo):
> - return Size(bytes=self.convertTo(spec="b"))
> + return Size(self.convertTo(spec="b"))
>
> def __add__(self, other, context=None):
> - return Size(bytes=Decimal.__add__(self, other, context=context))
> + return Size(Decimal.__add__(self, other, context=context))
>
> # needed to make sum() work with Size arguments
> def __radd__(self, other, context=None):
> - return Size(bytes=Decimal.__radd__(self, other, context=context))
> + return Size(Decimal.__radd__(self, other, context=context))
>
> def __sub__(self, other, context=None):
> # subtraction is implemented using __add__ and negation, so we'll
> @@ -243,13 +236,13 @@ class Size(Decimal):
> return Decimal.__sub__(self, other, context=context)
>
> def __mul__(self, other, context=None):
> - return Size(bytes=Decimal.__mul__(self, other, context=context))
> + return Size(Decimal.__mul__(self, other, context=context))
>
> def __div__(self, other, context=None):
> - return Size(bytes=Decimal.__div__(self, other, context=context))
> + return Size(Decimal.__div__(self, other, context=context))
>
> def __mod__(self, other, context=None):
> - return Size(bytes=Decimal.__mod__(self, other, context=context))
> + return Size(Decimal.__mod__(self, other, context=context))
>
> def convertTo(self, spec="b"):
> """ Return the size in the units indicated by the specifier. The
> diff --git a/blivet/udev.py b/blivet/udev.py
> index 95ec4ca..06e6806 100644
> --- a/blivet/udev.py
> +++ b/blivet/udev.py
> @@ -396,15 +396,15 @@ def udev_device_get_vg_uuid(info):
> def udev_device_get_vg_size(info):
> # lvm's decmial precision is not configurable, so we tell it to use
> # KB.
> - return Size(spec="%s KiB" % info['LVM2_VG_SIZE'])
> + return Size("%s KiB" % info['LVM2_VG_SIZE'])
>
> def udev_device_get_vg_free(info):
> # lvm's decmial precision is not configurable, so we tell it to use
> # KB.
> - return Size(spec="%s KiB" % info['LVM2_VG_FREE'])
> + return Size("%s KiB" % info['LVM2_VG_FREE'])
>
> def udev_device_get_vg_extent_size(info):
> - return Size(spec="%s KiB" % info['LVM2_VG_EXTENT_SIZE'])
> + return Size("%s KiB" % info['LVM2_VG_EXTENT_SIZE'])
>
> def udev_device_get_vg_extent_count(info):
> return int(info['LVM2_VG_EXTENT_COUNT'])
> @@ -416,7 +416,7 @@ def udev_device_get_vg_pv_count(info):
> return int(info['LVM2_PV_COUNT'])
>
> def udev_device_get_pv_pe_start(info):
> - return Size(spec="%s KiB" % info['LVM2_PE_START'])
> + return Size("%s KiB" % info['LVM2_PE_START'])
>
> def udev_device_get_lv_name(info):
> return info['LVM2_LV_NAME']
> @@ -425,7 +425,7 @@ def udev_device_get_lv_uuid(info):
> return info['LVM2_LV_UUID']
>
> def udev_device_get_lv_size(info):
> - return Size(spec="%s KiB" % info['LVM2_LV_SIZE'])
> + return Size("%s KiB" % info['LVM2_LV_SIZE'])
>
> def udev_device_get_lv_attr(info):
> return info['LVM2_LV_ATTR']
> diff --git a/blivet/util.py b/blivet/util.py
> index d90b9e9..1fd5035 100644
> --- a/blivet/util.py
> +++ b/blivet/util.py
> @@ -138,12 +138,12 @@ def total_memory():
> lines = open("/proc/meminfo").readlines()
> for line in lines:
> if line.startswith("MemTotal:"):
> - mem = Size(spec="%s KiB" % line.split()[1])
> + mem = Size("%s KiB" % line.split()[1])
>
> # Because /proc/meminfo only gives us the MemTotal (total physical RAM
> # minus the kernel binary code), we need to round this up. Assuming
> # every machine has the total RAM MiB number divisible by 128. */
> - bs = Size(spec="128MiB")
> + bs = Size("128MiB")
> mem = (mem / bs + 1) * bs
> return mem
>
> diff --git a/tests/action_test.py b/tests/action_test.py
> index 23bc129..2ca312e 100644
> --- a/tests/action_test.py
> +++ b/tests/action_test.py
> @@ -36,7 +36,7 @@ class DeviceActionTestCase(StorageTestCase):
>
> for name in ["sda", "sdb", "sdc", "sdd"]:
> disk = self.newDevice(device_class=DiskDevice,
> - name=name, size=Size(spec="100 GiB"))
> + name=name, size=Size("100 GiB"))
> disk.format = self.newFormat("disklabel", path=disk.path,
> exists=True)
> self.storage.devicetree._addDevice(disk)
> @@ -47,20 +47,20 @@ class DeviceActionTestCase(StorageTestCase):
>
> sda1 = self.newDevice(device_class=PartitionDevice,
> exists=True, name="sda1", parents=[sda],
> - size=Size(spec="500 MiB"))
> + size=Size("500 MiB"))
> sda1.format = self.newFormat("ext4", mountpoint="/boot",
> device_instance=sda1,
> device=sda1.path, exists=True)
> self.storage.devicetree._addDevice(sda1)
>
> sda2 = self.newDevice(device_class=PartitionDevice,
> - size=Size(spec="99.5 GiB"), name="sda2",
> + size=Size("99.5 GiB"), name="sda2",
> parents=[sda], exists=True)
> sda2.format = self.newFormat("lvmpv", device=sda2.path, exists=True)
> self.storage.devicetree._addDevice(sda2)
>
> sdb1 = self.newDevice(device_class=PartitionDevice,
> - size=Size(spec="99.999 GiB"), name="sdb1",
> + size=Size("99.999 GiB"), name="sdb1",
> parents=[sdb], exists=True)
> sdb1.format = self.newFormat("lvmpv", device=sdb1.path, exists=True)
> self.storage.devicetree._addDevice(sdb1)
> @@ -72,7 +72,7 @@ class DeviceActionTestCase(StorageTestCase):
>
> lv_root = self.newDevice(device_class=LVMLogicalVolumeDevice,
> name="lv_root", parents=[vg],
> - size=Size(spec="160 GiB"), exists=True)
> + size=Size("160 GiB"), exists=True)
> lv_root.format = self.newFormat("ext4", mountpoint="/",
> device_instance=lv_root,
> device=lv_root.path, exists=True)
> @@ -80,7 +80,7 @@ class DeviceActionTestCase(StorageTestCase):
>
> lv_swap = self.newDevice(device_class=LVMLogicalVolumeDevice,
> name="lv_swap", parents=[vg],
> - size=Size(spec="4000 MiB"), exists=True)
> + size=Size("4000 MiB"), exists=True)
> lv_swap.format = self.newFormat("swap", device=lv_swap.path,
> device_instance=lv_swap,
> exists=True)
> @@ -126,12 +126,12 @@ class DeviceActionTestCase(StorageTestCase):
> self.assertNotEqual(sda, None, "failed to find disk 'sda'")
>
> sda1 = self.newDevice(device_class=PartitionDevice,
> - name="sda1", size=Size(spec="500 MiB"),
> + name="sda1", size=Size("500 MiB"),
> parents=[sda])
> self.scheduleCreateDevice(device=sda1)
>
> sda2 = self.newDevice(device_class=PartitionDevice,
> - name="sda2", size=Size(spec="100 GiB"),
> + name="sda2", size=Size("100 GiB"),
> parents=[sda])
> self.scheduleCreateDevice(device=sda2)
> fmt = self.newFormat("lvmpv", device=sda2.path)
> @@ -143,21 +143,21 @@ class DeviceActionTestCase(StorageTestCase):
>
> lv_root = self.newDevice(device_class=LVMLogicalVolumeDevice,
> name="lv_root", parents=[vg],
> - size=Size(spec="60 GiB"))
> + size=Size("60 GiB"))
> self.scheduleCreateDevice(device=lv_root)
> fmt = self.newFormat("ext4", device=lv_root.path, mountpoint="/")
> self.scheduleCreateFormat(device=lv_root, fmt=fmt)
>
> lv_swap = self.newDevice(device_class=LVMLogicalVolumeDevice,
> name="lv_swap", parents=[vg],
> - size=Size(spec="4000 MiB"))
> + size=Size("4000 MiB"))
> self.scheduleCreateDevice(device=lv_swap)
> fmt = self.newFormat("swap", device=lv_swap.path)
> self.scheduleCreateFormat(device=lv_swap, fmt=fmt)
>
> sda3 = self.newDevice(device_class=PartitionDevice,
> name="sda3", parents=[sda],
> - size=Size(spec="40 GiB"))
> + size=Size("40 GiB"))
> self.scheduleCreateDevice(device=sda3)
> fmt = self.newFormat("mdmember", device=sda3.path)
> self.scheduleCreateFormat(device=sda3, fmt=fmt)
> @@ -167,7 +167,7 @@ class DeviceActionTestCase(StorageTestCase):
>
> sdb1 = self.newDevice(device_class=PartitionDevice,
> name="sdb1", parents=[sdb],
> - size=Size(spec="40 GiB"))
> + size=Size("40 GiB"))
> self.scheduleCreateDevice(device=sdb1)
> fmt = self.newFormat("mdmember", device=sdb1.path,)
> self.scheduleCreateFormat(device=sdb1, fmt=fmt)
> @@ -191,11 +191,11 @@ class DeviceActionTestCase(StorageTestCase):
> # XXX resizable depends on existence, so this is covered implicitly
> sdd = self.storage.devicetree.getDeviceByName("sdd")
> p = self.newDevice(device_class=PartitionDevice,
> - name="sdd1", size=Size(spec="32 GiB"),
> parents=[sdd])
> + name="sdd1", size=Size("32 GiB"), parents=[sdd])
> self.failUnlessRaises(ValueError,
> ActionResizeDevice,
> p,
> - p.size + Size(spec="7232 MiB"))
> + p.size + Size("7232 MiB"))
>
> # instantiation of device resize action for non-resizable device
> # should fail
> @@ -204,7 +204,7 @@ class DeviceActionTestCase(StorageTestCase):
> self.failUnlessRaises(ValueError,
> ActionResizeDevice,
> vg,
> - vg.size + Size(spec="32 MiB"))
> + vg.size + Size("32 MiB"))
>
> # instantiation of format resize action for non-resizable format
> type
> # should fail
> @@ -213,7 +213,7 @@ class DeviceActionTestCase(StorageTestCase):
> self.failUnlessRaises(ValueError,
> ActionResizeFormat,
> lv_swap,
> - lv_swap.size + Size(spec="32 MiB"))
> + lv_swap.size + Size("32 MiB"))
>
> # instantiation of format resize action for non-existent format
> # should fail
> @@ -223,7 +223,7 @@ class DeviceActionTestCase(StorageTestCase):
> self.failUnlessRaises(ValueError,
> ActionResizeFormat,
> lv_root,
> - lv_root.size - Size(spec="1000 MiB"))
> + lv_root.size - Size("1000 MiB"))
> lv_root.format.exists = True
>
> # instantiation of device create action for existing device should
> @@ -274,7 +274,7 @@ class DeviceActionTestCase(StorageTestCase):
> sdc = self.storage.devicetree.getDeviceByName("sdc")
> self.assertNotEqual(sdc, None)
> sdc1 = self.newDevice(device_class=PartitionDevice,
> - name="sdc1", size=Size(spec="100 GiB"),
> + name="sdc1", size=Size("100 GiB"),
> parents=[sdc], exists=True)
>
> sdc1_format = self.newFormat("ext2", device=sdc1.path,
> mountpoint="/")
> @@ -287,13 +287,13 @@ class DeviceActionTestCase(StorageTestCase):
> sdc1_format.exists = True
>
> resize_sdc1_format = ActionResizeFormat(sdc1,
> - sdc1.size - Size(spec="10
> GiB"))
> + sdc1.size - Size("10 GiB"))
> resize_sdc1_format.apply()
> self.failUnlessRaises(blivet.errors.DeviceTreeError,
> self.storage.devicetree.registerAction,
> resize_sdc1_format)
>
> - resize_sdc1 = ActionResizeDevice(sdc1, sdc1.size - Size(spec="10
> GiB"))
> + resize_sdc1 = ActionResizeDevice(sdc1, sdc1.size - Size("10 GiB"))
> resize_sdc1.apply()
> self.failUnlessRaises(blivet.errors.DeviceTreeError,
> self.storage.devicetree.registerAction,
> @@ -330,7 +330,7 @@ class DeviceActionTestCase(StorageTestCase):
> sdd1 = self.storage.devicetree.getDeviceByName("sdd1")
> self.assertEqual(sdd1, None)
> sdd1 = self.newDevice(device_class=PartitionDevice,
> - name="sdd1", size=Size(spec="100 GiB"),
> + name="sdd1", size=Size("100 GiB"),
> parents=[sdd])
> a = ActionCreateDevice(sdd1)
> self.storage.devicetree.registerAction(a)
> @@ -344,7 +344,7 @@ class DeviceActionTestCase(StorageTestCase):
> self.assertNotEqual(sdc, None)
>
> sdc1 = self.newDevice(device_class=PartitionDevice,
> - name="sdc1", parents=[sdc], size=Size(spec="40
> GiB"))
> + name="sdc1", parents=[sdc], size=Size("40
> GiB"))
>
> # ActionCreateDevice
> #
> @@ -376,9 +376,9 @@ class DeviceActionTestCase(StorageTestCase):
> # device
> sdc1.exists = True
> sdc1.format.exists = True
> - resize_format_1 = ActionResizeFormat(sdc1, sdc1.size -
> Size(spec="1000 MiB"))
> + resize_format_1 = ActionResizeFormat(sdc1, sdc1.size - Size("1000
> MiB"))
> resize_format_1.apply()
> - resize_format_2 = ActionResizeFormat(sdc1, sdc1.size -
> Size(spec="5000 MiB"))
> + resize_format_2 = ActionResizeFormat(sdc1, sdc1.size - Size("5000
> MiB"))
> resize_format_2.apply()
> self.assertEqual(resize_format_2.obsoletes(resize_format_1), True)
> self.assertEqual(resize_format_1.obsoletes(resize_format_2), False)
> @@ -401,10 +401,10 @@ class DeviceActionTestCase(StorageTestCase):
> sdc1.exists = True
> sdc1.format.exists = True
> resize_device_1 = ActionResizeDevice(sdc1,
> - sdc1.size + Size(spec="10
> GiB"))
> + sdc1.size + Size("10 GiB"))
> resize_device_1.apply()
> resize_device_2 = ActionResizeDevice(sdc1,
> - sdc1.size - Size(spec="10
> GiB"))
> + sdc1.size - Size("10 GiB"))
> resize_device_2.apply()
> self.assertEqual(resize_device_2.obsoletes(resize_device_1), True)
> self.assertEqual(resize_device_1.obsoletes(resize_device_2), False)
> @@ -442,9 +442,9 @@ class DeviceActionTestCase(StorageTestCase):
> sda1 = self.storage.devicetree.getDeviceByName("sda1")
> self.assertNotEqual(sda1, None)
> resize_sda1_format = ActionResizeFormat(sda1,
> - sda1.size - Size(spec="50
> MiB"))
> + sda1.size - Size("50 MiB"))
> resize_sda1_format.apply()
> - resize_sda1 = ActionResizeDevice(sda1, sda1.size - Size(spec="50
> MiB"))
> + resize_sda1 = ActionResizeDevice(sda1, sda1.size - Size("50 MiB"))
> resize_sda1.apply()
> destroy_sda1_format = ActionDestroyFormat(sda1)
> destroy_sda1_format.apply()
> @@ -463,12 +463,12 @@ class DeviceActionTestCase(StorageTestCase):
> self.assertNotEqual(sda, None, "failed to find disk 'sda'")
>
> sda1 = self.newDevice(device_class=PartitionDevice,
> - name="sda1", size=Size(spec="500 MiB"),
> + name="sda1", size=Size("500 MiB"),
> parents=[sda])
> self.scheduleCreateDevice(device=sda1)
>
> sda2 = self.newDevice(device_class=PartitionDevice,
> - name="sda2", size=Size(spec="100 GiB"),
> + name="sda2", size=Size("100 GiB"),
> parents=[sda])
> self.scheduleCreateDevice(device=sda2)
> fmt = self.newFormat("lvmpv", device=sda2.path)
> @@ -480,14 +480,14 @@ class DeviceActionTestCase(StorageTestCase):
>
> lv_root = self.newDevice(device_class=LVMLogicalVolumeDevice,
> name="lv_root", parents=[vg],
> - size=Size(spec="60 GiB"))
> + size=Size("60 GiB"))
> self.scheduleCreateDevice(device=lv_root)
> fmt = self.newFormat("ext4", device=lv_root.path, mountpoint="/")
> self.scheduleCreateFormat(device=lv_root, fmt=fmt)
>
> lv_swap = self.newDevice(device_class=LVMLogicalVolumeDevice,
> name="lv_swap", parents=[vg],
> - size=Size(spec="4 GiB"))
> + size=Size("4 GiB"))
> self.scheduleCreateDevice(device=lv_swap)
> fmt = self.newFormat("swap", device=lv_swap.path)
> self.scheduleCreateFormat(device=lv_swap, fmt=fmt)
> @@ -496,7 +496,7 @@ class DeviceActionTestCase(StorageTestCase):
> # which will test pruning. the whole mess should reduce to nothing
> sda3 = self.newDevice(device_class=PartitionDevice,
> name="sda3", parents=[sda],
> - size=Size(spec="40 GiB"))
> + size=Size("40 GiB"))
> self.scheduleCreateDevice(device=sda3)
> fmt = self.newFormat("mdmember", device=sda3.path)
> self.scheduleCreateFormat(device=sda3, fmt=fmt)
> @@ -506,7 +506,7 @@ class DeviceActionTestCase(StorageTestCase):
>
> sdb1 = self.newDevice(device_class=PartitionDevice,
> name="sdb1", parents=[sdb],
> - size=Size(spec="40 GiB"))
> + size=Size("40 GiB"))
> self.scheduleCreateDevice(device=sdb1)
> fmt = self.newFormat("mdmember", device=sdb1.path,)
> self.scheduleCreateFormat(device=sdb1, fmt=fmt)
> @@ -558,13 +558,13 @@ class DeviceActionTestCase(StorageTestCase):
> # shrinks the device's format
> lv_root =
> self.storage.devicetree.getDeviceByName("VolGroup-lv_root")
> self.assertNotEqual(lv_root, None)
> - lv_root.format._minInstanceSize = Size(spec="10 MiB")
> + lv_root.format._minInstanceSize = Size("10 MiB")
> lv_root.format._targetSize = lv_root.format._minInstanceSize
> shrink_format = ActionResizeFormat(lv_root,
> - lv_root.size - Size(spec="5
> GiB"))
> + lv_root.size - Size("5 GiB"))
> shrink_format.apply()
> shrink_device = ActionResizeDevice(lv_root,
> - lv_root.size - Size(spec="5
> GiB"))
> + lv_root.size - Size("5 GiB"))
> shrink_device.apply()
> self.assertEqual(shrink_device.requires(shrink_format), True)
> self.assertEqual(shrink_format.requires(shrink_device), False)
> @@ -576,10 +576,10 @@ class DeviceActionTestCase(StorageTestCase):
> # grows the device
> orig_size = lv_root.currentSize
> grow_device = ActionResizeDevice(lv_root,
> - orig_size + Size(spec="100 MiB"))
> + orig_size + Size("100 MiB"))
> grow_device.apply()
> grow_format = ActionResizeFormat(lv_root,
> - orig_size + Size(spec="100 MiB"))
> + orig_size + Size("100 MiB"))
> grow_format.apply()
> self.assertEqual(grow_format.requires(grow_device), True)
> self.assertEqual(grow_device.requires(grow_format), False)
> @@ -589,20 +589,20 @@ class DeviceActionTestCase(StorageTestCase):
> sda = self.storage.devicetree.getDeviceByName("sda")
> sdb = self.storage.devicetree.getDeviceByName("sdb")
> sda1 = self.newDevice(device_class=PartitionDevice, name="sda1",
> - size=Size(spec="500 MiB"), parents=[sda])
> + size=Size("500 MiB"), parents=[sda])
> sda1_format = self.newFormat("ext4", mountpoint="/boot",
> device=sda1.path)
> self.scheduleCreateDevice(device=sda1)
> self.scheduleCreateFormat(device=sda1, fmt=sda1_format)
>
> sda2 = self.newDevice(device_class=PartitionDevice, name="sda2",
> - size=Size(spec="99.5 GiB"), parents=[sda])
> + size=Size("99.5 GiB"), parents=[sda])
> sda2_format = self.newFormat("lvmpv", device=sda2.path)
> self.scheduleCreateDevice(device=sda2)
> self.scheduleCreateFormat(device=sda2, fmt=sda2_format)
>
> sdb1 = self.newDevice(device_class=PartitionDevice, name="sdb1",
> - size=Size(spec="100 GiB"), parents=[sdb])
> + size=Size("100 GiB"), parents=[sdb])
> sdb1_format = self.newFormat("lvmpv", device=sdb1.path)
> self.scheduleCreateDevice(device=sdb1)
> self.scheduleCreateFormat(device=sdb1, fmt=sdb1_format)
> @@ -613,14 +613,14 @@ class DeviceActionTestCase(StorageTestCase):
>
> lv_root = self.newDevice(device_class=LVMLogicalVolumeDevice,
> name="lv_root", parents=[vg],
> - size=Size(spec="160 GiB"))
> + size=Size("160 GiB"))
> self.scheduleCreateDevice(device=lv_root)
> fmt = self.newFormat("ext4", device=lv_root.path, mountpoint="/")
> self.scheduleCreateFormat(device=lv_root, fmt=fmt)
>
> lv_swap = self.newDevice(device_class=LVMLogicalVolumeDevice,
> name="lv_swap", parents=[vg],
> - size=Size(spec="4 GiB"))
> + size=Size("4 GiB"))
> self.scheduleCreateDevice(device=lv_swap)
> fmt = self.newFormat("swap", device=lv_swap.path)
> self.scheduleCreateFormat(device=lv_swap, fmt=fmt)
> @@ -675,12 +675,12 @@ class DeviceActionTestCase(StorageTestCase):
> self.assertNotEqual(sdc, None)
>
> sdc1 = self.newDevice(device_class=PartitionDevice, name="sdc1",
> - parents=[sdc], size=Size(spec="50 GiB"))
> + parents=[sdc], size=Size("50 GiB"))
> create_sdc1 = self.scheduleCreateDevice(device=sdc1)
> self.assertEqual(isinstance(create_sdc1, ActionCreateDevice), True)
>
> sdc2 = self.newDevice(device_class=PartitionDevice, name="sdc2",
> - parents=[sdc], size=Size(spec="50 GiB"))
> + parents=[sdc], size=Size("50 GiB"))
> create_sdc2 = self.scheduleCreateDevice(device=sdc2)
> self.assertEqual(isinstance(create_sdc2, ActionCreateDevice), True)
>
> @@ -712,13 +712,13 @@ class DeviceActionTestCase(StorageTestCase):
> self.assertNotEqual(sdd, None)
>
> sdc1 = self.newDevice(device_class=PartitionDevice, name="sdc1",
> - parents=[sdc], size=Size(spec="40 GiB"))
> + parents=[sdc], size=Size("40 GiB"))
> self.scheduleCreateDevice(device=sdc1)
> fmt = self.newFormat("mdmember", device=sdc1.path)
> self.scheduleCreateFormat(device=sdc1, fmt=fmt)
>
> sdd1 = self.newDevice(device_class=PartitionDevice, name="sdd1",
> - parents=[sdd], size=Size(spec="40 GiB"))
> + parents=[sdd], size=Size("40 GiB"))
> self.scheduleCreateDevice(device=sdd1)
> fmt = self.newFormat("mdmember", device=sdd1.path,)
> self.scheduleCreateFormat(device=sdd1, fmt=fmt)
> @@ -749,11 +749,11 @@ class DeviceActionTestCase(StorageTestCase):
> # numbered partition, eg: destroy sda2 before destroying sda1
> self.destroyAllDevices(disks=["sdc", "sdd"])
> sdc1 = self.newDevice(device_class=PartitionDevice, name="sdc1",
> - parents=[sdc], size=Size(spec="50 GiB"))
> + parents=[sdc], size=Size("50 GiB"))
> self.scheduleCreateDevice(device=sdc1)
>
> sdc2 = self.newDevice(device_class=PartitionDevice, name="sdc2",
> - parents=[sdc], size=Size(spec="40 GiB"))
> + parents=[sdc], size=Size("40 GiB"))
> self.scheduleCreateDevice(device=sdc2)
>
> destroy_sdc1 = self.scheduleDestroyDevice(device=sdc1)
> @@ -768,7 +768,7 @@ class DeviceActionTestCase(StorageTestCase):
> self.assertNotEqual(sdd, None)
>
> sdc1 = self.newDevice(device_class=PartitionDevice, name="sdc1",
> - parents=[sdc], size=Size(spec="50 GiB"))
> + parents=[sdc], size=Size("50 GiB"))
> create_pv = self.scheduleCreateDevice(device=sdc1)
> fmt = self.newFormat("lvmpv", device=sdc1.path)
> create_pv_format = self.scheduleCreateFormat(device=sdc1, fmt=fmt)
> @@ -778,7 +778,7 @@ class DeviceActionTestCase(StorageTestCase):
> create_vg = self.scheduleCreateDevice(device=testvg)
> testlv = self.newDevice(device_class=LVMLogicalVolumeDevice,
> name="testlv", parents=[testvg],
> - size=Size(spec="30 GiB"))
> + size=Size("30 GiB"))
> create_lv = self.scheduleCreateDevice(device=testlv)
> fmt = self.newFormat("ext4", device=testlv.path)
> create_lv_format = self.scheduleCreateFormat(device=testlv, fmt=fmt)
> @@ -804,14 +804,14 @@ class DeviceActionTestCase(StorageTestCase):
> self.destroyAllDevices(disks=["sdc", "sdd"])
> sdc1 = self.newDevice(device_class=PartitionDevice, exists=True,
> name="sdc1", parents=[sdc],
> - size=Size(spec="50 GiB"))
> + size=Size("50 GiB"))
> sdc1.format = self.newFormat("lvmpv", device=sdc1.path, exists=True,
> device_instance=sdc1)
> testvg = self.newDevice(device_class=LVMVolumeGroupDevice,
> exists=True,
> name="testvg", parents=[sdc1],
> - size=Size(spec="50 GiB"))
> + size=Size("50 GiB"))
> testlv = self.newDevice(device_class=LVMLogicalVolumeDevice,
> - exists=True, size=Size(spec="30 GiB"),
> + exists=True, size=Size("30 GiB"),
> name="testlv", parents=[testvg])
> testlv.format = self.newFormat("ext4", device=testlv.path,
> exists=True, device_instance=testlv)
> @@ -823,12 +823,12 @@ class DeviceActionTestCase(StorageTestCase):
> sdc1.format._resizable = True # override lvmpv.resizable
> sdc1.exists = True
> sdc1.format.exists = True
> - grow_pv = ActionResizeDevice(sdc1, sdc1.size + Size(spec="10 GiB"))
> + grow_pv = ActionResizeDevice(sdc1, sdc1.size + Size("10 GiB"))
> grow_pv.apply()
> - grow_lv = ActionResizeDevice(testlv, testlv.size + Size(spec="5
> GiB"))
> + grow_lv = ActionResizeDevice(testlv, testlv.size + Size("5 GiB"))
> grow_lv.apply()
> grow_lv_format = ActionResizeFormat(testlv,
> - testlv.size + Size(spec="5
> GiB"))
> + testlv.size + Size("5 GiB"))
> grow_lv_format.apply()
> sdc1.exists = False
> sdc1.format.exists = False
> @@ -869,14 +869,14 @@ class DeviceActionTestCase(StorageTestCase):
> # an action that resizes a device should require an action that
> # shrinks a device that depends on the first action's device, eg:
> # shrink LV before resizing VG or PV devices
> - testlv.format._minInstanceSize = Size(spec="10 MiB")
> + testlv.format._minInstanceSize = Size("10 MiB")
> testlv.format._targetSize = testlv.format._minInstanceSize
> shrink_lv = ActionResizeDevice(testlv,
> - testlv.size - Size(spec="10 GiB"))
> + testlv.size - Size("10 GiB"))
> shrink_lv.apply()
> sdc1.exists = True
> sdc1.format.exists = True
> - shrink_pv = ActionResizeDevice(sdc1, sdc1.size - Size(spec="5 GiB"))
> + shrink_pv = ActionResizeDevice(sdc1, sdc1.size - Size("5 GiB"))
> shrink_pv.apply()
> sdc1.exists = False
> sdc1.format.exists = False
> @@ -922,7 +922,7 @@ class DeviceActionTestCase(StorageTestCase):
> # ActionCreateFormat
> # an action that creates a format on a device should require an
> action
> # that resizes the device that will contain the format
> - grow_lv = ActionResizeDevice(testlv, testlv.size + Size(spec="1
> GiB"))
> + grow_lv = ActionResizeDevice(testlv, testlv.size + Size("1 GiB"))
> fmt = self.newFormat("msdos", device=testlv.path)
> format_lv = ActionCreateFormat(testlv, fmt)
> self.assertEqual(format_lv.requires(grow_lv), True)
> @@ -945,7 +945,7 @@ class DeviceActionTestCase(StorageTestCase):
> self.assertEqual(destroy_lv_format.requires(destroy_pv_format),
> False)
>
> sdc2 = self.newDevice(device_class=PartitionDevice, name="sdc2",
> - size=Size(spec="5 GiB"), parents=[sdc])
> + size=Size("5 GiB"), parents=[sdc])
> create_sdc2 = self.scheduleCreateDevice(device=sdc2)
>
> # create actions should always require destroy actions -- even for
> @@ -961,11 +961,11 @@ class DeviceActionTestCase(StorageTestCase):
> lv_root =
> self.storage.devicetree.getDeviceByName("VolGroup-lv_root")
>
> # ActionResizeFormat
> - lv_root.format._minInstanceSize = Size(spec="10 MiB")
> + lv_root.format._minInstanceSize = Size("10 MiB")
> lv_root.format._size = lv_root.size
> lv_root.format._targetSize = lv_root.size
> original_format_size = lv_root.format.currentSize
> - target_size = lv_root.size - Size(spec="1 GiB")
> + target_size = lv_root.size - Size("1 GiB")
> action = ActionResizeFormat(lv_root, target_size)
> self.assertEqual(lv_root.format.size, original_format_size)
> action.apply()
> @@ -1035,20 +1035,20 @@ class DeviceActionTestCase(StorageTestCase):
> #
> sda1 = self.newDevice(device_class=PartitionDevice,
> exists=True, name="sda1", parents=[sda],
> - size=Size(spec="500 MiB"))
> + size=Size("500 MiB"))
> sda1.format = self.newFormat("ext4", mountpoint="/boot",
> device_instance=sda1,
> device=sda1.path, exists=True)
> self.storage.devicetree._addDevice(sda1)
>
> sda2 = self.newDevice(device_class=PartitionDevice,
> - size=Size(spec="99.5 GiB"), name="sda2",
> + size=Size("99.5 GiB"), name="sda2",
> parents=[sda], exists=True)
> sda2.format = self.newFormat("lvmpv", device=sda2.path, exists=True)
> self.storage.devicetree._addDevice(sda2)
>
> sdb1 = self.newDevice(device_class=PartitionDevice,
> - size=Size(spec="99.999 GiB"), name="sdb1",
> + size=Size("99.999 GiB"), name="sdb1",
> parents=[sdb], exists=True)
> sdb1.format = self.newFormat("lvmpv", device=sdb1.path, exists=True)
> self.storage.devicetree._addDevice(sdb1)
> @@ -1060,7 +1060,7 @@ class DeviceActionTestCase(StorageTestCase):
>
> lv_root = self.newDevice(device_class=LVMLogicalVolumeDevice,
> name="lv_root", parents=[vg],
> - size=Size(spec="160 GiB"), exists=True)
> + size=Size("160 GiB"), exists=True)
> lv_root.format = self.newFormat("ext4", mountpoint="/",
> device_instance=lv_root,
> device=lv_root.path, exists=True)
> @@ -1068,7 +1068,7 @@ class DeviceActionTestCase(StorageTestCase):
>
> lv_swap = self.newDevice(device_class=LVMLogicalVolumeDevice,
> name="lv_swap", parents=[vg],
> - size=Size(spec="4000 MiB"), exists=True)
> + size=Size("4000 MiB"), exists=True)
> lv_swap.format = self.newFormat("swap", device=lv_swap.path,
> device_instance=lv_swap,
> exists=True)
> @@ -1079,7 +1079,7 @@ class DeviceActionTestCase(StorageTestCase):
> #
> sdc = self.storage.devicetree.getDeviceByName("sdc")
> sdc1 = self.newDevice(device_class=PartitionDevice, name="sdc1",
> - size=Size(spec="50 GiB"), parents=[sdc])
> + size=Size("50 GiB"), parents=[sdc])
> sdc1_format = self.newFormat("lvmpv", device=sdc1.path)
> create_sdc1 = self.scheduleCreateDevice(device=sdc1)
> create_sdc1_format = self.scheduleCreateFormat(device=sdc1,
> @@ -1097,7 +1097,7 @@ class DeviceActionTestCase(StorageTestCase):
>
> new_lv = self.newDevice(device_class=LVMLogicalVolumeDevice,
> name="newlv", parents=[vg],
> - size=Size(spec="20 GiB"))
> + size=Size("20 GiB"))
> create_new_lv = self.scheduleCreateDevice(device=new_lv)
> new_lv_format = self.newFormat("xfs", device=new_lv.path)
> create_new_lv_format = self.scheduleCreateFormat(device=new_lv,
> @@ -1134,7 +1134,7 @@ class DeviceActionTestCase(StorageTestCase):
> self.assertEqual(remove_sdb1.obsoletes(add_sdb1), True)
>
> sdc2 = self.newDevice(device_class=PartitionDevice, name="sdc2",
> - size=Size(spec="5 GiB"), parents=[sdc])
> + size=Size("5 GiB"), parents=[sdc])
> create_sdc2 = self.scheduleCreateDevice(device=sdc2)
>
> # destroy/resize/create sequencing does not apply to container
> actions
> diff --git a/tests/devicefactory_test.py b/tests/devicefactory_test.py
> index 6b06137..28fa079 100644
> --- a/tests/devicefactory_test.py
> +++ b/tests/devicefactory_test.py
> @@ -18,11 +18,11 @@ class MDFactoryTestCase(unittest.TestCase):
> self.b = blivet.Blivet()
> self.factory1 = devicefactory.get_device_factory(self.b,
> devicefactory.DEVICE_TYPE_MD,
> - Size(spec="1 GiB"))
> + Size("1 GiB"))
>
> self.factory2 = devicefactory.get_device_factory(self.b,
> devicefactory.DEVICE_TYPE_MD,
> - Size(spec="1 GiB"),
> + Size("1 GiB"),
> raid_level=0)
>
> def testMDFactory(self):
> diff --git a/tests/devicelibs_test/lvm_test.py
> b/tests/devicelibs_test/lvm_test.py
> index 5bbd259..ec82587 100755
> --- a/tests/devicelibs_test/lvm_test.py
> +++ b/tests/devicelibs_test/lvm_test.py
> @@ -13,16 +13,16 @@ class LVMTestCase(unittest.TestCase):
> def testGetPossiblePhysicalExtents(self):
> # pass
> self.assertEqual(lvm.getPossiblePhysicalExtents(),
> - map(lambda power: Size(spec="%d KiB" % 2**power),
> + map(lambda power: Size("%d KiB" % 2**power),
> xrange(0, 25)))
>
> def testClampSize(self):
> # pass
> - self.assertEqual(lvm.clampSize(Size(spec="10 MiB"), Size(spec="4
> MiB")),
> - Size(spec="8 MiB"))
> - self.assertEqual(lvm.clampSize(Size(spec="10 MiB"), Size(spec="4
> MiB"),
> + self.assertEqual(lvm.clampSize(Size("10 MiB"), Size("4 MiB")),
> + Size("8 MiB"))
> + self.assertEqual(lvm.clampSize(Size("10 MiB"), Size("4 MiB"),
> True),
> - Size(spec="12 MiB"))
> + Size("12 MiB"))
>
> # FIXME: Some of these tests expect behavior that is not entirely correct.
> #
> @@ -87,36 +87,36 @@ class LVMAsRootTestCase(baseclass.DevicelibsTestCase):
> ##
> # pass
> for dev in self._loopMap.values():
> - self.assertEqual(lvm.pvresize(dev, Size(spec="50MiB")), None)
> - self.assertEqual(lvm.pvresize(dev, Size(spec="100MiB")), None)
> + self.assertEqual(lvm.pvresize(dev, Size("50MiB")), None)
> + self.assertEqual(lvm.pvresize(dev, Size("100MiB")), None)
>
> # fail
> self.assertRaisesRegexp(LVMError,
> "pvresize failed",
> lvm.pvresize,
> - "/not/existing/device", Size(spec="50MiB"))
> + "/not/existing/device", Size("50MiB"))
>
> ##
> ## vgcreate
> ##
> # pass
> - self.assertEqual(lvm.vgcreate(self._vg_name, [_LOOP_DEV0,
> _LOOP_DEV1], Size(spec="4MiB")), None)
> + self.assertEqual(lvm.vgcreate(self._vg_name, [_LOOP_DEV0,
> _LOOP_DEV1], Size("4MiB")), None)
>
> # fail
> self.assertRaisesRegexp(LVMError,
> "vgcreate failed",
> lvm.vgcreate,
> - "another-vg", ["/not/existing/device"], Size(spec="4MiB"))
> + "another-vg", ["/not/existing/device"], Size("4MiB"))
> # vg already exists
> self.assertRaisesRegexp(LVMError,
> "vgcreate failed",
> lvm.vgcreate,
> - self._vg_name, [_LOOP_DEV0], Size(spec="4MiB"))
> + self._vg_name, [_LOOP_DEV0], Size("4MiB"))
> # pe size must be power of 2
> self.assertRaisesRegexp(LVMError,
> "vgcreate failed",
> lvm.vgcreate,
> - "another-vg", [_LOOP_DEV0], Size(spec="5MiB"))
> + "another-vg", [_LOOP_DEV0], Size("5MiB"))
>
> ##
> ## vgdeactivate
> @@ -169,10 +169,10 @@ class LVMAsRootTestCase(baseclass.DevicelibsTestCase):
> ## lvcreate
> ##
> # pass
> - self.assertEqual(lvm.lvcreate(self._vg_name, self._lv_name,
> Size(spec="10MiB")), None)
> + self.assertEqual(lvm.lvcreate(self._vg_name, self._lv_name,
> Size("10MiB")), None)
>
> # fail
> - self.assertRaises(LVMError, lvm.lvcreate, "wrong-vg-name",
> "another-lv", Size(spec="10MiB"))
> + self.assertRaises(LVMError, lvm.lvcreate, "wrong-vg-name",
> "another-lv", Size("10MiB"))
>
> ##
> ## lvdeactivate
> @@ -189,14 +189,14 @@ class LVMAsRootTestCase(baseclass.DevicelibsTestCase):
> ## lvresize
> ##
> # pass
> - self.assertEqual(lvm.lvresize(self._vg_name, self._lv_name,
> Size(spec="60MiB")), None)
> + self.assertEqual(lvm.lvresize(self._vg_name, self._lv_name,
> Size("60MiB")), None)
>
> # fail
> - self.assertRaises(LVMError, lvm.lvresize, self._vg_name,
> "wrong-lv-name", Size(spec="80MiB"))
> - self.assertRaises(LVMError, lvm.lvresize, "wrong-vg-name",
> self._lv_name, Size(spec="80MiB"))
> - self.assertRaises(LVMError, lvm.lvresize, "wrong-vg-name",
> "wrong-lv-name", Size(spec="80MiB"))
> + self.assertRaises(LVMError, lvm.lvresize, self._vg_name,
> "wrong-lv-name", Size("80MiB"))
> + self.assertRaises(LVMError, lvm.lvresize, "wrong-vg-name",
> self._lv_name, Size("80MiB"))
> + self.assertRaises(LVMError, lvm.lvresize, "wrong-vg-name",
> "wrong-lv-name", Size("80MiB"))
> # changing to same size
> - self.assertRaises(LVMError, lvm.lvresize, self._vg_name,
> self._lv_name, Size(spec="60MiB"))
> + self.assertRaises(LVMError, lvm.lvresize, self._vg_name,
> self._lv_name, Size("60MiB"))
>
> ##
> ## lvactivate
> diff --git a/tests/devicelibs_test/mdraid_test.py
> b/tests/devicelibs_test/mdraid_test.py
> index fbb6e43..8de5414 100755
> --- a/tests/devicelibs_test/mdraid_test.py
> +++ b/tests/devicelibs_test/mdraid_test.py
> @@ -27,24 +27,24 @@ class MDRaidTestCase(unittest.TestCase):
> ##
> ## get_raid_superblock_size
> ##
> - self.assertEqual(mdraid.get_raid_superblock_size(Size(spec="256
> GiB")),
> - Size(spec="128 MiB"))
> - self.assertEqual(mdraid.get_raid_superblock_size(Size(spec="128
> GiB")),
> - Size(spec="128 MiB"))
> - self.assertEqual(mdraid.get_raid_superblock_size(Size(spec="64
> GiB")),
> - Size(spec="64 MiB"))
> - self.assertEqual(mdraid.get_raid_superblock_size(Size(spec="63
> GiB")),
> - Size(spec="32 MiB"))
> - self.assertEqual(mdraid.get_raid_superblock_size(Size(spec="10
> GiB")),
> - Size(spec="8 MiB"))
> - self.assertEqual(mdraid.get_raid_superblock_size(Size(spec="1
> GiB")),
> - Size(spec="1 MiB"))
> - self.assertEqual(mdraid.get_raid_superblock_size(Size(spec="1023
> MiB")),
> - Size(spec="1 MiB"))
> - self.assertEqual(mdraid.get_raid_superblock_size(Size(spec="512
> MiB")),
> - Size(spec="1 MiB"))
> -
> - self.assertEqual(mdraid.get_raid_superblock_size(Size(spec="257
> MiB"),
> + self.assertEqual(mdraid.get_raid_superblock_size(Size("256 GiB")),
> + Size("128 MiB"))
> + self.assertEqual(mdraid.get_raid_superblock_size(Size("128 GiB")),
> + Size("128 MiB"))
> + self.assertEqual(mdraid.get_raid_superblock_size(Size("64 GiB")),
> + Size("64 MiB"))
> + self.assertEqual(mdraid.get_raid_superblock_size(Size("63 GiB")),
> + Size("32 MiB"))
> + self.assertEqual(mdraid.get_raid_superblock_size(Size("10 GiB")),
> + Size("8 MiB"))
> + self.assertEqual(mdraid.get_raid_superblock_size(Size("1 GiB")),
> + Size("1 MiB"))
> + self.assertEqual(mdraid.get_raid_superblock_size(Size("1023 MiB")),
> + Size("1 MiB"))
> + self.assertEqual(mdraid.get_raid_superblock_size(Size("512 MiB")),
> + Size("1 MiB"))
> +
> + self.assertEqual(mdraid.get_raid_superblock_size(Size("257 MiB"),
> version="version"),
> mdraid.MD_SUPERBLOCK_SIZE)
>
> diff --git a/tests/devices_test.py b/tests/devices_test.py
> index ffeb78a..1ab8bb3 100644
> --- a/tests/devices_test.py
> +++ b/tests/devices_test.py
> @@ -62,7 +62,7 @@ class MDRaidArrayDeviceTestCase(DeviceStateTestCase):
> def setUp(self):
> self._state_functions = {
> "createBitmap" : self.assertTrue,
> - "currentSize" : lambda x, m: self.assertEqual(x, Size(bytes=0),
> m),
> + "currentSize" : lambda x, m: self.assertEqual(x, Size(0), m),
> "description" : self.assertIsNotNone,
> "devices" : lambda x, m: self.assertEqual(len(x), 0, m) and
> self.assertIsInstance(x, ParentList, m),
> @@ -73,7 +73,7 @@ class MDRaidArrayDeviceTestCase(DeviceStateTestCase):
> "isDisk" : self.assertFalse,
> "level" : self.assertIsNone,
> "major" : lambda x, m: self.assertEqual(x, 0, m),
> - "maxSize" : lambda x, m: self.assertEqual(x, Size(bytes=0), m),
> + "maxSize" : lambda x, m: self.assertEqual(x, Size(0), m),
> "mediaPresent" : self.assertFalse,
> "metadataVersion" : lambda x, m: self.assertEqual(x, "default",
> m),
> "minor" : lambda x, m: self.assertEqual(x, 0, m),
> @@ -81,15 +81,15 @@ class MDRaidArrayDeviceTestCase(DeviceStateTestCase):
> self.assertIsInstance(x, ParentList, m),
> "path" : lambda x, m: self.assertRegexpMatches(x, "^/dev", m),
> "partitionable" : self.assertFalse,
> - "rawArraySize" : lambda x, m: self.assertEqual(x, Size(bytes=0),
> m),
> + "rawArraySize" : lambda x, m: self.assertEqual(x, Size(0), m),
> "resizable" : self.assertFalse,
> - "size" : lambda x, m: self.assertEqual(x, Size(bytes=0), m),
> + "size" : lambda x, m: self.assertEqual(x, Size(0), m),
> "smallestMember" : self.assertIsNone,
> "spares" : lambda x, m: self.assertEqual(x, 0, m),
> "status" : self.assertFalse,
> - "superBlockSize" : lambda x, m: self.assertEqual(x, Size(spec="1
> MiB"), m),
> + "superBlockSize" : lambda x, m: self.assertEqual(x, Size("1
> MiB"), m),
> "sysfsPath" : lambda x, m: self.assertEqual(x, "", m),
> - "targetSize" : lambda x, m: self.assertEqual(x, Size(bytes=0),
> m),
> + "targetSize" : lambda x, m: self.assertEqual(x, Size(0), m),
> "uuid" : self.assertIsNone,
> "memberDevices" : lambda x, m: self.assertEqual(x, 0, m),
> "totalDevices" : lambda x, m: self.assertEqual(x, 0, m),
> @@ -118,7 +118,7 @@ class MDRaidArrayDeviceTestCase(DeviceStateTestCase):
> self.dev10 = MDRaidArrayDevice(
> "dev10",
> level="raid0",
> - size=Size(spec="32 MiB"))
> + size=Size("32 MiB"))
>
> self.dev11 = MDRaidArrayDevice(
> "dev11",
> @@ -129,7 +129,7 @@ class MDRaidArrayDeviceTestCase(DeviceStateTestCase):
> fmt=getFormat("mdmember")),
> MDRaidArrayDevice("other", level="raid0",
> fmt=getFormat("mdmember"))],
> - size=Size(spec="32 MiB"),
> + size=Size("32 MiB"),
> totalDevices=2)
>
> self.dev12 = MDRaidArrayDevice(
> @@ -138,11 +138,11 @@ class MDRaidArrayDeviceTestCase(DeviceStateTestCase):
> memberDevices=2,
> parents=[
> Mock(**{"type": "mdcontainer",
> - "size": Size(spec="4 MiB"),
> + "size": Size("4 MiB"),
> "format": getFormat("mdmember")}),
> - Mock(**{"size": Size(spec="2 MiB"),
> + Mock(**{"size": Size("2 MiB"),
> "format": getFormat("mdmember")})],
> - size=Size(spec="32 MiB"),
> + size=Size("32 MiB"),
> totalDevices=2)
>
> self.dev13 = MDRaidArrayDevice(
> @@ -150,11 +150,11 @@ class MDRaidArrayDeviceTestCase(DeviceStateTestCase):
> level=0,
> memberDevices=3,
> parents=[
> - Mock(**{"size": Size(spec="4 MiB"),
> + Mock(**{"size": Size("4 MiB"),
> "format": getFormat("mdmember")}),
> - Mock(**{"size": Size(spec="2 MiB"),
> + Mock(**{"size": Size("2 MiB"),
> "format": getFormat("mdmember")})],
> - size=Size(spec="32 MiB"),
> + size=Size("32 MiB"),
> totalDevices=3)
>
> self.dev14 = MDRaidArrayDevice(
> @@ -162,11 +162,11 @@ class MDRaidArrayDeviceTestCase(DeviceStateTestCase):
> level=4,
> memberDevices=3,
> parents=[
> - Mock(**{"size": Size(spec="4 MiB"),
> + Mock(**{"size": Size("4 MiB"),
> "format": getFormat("mdmember")}),
> - Mock(**{"size": Size(spec="2 MiB"),
> + Mock(**{"size": Size("2 MiB"),
> "format": getFormat("mdmember")}),
> - Mock(**{"size": Size(spec="2 MiB"),
> + Mock(**{"size": Size("2 MiB"),
> "format": getFormat("mdmember")})],
> totalDevices=3)
>
> @@ -175,11 +175,11 @@ class MDRaidArrayDeviceTestCase(DeviceStateTestCase):
> level=5,
> memberDevices=3,
> parents=[
> - Mock(**{"size": Size(spec="4 MiB"),
> + Mock(**{"size": Size("4 MiB"),
> "format": getFormat("mdmember")}),
> - Mock(**{"size": Size(spec="2 MiB"),
> + Mock(**{"size": Size("2 MiB"),
> "format": getFormat("mdmember")}),
> - Mock(**{"size": Size(spec="2 MiB"),
> + Mock(**{"size": Size("2 MiB"),
> "format": getFormat("mdmember")})],
> totalDevices=3)
>
> @@ -188,13 +188,13 @@ class MDRaidArrayDeviceTestCase(DeviceStateTestCase):
> level=6,
> memberDevices=4,
> parents=[
> - Mock(**{"size": Size(spec="4 MiB"),
> + Mock(**{"size": Size("4 MiB"),
> "format": getFormat("mdmember")}),
> - Mock(**{"size": Size(spec="4 MiB"),
> + Mock(**{"size": Size("4 MiB"),
> "format": getFormat("mdmember")}),
> - Mock(**{"size": Size(spec="2 MiB"),
> + Mock(**{"size": Size("2 MiB"),
> "format": getFormat("mdmember")}),
> - Mock(**{"size": Size(spec="2 MiB"),
> + Mock(**{"size": Size("2 MiB"),
> "format": getFormat("mdmember")})],
> totalDevices=4)
>
> @@ -203,13 +203,13 @@ class MDRaidArrayDeviceTestCase(DeviceStateTestCase):
> level=10,
> memberDevices=4,
> parents=[
> - Mock(**{"size": Size(spec="4 MiB"),
> + Mock(**{"size": Size("4 MiB"),
> "format": getFormat("mdmember")}),
> - Mock(**{"size": Size(spec="4 MiB"),
> + Mock(**{"size": Size("4 MiB"),
> "format": getFormat("mdmember")}),
> - Mock(**{"size": Size(spec="2 MiB"),
> + Mock(**{"size": Size("2 MiB"),
> "format": getFormat("mdmember")}),
> - Mock(**{"size": Size(spec="2 MiB"),
> + Mock(**{"size": Size("2 MiB"),
> "format": getFormat("mdmember")})],
> totalDevices=4)
>
> @@ -218,13 +218,13 @@ class MDRaidArrayDeviceTestCase(DeviceStateTestCase):
> level=10,
> memberDevices=4,
> parents=[
> - Mock(**{"size": Size(spec="4 MiB"),
> + Mock(**{"size": Size("4 MiB"),
> "format": getFormat("mdmember")}),
> - Mock(**{"size": Size(spec="4 MiB"),
> + Mock(**{"size": Size("4 MiB"),
> "format": getFormat("mdmember")}),
> - Mock(**{"size": Size(spec="2 MiB"),
> + Mock(**{"size": Size("2 MiB"),
> "format": getFormat("mdmember")}),
> - Mock(**{"size": Size(spec="2 MiB"),
> + Mock(**{"size": Size("2 MiB"),
> "format": getFormat("mdmember")})],
> totalDevices=5)
>
> @@ -286,7 +286,7 @@ class MDRaidArrayDeviceTestCase(DeviceStateTestCase):
> self.stateCheck(self.dev10,
> createBitmap=self.assertFalse,
> level=lambda x, m: self.assertEqual(x.number, 0, m),
> - targetSize=lambda x, m: self.assertEqual(x,
> Size(spec="32 MiB"), m))
> + targetSize=lambda x, m: self.assertEqual(x, Size("32
> MiB"), m))
>
> self.stateCheck(self.dev11,
> devices=lambda x, m: self.assertEqual(len(x), 2, m),
> @@ -297,7 +297,7 @@ class MDRaidArrayDeviceTestCase(DeviceStateTestCase):
> parents=lambda x, m: self.assertNotEqual(x, [], m),
> partitionable=self.assertTrue,
> smallestMember=self.assertIsNotNone,
> - targetSize=lambda x, m: self.assertEqual(x,
> Size(spec="32 MiB"), m),
> + targetSize=lambda x, m: self.assertEqual(x, Size("32
> MiB"), m),
> totalDevices=lambda x, m: self.assertEqual(x, 2, m),
> type=lambda x, m: self.assertEqual(x,
> "mdbiosraidarray", m))
>
> @@ -312,9 +312,9 @@ class MDRaidArrayDeviceTestCase(DeviceStateTestCase):
> memberDevices=lambda x, m: self.assertEqual(x, 2,
> m),
> parents=lambda x, m: self.assertNotEqual(x, [], m),
> partitionable=self.assertTrue,
> - rawArraySize=lambda x, m: self.assertEqual(x,
> Size(spec="2 MiB"), m),
> + rawArraySize=lambda x, m: self.assertEqual(x,
> Size("2 MiB"), m),
> smallestMember=self.assertIsNotNone,
> - targetSize=lambda x, m: self.assertEqual(x,
> Size(spec="32 MiB"), m),
> + targetSize=lambda x, m: self.assertEqual(x, Size("32
> MiB"), m),
> totalDevices=lambda x, m: self.assertEqual(x, 2, m),
> type = lambda x, m: self.assertEqual(x,
> "mdbiosraidarray", m))
>
> @@ -324,10 +324,10 @@ class MDRaidArrayDeviceTestCase(DeviceStateTestCase):
> level=lambda x, m: self.assertEqual(x.number, 0, m),
> memberDevices=lambda x, m: self.assertEqual(x, 3,
> m),
> parents=lambda x, m: self.assertNotEqual(x, [], m),
> - rawArraySize=lambda x, m: self.assertEqual(x,
> Size(spec="6 MiB"), m),
> - size=lambda x, m: self.assertEqual(x, Size(spec="3
> MiB"), m),
> + rawArraySize=lambda x, m: self.assertEqual(x,
> Size("6 MiB"), m),
> + size=lambda x, m: self.assertEqual(x, Size("3 MiB"),
> m),
> smallestMember=self.assertIsNotNone,
> - targetSize=lambda x, m: self.assertEqual(x,
> Size(spec="32 MiB"), m),
> + targetSize=lambda x, m: self.assertEqual(x, Size("32
> MiB"), m),
> totalDevices=lambda x, m: self.assertEqual(x, 3, m))
>
> self.stateCheck(self.dev14,
> @@ -335,8 +335,8 @@ class MDRaidArrayDeviceTestCase(DeviceStateTestCase):
> level=lambda x, m: self.assertEqual(x.number, 4, m),
> memberDevices=lambda x, m: self.assertEqual(x, 3,
> m),
> parents=lambda x, m: self.assertNotEqual(x, [], m),
> - rawArraySize=lambda x, m: self.assertEqual(x,
> Size(spec="4 MiB"), m),
> - size=lambda x, m: self.assertEqual(x, Size(spec="2
> MiB"), m),
> + rawArraySize=lambda x, m: self.assertEqual(x,
> Size("4 MiB"), m),
> + size=lambda x, m: self.assertEqual(x, Size("2 MiB"),
> m),
> smallestMember=self.assertIsNotNone,
> totalDevices=lambda x, m: self.assertEqual(x, 3, m))
>
> @@ -345,8 +345,8 @@ class MDRaidArrayDeviceTestCase(DeviceStateTestCase):
> level=lambda x, m: self.assertEqual(x.number, 5, m),
> memberDevices=lambda x, m: self.assertEqual(x, 3,
> m),
> parents=lambda x, m: self.assertNotEqual(x, [], m),
> - rawArraySize=lambda x, m: self.assertEqual(x,
> Size(spec="4 MiB"), m),
> - size=lambda x, m: self.assertEqual(x, Size(spec="2
> MiB"), m),
> + rawArraySize=lambda x, m: self.assertEqual(x,
> Size("4 MiB"), m),
> + size=lambda x, m: self.assertEqual(x, Size("2 MiB"),
> m),
> smallestMember=self.assertIsNotNone,
> totalDevices=lambda x, m: self.assertEqual(x, 3, m))
>
> @@ -355,8 +355,8 @@ class MDRaidArrayDeviceTestCase(DeviceStateTestCase):
> level=lambda x, m: self.assertEqual(x.number, 6, m),
> memberDevices=lambda x, m: self.assertEqual(x, 4,
> m),
> parents=lambda x, m: self.assertNotEqual(x, [], m),
> - rawArraySize=lambda x, m: self.assertEqual(x,
> Size(spec="4 MiB"), m),
> - size=lambda x, m: self.assertEqual(x, Size(spec="2
> MiB"), m),
> + rawArraySize=lambda x, m: self.assertEqual(x,
> Size("4 MiB"), m),
> + size=lambda x, m: self.assertEqual(x, Size("2 MiB"),
> m),
> smallestMember=self.assertIsNotNone,
> totalDevices=lambda x, m: self.assertEqual(x, 4, m))
>
> @@ -365,8 +365,8 @@ class MDRaidArrayDeviceTestCase(DeviceStateTestCase):
> level=lambda x, m: self.assertEqual(x.number, 10,
> m),
> memberDevices=lambda x, m: self.assertEqual(x, 4,
> m),
> parents=lambda x, m: self.assertNotEqual(x, [], m),
> - rawArraySize=lambda x, m: self.assertEqual(x,
> Size(spec="4 MiB"), m),
> - size=lambda x, m: self.assertEqual(x, Size(spec="2
> MiB"), m),
> + rawArraySize=lambda x, m: self.assertEqual(x,
> Size("4 MiB"), m),
> + size=lambda x, m: self.assertEqual(x, Size("2 MiB"),
> m),
> smallestMember=self.assertIsNotNone,
> totalDevices=lambda x, m: self.assertEqual(x, 4, m))
>
> @@ -375,8 +375,8 @@ class MDRaidArrayDeviceTestCase(DeviceStateTestCase):
> level=lambda x, m: self.assertEqual(x.number, 10,
> m),
> memberDevices=lambda x, m: self.assertEqual(x, 4,
> m),
> parents=lambda x, m: self.assertNotEqual(x, [], m),
> - rawArraySize=lambda x, m: self.assertEqual(x,
> Size(spec="4 MiB"), m),
> - size=lambda x, m: self.assertEqual(x, Size(spec="2
> MiB"), m),
> + rawArraySize=lambda x, m: self.assertEqual(x,
> Size("4 MiB"), m),
> + size=lambda x, m: self.assertEqual(x, Size("2 MiB"),
> m),
> smallestMember=self.assertIsNotNone,
> spares=lambda x, m: self.assertEqual(x, 1, m),
> totalDevices=lambda x, m: self.assertEqual(x, 5, m))
> @@ -438,14 +438,14 @@ class BTRFSDeviceTestCase(DeviceStateTestCase):
>
> def setUp(self):
> self._state_functions = {
> - "currentSize" : lambda x, m: self.assertEqual(x, Size(bytes=0),
> m),
> + "currentSize" : lambda x, m: self.assertEqual(x, Size(0), m),
> "exists" : self.assertFalse,
> "format" : self.assertIsNotNone,
> "formatArgs" : lambda x, m: self.assertEqual(x, [], m),
> "fstabSpec" : self.assertIsNotNone,
> "isDisk" : self.assertFalse,
> "major" : lambda x, m: self.assertEqual(x, 0, m),
> - "maxSize" : lambda x, m: self.assertEqual(x, Size(bytes=0), m),
> + "maxSize" : lambda x, m: self.assertEqual(x, Size(0), m),
> "mediaPresent" : self.assertTrue,
> "minor" : lambda x, m: self.assertEqual(x, 0, m),
> "parents" : lambda x, m: self.assertEqual(len(x), 0, m) and
> @@ -453,10 +453,10 @@ class BTRFSDeviceTestCase(DeviceStateTestCase):
> "partitionable" : self.assertFalse,
> "path" : lambda x, m: self.assertRegexpMatches(x, "^/dev", m),
> "resizable" : lambda x, m: self.assertFalse,
> - "size" : lambda x, m: self.assertEqual(x, Size(bytes=0), m),
> + "size" : lambda x, m: self.assertEqual(x, Size(0), m),
> "status" : self.assertFalse,
> "sysfsPath" : lambda x, m: self.assertEqual(x, "", m),
> - "targetSize" : lambda x, m: self.assertEqual(x, Size(bytes=0),
> m),
> + "targetSize" : lambda x, m: self.assertEqual(x, Size(0), m),
> "type" : lambda x, m: self.assertEqual(x, "btrfs", m),
> "uuid" : self.assertIsNone,
> "vol_id" : lambda x, m: self.assertEqual(x, btrfs.MAIN_VOLUME_ID,
> m)}
> @@ -469,7 +469,7 @@ class BTRFSDeviceTestCase(DeviceStateTestCase):
>
> dev = StorageDevice("deva",
> fmt=blivet.formats.getFormat("btrfs"),
> - size=Size(spec="32 MiB"))
> + size=Size("32 MiB"))
> self.dev3 = BTRFSVolumeDevice("dev3",
> parents=[dev])
>
> @@ -484,10 +484,10 @@ class BTRFSDeviceTestCase(DeviceStateTestCase):
> type=lambda x, m: self.assertEqual(x, "btrfs volume", m))
>
> self.stateCheck(self.dev3,
> - currentSize=lambda x, m: self.assertEqual(x, Size(spec="32 MiB"),
> m),
> - maxSize=lambda x, m: self.assertEqual(x, Size(spec="32 MiB"), m),
> + currentSize=lambda x, m: self.assertEqual(x, Size("32 MiB"), m),
> + maxSize=lambda x, m: self.assertEqual(x, Size("32 MiB"), m),
> parents=lambda x, m: self.assertEqual(len(x), 1, m),
> - size=lambda x, m: self.assertEqual(x, Size(spec="32 MiB"), m),
> + size=lambda x, m: self.assertEqual(x, Size("32 MiB"), m),
> type=lambda x, m: self.assertEqual(x, "btrfs volume", m))
>
> self.assertRaisesRegexp(ValueError,
> diff --git a/tests/size_test.py b/tests/size_test.py
> index 7029fdc..e05e3b5 100644
> --- a/tests/size_test.py
> +++ b/tests/size_test.py
> @@ -23,18 +23,15 @@
>
> import unittest
>
> -from blivet.errors import SizeParamsError, SizePlacesError
> +from blivet.errors import SizePlacesError
> from blivet.size import Size, _prefixes
>
> class SizeTestCase(unittest.TestCase):
> def testExceptions(self):
> - self.assertRaises(SizeParamsError, Size)
> - self.assertRaises(SizeParamsError, Size, bytes=500, spec="45GB")
> -
> - zero = Size(bytes=0)
> + zero = Size(0)
> self.assertEqual(zero, 0.0)
>
> - s = Size(bytes=500)
> + s = Size(500)
> self.assertRaises(SizePlacesError, s.humanReadable, places=-1)
>
> self.assertEqual(s.humanReadable(places=0), "500 B")
> @@ -42,23 +39,23 @@ class SizeTestCase(unittest.TestCase):
> def _prefixTestHelper(self, numbytes, factor, prefix, abbr):
> c = numbytes * factor
>
> - s = Size(bytes=c)
> + s = Size(c)
> self.assertEquals(s, c)
>
> if prefix:
> u = "%sbytes" % prefix
> - s = Size(spec="%ld %s" % (numbytes, u))
> + s = Size("%ld %s" % (numbytes, u))
> self.assertEquals(s, c)
> self.assertEquals(s.convertTo(spec=u), numbytes)
>
> if abbr:
> u = "%sb" % abbr
> - s = Size(spec="%ld %s" % (numbytes, u))
> + s = Size("%ld %s" % (numbytes, u))
> self.assertEquals(s, c)
> self.assertEquals(s.convertTo(spec=u), numbytes)
>
> if not prefix and not abbr:
> - s = Size(spec="%ld" % numbytes)
> + s = Size("%ld" % numbytes)
> self.assertEquals(s, c)
> self.assertEquals(s.convertTo(), numbytes)
>
> @@ -70,46 +67,46 @@ class SizeTestCase(unittest.TestCase):
> self._prefixTestHelper(numbytes, factor, prefix, abbr)
>
> def testHumanReadable(self):
> - s = Size(bytes=58929971L)
> + s = Size(58929971L)
> self.assertEquals(s.humanReadable(), "56.2 MiB")
>
> - s = Size(bytes=478360371L)
> + s = Size(478360371L)
> self.assertEquals(s.humanReadable(), "456.2 MiB")
>
> # humanReable output should be the same as input for big enough
> sizes
> # and enough places and integer values
> - s = Size(spec="12.68 TiB")
> + s = Size("12.68 TiB")
> self.assertEquals(s.humanReadable(max_places=2), "12.68 TiB")
> - s = Size(spec="26.55 MiB")
> + s = Size("26.55 MiB")
> self.assertEquals(s.humanReadable(max_places=2), "26.55 MiB")
> - s = Size(spec="300 MiB")
> + s = Size("300 MiB")
> self.assertEquals(s.humanReadable(max_places=2), "300 MiB")
>
> # smaller unit should be used for small sizes
> - s = Size(spec="9.68 TiB")
> + s = Size("9.68 TiB")
> self.assertEquals(s.humanReadable(max_places=2), "9912.32 GiB")
> - s = Size(spec="4.29 MiB")
> + s = Size("4.29 MiB")
> self.assertEquals(s.humanReadable(max_places=2), "4392.96 KiB")
> - s = Size(spec="7.18 KiB")
> + s = Size("7.18 KiB")
> self.assertEquals(s.humanReadable(max_places=2), "7352 B")
>
> # rounding should work with max_places limitted
> - s = Size(spec="12.687 TiB")
> + s = Size("12.687 TiB")
> self.assertEquals(s.humanReadable(max_places=2), "12.69 TiB")
> - s = Size(spec="23.7874 TiB")
> + s = Size("23.7874 TiB")
> self.assertEquals(s.humanReadable(max_places=3), "23.787 TiB")
> - s = Size(spec="12.6998 TiB")
> + s = Size("12.6998 TiB")
> self.assertEquals(s.humanReadable(max_places=2), "12.7 TiB")
>
> def testNegative(self):
> - s = Size(spec="-500MiB")
> + s = Size("-500MiB")
> self.assertEquals(s.humanReadable(), "-500 MiB")
> self.assertEquals(s.convertTo(spec="b"), -524288000)
>
> def testPartialBytes(self):
> - self.assertEquals(Size(bytes=1024.6), Size(bytes=1024))
> - self.assertEquals(Size(spec="%s KiB" % (1/1025.0,)), Size(bytes=0))
> - self.assertEquals(Size(spec="%s KiB" % (1/1023.0,)), Size(bytes=1))
> + self.assertEquals(Size(1024.6), Size(1024))
> + self.assertEquals(Size("%s KiB" % (1/1025.0,)), Size(0))
> + self.assertEquals(Size("%s KiB" % (1/1023.0,)), Size(1))
>
> def testTranslated(self):
> import locale
> @@ -125,31 +122,31 @@ class SizeTestCase(unittest.TestCase):
> # you know, just in case
> test_langs = ["es_ES.UTF-8", "kk_KZ.UTF-8", "ml_IN.UTF-8",
> "fa_IR.UTF-8"]
>
> - s = Size(spec="56.19 MiB")
> + s = Size("56.19 MiB")
> for lang in test_langs:
> os.environ['LANG'] = lang
> locale.setlocale(locale.LC_ALL, '')
>
> # Check English parsing
> - self.assertEquals(s, Size(spec="56.19 MiB"))
> + self.assertEquals(s, Size("56.19 MiB"))
>
> # Check native parsing
> - self.assertEquals(s, Size(spec="56.19 %s%s" % (_("Mi"),
> _("B"))))
> + self.assertEquals(s, Size("56.19 %s%s" % (_("Mi"), _("B"))))
>
> # Check native parsing, all lowercase
> - self.assertEquals(s, Size(spec=("56.19 %s%s" % (_("Mi"),
> _("B"))).lower()))
> + self.assertEquals(s, Size(("56.19 %s%s" % (_("Mi"),
> _("B"))).lower()))
>
> # Check native parsing, all uppercase
> - self.assertEquals(s, Size(spec=("56.19 %s%s" % (_("Mi"),
> _("B"))).upper()))
> + self.assertEquals(s, Size(("56.19 %s%s" % (_("Mi"),
> _("B"))).upper()))
>
> # If the radix separator is not a period, repeat the tests with
> the
> # native separator
> radix = locale.nl_langinfo(locale.RADIXCHAR)
> if radix != '.':
> - self.assertEquals(s, Size(spec="56%s19 MiB" % radix))
> - self.assertEquals(s, Size(spec="56%s19 %s%s" % (radix,
> _("Mi"), _("B"))))
> - self.assertEquals(s, Size(spec=("56%s19 %s%s" % (radix,
> _("Mi"), _("B"))).lower()))
> - self.assertEquals(s, Size(spec=("56%s19 %s%s" % (radix,
> _("Mi"), _("B"))).upper()))
> + self.assertEquals(s, Size("56%s19 MiB" % radix))
> + self.assertEquals(s, Size("56%s19 %s%s" % (radix, _("Mi"),
> _("B"))))
> + self.assertEquals(s, Size(("56%s19 %s%s" % (radix, _("Mi"),
> _("B"))).lower()))
> + self.assertEquals(s, Size(("56%s19 %s%s" % (radix, _("Mi"),
> _("B"))).upper()))
>
> os.environ['LANG'] = saved_lang
> locale.setlocale(locale.LC_ALL, '')
> --
> 1.8.3.1
>
> _______________________________________________
> anaconda-patches mailing list
> anaconda-patches at lists.fedorahosted.org
> https://lists.fedorahosted.org/mailman/listinfo/anaconda-patches
>
More information about the anaconda-patches
mailing list