~osomon/pyexiv2/pyexiv2-0.3

« back to all changes in this revision

Viewing changes to test/exif.py

  • Committer: Olivier Tilloy
  • Date: 2010-12-17 19:02:35 UTC
  • mfrom: (341.1.15 charset)
  • Revision ID: olivier@tilloy.net-20101217190235-tc0on3anm13fnlnx
Decode and encode EXIF comments according to the specified charset.

Show diffs side-by-side

added added

removed removed

Lines of Context:
135
135
        tag = ExifTag('Exif.Photo.UserComment')
136
136
        self.assertEqual(tag.type, 'Comment')
137
137
        self.assertEqual(tag._convert_to_python('A comment'), 'A comment')
 
138
        for charset in ('Ascii', 'Jis', 'Unicode', 'Undefined', 'InvalidCharsetId'):
 
139
            self.assertEqual(tag._convert_to_python('charset="%s" A comment' % charset), 'A comment')
 
140
        for charset in ('Ascii', 'Jis', 'Undefined', 'InvalidCharsetId'):
 
141
            self.failIfEqual(tag._convert_to_python('charset="%s" déjà vu' % charset), u'déjà vu')
138
142
 
139
143
    def test_convert_to_string_comment(self):
140
144
        # Valid values
142
146
        self.assertEqual(tag.type, 'Comment')
143
147
        self.assertEqual(tag._convert_to_string('A comment'), 'A comment')
144
148
        self.assertEqual(tag._convert_to_string(u'A comment'), 'A comment')
 
149
        charsets = ('Ascii', 'Jis', 'Unicode', 'Undefined')
 
150
        for charset in charsets:
 
151
            tag.raw_value = 'charset="%s" foo' % charset
 
152
            self.assertEqual(tag._convert_to_string('A comment'),
 
153
                             'charset="%s" A comment' % charset)
 
154
            self.assertEqual(tag._convert_to_string('déjà vu'), 'déjà vu')
145
155
 
146
156
        # Invalid values
147
157
        self.failUnlessRaises(ExifValueError, tag._convert_to_string, None)