jenkins-bot merged this change.

View Change

Approvals: Xqt: Looks good to me, approved jenkins-bot: Verified
Fix tests.edit_failure_tests.TestWikibaseSaveTest

Bug: T190864
Change-Id: Iab28a36e1edf6a5a6ed8902bba36df29267b3b0e
---
M tests/edit_failure_tests.py
1 file changed, 26 insertions(+), 14 deletions(-)

diff --git a/tests/edit_failure_tests.py b/tests/edit_failure_tests.py
index 68bda27..b5df2ab 100644
--- a/tests/edit_failure_tests.py
+++ b/tests/edit_failure_tests.py
@@ -8,7 +8,7 @@
These tests use special code 'write = -1' for edit failures.
"""
#
-# (C) Pywikibot team, 2014
+# (C) Pywikibot team, 2014-2018
#
# Distributed under the terms of the MIT license.
#
@@ -147,18 +147,22 @@
item = pywikibot.ItemPage(repo, 'Q68')
claim = self._make_WbMonolingualText_claim(repo, text='Test this!',
language='foo')
- self.assertAPIError('modification-failed', 'Illegal value: foo',
- item.addClaim, claim)
+ self.assertRaisesRegex(
+ OtherPageSaveError,
+ r'Edit to page \[\[wikidata:test:Q68]] failed:\n'
+ r'modification-failed: "foo" is not a known language code.',
+ item.addClaim, claim)

def test_WbMonolingualText_invalid_text(self):
"""Attempt adding a monolingual text with an invalid non-string text."""
repo = self.get_repo()
item = pywikibot.ItemPage(repo, 'Q68')
claim = self._make_WbMonolingualText_claim(repo, text=123456, language='en')
- self.assertAPIError('invalid-snak',
- 'Invalid snak. (Can only construct a '
- 'MonolingualTextValue with a string value.)',
- item.addClaim, claim)
+ self.assertRaisesRegex(
+ OtherPageSaveError,
+ r'Edit to page \[\[wikidata:test:Q68]] failed:\n'
+ r'invalid-snak: Invalid snak data.',
+ item.addClaim, claim)

def test_math_invalid_function(self):
"""Attempt adding invalid latex to a math claim."""
@@ -166,7 +170,11 @@
item = pywikibot.ItemPage(repo, 'Q68')
claim = pywikibot.page.Claim(repo, 'P717', datatype='math')
claim.setTarget('\foo')
- self.assertAPIError('modification-failed', None, item.addClaim, claim)
+ self.assertRaisesRegex(
+ OtherPageSaveError,
+ r'Edit to page \[\[wikidata:test:Q68]] failed:\n'
+ r'modification-failed: Malformed input: �oo',
+ item.addClaim, claim)

def test_url_malformed_url(self):
"""Attempt adding a malformed URL to a url claim."""
@@ -174,9 +182,11 @@
item = pywikibot.ItemPage(repo, 'Q68')
claim = pywikibot.page.Claim(repo, 'P506', datatype='url')
claim.setTarget('Not a URL at all')
- self.assertAPIError('modification-failed',
- 'Malformed URL: Not a URL at all',
- item.addClaim, claim)
+ self.assertRaisesRegex(
+ OtherPageSaveError,
+ r'Edit to page \[\[wikidata:test:Q68]] failed:\n'
+ r'modification-failed: This URL misses a scheme like "https://": '
+ r'Not a URL at all', item.addClaim, claim)

def test_url_invalid_protocol(self):
"""Attempt adding a URL with an invalid protocol to a url claim."""
@@ -184,9 +194,11 @@
item = pywikibot.ItemPage(repo, 'Q68')
claim = pywikibot.page.Claim(repo, 'P506', datatype='url')
claim.setTarget('wtf://wikiba.se')
- self.assertAPIError('modification-failed',
- 'Unsupported URL scheme: wtf',
- item.addClaim, claim)
+ self.assertRaisesRegex(
+ OtherPageSaveError,
+ r'Edit to page \[\[wikidata:test:Q68]] failed:\n'
+ r'modification-failed: An URL scheme "wtf" is not supported.',
+ item.addClaim, claim)


if __name__ == '__main__': # pragma: no cover

To view, visit change 422208. To unsubscribe, visit settings.

Gerrit-Project: pywikibot/core
Gerrit-Branch: master
Gerrit-MessageType: merged
Gerrit-Change-Id: Iab28a36e1edf6a5a6ed8902bba36df29267b3b0e
Gerrit-Change-Number: 422208
Gerrit-PatchSet: 3
Gerrit-Owner: Dalba <dalba.wiki@gmail.com>
Gerrit-Reviewer: John Vandenberg <jayvdb@gmail.com>
Gerrit-Reviewer: Xqt <info@gno.de>
Gerrit-Reviewer: Zoranzoki21 <zorandori4444@gmail.com>
Gerrit-Reviewer: jenkins-bot <>