Beispiel #1
0
    def _prefixTestHelper(self, numunits, unit):
        """ Test that units and prefix or abbreviation agree.

            :param int numunits: this value times factor yields number of bytes
            :param unit: a unit specifier
        """
        c = numunits * unit.factor

        s = Size(c)
        self.assertEqual(s, Size(c))

        u = size._makeSpec(unit.prefix, size._BYTES_WORDS[0], False)
        s = Size("%ld %s" % (numunits, u))
        self.assertEqual(s, c)
        self.assertEqual(s.convertTo(unit), numunits)

        u = size._makeSpec(unit.abbr, size._BYTES_SYMBOL, False)
        s = Size("%ld %s" % (numunits, u))
        self.assertEqual(s, c)
        self.assertEqual(s.convertTo(unit), numunits)
Beispiel #2
0
    def testMakeSpec(self):
        """ Tests for _makeSpecs(). """
        for lang in  self.TEST_LANGS:
            os.environ['LANG'] = lang
            locale.setlocale(locale.LC_ALL, '')

            # untranslated specs
            self.assertEqual(size._makeSpec("", "BYTES", False), "bytes")
            self.assertEqual(size._makeSpec("Mi", "b", False), "mib")

            # un-lower-cased specs
            self.assertEqual(size._makeSpec("", "BYTES", False, False), "BYTES")
            self.assertEqual(size._makeSpec("Mi", "b", False, False), "Mib")
            self.assertEqual(size._makeSpec("Mi", "B", False, False), "MiB")

            # translated specs
            res = size._makeSpec("", "bytes", True)

            # Note that exp != _("bytes").lower() as one might expect
            exp = (_("") + _("bytes")).lower()
            self.assertEqual(res, exp)