예제 #1
0
    def test_init__to_unicode__default(self):
        loader = Loader()
        self.assertRaises(TypeError, loader.to_unicode, u"abc")

        nonascii = u"abcdé".encode("utf-8")

        loader = Loader()
        self.assertRaises(UnicodeDecodeError, loader.to_unicode, nonascii)

        defaults.DECODE_ERRORS = "ignore"
        loader = Loader()
        self.assertString(loader.to_unicode(nonascii), u"abcd")

        defaults.STRING_ENCODING = "utf-8"
        loader = Loader()
        self.assertString(loader.to_unicode(nonascii), u"abcdé")
예제 #2
0
    def test_unicode__to_unicode__attribute(self):
        """
        Test unicode(): encoding attribute.

        """
        loader = Loader()

        non_ascii = u"abcdé".encode("utf-8")
        self.assertRaises(UnicodeDecodeError, loader.unicode, non_ascii)

        def to_unicode(s, encoding=None):
            if encoding is None:
                encoding = "utf-8"
            return unicode(s, encoding)

        loader.to_unicode = to_unicode
        self.assertString(loader.unicode(non_ascii), u"abcdé")