1 # -*- coding: utf-8 -*-
3 # This file is part of Librarian, licensed under GNU Affero GPLv3 or later.
4 # Copyright © Fundacja Nowoczesna Polska. See NOTICE for more information.
6 from librarian import picture, dcparser
8 from nose.tools import *
9 from os.path import splitext
10 from tests.utils import get_all_fixtures, get_fixture
14 def test_wlpictureuri():
15 uri = picture.WLPictureURI('http://wolnelektury.pl/katalog/obraz/angelus-novus')
17 def check_load(xml_file):
18 pi = dcparser.parse(xml_file, picture.PictureInfo)
20 assert isinstance(pi, picture.PictureInfo)
24 for fixture in get_all_fixtures('picture', '*.xml'):
25 yield check_load, fixture
29 wlp = picture.WLPicture.from_file(open(get_fixture('picture', 'angelus-novus.xml')))
32 # from nose.tools import set_trace; set_trace()
33 assert pi.type[0] == u"Image"
34 assert pi.mime_type == u'image/jpeg' == wlp.mime_type
35 assert wlp.slug == 'angelus-novus'
37 assert path.exists(wlp.image_path)
39 f = wlp.image_file('r')
42 def test_picture_parts():
43 wlp = picture.WLPicture.from_file(open(get_fixture('picture', 'angelus-novus.xml')))
44 parts = list(wlp.partiter())
46 assert len(parts) == expect_parts, "there should be %d parts of the picture" % expect_parts
56 names.add(p['object'])
58 assert motifs == set([u'anioł historii', u'spojrzenie']), "missing motifs, got: %s" % motifs
59 assert names == set([u'obraz cały', u'skrzydło']), 'missing objects, got: %s' % names