def test_convert_to_python_comment(self): # Valid values tag = ExifTag("Exif.Photo.UserComment") self.assertEqual(tag.type, "Comment") self.assertEqual(tag._convert_to_python("A comment"), "A comment") for charset in ("Ascii", "Jis", "Unicode", "Undefined", "InvalidCharsetId"): self.assertEqual(tag._convert_to_python('charset="%s" A comment' % charset), "A comment") for charset in ("Ascii", "Jis", "Undefined", "InvalidCharsetId"): self.failIfEqual(tag._convert_to_python('charset="%s" déjà vu' % charset), u"déjà vu")
def test_convert_to_python_comment(self): # Valid values tag = ExifTag('Exif.Photo.UserComment') self.assertEqual(tag.type, 'Comment') self.assertEqual(tag._convert_to_python('A comment'), 'A comment') for charset in ('Ascii', 'Jis', 'Unicode', 'Undefined', 'InvalidCharsetId'): self.assertEqual(tag._convert_to_python('charset="%s" A comment' % charset), 'A comment') for charset in ('Ascii', 'Jis', 'Undefined', 'InvalidCharsetId'): self.failIfEqual(tag._convert_to_python('charset="%s" déjà vu' % charset), u'déjà vu')
def test_convert_to_python_srational(self): # Valid values tag = ExifTag('Exif.Image.BaselineExposure') self.assertEqual(tag.type, 'SRational') self.assertEqual(tag._convert_to_python('5/3'), make_fraction(5, 3)) self.assertEqual(tag._convert_to_python('-5/3'), make_fraction(-5, 3)) # Invalid values self.failUnlessRaises(ExifValueError, tag._convert_to_python, 'invalid') self.failUnlessRaises(ExifValueError, tag._convert_to_python, '5 / 3') self.failUnlessRaises(ExifValueError, tag._convert_to_python, '5/-3')
def test_convert_to_python_srational(self): # Valid values tag = ExifTag("Exif.Image.BaselineExposure") self.assertEqual(tag.type, "SRational") self.assertEqual(tag._convert_to_python("5/3"), make_fraction(5, 3)) self.assertEqual(tag._convert_to_python("-5/3"), make_fraction(-5, 3)) # Invalid values self.failUnlessRaises(ExifValueError, tag._convert_to_python, "invalid") self.failUnlessRaises(ExifValueError, tag._convert_to_python, "5 / 3") self.failUnlessRaises(ExifValueError, tag._convert_to_python, "5/-3")
def test_convert_to_python_short(self): # Valid values tag = ExifTag("Exif.Image.BitsPerSample") self.assertEqual(tag.type, "Short") self.assertEqual(tag._convert_to_python("8"), 8) self.assertEqual(tag._convert_to_python("+5628"), 5628) # Invalid values self.failUnlessRaises(ExifValueError, tag._convert_to_python, "abc") self.failUnlessRaises(ExifValueError, tag._convert_to_python, "5,64") self.failUnlessRaises(ExifValueError, tag._convert_to_python, "47.0001") self.failUnlessRaises(ExifValueError, tag._convert_to_python, "1E3")
def test_convert_to_python_long(self): # Valid values tag = ExifTag("Exif.Image.ImageWidth") self.assertEqual(tag.type, "Long") self.assertEqual(tag._convert_to_python("8"), 8) self.assertEqual(tag._convert_to_python("+5628"), 5628) # Invalid values self.failUnlessRaises(ExifValueError, tag._convert_to_python, "abc") self.failUnlessRaises(ExifValueError, tag._convert_to_python, "5,64") self.failUnlessRaises(ExifValueError, tag._convert_to_python, "47.0001") self.failUnlessRaises(ExifValueError, tag._convert_to_python, "1E3")
def test_convert_to_python_long(self): # Valid values tag = ExifTag('Exif.Image.ImageWidth') self.assertEqual(tag.type, 'Long') self.assertEqual(tag._convert_to_python('8'), 8) self.assertEqual(tag._convert_to_python('+5628'), 5628) # Invalid values self.failUnlessRaises(ExifValueError, tag._convert_to_python, 'abc') self.failUnlessRaises(ExifValueError, tag._convert_to_python, '5,64') self.failUnlessRaises(ExifValueError, tag._convert_to_python, '47.0001') self.failUnlessRaises(ExifValueError, tag._convert_to_python, '1E3')
def test_convert_to_python_short(self): # Valid values tag = ExifTag('Exif.Image.BitsPerSample') self.assertEqual(tag.type, 'Short') self.assertEqual(tag._convert_to_python('8'), 8) self.assertEqual(tag._convert_to_python('+5628'), 5628) # Invalid values self.failUnlessRaises(ExifValueError, tag._convert_to_python, 'abc') self.failUnlessRaises(ExifValueError, tag._convert_to_python, '5,64') self.failUnlessRaises(ExifValueError, tag._convert_to_python, '47.0001') self.failUnlessRaises(ExifValueError, tag._convert_to_python, '1E3')
def test_convert_to_python_sshort(self): # Valid values tag = ExifTag("Exif.Image.TimeZoneOffset") self.assertEqual(tag.type, "SShort") self.assertEqual(tag._convert_to_python("8"), 8) self.assertEqual(tag._convert_to_python("+5"), 5) self.assertEqual(tag._convert_to_python("-6"), -6) # Invalid values self.failUnlessRaises(ExifValueError, tag._convert_to_python, "abc") self.failUnlessRaises(ExifValueError, tag._convert_to_python, "5,64") self.failUnlessRaises(ExifValueError, tag._convert_to_python, "47.0001") self.failUnlessRaises(ExifValueError, tag._convert_to_python, "1E3")
def test_convert_to_python_slong(self): # Valid values tag = ExifTag('Exif.OlympusCs.ManometerReading') self.assertEqual(tag.type, 'SLong') self.assertEqual(tag._convert_to_python('23'), 23) self.assertEqual(tag._convert_to_python('+5628'), 5628) self.assertEqual(tag._convert_to_python('-437'), -437) # Invalid values self.failUnlessRaises(ExifValueError, tag._convert_to_python, 'abc') self.failUnlessRaises(ExifValueError, tag._convert_to_python, '5,64') self.failUnlessRaises(ExifValueError, tag._convert_to_python, '47.0001') self.failUnlessRaises(ExifValueError, tag._convert_to_python, '1E3')
def test_convert_to_python_sshort(self): # Valid values tag = ExifTag('Exif.Image.TimeZoneOffset') self.assertEqual(tag.type, 'SShort') self.assertEqual(tag._convert_to_python('8'), 8) self.assertEqual(tag._convert_to_python('+5'), 5) self.assertEqual(tag._convert_to_python('-6'), -6) # Invalid values self.failUnlessRaises(ExifValueError, tag._convert_to_python, 'abc') self.failUnlessRaises(ExifValueError, tag._convert_to_python, '5,64') self.failUnlessRaises(ExifValueError, tag._convert_to_python, '47.0001') self.failUnlessRaises(ExifValueError, tag._convert_to_python, '1E3')
def test_convert_to_python_slong(self): # Valid values tag = ExifTag("Exif.OlympusCs.ManometerReading") self.assertEqual(tag.type, "SLong") self.assertEqual(tag._convert_to_python("23"), 23) self.assertEqual(tag._convert_to_python("+5628"), 5628) self.assertEqual(tag._convert_to_python("-437"), -437) # Invalid values self.failUnlessRaises(ExifValueError, tag._convert_to_python, "abc") self.failUnlessRaises(ExifValueError, tag._convert_to_python, "5,64") self.failUnlessRaises(ExifValueError, tag._convert_to_python, "47.0001") self.failUnlessRaises(ExifValueError, tag._convert_to_python, "1E3")
def test_convert_to_python_comment(self): # Valid values tag = ExifTag('Exif.Photo.UserComment') self.assertEqual(tag.type, 'Comment') self.assertEqual(tag._convert_to_python('A comment'), 'A comment') for charset in ('Ascii', 'Jis', 'Unicode', 'Undefined', 'InvalidCharsetId'): self.assertEqual( tag._convert_to_python('charset="%s" A comment' % charset), 'A comment') for charset in ('Ascii', 'Jis', 'Undefined', 'InvalidCharsetId'): self.failIfEqual( tag._convert_to_bytes('charset="%s" déjà vu' % charset), 'déjà vu')
def test_convert_to_python_ascii(self): # Valid values: datetimes tag = ExifTag("Exif.Image.DateTime") self.assertEqual(tag.type, "Ascii") self.assertEqual(tag._convert_to_python("2009-03-01 12:46:51"), datetime.datetime(2009, 03, 01, 12, 46, 51)) self.assertEqual(tag._convert_to_python("2009:03:01 12:46:51"), datetime.datetime(2009, 03, 01, 12, 46, 51)) self.assertEqual(tag._convert_to_python("2009-03-01T12:46:51Z"), datetime.datetime(2009, 03, 01, 12, 46, 51)) # Valid values: dates tag = ExifTag("Exif.GPSInfo.GPSDateStamp") self.assertEqual(tag.type, "Ascii") self.assertEqual(tag._convert_to_python("2009:08:04"), datetime.date(2009, 8, 4)) # Valid values: strings tag = ExifTag("Exif.Image.Copyright") self.assertEqual(tag.type, "Ascii") self.assertEqual(tag._convert_to_python("Some text."), "Some text.") self.assertEqual( tag._convert_to_python(u"Some text with exotic chàräctérʐ."), u"Some text with exotic chàräctérʐ." ) # Invalid values: datetimes tag = ExifTag("Exif.Image.DateTime") self.assertEqual(tag.type, "Ascii") self.assertEqual(tag._convert_to_python("2009-13-01 12:46:51"), "2009-13-01 12:46:51") self.assertEqual(tag._convert_to_python("2009-12-01"), "2009-12-01") # Invalid values: dates tag = ExifTag("Exif.GPSInfo.GPSDateStamp") self.assertEqual(tag.type, "Ascii") self.assertEqual(tag._convert_to_python("2009:13:01"), "2009:13:01") self.assertEqual(tag._convert_to_python("2009-12-01"), "2009-12-01")
def test_convert_to_python_rational(self): # Valid values tag = ExifTag("Exif.Image.XResolution") self.assertEqual(tag.type, "Rational") self.assertEqual(tag._convert_to_python("5/3"), make_fraction(5, 3)) # Invalid values self.failUnlessRaises(ExifValueError, tag._convert_to_python, "invalid") self.failUnlessRaises(ExifValueError, tag._convert_to_python, "-5/3") self.failUnlessRaises(ExifValueError, tag._convert_to_python, "5 / 3") self.failUnlessRaises(ExifValueError, tag._convert_to_python, "5/-3")
def test_convert_to_python_rational(self): # Valid values tag = ExifTag('Exif.Image.XResolution') self.assertEqual(tag.type, 'Rational') self.assertEqual(tag._convert_to_python('5/3'), make_fraction(5, 3)) # Invalid values self.failUnlessRaises(ExifValueError, tag._convert_to_python, 'invalid') self.failUnlessRaises(ExifValueError, tag._convert_to_python, '-5/3') self.failUnlessRaises(ExifValueError, tag._convert_to_python, '5 / 3') self.failUnlessRaises(ExifValueError, tag._convert_to_python, '5/-3')
def test_convert_to_python_ascii(self): # Valid values: datetimes tag = ExifTag('Exif.Image.DateTime') self.assertEqual(tag.type, 'Ascii') self.assertEqual(tag._convert_to_python('2009-03-01 12:46:51'), datetime.datetime(2009, 3, 1, 12, 46, 51)) self.assertEqual(tag._convert_to_python('2009:03:01 12:46:51'), datetime.datetime(2009, 3, 1, 12, 46, 51)) self.assertEqual(tag._convert_to_python('2009-03-01T12:46:51Z'), datetime.datetime(2009, 3, 1, 12, 46, 51)) # Valid values: dates tag = ExifTag('Exif.GPSInfo.GPSDateStamp') self.assertEqual(tag.type, 'Ascii') self.assertEqual(tag._convert_to_python('2009:08:04'), datetime.date(2009, 8, 4)) # Valid values: strings tag = ExifTag('Exif.Image.Copyright') self.assertEqual(tag.type, 'Ascii') self.assertEqual(tag._convert_to_python('Some text.'), 'Some text.') self.assertEqual( tag._convert_to_python('Some text with exotic chàräctérʐ.'), 'Some text with exotic chàräctérʐ.') # Invalid values: datetimes tag = ExifTag('Exif.Image.DateTime') self.assertEqual(tag.type, 'Ascii') self.assertEqual(tag._convert_to_python('2009-13-01 12:46:51'), '2009-13-01 12:46:51') self.assertEqual(tag._convert_to_python('2009-12-01'), '2009-12-01') # Invalid values: dates tag = ExifTag('Exif.GPSInfo.GPSDateStamp') self.assertEqual(tag.type, 'Ascii') self.assertEqual(tag._convert_to_python('2009:13:01'), '2009:13:01') self.assertEqual(tag._convert_to_python('2009-12-01'), '2009-12-01')
def test_convert_to_python_ascii(self): # Valid values: datetimes tag = ExifTag('Exif.Image.DateTime') self.assertEqual(tag.type, 'Ascii') self.assertEqual(tag._convert_to_python('2009-03-01 12:46:51'), datetime.datetime(2009, 03, 01, 12, 46, 51)) self.assertEqual(tag._convert_to_python('2009:03:01 12:46:51'), datetime.datetime(2009, 03, 01, 12, 46, 51)) self.assertEqual(tag._convert_to_python('2009-03-01T12:46:51Z'), datetime.datetime(2009, 03, 01, 12, 46, 51)) # Valid values: dates tag = ExifTag('Exif.GPSInfo.GPSDateStamp') self.assertEqual(tag.type, 'Ascii') self.assertEqual(tag._convert_to_python('2009:08:04'), datetime.date(2009, 8, 4)) # Valid values: strings tag = ExifTag('Exif.Image.Copyright') self.assertEqual(tag.type, 'Ascii') self.assertEqual(tag._convert_to_python('Some text.'), 'Some text.') self.assertEqual(tag._convert_to_python(u'Some text with exotic chàräctérʐ.'), u'Some text with exotic chàräctérʐ.') # Invalid values: datetimes tag = ExifTag('Exif.Image.DateTime') self.assertEqual(tag.type, 'Ascii') self.assertEqual(tag._convert_to_python('2009-13-01 12:46:51'), '2009-13-01 12:46:51') self.assertEqual(tag._convert_to_python('2009-12-01'), '2009-12-01') # Invalid values: dates tag = ExifTag('Exif.GPSInfo.GPSDateStamp') self.assertEqual(tag.type, 'Ascii') self.assertEqual(tag._convert_to_python('2009:13:01'), '2009:13:01') self.assertEqual(tag._convert_to_python('2009-12-01'), '2009-12-01')
def test_convert_to_python_undefined(self): # Valid values tag = ExifTag("Exif.Photo.ExifVersion") self.assertEqual(tag.type, "Undefined") self.assertEqual(tag._convert_to_python("48 49 48 48"), "0100")
def test_convert_to_python_undefined(self): # Valid values tag = ExifTag('Exif.Photo.ExifVersion') self.assertEqual(tag.type, 'Undefined') self.assertEqual(tag._convert_to_python('48 49 48 48'), '0100')
def test_convert_to_python_byte(self): # Valid values tag = ExifTag('Exif.GPSInfo.GPSVersionID') self.assertEqual(tag.type, 'Byte') self.assertEqual(tag._convert_to_python('D'), 'D')
def test_convert_to_python_sbyte(self): # Valid values tag = ExifTag('Exif.Pentax.Temperature') self.assertEqual(tag.type, 'SByte') self.assertEqual(tag._convert_to_python('15'), '15')
def test_convert_to_python_sbyte(self): # Valid values tag = ExifTag("Exif.Pentax.Temperature") self.assertEqual(tag.type, "SByte") self.assertEqual(tag._convert_to_python("15"), "15")
def test_convert_to_python_byte(self): # Valid values tag = ExifTag("Exif.GPSInfo.GPSVersionID") self.assertEqual(tag.type, "Byte") self.assertEqual(tag._convert_to_python("D"), "D")