Xqt has submitted this change and it was merged.
Change subject: PEP8 changes for test stuff ......................................................................
PEP8 changes for test stuff
Change-Id: I281e8b1ff765d7ea6b005bb79d8449cbb6b1cd78 --- M tests/test_wikipedia.py M tests/test_wiktionary.py 2 files changed, 277 insertions(+), 236 deletions(-)
Approvals: Xqt: Looks good to me, approved jenkins-bot: Verified
diff --git a/tests/test_wikipedia.py b/tests/test_wikipedia.py index 9195de5..678e6ce 100644 --- a/tests/test_wikipedia.py +++ b/tests/test_wikipedia.py @@ -22,156 +22,152 @@
# a set of hard pages for Page.getSections() PAGE_SET_Page_getSections = [ -u'Benutzer Diskussion:Reiner Stoppok/Dachboden', -u'Wikipedia:Löschkandidaten/12. Dezember 2009', # https://bugzilla.wikimedia.org/show_bug.cgi?id=32753 -u'Wikipedia:Löschkandidaten/28. Juli 2006', -u'Wikipedia Diskussion:Persönliche Bekanntschaften/Archiv/2008', -u'Wikipedia:WikiProjekt München', # bugzilla:32753 -u'Wikipedia Diskussion:Hauptseite', -u'Diskussion:Selbstkühlendes Bierfass', -u'Benutzer Diskussion:P.Copp', -u'Benutzer Diskussion:David Ludwig', -u'Diskussion:Zufall', -u'Benutzer Diskussion:Dekator', -u'Benutzer Diskussion:Bautsch', -u'Benutzer Diskussion:Henbeu', -u'Benutzer Diskussion:Olaf Studt', -u'Diskussion:K.-o.-Tropfen', -u'Portal Diskussion:Fußball/Archiv6', -u'Benutzer Diskussion:Roland.M/Archiv2006-2007', -u'Benutzer Diskussion:Tigerente/Archiv2006', -u'Wikipedia:WikiProjekt Bremen/Beobachtungsliste', # bugzilla:32753 -u'Diskussion:Wirtschaft Chiles', -u'Benutzer Diskussion:Ausgangskontrolle', -u'Benutzer Diskussion:Amnesty.tina', -#u'Diskussion:Chicagoer Schule', # [ DELETED ] -#u'Wikipedia Diskussion:Hausaufgabenhilfe', # [ DELETED ] -u'Benutzer Diskussion:Niemot', -u'Benutzer Diskussion:Computer356', -u'Benutzer Diskussion:Bautsch', -u'Benutzer Diskussion:Infinite Monkey', -u'Benutzer Diskussion:Lsjm', -u'Benutzer Diskussion:Eduardo79', -u'Benutzer Diskussion:Rigidmc', -u'Benutzer Diskussion:Gilgamesch2010', -u'Benutzer Diskussion:Paulusschinew', -u'Benutzer Diskussion:Hollister71', -u'Benutzer Diskussion:Schott-PR', -u'Benutzer Diskussion:RoBoVsKi', -#u'Benutzer Diskussion:Tjaraaa', # [ REDIRECTED ] -u'Benutzer Diskussion:Jason Hits', -u'Benutzer Diskussion:Fit-Fabrik', -u'Benutzer Diskussion:SpaceRazor', -u'Benutzer Diskussion:Fachversicherer', -u'Benutzer Diskussion:Qniemiec', -u'Benutzer Diskussion:Ilikeriri', -u'Benutzer Diskussion:Casinoroyal', -u'Benutzer Diskussion:Havanabua', -u'Benutzer Diskussion:Euku/2010/II. Quartal', # bugzilla:32753 -u'Benutzer Diskussion:Mo4jolo/Archiv/2008', -u'Benutzer Diskussion:Eschweiler', -u'Benutzer Diskussion:Marilyn.hanson', -u'Benutzer Diskussion:A.Savin', -u'Benutzer Diskussion:W!B:/Knacknüsse', -u'Benutzer Diskussion:Euku/2009/II. Halbjahr', -u'Benutzer Diskussion:Gamma', -u'Hilfe Diskussion:Captcha', -u'Benutzer Diskussion:Zacke/Kokytos', -u'Benutzer Diskussion:Wolfgang1018', -u'Benutzer Diskussion:El bes', -u'Benutzer Diskussion:Janneman/Orkus', -u'Wikipedia Diskussion:Shortcuts', -u'Benutzer Diskussion:PDD', -u'Wikipedia:WikiProjekt Vorlagen/Werkstatt', -u'Wikipedia Diskussion:WikiProjekt Wuppertal/2008', -u'Benutzer Diskussion:SchirmerPower', -u'Benutzer Diskussion:Stefan Kühn/Check Wikipedia', -u'Benutzer Diskussion:Elian', -u'Wikipedia:Fragen zur Wikipedia', -u'Benutzer Diskussion:Michael Kühntopf', -u'Benutzer Diskussion:Drahreg01', -u'Wikipedia:Vandalismusmeldung', -u'Benutzer Diskussion:Jesusfreund', -u'Benutzer Diskussion:Velipp28', -u'Benutzer Diskussion:Jotge', -u'Benutzer Diskussion:DAJ', -u'Benutzer Diskussion:Karl-G. Walther', -u'Benutzer Diskussion:Pincerno', -u'Benutzer Diskussion:Polluks', -u'Portal:Serbien/Nachrichtenarchiv', -u'Benutzer Diskussion:Elly200253', -u'Benutzer Diskussion:Yak', -u'Wikipedia:Auskunft', -u'Benutzer Diskussion:Toolittle', -u'Benutzer Diskussion:He3nry', -u'Benutzer Diskussion:Euku/2009/I. Halbjahr', -u'Benutzer Diskussion:Elchbauer' , -u'Benutzer Diskussion:Matthiasb', -u'Benutzer Diskussion:Gripweed', -u'Wikipedia:Löschkandidaten/10. Februar 2011', -u'Benutzer Diskussion:Funkruf', -u'Benutzer Diskussion:Vux', -u'Benutzer Diskussion:Zollernalb/Archiv/2008' , -u'Benutzer Diskussion:Geiserich77/Archiv2009', -u'Benutzer Diskussion:Markus Mueller/Archiv' , -u'Benutzer Diskussion:Capaci34/Archiv/2009', -u'Wikipedia Diskussion:Persönliche Bekanntschaften/Archiv/2010', -u'Benutzer Diskussion:Leithian/Archiv/2009/Aug', -u'Benutzer Diskussion:Lady Whistler/Archiv/2010', -u'Benutzer Diskussion:Jens Liebenau/Archiv1', -u'Benutzer Diskussion:Tilla/Archiv/2009/Juli', -u'Benutzer Diskussion:Xqt', -u'Vorlage Diskussion:Benutzerdiskussionsseite', -u'Wikipedia Diskussion:Meinungsbilder/Gestaltung von Signaturen', -u'Benutzer Diskussion:JvB1953', -u'Benutzer Diskussion:J.-H. Janßen', -u'Benutzer Diskussion:Xqt/Archiv/2009-1', -u'Hilfe Diskussion:Weiterleitung/Archiv/1', -u'Benutzer Diskussion:Raymond/Archiv 2006-2', -u'Wikipedia Diskussion:Projektneuheiten/Archiv/2009', -u'Vorlage Diskussion:Erledigt', -u'Wikipedia:Bots/Anfragen/Archiv/2008-2', -u'Diskussion:Golfschläger/Archiv', -u'Wikipedia:Löschkandidaten/9. Januar 2006', -u'Benutzer Diskussion:Church of emacs/Archiv5', -u'Wikipedia:WikiProjekt Vorlagen/Werkstatt/Archiv 2006', -u'Wikipedia Diskussion:Löschkandidaten/Archiv7', -u'Benutzer Diskussion:Physikr', -u'Benutzer Diskussion:Haring/Archiv, Dez. 2005', -u'Benutzer Diskussion:Seewolf/Archiv 7', -u'Benutzer Diskussion:Mipago/Archiv', -u'Wikipedia Diskussion:WikiProjekt Syntaxkorrektur/Archiv/2009', -u'Benutzer Diskussion:PDD/monobook.js', -u'Wikipedia:Löschkandidaten/9. April 2010', -u'Benutzer Diskussion:Augiasstallputzer/Archiv', -u'Hilfe Diskussion:Variablen', -u'Benutzer Diskussion:Merlissimo/Archiv/2009', -u'Benutzer Diskussion:Elya/Archiv 2007-01', -u'Benutzer Diskussion:Merlissimo/Archiv/2010', -u'Benutzer Diskussion:Jonathan Groß/Archiv 2006', -u'Benutzer Diskussion:Erendissss', -u'Diskussion:Ilse Elsner', -u'Diskussion:Pedro Muñoz', -u'Diskussion:Stimmkreis Nürnberg-Süd', -u'Diskussion:Geschichte der Sozialversicherung in Deutschland', -u'Diskussion:Josef Kappius', -u'Diskussion:Bibra (Adelsgeschlecht)', -#u'Diskussion:Stimmkreis Regensburg-Land-Ost', # [ DELETED ] -u'Diskussion:Volkmar Kretkowski', -u'Diskussion:KS Cracovia', -u'Diskussion:Livingston (Izabal)', -u'Wikipedia Diskussion:WikiProjekt Gesprochene Wikipedia/Howto', -u'Benutzer Diskussion:Otfried Lieberknecht', -u'Benutzer Diskussion:Jahn Henne', -u'Wikipedia:WikiProjekt Begriffsklärungsseiten/Fließband', -u'Wikipedia:Löschprüfung', -u'Benutzer Diskussion:Hubertl', -u'Benutzer Diskussion:Diba', -u'Wikipedia:Qualitätssicherung/11. März 2012', -u'Benutzer Diskussion:Heubergen/Archiv/2012', -u'Benutzer Diskussion:DrTrigon/Archiv', -u'Wikipedia:Fotowerkstatt', -u'Wikipedia:Urheberrechtsfragen', + u'Benutzer Diskussion:Reiner Stoppok/Dachboden', + u'Wikipedia:Löschkandidaten/12. Dezember 2009', # https://bugzilla.wikimedia.org/show_bug.cgi?id=32753 + u'Wikipedia:Löschkandidaten/28. Juli 2006', + u'Wikipedia Diskussion:Persönliche Bekanntschaften/Archiv/2008', + u'Wikipedia:WikiProjekt München', # bugzilla:32753 + u'Wikipedia Diskussion:Hauptseite', + u'Diskussion:Selbstkühlendes Bierfass', + u'Benutzer Diskussion:P.Copp', + u'Benutzer Diskussion:David Ludwig', + u'Diskussion:Zufall', + u'Benutzer Diskussion:Dekator', + u'Benutzer Diskussion:Bautsch', + u'Benutzer Diskussion:Henbeu', + u'Benutzer Diskussion:Olaf Studt', + u'Diskussion:K.-o.-Tropfen', + u'Portal Diskussion:Fußball/Archiv6', + u'Benutzer Diskussion:Roland.M/Archiv2006-2007', + u'Benutzer Diskussion:Tigerente/Archiv2006', + u'Wikipedia:WikiProjekt Bremen/Beobachtungsliste', # bugzilla:32753 + u'Diskussion:Wirtschaft Chiles', + u'Benutzer Diskussion:Ausgangskontrolle', + u'Benutzer Diskussion:Amnesty.tina', + u'Benutzer Diskussion:Niemot', + u'Benutzer Diskussion:Computer356', + u'Benutzer Diskussion:Bautsch', + u'Benutzer Diskussion:Infinite Monkey', + u'Benutzer Diskussion:Lsjm', + u'Benutzer Diskussion:Eduardo79', + u'Benutzer Diskussion:Rigidmc', + u'Benutzer Diskussion:Gilgamesch2010', + u'Benutzer Diskussion:Paulusschinew', + u'Benutzer Diskussion:Hollister71', + u'Benutzer Diskussion:Schott-PR', + u'Benutzer Diskussion:RoBoVsKi', + u'Benutzer Diskussion:Jason Hits', + u'Benutzer Diskussion:Fit-Fabrik', + u'Benutzer Diskussion:SpaceRazor', + u'Benutzer Diskussion:Fachversicherer', + u'Benutzer Diskussion:Qniemiec', + u'Benutzer Diskussion:Ilikeriri', + u'Benutzer Diskussion:Casinoroyal', + u'Benutzer Diskussion:Havanabua', + u'Benutzer Diskussion:Euku/2010/II. Quartal', # bugzilla:32753 + u'Benutzer Diskussion:Mo4jolo/Archiv/2008', + u'Benutzer Diskussion:Eschweiler', + u'Benutzer Diskussion:Marilyn.hanson', + u'Benutzer Diskussion:A.Savin', + u'Benutzer Diskussion:W!B:/Knacknüsse', + u'Benutzer Diskussion:Euku/2009/II. Halbjahr', + u'Benutzer Diskussion:Gamma', + u'Hilfe Diskussion:Captcha', + u'Benutzer Diskussion:Zacke/Kokytos', + u'Benutzer Diskussion:Wolfgang1018', + u'Benutzer Diskussion:El bes', + u'Benutzer Diskussion:Janneman/Orkus', + u'Wikipedia Diskussion:Shortcuts', + u'Benutzer Diskussion:PDD', + u'Wikipedia:WikiProjekt Vorlagen/Werkstatt', + u'Wikipedia Diskussion:WikiProjekt Wuppertal/2008', + u'Benutzer Diskussion:SchirmerPower', + u'Benutzer Diskussion:Stefan Kühn/Check Wikipedia', + u'Benutzer Diskussion:Elian', + u'Wikipedia:Fragen zur Wikipedia', + u'Benutzer Diskussion:Michael Kühntopf', + u'Benutzer Diskussion:Drahreg01', + u'Wikipedia:Vandalismusmeldung', + u'Benutzer Diskussion:Jesusfreund', + u'Benutzer Diskussion:Velipp28', + u'Benutzer Diskussion:Jotge', + u'Benutzer Diskussion:DAJ', + u'Benutzer Diskussion:Karl-G. Walther', + u'Benutzer Diskussion:Pincerno', + u'Benutzer Diskussion:Polluks', + u'Portal:Serbien/Nachrichtenarchiv', + u'Benutzer Diskussion:Elly200253', + u'Benutzer Diskussion:Yak', + u'Wikipedia:Auskunft', + u'Benutzer Diskussion:Toolittle', + u'Benutzer Diskussion:He3nry', + u'Benutzer Diskussion:Euku/2009/I. Halbjahr', + u'Benutzer Diskussion:Elchbauer', + u'Benutzer Diskussion:Matthiasb', + u'Benutzer Diskussion:Gripweed', + u'Wikipedia:Löschkandidaten/10. Februar 2011', + u'Benutzer Diskussion:Funkruf', + u'Benutzer Diskussion:Vux', + u'Benutzer Diskussion:Zollernalb/Archiv/2008', + u'Benutzer Diskussion:Geiserich77/Archiv2009', + u'Benutzer Diskussion:Markus Mueller/Archiv', + u'Benutzer Diskussion:Capaci34/Archiv/2009', + u'Wikipedia Diskussion:Persönliche Bekanntschaften/Archiv/2010', + u'Benutzer Diskussion:Leithian/Archiv/2009/Aug', + u'Benutzer Diskussion:Lady Whistler/Archiv/2010', + u'Benutzer Diskussion:Jens Liebenau/Archiv1', + u'Benutzer Diskussion:Tilla/Archiv/2009/Juli', + u'Benutzer Diskussion:Xqt', + u'Vorlage Diskussion:Benutzerdiskussionsseite', + u'Wikipedia Diskussion:Meinungsbilder/Gestaltung von Signaturen', + u'Benutzer Diskussion:JvB1953', + u'Benutzer Diskussion:J.-H. Janßen', + u'Benutzer Diskussion:Xqt/Archiv/2009-1', + u'Hilfe Diskussion:Weiterleitung/Archiv/1', + u'Benutzer Diskussion:Raymond/Archiv 2006-2', + u'Wikipedia Diskussion:Projektneuheiten/Archiv/2009', + u'Vorlage Diskussion:Erledigt', + u'Wikipedia:Bots/Anfragen/Archiv/2008-2', + u'Diskussion:Golfschläger/Archiv', + u'Wikipedia:Löschkandidaten/9. Januar 2006', + u'Benutzer Diskussion:Church of emacs/Archiv5', + u'Wikipedia:WikiProjekt Vorlagen/Werkstatt/Archiv 2006', + u'Wikipedia Diskussion:Löschkandidaten/Archiv7', + u'Benutzer Diskussion:Physikr', + u'Benutzer Diskussion:Haring/Archiv, Dez. 2005', + u'Benutzer Diskussion:Seewolf/Archiv 7', + u'Benutzer Diskussion:Mipago/Archiv', + u'Wikipedia Diskussion:WikiProjekt Syntaxkorrektur/Archiv/2009', + u'Benutzer Diskussion:PDD/monobook.js', + u'Wikipedia:Löschkandidaten/9. April 2010', + u'Benutzer Diskussion:Augiasstallputzer/Archiv', + u'Hilfe Diskussion:Variablen', + u'Benutzer Diskussion:Merlissimo/Archiv/2009', + u'Benutzer Diskussion:Elya/Archiv 2007-01', + u'Benutzer Diskussion:Merlissimo/Archiv/2010', + u'Benutzer Diskussion:Jonathan Groß/Archiv 2006', + u'Benutzer Diskussion:Erendissss', + u'Diskussion:Ilse Elsner', + u'Diskussion:Pedro Muñoz', + u'Diskussion:Stimmkreis Nürnberg-Süd', + u'Diskussion:Geschichte der Sozialversicherung in Deutschland', + u'Diskussion:Josef Kappius', + u'Diskussion:Bibra (Adelsgeschlecht)', + u'Diskussion:Volkmar Kretkowski', + u'Diskussion:KS Cracovia', + u'Diskussion:Livingston (Izabal)', + u'Wikipedia Diskussion:WikiProjekt Gesprochene Wikipedia/Howto', + u'Benutzer Diskussion:Otfried Lieberknecht', + u'Benutzer Diskussion:Jahn Henne', + u'Wikipedia:WikiProjekt Begriffsklärungsseiten/Fließband', + u'Wikipedia:Löschprüfung', + u'Benutzer Diskussion:Hubertl', + u'Benutzer Diskussion:Diba', + u'Wikipedia:Qualitätssicherung/11. März 2012', + u'Benutzer Diskussion:Heubergen/Archiv/2012', + u'Benutzer Diskussion:DrTrigon/Archiv', + u'Wikipedia:Fotowerkstatt', + u'Wikipedia:Urheberrechtsfragen', ]
PAGE_SINGLE_GENERIC = PAGE_SET_Page_getSections[0] @@ -182,13 +178,13 @@ class PyWikiWikipediaTestCase(test_pywiki.PyWikiTestCase):
def setUp(self): - result = test_pywiki.PyWikiTestCase.setUp(self) + result = test_pywiki.PyWikiTestCase.setUp(self) self.site = pywikibot.getSite('de', 'wikipedia') self.repo = self.site.data_repository() return result
def test_module_import(self): - self.assertTrue( "pywikibot" in sys.modules ) + self.assertTrue("pywikibot" in sys.modules)
def test_Site(self): self._check_member(pywikibot, "Site", call=True) @@ -196,16 +192,16 @@ def test_Site_getParsedString(self): self._check_member(self.site, "getParsedString", call=True) test_text = u'{{CURRENTTIMESTAMP}}' - text = self.site.getParsedString(test_text, keeptags = []) - self.assertTrue( len(text) <= len(test_text) ) + text = self.site.getParsedString(test_text, keeptags=[]) + self.assertTrue(len(text) <= len(test_text)) text = self.site.getParsedString(test_text) - self.assertTrue( len(text) >= len(test_text) ) + self.assertTrue(len(text) >= len(test_text))
def test_Site_getExpandedString(self): self._check_member(self.site, "getExpandedString", call=True) test_text = u'{{CURRENTTIMESTAMP}}' text = self.site.getExpandedString(test_text) - self.assertTrue( len(text) <= len(test_text) ) + self.assertTrue(len(text) <= len(test_text))
def test_Page(self): self._check_member(pywikibot, "Page", call=True) @@ -213,7 +209,7 @@ def test_Page_getSections(self): self._check_member(pywikibot.Page(self.site, PAGE_SINGLE_GENERIC), "getSections", call=True) - self.assertEqual( len(PAGE_SET_Page_getSections), 146 ) + self.assertEqual(len(PAGE_SET_Page_getSections), 146) count = 0 problems = [] for i, TESTPAGE in enumerate(PAGE_SET_Page_getSections): @@ -222,18 +218,18 @@ sections = page.getSections(minLevel=1) except pywikibot.Error: count += 1 - problems.append( (i, page) ) + problems.append((i, page)) print "Number of pages total:", len(PAGE_SET_Page_getSections) print "Number of problematic pages:", count #print "Problematic pages:", problems - print "Problematic pages:\n", "\n".join( map(str, problems) ) - self.assertLessEqual(count, round(len(PAGE_SET_Page_getSections)/50.)) + print "Problematic pages:\n", "\n".join(map(str, problems)) + self.assertLessEqual(count, round(len(PAGE_SET_Page_getSections) / 50.)) #self.assertTrue( count <= 0 )
def test_Page_purgeCache(self): page = pywikibot.Page(self.site, PAGE_SINGLE_GENERIC) self._check_member(page, "purgeCache", call=True) - self.assertEqual( page.purgeCache(), True ) + self.assertEqual(page.purgeCache(), True)
def test_Page_isRedirectPage(self): page = pywikibot.Page(self.site, PAGE_SINGLE_GENERIC) @@ -243,8 +239,8 @@ def test_Page_getVersionHistory(self): page = pywikibot.Page(self.site, PAGE_SINGLE_GENERIC) self._check_member(page, "getVersionHistory", call=True) - self.assertEqual( len(page.getVersionHistory(revCount=1)), 1 ) - self.assertGreater( len(page.getVersionHistory()), 1 ) + self.assertEqual(len(page.getVersionHistory(revCount=1)), 1) + self.assertGreater(len(page.getVersionHistory()), 1)
def test_Page_get(self): page = pywikibot.Page(self.site, PAGE_SINGLE_GENERIC) diff --git a/tests/test_wiktionary.py b/tests/test_wiktionary.py index 6e6e329..b5264b6 100644 --- a/tests/test_wiktionary.py +++ b/tests/test_wiktionary.py @@ -9,24 +9,28 @@
import wiktionary
+ class KnownValues(unittest.TestCase): knownValues = ( - ('==English==', 'en', 2, 'lang'), - ('=={{en}}==', 'en', 2, 'lang'), - ('{{-en-}}', 'en', None, 'lang'), - ('===Noun===', 'noun', 3, 'pos'), - ('==={{noun}}===', 'noun', 3, 'pos'), - ('{{-noun-}}', 'noun', None, 'pos'), - ('===Verb===', 'verb', 3, 'pos'), - ('==={{verb}}===', 'verb', 3, 'pos'), - ('{{-verb-}}', 'verb', None, 'pos'), - ('====Translations====', 'trans', 4, 'other'), - ('===={{trans}}====', 'trans', 4, 'other'), - ('{{-trans-}}', 'trans', None, 'other'), - ) + ('==English==', 'en', 2, 'lang'), + ('=={{en}}==', 'en', 2, 'lang'), + ('{{-en-}}', 'en', None, 'lang'), + ('===Noun===', 'noun', 3, 'pos'), + ('==={{noun}}===', 'noun', 3, 'pos'), + ('{{-noun-}}', 'noun', None, 'pos'), + ('===Verb===', 'verb', 3, 'pos'), + ('==={{verb}}===', 'verb', 3, 'pos'), + ('{{-verb-}}', 'verb', None, 'pos'), + ('====Translations====', 'trans', 4, 'other'), + ('===={{trans}}====', 'trans', 4, 'other'), + ('{{-trans-}}', 'trans', None, 'other'), + )
def testHeaderInitKnownValuesContents(self): - """Header parsing comparing known result with known input for contents""" + """Header parsing comparing known result with known input for contents + + """ + for wikiline, contents, level, type in self.knownValues: result = wiktionary.Header(wikiline).contents self.assertEqual(contents, result) @@ -45,18 +49,27 @@
class SortEntriesCheckSortOrder(unittest.TestCase): - """Entries should be sorted as follows on a page: Translingual first, Wikilang next, then the others alphabetically on the language name in the Wiktionary's language """ + """Entries should be sorted as follows on a page: Translingual first, + Wikilang next, then the others alphabetically on the language name in the + Wiktionary's language + + """ + def testHeaderInitKnownValuesType(self): """Sorting order of Entries on a page""" - examples=((('en','C'),('eo', 'en', 'de', 'nl', 'es', 'translingual', 'fr'), - ['translingual', 'en', 'nl', 'eo', 'fr', 'de', 'es']), - (('nl','C'),('eo', 'en', 'de', 'nl', 'es', 'translingual', 'fr'), - ['translingual', 'nl', 'de', 'en', 'eo', 'fr', 'es']), - (('fr','C'),('eo', 'en', 'de', 'nl', 'es', 'translingual', 'fr'), - ['translingual', 'fr', 'de', 'en', 'es', 'eo', 'nl']), - (('de','C'),('eo', 'en', 'de', 'nl', 'es', 'translingual', 'fr'), - ['translingual', 'de', 'en', 'eo', 'fr', 'nl', 'es']), - ) + examples = ((('en', 'C'), + ('eo', 'en', 'de', 'nl', 'es', 'translingual', 'fr'), + ['translingual', 'en', 'nl', 'eo', 'fr', 'de', 'es']), + (('nl', 'C'), + ('eo', 'en', 'de', 'nl', 'es', 'translingual', 'fr'), + ['translingual', 'nl', 'de', 'en', 'eo', 'fr', 'es']), + (('fr', 'C'), + ('eo', 'en', 'de', 'nl', 'es', 'translingual', 'fr'), + ['translingual', 'fr', 'de', 'en', 'es', 'eo', 'nl']), + (('de', 'C'), + ('eo', 'en', 'de', 'nl', 'es', 'translingual', 'fr'), + ['translingual', 'de', 'en', 'eo', 'fr', 'nl', 'es']), + ) for example in examples: page = wiktionary.WiktionaryPage(example[0][0], example[0][1]) for lang in example[1]: @@ -65,9 +78,16 @@ page.sortEntries() self.assertEqual(page.sortedentries, example[2])
+ class TestKnownValuesInParser(unittest.TestCase): - """This class will check various aspects of parsing Wiktionary entries into our object model""" - knownvalues=({'wikilang': 'en', 'term': 'nut', 'wikiformat': u"""==English== + """This class will check various aspects of parsing Wiktionary entries into + our object model + + """ + knownvalues = ( + {'wikilang': 'en', + 'term': 'nut', + 'wikiformat': u"""==English== ===Etymology=== From Middle English [[nute]], from Old English [[hnutu]]. <!-- Is Latin [[nux]], nuc- a cognate? --> ===Pronunciation=== @@ -199,41 +219,66 @@ [[Category:Trees]] [[category:Foods]] """, - 'internalrep': - ( - [u'1000 English basic words',u'Colors',u'Browns',u'Trees',u'Foods'], - [u'io','la'], - {u'en': - [u'nut', None, u'nuts', - [{'definition': u'A hard-shelled seed', 'concisedef': u'seed', - 'trans': {'nl': u"[[noot]] ''f''", 'fr': u"""''no generic translation exists''; [[noix]] ''f'' ''is often used, but this actually means "[[walnut]]"''""", 'de': u"[[Nuss]] ''f''", 'it': u"[[noce]] {{f}}", 'la': u"[[nux]]"}}, - {'definition': u"A piece of metal, often [[hexagonal]], with a hole through it with internal threading intended to fit on to a bolt.", 'concisedef': u'that fits on a bolt', - 'trans': {'nl': u"[[moer]] ''f''", 'fr': u"[[écrou]] ''m''", 'de': u"[[Mutter]] ''f''", 'it': u"[[dado]] {{m}}"}}, - {'definition': u"(''informal'') An insane person.", 'concisedef': u"'''informal: insane person'''", - 'syns': u"[[loony]], [[nutcase]], [[nutter]]", - 'trans': {'nl': u"[[gek]] ''m'', [[gekkin]] ''f'', [[zot]] ''m'', [[zottin]] ''f''", 'fr': "[[fou]] ''m'', [[folle]] ''f''", 'de': "[[Irre]] ''m/f'', [[Irrer]] ''m indef.''"}}, - {'definition': u"(''slang'') The head.", 'concisedef': u"'''slang: the head'''", - 'syns': u"[[bonce]], [[noddle]] (See further synonyms under [[head]])", - 'trans': {'de': u"[[Birne]] ''f'', [[Rübe]] ''f'', [[Dötz]] ''m''"}}, - {'definition': u"(''slang; rarely used in the singular'') A testicle.", 'concisedef': u"'''slang: testicle'''", - 'syns': u"[[ball]], [[bollock]] (''taboo slang''), [[nad]]", - 'trans': {'nl': u"[[noten]] ''m (plural)'' <!--Never heard this before-->, [[bal]] ''m'', [[teelbal]] ''m''", 'fr': u"[[couille]] ''f''", 'de': u"[[Ei]] ''n'', ''lately:'' [[Nuss]] ''f''", 'es': u"[[cojone]], [[huevo]]"}}, - ], - ], - u'nl': - [u'nut', 'n', None, - [{'definition': u'[[use]], [[benefit]]'}] - ], - } - ) - },{'wikilang': 'en', 'term': 'nut', 'wikiformat': u"""[[category:Foods]] -[[category:Drinks]]""", 'internalrep': ([u'Foods', u'Drinks'],[],{})}) + 'internalrep': ( + [u'1000 English basic words', u'Colors', u'Browns', u'Trees', + u'Foods'], + [u'io', 'la'], + {u'en': + [u'nut', None, u'nuts', + [{'definition': u'A hard-shelled seed', + 'concisedef': u'seed', + 'trans': { + 'nl': u"[[noot]] ''f''", + 'fr': u"""''no generic translation exists''; [[noix]] ''f'' ''is often used, but this actually means "[[walnut]]"''""", + 'de': u"[[Nuss]] ''f''", + 'it': u"[[noce]] {{f}}", + 'la': u"[[nux]]"}}, + {'definition': u"A piece of metal, often [[hexagonal]], with a hole through it with internal threading intended to fit on to a bolt.", + 'concisedef': u'that fits on a bolt', + 'trans': { + 'nl': u"[[moer]] ''f''", + 'fr': u"[[écrou]] ''m''", 'de': u"[[Mutter]] ''f''", + 'it': u"[[dado]] {{m}}"}}, + {'definition': u"(''informal'') An insane person.", + 'concisedef': u"'''informal: insane person'''", + 'syns': u"[[loony]], [[nutcase]], [[nutter]]", + 'trans': { + 'nl': u"[[gek]] ''m'', [[gekkin]] ''f'', [[zot]] ''m'', [[zottin]] ''f''", + 'fr': "[[fou]] ''m'', [[folle]] ''f''", + 'de': "[[Irre]] ''m/f'', [[Irrer]] ''m indef.''"}}, + {'definition': u"(''slang'') The head.", + 'concisedef': u"'''slang: the head'''", + 'syns': u"[[bonce]], [[noddle]] (See further synonyms under [[head]])", + 'trans': { + 'de': u"[[Birne]] ''f'', [[Rübe]] ''f'', [[Dötz]] ''m''"}}, + {'definition': u"(''slang; rarely used in the singular'') A testicle.", + 'concisedef': u"'''slang: testicle'''", + 'syns': u"[[ball]], [[bollock]] (''taboo slang''), [[nad]]", + 'trans': { + 'nl': u"[[noten]] ''m (plural)'' <!--Never heard this before-->, [[bal]] ''m'', [[teelbal]] ''m''", + 'fr': u"[[couille]] ''f''", + 'de': u"[[Ei]] ''n'', ''lately:'' [[Nuss]] ''f''", + 'es': u"[[cojone]], [[huevo]]"}}, + ], + ], + u'nl': + [u'nut', 'n', None, + [{'definition': u'[[use]], [[benefit]]'}] + ], + } + ) + }, + {'wikilang': 'en', + 'term': 'nut', + 'wikiformat': u"""[[category:Foods]] +[[category:Drinks]]""", + 'internalrep': ([u'Foods', u'Drinks'], [], {})})
def testWhetherCategoriesAreParsedProperly(self): """Test whether Categories are parsed properly""" for value in self.knownvalues: - internalrepresentation=value['internalrep'] - apage = wiktionary.WiktionaryPage(value['wikilang'],value['term']) + internalrepresentation = value['internalrep'] + apage = wiktionary.WiktionaryPage(value['wikilang'], value['term']) apage.parseWikiPage(value['wikiformat'])
self.assertEqual(apage.categories, internalrepresentation[0]) @@ -241,8 +286,8 @@ def testWhetherLinksAreParsedProperly(self): """Test whether Links are parsed properly""" for value in self.knownvalues: - internalrepresentation=value['internalrep'] - apage = wiktionary.WiktionaryPage(value['wikilang'],value['term']) + internalrepresentation = value['internalrep'] + apage = wiktionary.WiktionaryPage(value['wikilang'], value['term']) apage.parseWikiPage(value['wikiformat'])
self.assertEqual(apage.interwikilinks, internalrepresentation[1]) @@ -250,31 +295,31 @@ def testWhetherDefsAreParsedProperly(self): """Test whether Definitions are parsed properly""" for value in self.knownvalues: - internalrepresentation=value['internalrep'][2] - apage = wiktionary.WiktionaryPage(value['wikilang'],value['term']) + internalrepresentation = value['internalrep'][2] + apage = wiktionary.WiktionaryPage(value['wikilang'], value['term']) apage.parseWikiPage(value['wikiformat']) for entrylang in internalrepresentation.keys(): - term=internalrepresentation[entrylang][0] - gender=internalrepresentation[entrylang][1] - plural=internalrepresentation[entrylang][2] - definitions=internalrepresentation[entrylang][3] - refdefs=[] + term = internalrepresentation[entrylang][0] + gender = internalrepresentation[entrylang][1] + plural = internalrepresentation[entrylang][2] + definitions = internalrepresentation[entrylang][3] + refdefs = [] for definition in definitions: refdefs.append(definition['definition'])
- resultmeanings=[] + resultmeanings = [] for key in apage.entries[entrylang].meanings.keys(): for resultmeaning in apage.entries[entrylang].meanings[key]: resultmeanings.append(resultmeaning.definition)
self.assertEqual(resultmeanings.sort(), refdefs.sort())
-''' -class ToRomanBadInput(unittest.TestCase): - def testTooLarge(self): - """toRoman should fail with large input""" - self.assertRaises(roman.OutOfRangeError, roman.toRoman, 4000) -''' + +##class ToRomanBadInput(unittest.TestCase): +## def testTooLarge(self): +## """toRoman should fail with large input""" +## self.assertRaises(roman.OutOfRangeError, roman.toRoman, 4000) +
if __name__ == "__main__": unittest.main()
pywikibot-commits@lists.wikimedia.org