jenkins-bot has submitted this change and it was merged. ( https://gerrit.wikimedia.org/r/482417 )
Change subject: [tests] Remove some code duplication for user_tests.py ......................................................................
[tests] Remove some code duplication for user_tests.py
Change-Id: Id66eb7bc0820c73d5a214312fd4adc83a7e548f4 --- M tests/user_tests.py 1 file changed, 30 insertions(+), 42 deletions(-)
Approvals: Mpaa: Looks good to me, approved jenkins-bot: Verified
diff --git a/tests/user_tests.py b/tests/user_tests.py index b0732be..12246eb 100644 --- a/tests/user_tests.py +++ b/tests/user_tests.py @@ -24,6 +24,36 @@ family = 'wikipedia' code = 'de'
+ def _tests_unregistered_user(self, user, prop='invalid'): + """Proceed user tests.""" + with suppress_warnings('pywikibot.page.User.name', DeprecationWarning): + self.assertEqual(user.name(), user.username) + self.assertEqual(user.title(with_ns=False), user.username) + self.assertFalse(user.isRegistered()) + self.assertIsNone(user.registration()) + self.assertFalse(user.isEmailable()) + self.assertEqual(user.gender(), 'unknown') + self.assertFalse(user.is_thankable) + self.assertIn(prop, user.getprops()) + + def test_anonymous_user(self): + """Test registered user.""" + user = User(self.site, '123.45.67.89') + self._tests_unregistered_user(user) + self.assertTrue(user.isAnonymous()) + + def test_unregistered_user(self): + """Test unregistered user.""" + user = User(self.site, 'This user name is not registered yet') + self._tests_unregistered_user(user, prop='missing') + self.assertFalse(user.isAnonymous()) + + def test_invalid_user(self): + """Test invalid user.""" + user = User(self.site, 'Invalid char\x9f in Name') + self._tests_unregistered_user(user) + self.assertFalse(user.isAnonymous()) + def test_registered_user(self): """Test registered user.""" user = User(self.site, 'Xqt') @@ -82,48 +112,6 @@ self.assertIn('userid', user.getprops()) self.assertTrue(user.is_thankable)
- def test_anonymous_user(self): - """Test registered user.""" - user = User(self.site, '123.45.67.89') - with suppress_warnings('pywikibot.page.User.name', DeprecationWarning): - self.assertEqual(user.name(), user.username) - self.assertEqual(user.title(with_ns=False), user.username) - self.assertFalse(user.isRegistered()) - self.assertTrue(user.isAnonymous()) - self.assertIsNone(user.registration()) - self.assertFalse(user.isEmailable()) - self.assertEqual(user.gender(), 'unknown') - self.assertIn('invalid', user.getprops()) - self.assertFalse(user.is_thankable) - - def test_unregistered_user(self): - """Test unregistered user.""" - user = User(self.site, 'This user name is not registered yet') - with suppress_warnings('pywikibot.page.User.name', DeprecationWarning): - self.assertEqual(user.name(), user.username) - self.assertEqual(user.title(with_ns=False), user.username) - self.assertFalse(user.isRegistered()) - self.assertFalse(user.isAnonymous()) - self.assertIsNone(user.registration()) - self.assertFalse(user.isEmailable()) - self.assertEqual(user.gender(), 'unknown') - self.assertIn('missing', user.getprops()) - self.assertFalse(user.is_thankable) - - def test_invalid_user(self): - """Test invalid user.""" - user = User(self.site, 'Invalid char\x9f in Name') - with suppress_warnings('pywikibot.page.User.name', DeprecationWarning): - self.assertEqual(user.name(), user.username) - self.assertEqual(user.title(with_ns=False), user.username) - self.assertFalse(user.isRegistered()) - self.assertFalse(user.isAnonymous()) - self.assertIsNone(user.registration()) - self.assertFalse(user.isEmailable()) - self.assertEqual(user.gender(), 'unknown') - self.assertIn('invalid', user.getprops()) - self.assertFalse(user.is_thankable) - def test_bot_user(self): """Test bot user.""" user = User(self.site, 'Xqbot')