~osomon/pyexiv2/pyexiv2-0.3

« back to all changes in this revision

Viewing changes to test/xmp.py

  • Committer: Olivier Tilloy
  • Date: 2010-12-26 18:30:33 UTC
  • mto: This revision was merged to the branch mainline in revision 348.
  • Revision ID: olivier@tilloy.net-20101226183033-m0xvuldnq6bq8jk3
Handle fractions in a transparent manner,
using the convenience functions defined in module pyexiv2.utils.

Show diffs side-by-side

added added

removed removed

Lines of Context:
28
28
 
29
29
from pyexiv2.xmp import XmpTag, XmpValueError, register_namespace, \
30
30
                        unregister_namespace, unregister_namespaces
31
 
from pyexiv2.utils import FixedOffset, Rational, Fraction
 
31
from pyexiv2.utils import FixedOffset, make_fraction
32
32
from pyexiv2.metadata import ImageMetadata
33
33
 
34
34
import datetime
288
288
        # Valid values
289
289
        tag = XmpTag('Xmp.xmpDM.videoPixelAspectRatio')
290
290
        self.assertEqual(tag.type, 'Rational')
291
 
        self.assertEqual(tag._convert_to_python('5/3', 'Rational'), Rational(5, 3))
292
 
        self.assertEqual(tag._convert_to_python('-5/3', 'Rational'), Rational(-5, 3))
 
291
        self.assertEqual(tag._convert_to_python('5/3', 'Rational'), make_fraction(5, 3))
 
292
        self.assertEqual(tag._convert_to_python('-5/3', 'Rational'), make_fraction(-5, 3))
293
293
 
294
294
        # Invalid values
295
295
        self.failUnlessRaises(XmpValueError, tag._convert_to_python, 'invalid', 'Rational')
300
300
        # Valid values
301
301
        tag = XmpTag('Xmp.xmpDM.videoPixelAspectRatio')
302
302
        self.assertEqual(tag.type, 'Rational')
303
 
        self.assertEqual(tag._convert_to_string(Rational(5, 3), 'Rational'), '5/3')
304
 
        self.assertEqual(tag._convert_to_string(Rational(-5, 3), 'Rational'), '-5/3')
305
 
        if Fraction is not None:
306
 
            self.assertEqual(tag._convert_to_string(Fraction('1.6'), 'Rational'), '8/5')
307
 
            self.assertEqual(tag._convert_to_string(Fraction('-1.6'), 'Rational'), '-8/5')
 
303
        self.assertEqual(tag._convert_to_string(make_fraction(5, 3), 'Rational'), '5/3')
 
304
        self.assertEqual(tag._convert_to_string(make_fraction(-5, 3), 'Rational'), '-5/3')
308
305
 
309
306
        # Invalid values
310
307
        self.failUnlessRaises(XmpValueError, tag._convert_to_string, 'invalid', 'Rational')