jenkins-bot merged this change.

View Change

Approvals: Dvorapa: Looks good to me, approved jenkins-bot: Verified
Revert "[IMPR] Fix handling of interlanguage links in replace_links"

Reverted due to failing tests:
https://travis-ci.org/wikimedia/pywikibot/builds/497485432

This reverts commit 085e75615d743c0af2e39ee9cec1f64c006f2b3b.

Change-Id: I0393922c18463e73fee880159b14b25bbbf21f26
---
M pywikibot/textlib.py
M tests/textlib_tests.py
2 files changed, 5 insertions(+), 54 deletions(-)

diff --git a/pywikibot/textlib.py b/pywikibot/textlib.py
index 1a5f85c..1c71ed1 100644
--- a/pywikibot/textlib.py
+++ b/pywikibot/textlib.py
@@ -710,15 +710,10 @@
m = link_pattern.search(text, pos=curpos)
if not m:
break
- # Ignore links to sections of the same page
+ # ignore links to sections of the same page
if not m.group('title').strip():
curpos = m.end()
continue
- # Ignore interwiki links
- if (site.isInterwikiLink(m.group('title').strip())
- and not m.group('title').strip().startswith(':')):
- curpos = m.end()
- continue
groups = m.groupdict()
if groups['label'] and '[[' in groups['label']:
# TODO: Work on the link within the label too
@@ -745,6 +740,10 @@
# unrecognized iw prefix
curpos = end
continue
+ # ignore interwiki links
+ if link.site != site:
+ curpos = end
+ continue

# Check whether the link found should be replaced.
# Either None, False or tuple(Link, bool)
@@ -793,9 +792,6 @@
is_link = False

new_title = new_link.canonical_title()
- # Make correct langlink if needed
- if not new_link.site == site:
- new_title = ':' + new_link.site.code + ':' + new_title

if is_link:
# Use link's label
diff --git a/tests/textlib_tests.py b/tests/textlib_tests.py
index 2c6e7b0..6b754da 100644
--- a/tests/textlib_tests.py
+++ b/tests/textlib_tests.py
@@ -1060,51 +1060,6 @@
ValueError, r'unicode \(str.*bytes \(str',
textlib.replace_links, self.text, callback, self.wp_site)

- def test_replace_interwiki_links(self):
- """Make sure interwiki links can not be replaced."""
- link = '[[fr:how]]'
- self.assertEqual(
- textlib.replace_links(link, ('fr:how', 'de:are'), self.wp_site),
- link)
- self.assertEqual(
- textlib.replace_links(link, (':fr:how', ':de:are'), self.wp_site),
- link)
- self.assertEqual(
- textlib.replace_links(link, ('how', 'de:are'), self.wp_site),
- link)
- self.assertEqual(
- textlib.replace_links(link, ('de:how', 'de:are'), self.wp_site),
- link)
-
-
-class TestReplaceLinksNonDry(TestCase):
- """Test the replace_links function in textlib non-dry."""
-
- family = 'wikipedia'
- code = 'en'
-
- cached = True
-
- def test_replace_interlanguage_links(self):
- """Test replacing interlanguage links."""
- link = '[[:fr:how]]'
- self.assertEqual(
- textlib.replace_links(link, (':fr:how', ':de:are'),
- self.wp_site),
- '[[:de:are]]')
- self.assertEqual(
- textlib.replace_links(link, ('fr:how', 'de:are'),
- self.wp_site),
- '[[:de:are]]')
- self.assertEqual(
- textlib.replace_links(link, ('how', ':de:are'),
- self.wp_site),
- link)
- self.assertEqual(
- textlib.replace_links(link, (':de:how', ':de:are'),
- self.wp_site),
- link)
-

class TestLocalDigits(TestCase):


To view, visit change 492484. To unsubscribe, or for help writing mail filters, visit settings.

Gerrit-Project: pywikibot/core
Gerrit-Branch: master
Gerrit-MessageType: merged
Gerrit-Change-Id: I0393922c18463e73fee880159b14b25bbbf21f26
Gerrit-Change-Number: 492484
Gerrit-PatchSet: 1
Gerrit-Owner: Xqt <info@gno.de>
Gerrit-Reviewer: D3r1ck01 <alangiderick@gmail.com>
Gerrit-Reviewer: Dalba <dalba.wiki@gmail.com>
Gerrit-Reviewer: Dvorapa <dvorapa@seznam.cz>
Gerrit-Reviewer: Framawiki <framawiki@tools.wmflabs.org>
Gerrit-Reviewer: John Vandenberg <jayvdb@gmail.com>
Gerrit-Reviewer: Mpaa <mpaa.wiki@gmail.com>
Gerrit-Reviewer: Zhuyifei1999 <zhuyifei1999@gmail.com>
Gerrit-Reviewer: jenkins-bot (75)