Merge "DRBD: Remove cast to int in size calculation"

This commit is contained in:
Zuul 2018-05-03 18:30:23 +00:00 committed by Gerrit Code Review
commit 5031ad94b1
2 changed files with 14 additions and 2 deletions

View File

@ -618,6 +618,18 @@ class DrbdManageIscsiTestCase(test.TestCase):
self.assertEqual("set_drbdsetup_props", dmd.odm.next_call())
self.assertEqual("run_external_plugin", dmd.odm.next_call())
def test_unit_conversions(self):
dmd = drv.DrbdManageIscsiDriver(configuration=self.configuration)
self.assertEqual(1048576, dmd._vol_size_to_dm(1))
self.assertEqual(1, dmd._vol_size_to_cinder(1048576))
self.assertEqual(5368709120, dmd._vol_size_to_dm(5120))
self.assertEqual(5120, dmd._vol_size_to_cinder(5368709120))
self.assertEqual(10737418240, dmd._vol_size_to_dm(10240))
self.assertEqual(10240, dmd._vol_size_to_cinder(10737418240))
class DrbdManageDrbdTestCase(DrbdManageIscsiTestCase):

View File

@ -278,10 +278,10 @@ class DrbdManageBaseDriver(driver.VolumeDriver):
# DRBDmanage works in kiB units; Cinder uses GiB.
def _vol_size_to_dm(self, size):
return int(size * units.Gi / units.Ki)
return size * units.Gi / units.Ki
def _vol_size_to_cinder(self, size):
return int(size * units.Ki / units.Gi)
return size * units.Ki / units.Gi
def is_clean_volume_name(self, name, prefix):
try: