예제 #1
0
    def __call__(self):
        import pkg_resources

        filename = pkg_resources.resource_filename(__name__, "../tests/perspektivia2.xml")
        data = perspektivia_parser.parse(file(filename).read())
        # The order is IMPORTANT!
        self._handleBooks(data["books"])
        self._handleReviews(data["reviews"])
예제 #2
0
    def testImportGood(self):
        should_be = {'books': [{'creator': [{'firstname': 'Dieter R.', 'lastname': 'Bauer'},
                        {'firstname': 'Johannes', 'lastname': 'Dillinger'},
                        {'firstname': u'J\xfcrgen Michael',
                         'lastname': u'Schmidt'}],
            'date': datetime.datetime(2010, 6, 30, 0, 0),
            'format': 'application/html',
            'id': 'oai:perspectivia.net.dhi-paris.francia/francia-recensio/rev-books/2010/978-3-89534-732-0',
            'identifier': '978-3-89534-732-0',
            'publisher': u'Verlag f\xfcr Regionalgeschichte, Bielefeld',
            'relation': 'http://www.perspectivia.net/content/publikationen/francia/francia-recensio/2010-2/FN/bauer-et-al_pillorget',
            'rights': '',
            'source': '',
            'subject': [],
            'title': 'Hexenprozess und Staatsbildung/Witch-Trials and State-Building',
            'type': 'Book'}],
 'reviews': [{'creator': [{'firstname': u'Ren\xe9',
                           'lastname': u'Pillorget'}],
              'date': datetime.datetime(2010, 6, 2, 0, 0),
              'format': 'application/html',
              'id': 'oai:perspectivia.net.dhi-paris.francia/francia-recensio/2010-2/FN/bauer-et-al_pillorget',
              'identifier': 'http://www.perspectivia.net/content/publikationen/francia/francia-recensio/2010-2/FN/bauer-et-al_pillorget',
              'publisher': 'perspectivia.net',
              'relation': '978-3-89534-732-0',
              'rights': 'by-nc-ne-3.0-de, perspectivia.net',
              'source': u'Perspectivia.net, Francia Recensio 2010-2, Fr\xfche Neuzeit \u2013 Revolution \u2013 Empire (1500\u20131815)',
              'subject': ['340.09',
                          't1.09024',
                          't1.09031',
                          't1.09032',
                          '940',
                          'Hexenverfolgung',
                          'Staat'],
              'title': u'D. Bauer, J. Dillinger, J. Schmidt, Hexenprozess und Staatsbildung (Ren\xe9 Pillorget)',
              'type': 'Review'}]}

        data = perspektivia_parser.parse(file(testdata_filename).read())
        self.assertEquals(data, should_be)
예제 #3
0
 def testRealDataIsEnough(self):
     data = perspektivia_parser.parse(file(testdata2_filename).read())
     self.assertEquals(997, len(data['books']), "Not enough books?")
     self.assertEquals(919, len(data['reviews']))
예제 #4
0
 def testRealDataCanPickle(self):
     data = perspektivia_parser.parse(file(testdata2_filename).read())
     import pickle
     for x in data['books'] + data['reviews']:
         pickle.dumps(x)