Revision: 5866
Author: russblau
Date: 2008-08-29 19:07:49 +0000 (Fri, 29 Aug 2008)
Log Message:
-----------
more tests (this completes a barebones framework of tests for non-writing API methods; but
more meat needs to be put on the bones)
Modified Paths:
--------------
branches/rewrite/pywikibot/tests/site_tests.py
Modified: branches/rewrite/pywikibot/tests/site_tests.py
===================================================================
--- branches/rewrite/pywikibot/tests/site_tests.py 2008-08-29 17:34:01 UTC (rev 5865)
+++ branches/rewrite/pywikibot/tests/site_tests.py 2008-08-29 19:07:49 UTC (rev 5866)
@@ -153,7 +153,110 @@
self.assertTrue(user.has_key("editcount"))
self.assertTrue(user.has_key("registration"))
+ def testAllImages(self):
+ """Test the site.allimages() method"""
+ ai = list(mysite.allimages(limit=10))
+ self.assertTrue(len(ai) <= 10)
+ self.assertTrue(all(isinstance(image, pywikibot.ImagePage)
+ for image in ai))
+
+ def testBlocks(self):
+ """Test the site.blocks() method"""
+
+ bl = list(mysite.blocks(limit=10))
+ self.assertTrue(len(bl) <= 10)
+ self.assertTrue(all(isinstance(block, dict)
+ for block in bl))
+
+ def testExturlusage(self):
+ """Test the site.exturlusage() method"""
+
+ url = "www.google.com"
+ eu = list(mysite.exturlusage(url, limit=10))
+ self.assertTrue(len(eu) <= 10)
+ self.assertTrue(all(isinstance(link, pywikibot.Page)
+ for link in eu))
+
+ def testImageusage(self):
+ """Test the site.imageusage() method"""
+
+ imagepage = pywikibot.ImagePage(pywikibot.Link("Image:Wiki.png",
mysite))
+ iu = list(mysite.imageusage(imagepage, limit=10))
+ self.assertTrue(len(iu) <= 10)
+ self.assertTrue(all(isinstance(link, pywikibot.Page)
+ for link in iu))
+
+ def testLogEvents(self):
+ """Test the site.logevents() method"""
+
+ le = list(mysite.logevents(limit=10))
+ self.assertTrue(len(le) <= 10)
+ self.assertTrue(all(isinstance(entry, dict) and entry.has_key("type")
+ for entry in le))
+
+ def testRecentchanges(self):
+ """Test the site.recentchanges() method"""
+
+ rc = list(mysite.recentchanges(limit=10))
+ self.assertTrue(len(rc) <= 10)
+ self.assertTrue(all(isinstance(change, dict)
+ for change in rc))
+
+ def testSearch(self):
+ """Test the site.search() method"""
+
+ se = list(mysite.search("wiki", limit=10))
+ self.assertTrue(len(se) <= 10)
+ self.assertTrue(all(isinstance(hit, pywikibot.Page)
+ for hit in se))
+
+ def testUsercontribs(self):
+ """Test the site.usercontribs() method"""
+
+ uc = list(mysite.usercontribs(user=mysite.user(), limit=10))
+ self.assertTrue(len(uc) <= 10)
+ self.assertTrue(all(isinstance(contrib, dict)
+ for contrib in uc))
+
+ def testWatchlistrevs(self):
+ """Test the site.watchlist_revs() method"""
+
+ wl = list(mysite.watchlist_revs(limit=10))
+ self.assertTrue(len(wl) <= 10)
+ self.assertTrue(all(isinstance(rev, dict)
+ for rev in wl))
+
+ def testDeletedrevs(self):
+ """Test the site.deletedrevs() method"""
+
+ if not mysite.logged_in(True):
+ return
+ dr = list(mysite.deletedrevs(limit=10))
+ self.assertTrue(len(dr) <= 10)
+ self.assertTrue(all(isinstance(rev, dict)
+ for rev in dr))
+ dr2 = list(mysite.deletedrevs(titles=mainpage.title(withSection=False),
+ limit=10))
+ self.assertTrue(len(dr2) <= 10)
+ self.assertTrue(all(isinstance(rev, dict)
+ for rev in dr2))
+
+ def testUsers(self):
+ """Test the site.users() method"""
+
+ us = list(mysite.users([mysite.user()]))
+ self.assertEqual(len(us), 1)
+ self.assertTrue(isinstance(us[0], dict))
+
+ def testRandompages(self):
+ """Test the site.randompages() method"""
+ rn = list(mysite.randompages(limit=10))
+ self.assertTrue(len(rn) <= 10)
+ self.assertTrue(all(isinstance(a_page, pywikibot.Page)
+ for a_page in rn))
+
+
if __name__ == '__main__':
# pywikibot.logging.getLogger().setLevel(pywikibot.logging.DEBUG)
try: