Ejemplo n.º 1
0
 def test_init(self):
     
     naam = Name(
         prepositie=None,
         voornaam=None,
         intrapositie='van het',
         geslachtsnaam='Reve',
         postpositie=None,
         volledige_naam='Gerard van het Reve',
         )
     
     self.assertEqual(naam.volledige_naam(), 'Gerard van het Reve')
     self.assertEqual(naam.geslachtsnaam(), 'Reve')
     naam = Name(
         prepositie='dhr.',
         voornaam='Gerard',
         intrapositie='van het',
         geslachtsnaam='Reve',
         postpositie='schrijver',
         volledige_naam='dhr. Gerard van het Reve, schrijver',
         )
     
     self.assertEqual(naam.prepositie(), 'dhr.')
     self.assertEqual(naam.voornaam(), 'Gerard')
     self.assertEqual(naam.intrapositie(), 'van het')
     self.assertEqual(naam.geslachtsnaam(), 'Reve')
     self.assertEqual(naam.postpositie(), 'schrijver')
     self.assertEqual(naam.geslachtsnaam(), 'Reve')
Ejemplo n.º 2
0
    def test_init(self):

        naam = Name(
            prepositie=None,
            voornaam=None,
            intrapositie='van het',
            geslachtsnaam='Reve',
            postpositie=None,
            volledige_naam='Gerard van het Reve',
        )

        self.assertEqual(naam.volledige_naam(), 'Gerard van het Reve')
        self.assertEqual(naam.geslachtsnaam(), 'Reve')
        naam = Name(
            prepositie='dhr.',
            voornaam='Gerard',
            intrapositie='van het',
            geslachtsnaam='Reve',
            postpositie='schrijver',
            volledige_naam='dhr. Gerard van het Reve, schrijver',
        )

        self.assertEqual(naam.prepositie(), 'dhr.')
        self.assertEqual(naam.voornaam(), 'Gerard')
        self.assertEqual(naam.intrapositie(), 'van het')
        self.assertEqual(naam.geslachtsnaam(), 'Reve')
        self.assertEqual(naam.postpositie(), 'schrijver')
        self.assertEqual(naam.geslachtsnaam(), 'Reve')
Ejemplo n.º 3
0
    def test_sort_key(self):
        s = '<persName>Jelle <name type="geslachtsnaam">Gerbrandy</name></persName>'
        n = Name().from_string(s)
        self.assertEqual(n.sort_key()[:15], 'gerbrandy jelle')

        s = '<persName>Jelle <name type="geslachtsnaam">Éerbrandy</name></persName>'
        n = Name().from_string(s)
        self.assertEqual(n.sort_key()[:15], 'eerbrandy jelle')

        n = Name('São Paolo')
        self.assertEqual(n.geslachtsnaam(), 'Paolo')  # Automatically guessed
        self.assertEqual(n.sort_key().split()[0], 'paolo')

        n = Name('(Hans) Christian')
        self.assertEqual(n.sort_key().split()[0], 'christian')

        n = Name('Løwencron')
        self.assertEqual(n.sort_key().split()[0], 'loewencron')

        n = Name('?, Pietje')
        self.assertTrue(n.sort_key() > 'a', n.sort_key())

        n = Name("L'Hermite")
        self.assertTrue(n.sort_key().startswith('herm'))

        n = Name("La Hermite")
        self.assertTrue(n.sort_key().startswith('herm')), n.sort_key()

        n = Name('Löwel')
        self.assertTrue(n.sort_key().startswith('lo')), n.sort_key()

        n = Name(
            "1'Aubepine, Charles de")  #this name starts with the numeral "1"
        self.assertTrue(n.sort_key().startswith('au')), n.sort_key()

        n = Name('Géo d\'Aconit')
        self.assertTrue(n.sort_key().startswith('aco'))

        s = '<persName>Samuel <name type="geslachtsnaam">Beckett</name></persName>'
        n1 = Name().from_string(s)
        s = '<persName>Beckett, Samuel</persName>'
        n2 = Name().from_string(s)
        self.assertEqual(n1.sort_key(), n2.sort_key())
Ejemplo n.º 4
0
    def test_sort_key(self):
        s ='<persName>Jelle <name type="geslachtsnaam">Gerbrandy</name></persName>'
        n = Name().from_string(s)
        self.assertEqual(n.sort_key()[:15], 'gerbrandy jelle')

        s ='<persName>Jelle <name type="geslachtsnaam">Éerbrandy</name></persName>'
        n = Name().from_string(s)
        self.assertEqual(n.sort_key()[:15], 'eerbrandy jelle')

        n = Name(u'São Paolo')
        self.assertEqual(n.geslachtsnaam(), 'Paolo') # Automatically guessed
        self.assertEqual(n.sort_key().split()[0], 'paolo')
        
        n = Name('(Hans) Christian')
        self.assertEqual(n.sort_key().split()[0], 'christian')
        
        n =Name(u'Løwencron')
        self.assertEqual(n.sort_key().split()[0], 'loewencron')
        
        n = Name(u'?, Pietje')
        self.assertTrue(n.sort_key() > 'a', n.sort_key())    
        
        n = Name("L'Hermite")    
        self.assertTrue(n.sort_key().startswith('herm'))
        
        n = Name("La Hermite")    
        self.assertTrue(n.sort_key().startswith('herm')), n.sort_key()
        
        n = Name(u'Löwel')
        self.assertTrue(n.sort_key().startswith('lo')), n.sort_key()
        
        n = Name("1'Aubepine, Charles de") #this name starts with the numeral "1"
        self.assertTrue(n.sort_key().startswith('au')), n.sort_key()
        
        n = Name(u'Géo d\'Aconit')
        self.assertTrue(n.sort_key().startswith('aco'))
        
        s ='<persName>Samuel <name type="geslachtsnaam">Beckett</name></persName>'
        n1 = Name().from_string(s)
        s ='<persName>Beckett, Samuel</persName>'
        n2 = Name().from_string(s)
        self.assertEqual(n1.sort_key(), n2.sort_key())
Ejemplo n.º 5
0
    def test_normal_form(self):

        s ='<persName>Jelle <name type="geslachtsnaam">Gerbrandy</name></persName>'
        naam = Name().from_string(s)
        
        self.assertEqual(naam.geslachtsnaam(), u'Gerbrandy')
        self.assertEqual(naam.guess_normal_form(), u'Gerbrandy, Jelle')
        self.assertEqual(naam.guess_normal_form2(), u'Jelle Gerbrandy')

        naam = Name('Jelle Gerbrandy')
        self.assertEqual(naam.guess_normal_form(), u'Gerbrandy, Jelle')
        naam.guess_geslachtsnaam()
        self.assertEqual(naam.guess_normal_form2(), u'Jelle Gerbrandy')

        naam = Name('Gerbrandy, Jelle')
        self.assertEqual(naam.guess_normal_form(), u'Gerbrandy, Jelle')
        self.assertEqual(naam.guess_normal_form2(), u'Jelle Gerbrandy')

        naam = Name(voornaam='Hendrik IV')
        self.assertEqual(naam.geslachtsnaam(), '')
        self.assertEqual(naam.guess_normal_form(), u'Hendrik IV')
        self.assertEqual(naam.guess_normal_form2(), u'Hendrik IV')
        n = Name().from_string("""<persName>
<name type="voornaam">Hendrik IV</name>
</persName>""")
        n.guess_geslachtsnaam()
        assert not n.geslachtsnaam(), n.to_string()
        self.assertEqual(n.guess_normal_form(), 'Hendrik IV')
        self.assertEqual(naam.guess_normal_form2(), u'Hendrik IV')
        
        s = """<persName>
  <name type="geslachtsnaam">Xerxes</name>
</persName>"""
        n = Name().from_string(s)
        self.assertEqual(n.guess_normal_form(), 'Xerxes')
        
        s = '<persName><name type="geslachtsnaam">A</name>, Arien</persName>'
        n = Name().from_string(s)
        self.assertEqual(n.guess_normal_form(), 'A, Arien')
        self.assertEqual(n.guess_normal_form2(), 'Arien A')
        
        n = Name('A.B.J.Teulings')
        self.assertEqual(n.guess_normal_form(), 'Teulings, A.B.J.')
        self.assertEqual(n.guess_normal_form2(), 'A.B.J.Teulings')
        
        naam = Name('JOHAN (Johann) VII')   
        self.assertEqual(naam.guess_normal_form(), 'Johan VII')
        
        naam = Name().from_string('<persName><name type="geslachtsnaam">Dirk</name>, VI, Theodericus</persName>')  
        self.assertEqual(naam.guess_normal_form(), 'Dirk, VI, Theodericus')
        
        naam = Name('Lodewijk XVIII')   
        self.assertEqual(naam.guess_normal_form2(), 'Lodewijk XVIII')
        
        s = """<persName> <name type="voornaam">Trijn</name> <name type="intrapositie">van</name> <name type="geslachtsnaam">Leemput</name></persName>"""
        naam = Name().from_string(s)
        
        self.assertEqual(naam.guess_normal_form(), 'Leemput, Trijn van')
        self.assertEqual(naam.guess_normal_form2(), 'Trijn van Leemput')
        
        n5 = Name('Piet Gerbrandy', geslachtsnaam='Gerbrandy')
        self.assertEqual(n5.guess_normal_form(), 'Gerbrandy, Piet')
        self.assertEqual(n5.guess_normal_form2(), 'Piet Gerbrandy')
        
#        n6 = Name('Piet Gerbrandy', geslachtsnaam='Piet')
#        n6._tokenize()
#        self.assertEqual(n6.guess_normal_form(), 'Piet Gerbrandy')
#        self.assertEqual(n6.guess_normal_form2(), 'Gerbrandy Piet')
        
        n = Name('Hermansz')
        self.assertEqual(n.guess_normal_form(), 'Hermansz')
        self.assertEqual(n.geslachtsnaam(), 'Hermansz')
        
        n = Name('Ada, van Holland (1)')
        self.assertEqual(n.guess_normal_form(), 'Ada, van Holland')
       
        n = Name('Hees - B.P. van') 
        self.assertEqual(n.guess_normal_form(), 'Hees - B.P. van')
        
        n = Name('Hees - B.P. van (1234-1235)') 
        self.assertEqual(n.guess_normal_form(), 'Hees - B.P. van')
       
        n = Name('Hoeven, Abraham des Amorie van der (1)')
        
        self.assertEqual(n.guess_normal_form(), 'Hoeven, Abraham des Amorie van der')
        self.assertEqual(n.guess_normal_form2(), 'Abraham des Amorie van der Hoeven')
        
        n = Name('Schepper, Gerhard Antoni IJssel de')
        self.assertEqual(n.guess_normal_form(), 'Schepper, Gerhard Antoni IJssel de')
Ejemplo n.º 6
0
    def test_from_xml(self):
        s ='<persName>Jelle <name type="geslachtsnaam">Gerbrandy</name></persName>'
        n = Name().from_string(s)
#        assert 0, etree.fromstring(s).xpath('//name[@type="geslachtsnaam"]')
        self.assertEqual(n.geslachtsnaam(), 'Gerbrandy')
        self.assertEqual(n.to_string(), s)
Ejemplo n.º 7
0
    def test_normal_form(self):

        s = '<persName>Jelle <name type="geslachtsnaam">Gerbrandy</name></persName>'
        naam = Name().from_string(s)

        self.assertEqual(naam.geslachtsnaam(), 'Gerbrandy')
        self.assertEqual(naam.guess_normal_form(), 'Gerbrandy, Jelle')
        self.assertEqual(naam.guess_normal_form2(), 'Jelle Gerbrandy')

        naam = Name('Jelle Gerbrandy')
        self.assertEqual(naam.guess_normal_form(), 'Gerbrandy, Jelle')
        naam.guess_geslachtsnaam()
        self.assertEqual(naam.guess_normal_form2(), 'Jelle Gerbrandy')

        naam = Name('Gerbrandy, Jelle')
        self.assertEqual(naam.guess_normal_form(), 'Gerbrandy, Jelle')
        self.assertEqual(naam.guess_normal_form2(), 'Jelle Gerbrandy')

        naam = Name(voornaam='Hendrik IV')
        self.assertEqual(naam.geslachtsnaam(), '')
        self.assertEqual(naam.guess_normal_form(), 'Hendrik IV')
        self.assertEqual(naam.guess_normal_form2(), 'Hendrik IV')
        n = Name().from_string("""<persName>
<name type="voornaam">Hendrik IV</name>
</persName>""")
        n.guess_geslachtsnaam()
        assert not n.geslachtsnaam(), n.to_string()
        self.assertEqual(n.guess_normal_form(), 'Hendrik IV')
        self.assertEqual(naam.guess_normal_form2(), 'Hendrik IV')

        s = """<persName>
  <name type="geslachtsnaam">Xerxes</name>
</persName>"""
        n = Name().from_string(s)
        self.assertEqual(n.guess_normal_form(), 'Xerxes')

        s = '<persName><name type="geslachtsnaam">A</name>, Arien</persName>'
        n = Name().from_string(s)
        self.assertEqual(n.guess_normal_form(), 'A, Arien')
        self.assertEqual(n.guess_normal_form2(), 'Arien A')

        n = Name('A.B.J.Teulings')
        self.assertEqual(n.guess_normal_form(), 'Teulings, A.B.J.')
        self.assertEqual(n.guess_normal_form2(), 'A.B.J.Teulings')

        naam = Name('JOHAN (Johann) VII')
        self.assertEqual(naam.guess_normal_form(), 'Johan VII')

        naam = Name().from_string(
            '<persName><name type="geslachtsnaam">Dirk</name>, VI, Theodericus</persName>'
        )
        self.assertEqual(naam.guess_normal_form(), 'Dirk, VI, Theodericus')

        naam = Name('Lodewijk XVIII')
        self.assertEqual(naam.guess_normal_form2(), 'Lodewijk XVIII')

        s = """<persName> <name type="voornaam">Trijn</name> <name type="intrapositie">van</name> <name type="geslachtsnaam">Leemput</name></persName>"""
        naam = Name().from_string(s)

        self.assertEqual(naam.guess_normal_form(), 'Leemput, Trijn van')
        self.assertEqual(naam.guess_normal_form2(), 'Trijn van Leemput')

        n5 = Name('Piet Gerbrandy', geslachtsnaam='Gerbrandy')
        self.assertEqual(n5.guess_normal_form(), 'Gerbrandy, Piet')
        self.assertEqual(n5.guess_normal_form2(), 'Piet Gerbrandy')

        #        n6 = Name('Piet Gerbrandy', geslachtsnaam='Piet')
        #        n6._tokenize()
        #        self.assertEqual(n6.guess_normal_form(), 'Piet Gerbrandy')
        #        self.assertEqual(n6.guess_normal_form2(), 'Gerbrandy Piet')

        n = Name('Hermansz')
        self.assertEqual(n.guess_normal_form(), 'Hermansz')
        self.assertEqual(n.geslachtsnaam(), 'Hermansz')

        n = Name('Ada, van Holland (1)')
        self.assertEqual(n.guess_normal_form(), 'Ada, van Holland')

        n = Name('Hees - B.P. van')
        self.assertEqual(n.guess_normal_form(), 'Hees - B.P. van')

        n = Name('Hees - B.P. van (1234-1235)')
        self.assertEqual(n.guess_normal_form(), 'Hees - B.P. van')

        n = Name('Hoeven, Abraham des Amorie van der (1)')

        self.assertEqual(n.guess_normal_form(),
                         'Hoeven, Abraham des Amorie van der')
        self.assertEqual(n.guess_normal_form2(),
                         'Abraham des Amorie van der Hoeven')

        n = Name('Schepper, Gerhard Antoni IJssel de')
        self.assertEqual(n.guess_normal_form(),
                         'Schepper, Gerhard Antoni IJssel de')
Ejemplo n.º 8
0
 def test_from_xml(self):
     s = '<persName>Jelle <name type="geslachtsnaam">Gerbrandy</name></persName>'
     n = Name().from_string(s)
     #        assert 0, etree.fromstring(s).xpath('//name[@type="geslachtsnaam"]')
     self.assertEqual(n.geslachtsnaam(), 'Gerbrandy')
     self.assertEqual(n.to_string(), s)