jenkins-bot has submitted this change. ( 
https://gerrit.wikimedia.org/r/c/pywikibot/core/+/1179641?usp=email )

Change subject: Fix wikibase_tests
......................................................................

Fix wikibase_tests

label for Q60 was removed and tests can use the default 'mul'

- Updated wikibase tests using 'mul' instead of 'en' labels
- Add test_base_data to test 'en' labels and aliases with
  local json file
- Add test_normalized_invalid_data test to test TypeError for
  unsupported value type in ItemPage._normalizeData method
- Add BaseDataDict to Sphinx documentation

Bug: T402084
Change-Id: I8640e1e79f7ddac5e3fd12e307b6691c51a2a9cf
---
M docs/api_ref/pywikibot.page.rst
M tests/wikibase_tests.py
2 files changed, 22 insertions(+), 4 deletions(-)

Approvals:
  Xqt: Looks good to me, approved
  jenkins-bot: Verified
  Matěj Suchánek: Looks good to me, approved




diff --git a/docs/api_ref/pywikibot.page.rst b/docs/api_ref/pywikibot.page.rst
index 7d38815..0ea0b77 100644
--- a/docs/api_ref/pywikibot.page.rst
+++ b/docs/api_ref/pywikibot.page.rst
@@ -32,6 +32,8 @@
 .. automodule:: pywikibot.page._collections
    :synopsis: Structures holding data for Wikibase entities

+.. autoclass:: BaseDataDict
+
 :mod:`page.\_decorators` --- Page Decorators
 ============================================

diff --git a/tests/wikibase_tests.py b/tests/wikibase_tests.py
index eb8c7df..14ef333 100755
--- a/tests/wikibase_tests.py
+++ b/tests/wikibase_tests.py
@@ -283,9 +283,9 @@
         self.assertNotHasAttr(item, '_content')
         item.get()
         self.assertHasAttr(item, '_content')
-        self.assertIn('en', item.labels)
+        self.assertIn('mul', item.labels)
         # label could change
-        self.assertIn(item.labels['en'], ['New York', 'New York City'])
+        self.assertIn(item.labels['mul'], ['New York', 'New York City'])
         self.assertEqual(item.title(), 'Q60')

     def test_reuse_item_set_id(self) -> None:
@@ -300,7 +300,7 @@
         wikidata = self.get_repo()
         item = ItemPage(wikidata, 'Q60')
         item.get()
-        self.assertIn(item.labels['en'], label)
+        self.assertIn(item.labels['mul'], label)

         # When the id attribute is modified, the ItemPage goes into
         # an inconsistent state.
@@ -312,7 +312,7 @@
         # it doesn't help to clear this piece of saved state.
         del item._content
         # The labels are not updated; assertion showing undesirable behaviour:
-        self.assertIn(item.labels['en'], label)
+        self.assertIn(item.labels['mul'], label)

     def test_empty_item(self) -> None:
         """Test empty wikibase item.
@@ -1127,6 +1127,14 @@
             copy.deepcopy(self.data_out))
         self.assertEqual(response, self.data_out)

+    def test_normalized_invalid_data(self) -> None:
+        """Test _normalizeData() method for invalid data."""
+        data = copy.deepcopy(self.data_out)
+        data['aliases']['en'] = tuple(data['aliases']['en'])
+        with self.assertRaisesRegex(TypeError,
+                                    "Unsupported value type 'tuple'"):
+            ItemPage._normalizeData(data)
+

 class TestPreloadingEntityGenerator(TestCase):

@@ -1437,6 +1445,14 @@
         del self.wdp._content['lastrevid']
         del self.wdp._content['pageid']

+    def test_base_data(self) -> None:
+        """Test labels and aliases collections."""
+        item = self.wdp
+        self.assertIn('en', item.labels)
+        self.assertEqual(item.labels['en'], 'New York City')
+        self.assertIn('en', item.aliases)
+        self.assertIn('NYC', item.aliases['en'])
+
     def test_itempage_json(self) -> None:
         """Test itempage json."""
         old = json.dumps(self.wdp._content, indent=2, sort_keys=True)

--
To view, visit 
https://gerrit.wikimedia.org/r/c/pywikibot/core/+/1179641?usp=email
To unsubscribe, or for help writing mail filters, visit 
https://gerrit.wikimedia.org/r/settings?usp=email

Gerrit-MessageType: merged
Gerrit-Project: pywikibot/core
Gerrit-Branch: master
Gerrit-Change-Id: I8640e1e79f7ddac5e3fd12e307b6691c51a2a9cf
Gerrit-Change-Number: 1179641
Gerrit-PatchSet: 2
Gerrit-Owner: Xqt <i...@gno.de>
Gerrit-Reviewer: Matěj Suchánek <matejsuchane...@gmail.com>
Gerrit-Reviewer: Xqt <i...@gno.de>
Gerrit-Reviewer: jenkins-bot
_______________________________________________
Pywikibot-commits mailing list -- pywikibot-commits@lists.wikimedia.org
To unsubscribe send an email to pywikibot-commits-le...@lists.wikimedia.org

Reply via email to