diff options
Diffstat (limited to 'src/zope/i18nmessageid')
-rw-r--r-- | src/zope/i18nmessageid/message.py | 14 | ||||
-rw-r--r-- | src/zope/i18nmessageid/tests.py | 6 |
2 files changed, 9 insertions, 11 deletions
diff --git a/src/zope/i18nmessageid/message.py b/src/zope/i18nmessageid/message.py index 5142a81..8bd364f 100644 --- a/src/zope/i18nmessageid/message.py +++ b/src/zope/i18nmessageid/message.py @@ -13,14 +13,12 @@ ############################################################################## """I18n Messages and factories. """ -import six - __docformat__ = "reStructuredText" _marker = object() -class Message(six.text_type): +class Message(str): """Message (Python implementation) This is a string used as a message. It has a domain attribute that is @@ -36,7 +34,7 @@ class Message(six.text_type): def __new__(cls, ustr, domain=_marker, default=_marker, mapping=_marker, msgid_plural=_marker, default_plural=_marker, number=_marker): - self = six.text_type.__new__(cls, ustr) + self = str.__new__(cls, ustr) if isinstance(ustr, self.__class__): self.domain = ustr.domain self.default = ustr.default @@ -66,7 +64,7 @@ class Message(six.text_type): self.number = number if self.number is not None and not isinstance( - self.number, six.integer_types + (float,)): + self.number, (int, float)): raise TypeError('`number` should be an integer or a float') self._readonly = True @@ -80,11 +78,11 @@ class Message(six.text_type): if getattr(self, '_readonly', False): raise TypeError('readonly attribute') else: - return six.text_type.__setattr__(self, key, value) + return str.__setattr__(self, key, value) def __getstate__(self): return ( - six.text_type(self), self.domain, self.default, self.mapping, + str(self), self.domain, self.default, self.mapping, self.msgid_plural, self.default_plural, self.number) def __reduce__(self): @@ -101,7 +99,7 @@ except ImportError: # pragma: no cover pass -class MessageFactory(object): +class MessageFactory: """Factory for creating i18n messages.""" def __init__(self, domain): diff --git a/src/zope/i18nmessageid/tests.py b/src/zope/i18nmessageid/tests.py index 5dafd4e..1b2bbee 100644 --- a/src/zope/i18nmessageid/tests.py +++ b/src/zope/i18nmessageid/tests.py @@ -151,7 +151,7 @@ class PyMessageTests(unittest.TestCase): # https://github.com/zopefoundation/zope.i18nmessageid/issues/14 pref_msg = self._makeOne("${name} Preferences") self.assertIsNone(pref_msg.default) - copy = self._makeOne(pref_msg, mapping={u'name': u'name'}) + copy = self._makeOne(pref_msg, mapping={'name': 'name'}) self.assertIsNone(copy.default) def test_copy_no_overrides(self): @@ -220,12 +220,12 @@ class PyMessageTests(unittest.TestCase): 'testings', 'defaults', 2)) def test_non_unicode_default(self): - message = self._makeOne(u'str', default=123) + message = self._makeOne('str', default=123) self.assertEqual(message.default, 123) def test_non_numeric_number(self): with self.assertRaises((TypeError, AttributeError)): - self._makeOne(u'str', default=123, number="one") + self._makeOne('str', default=123, number="one") @unittest.skipIf(messageid.Message is messageid.pyMessage, "Duplicate tests") |