jenkins-bot has submitted this change and it was merged.

Change subject: Add unit tests for YearPageGenerator and DayPageGenerator
......................................................................


Add unit tests for YearPageGenerator and DayPageGenerator

Add  unit tests, TestYearPageGenerator and TestDayPageGenerator.
The tests are skipped on wikidata because of T85645.

Bug: T85313
Change-Id: I9b03d8a454485036be1510867340bb0f9e834728
---
M tests/pagegenerators_tests.py
1 file changed, 55 insertions(+), 1 deletion(-)

Approvals:
  John Vandenberg: Looks good to me, approved
  jenkins-bot: Verified



diff --git a/tests/pagegenerators_tests.py b/tests/pagegenerators_tests.py
index 39f5108..e1c6c0c 100755
--- a/tests/pagegenerators_tests.py
+++ b/tests/pagegenerators_tests.py
@@ -12,7 +12,7 @@
 import sys
 
 import pywikibot
-from pywikibot import pagegenerators
+from pywikibot import pagegenerators, date
 
 from pywikibot.pagegenerators import (
     PagesFromTitlesGenerator,
@@ -278,6 +278,60 @@
         self.assertPagelistTitles(titles, self.expected_titles[site.case()])
 
 
+class TestYearPageGenerator(DefaultSiteTestCase):
+
+    """Test the year page generator."""
+
+    dry = True
+
+    def test_basic(self):
+        site = self.get_site()
+        # Skip if its wikidata because T85645
+        if site.family == "wikidata":
+            raise unittest.SkipTest
+        start = -20
+        end = 2026
+
+        i = 0
+        for page in pagegenerators.YearPageGenerator(start, end, site):
+            self.assertIsInstance(page, pywikibot.Page)
+            self.assertEqual(date.formatYear(site.lang, start + i), 
page.title())
+            self.assertNotEqual(page.title(), "0")
+            i += 1
+            if start + i == 0:
+                i += 1
+        self.assertEqual(start + i - 1, end)
+
+
+class TestDayPageGenerator(DefaultSiteTestCase):
+
+    """Test the day page generator."""
+
+    dry = True
+
+    def test_basic(self):
+        site = self.get_site()
+        # Skip if its wikidata because T85645
+        if site.family == "wikidata":
+            raise unittest.SkipTest
+        fd = date.FormatDate(site)
+        startMonth = 1
+        endMonth = 12
+
+        gen = pagegenerators.DayPageGenerator(startMonth, endMonth, site)
+
+        for page in pagegenerators.DayPageGenerator(startMonth, endMonth, 
site):
+            self.assertIsInstance(page, pywikibot.Page)
+            self.assertTrue(page.isAutoTitle)
+
+        expected = []
+        for month in range(startMonth, endMonth + 1):
+            for day in range(1, date.getNumberOfDaysInMonth(month) + 1):
+                expected.append(fd(month, day))
+
+        self.assertPageTitlesEqual(gen, expected)
+
+
 class TestPreloadingGenerator(DefaultSiteTestCase):
 
     """Test preloading generator on lists."""

-- 
To view, visit https://gerrit.wikimedia.org/r/182405
To unsubscribe, visit https://gerrit.wikimedia.org/r/settings

Gerrit-MessageType: merged
Gerrit-Change-Id: I9b03d8a454485036be1510867340bb0f9e834728
Gerrit-PatchSet: 8
Gerrit-Project: pywikibot/core
Gerrit-Branch: master
Gerrit-Owner: Unicornisaurous <[email protected]>
Gerrit-Reviewer: John Vandenberg <[email protected]>
Gerrit-Reviewer: Ladsgroup <[email protected]>
Gerrit-Reviewer: Merlijn van Deen <[email protected]>
Gerrit-Reviewer: Unicornisaurous <[email protected]>
Gerrit-Reviewer: jenkins-bot <>

_______________________________________________
MediaWiki-commits mailing list
[email protected]
https://lists.wikimedia.org/mailman/listinfo/mediawiki-commits

Reply via email to