jenkins-bot has submitted this change and it was merged. ( 
https://gerrit.wikimedia.org/r/404621 )

Change subject: PetScanPageGenerator.query: Raise ServerError if response 
status is 5xx
......................................................................


PetScanPageGenerator.query: Raise ServerError if response status is 5xx

Also skip the related test if there is a ServerError.

Bug: T184426
Change-Id: Ie0110b85be9fe170ca2356ee45369a1771fb2be1
---
M pywikibot/pagegenerators.py
M tests/pagegenerators_tests.py
2 files changed, 15 insertions(+), 4 deletions(-)

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



diff --git a/pywikibot/pagegenerators.py b/pywikibot/pagegenerators.py
index b952a82..e67b64e 100644
--- a/pywikibot/pagegenerators.py
+++ b/pywikibot/pagegenerators.py
@@ -49,7 +49,11 @@
 from pywikibot import date, config, i18n, xmlreader
 from pywikibot.bot import ListOption
 from pywikibot.comms import http
-from pywikibot.exceptions import ArgumentDeprecationWarning, UnknownExtension
+from pywikibot.exceptions import (
+    ArgumentDeprecationWarning,
+    ServerError,
+    UnknownExtension,
+)
 from pywikibot.logentries import LogEntryFactory
 from pywikibot.proofreadpage import ProofreadPage
 
@@ -2915,6 +2919,9 @@
         url = 'https://petscan.wmflabs.org'
 
         req = http.fetch(url, params=self.opts)
+        if 500 <= req.status < 600:
+            raise ServerError(
+                'received {0} status from {1}'.format(req.status, req.uri))
         j = json.loads(req.content)
         raw_pages = j['*'][0]['a']['*']
         for raw_page in raw_pages:
diff --git a/tests/pagegenerators_tests.py b/tests/pagegenerators_tests.py
index 5dd0f69..11e4d6b 100755
--- a/tests/pagegenerators_tests.py
+++ b/tests/pagegenerators_tests.py
@@ -15,7 +15,7 @@
 import pywikibot
 from pywikibot import pagegenerators, date
 
-from pywikibot.exceptions import UnknownExtension
+from pywikibot.exceptions import ServerError, UnknownExtension
 
 from pywikibot.pagegenerators import (
     PagesFromTitlesGenerator,
@@ -362,8 +362,12 @@
         """Test PetScanPageGenerator."""
         site = self.get_site()
         gen = pagegenerators.PetScanPageGenerator(['Pywikibot Protect Test'], 
True, None, site)
-        self.assertPagelistTitles(gen, titles=('User:Sn1per/ProtectTest1',
-                                               'User:Sn1per/ProtectTest2'), 
site=site)
+        try:
+            self.assertPagelistTitles(gen, titles=(
+                'User:Sn1per/ProtectTest1', 'User:Sn1per/ProtectTest2'),
+                site=site)
+        except ServerError as e:
+            self.skipTest(e)
 
         gen = pagegenerators.PetScanPageGenerator(['Pywikibot Protect Test'], 
False, None, site)
         self.assertPagelistTitles(gen, titles=('User:Sn1per/ProtectTest1',

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

Gerrit-MessageType: merged
Gerrit-Change-Id: Ie0110b85be9fe170ca2356ee45369a1771fb2be1
Gerrit-PatchSet: 4
Gerrit-Project: pywikibot/core
Gerrit-Branch: master
Gerrit-Owner: Dalba <[email protected]>
Gerrit-Reviewer: John Vandenberg <[email protected]>
Gerrit-Reviewer: Xqt <[email protected]>
Gerrit-Reviewer: Zoranzoki21 <[email protected]>
Gerrit-Reviewer: jenkins-bot <>

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

Reply via email to