jenkins-bot has submitted this change and it was merged. ( https://gerrit.wikimedia.org/r/567468 )
Change subject: [IMPR] use a list for tests in test_valid ......................................................................
[IMPR] use a list for tests in test_valid
- use extended_title_tests list for all remaining tests - use subTest for every test in this list
Change-Id: I75399c0b0e6d95b4a7cafd23d07cdbf3f959e763 --- M tests/link_tests.py 1 file changed, 23 insertions(+), 16 deletions(-)
Approvals: Mpaa: Looks good to me, approved jenkins-bot: Verified
diff --git a/tests/link_tests.py b/tests/link_tests.py index 1307ac8..548ef0c 100644 --- a/tests/link_tests.py +++ b/tests/link_tests.py @@ -1,7 +1,7 @@ # -*- coding: utf-8 -*- """Test Link functionality.""" # -# (C) Pywikibot team, 2014-2019 +# (C) Pywikibot team, 2014-2020 # # Distributed under the terms of the MIT license. # @@ -71,27 +71,34 @@
def test_valid(self): """Test that valid titles are correctly normalized.""" - site = self.get_site() title_tests = ['Sandbox', 'A "B"', "A 'B'", '.com', '~', '"', "'", 'Foo/.../Sandbox', 'Sandbox/...', 'A~~', 'X' * 252] + + extended_title_tests = [ + ('Talk:Sandbox', 'Sandbox'), + ('Talk:Foo:Sandbox', 'Foo:Sandbox'), + ('File:Example.svg', 'Example.svg'), + ('File_talk:Example.svg', 'Example.svg'), + (':A', 'A'), + # Length is 256 total, but only title part matters + ('Category:' + 'X' * 248, 'X' * 248), + ('A%20B', 'A B'), + ('A é B', 'A é B'), + ('A é B', 'A é B'), + ('A é B', 'A é B'), + ('A B', 'A B'), + ('A   B', 'A B'), + ] + + site = self.get_site() + for title in title_tests: with self.subTest(title=title): self.assertEqual(Link(title, site).title, title)
- self.assertEqual(Link('Talk:Sandbox', site).title, 'Sandbox') - self.assertEqual(Link('Talk:Foo:Sandbox', site).title, 'Foo:Sandbox') - self.assertEqual(Link('File:Example.svg', site).title, 'Example.svg') - self.assertEqual(Link('File_talk:Example.svg', site).title, - 'Example.svg') - self.assertEqual(Link(':A', site).title, 'A') - # Length is 256 total, but only title part matters - self.assertEqual(Link('Category:' + 'X' * 248, site).title, 'X' * 248) - self.assertEqual(Link('A%20B', site).title, 'A B') - self.assertEqual(Link('A é B', site).title, 'A é B') - self.assertEqual(Link('A é B', site).title, 'A é B') - self.assertEqual(Link('A é B', site).title, 'A é B') - self.assertEqual(Link('A B', site).title, 'A B') - self.assertEqual(Link('A   B', site).title, 'A B') + for link, title in extended_title_tests: + with self.subTest(link=link, title=title): + self.assertEqual(Link(link, site).title, title)
anchor_link = Link('A | B', site) self.assertEqual(anchor_link.title, 'A')
pywikibot-commits@lists.wikimedia.org