def test_convert_to_with_size(self): s = Size(1835008) self.assertEqual(s.convert_to(Size(1)), s.convert_to(B)) self.assertEqual(s.convert_to(Size(1024)), s.convert_to(KiB)) self.assertEqual(Size(512).convert_to(Size(1024)), Decimal("0.5")) self.assertEqual(Size(1024).convert_to(Size(512)), Decimal(2)) with self.assertRaises(ValueError): s.convert_to(Size(0))
def test_segative(self): s = Size("-500MiB") self.assertEqual(s.human_readable(), "-500 MiB") self.assertEqual(s.convert_to(B), -524288000)
def test_convert_to_precision(self): s = Size(1835008) self.assertEqual(s.convert_to(None), 1835008) self.assertEqual(s.convert_to(B), 1835008) self.assertEqual(s.convert_to(KiB), 1792) self.assertEqual(s.convert_to(MiB), Decimal("1.75"))