jenkins-bot has submitted this change and it was merged.
Change subject: [bugfix] Solve arg parsing for positional arguments in pagegenerators
......................................................................
[bugfix] Solve arg parsing for positional arguments in pagegenerators
- Test added.
Bug: T131384
Change-Id: I177ecba8d527a02075caaba837d52d4b6184726a
---
M pywikibot/pagegenerators.py
M tests/pagegenerators_tests.py
2 files changed, 28 insertions(+), 1 deletion(-)
Approvals:
Ladsgroup: Looks good to me, approved
Urbanecm: Looks good to me, but someone else must approve
Dalba: Looks good to me, but someone else must approve
jenkins-bot: Verified
diff --git a/pywikibot/pagegenerators.py b/pywikibot/pagegenerators.py
index 224f93a..ddd6577 100644
--- a/pywikibot/pagegenerators.py
+++ b/pywikibot/pagegenerators.py
@@ -635,7 +635,8 @@
gen = None
if not arg.startswith('-') and self._positional_arg_name:
- arg = u'-{0}:{1}'.format(self._positional_arg_name, arg)
+ value = arg
+ arg = '-' + self._positional_arg_name
if arg == '-filelinks':
if not value:
diff --git a/tests/pagegenerators_tests.py b/tests/pagegenerators_tests.py
index 150574d..5adb054 100755
--- a/tests/pagegenerators_tests.py
+++ b/tests/pagegenerators_tests.py
@@ -839,6 +839,32 @@
self.assertIsNotNone(gen)
self.assertPagesInNamespaces(gen, set([1, 3]))
+ def test_pagegenerator(self):
+ """Test page generator."""
+ gf = pagegenerators.GeneratorFactory(site=self.site)
+ gf.handleArg('-page:Main Page')
+ gen = gf.getCombinedGenerator()
+ self.assertIsNotNone(gen)
+
+ def test_empty_generator(self):
+ """Test empty generator."""
+ gf = pagegenerators.GeneratorFactory(site=self.site)
+ gen = gf.getCombinedGenerator()
+ self.assertIsNone(gen)
+
+ def test_positionalargument(self):
+ """Test page generator with positional
argument."""
+ gf1 = pagegenerators.GeneratorFactory(site=self.site,
+ positional_arg_name='page')
+ gf1.handleArg('Main Page')
+ gen1 = gf1.getCombinedGenerator()
+ self.assertIsNotNone(gen1)
+ gf2 = pagegenerators.GeneratorFactory(site=self.site)
+ gf2.handleArg('-page:Main Page')
+ gen2 = gf1.getCombinedGenerator()
+ self.assertIsNotNone(gen2)
+ self.assertEqual(list(gen1), list(gen2))
+
class TestFactoryGeneratorWikibase(WikidataTestCase):
--
To view, visit
https://gerrit.wikimedia.org/r/281313
To unsubscribe, visit
https://gerrit.wikimedia.org/r/settings
Gerrit-MessageType: merged
Gerrit-Change-Id: I177ecba8d527a02075caaba837d52d4b6184726a
Gerrit-PatchSet: 3
Gerrit-Project: pywikibot/core
Gerrit-Branch: master
Gerrit-Owner: Xqt <info(a)gno.de>
Gerrit-Reviewer: Dalba <dalba.wiki(a)gmail.com>
Gerrit-Reviewer: John Vandenberg <jayvdb(a)gmail.com>
Gerrit-Reviewer: Ladsgroup <ladsgroup(a)gmail.com>
Gerrit-Reviewer: Urbanecm <martin(a)urbanec.cz>
Gerrit-Reviewer: jenkins-bot <>