diff --git a/plugin/__init__.py b/plugin/__init__.py index 481754b..a576443 100644 --- a/plugin/__init__.py +++ b/plugin/__init__.py @@ -345,12 +345,15 @@ def getNote(self, note_id: int) -> Note: raise NotFoundError('Note was not found: {}'.format(note_id)) def deckStatsToJson(self, due_tree): - return {'deck_id': due_tree.deck_id, - 'name': due_tree.name, - 'new_count': due_tree.new_count, - 'learn_count': due_tree.learn_count, - 'review_count': due_tree.review_count, - 'total_in_deck': due_tree.total_in_deck} + deckStats = {'deck_id': due_tree.deck_id, + 'name': due_tree.name, + 'new_count': due_tree.new_count, + 'learn_count': due_tree.learn_count, + 'review_count': due_tree.review_count} + if anki_version > (2, 1, 46): + # total_in_deck is not supported on lower Anki versions + deckStats['total_in_deck'] = due_tree.total_in_deck + return deckStats def collectDeckTreeChildren(self, parent_node): allNodes = {parent_node.deck_id: parent_node} diff --git a/tests/test_decks.py b/tests/test_decks.py index 822ba1c..0447347 100755 --- a/tests/test_decks.py +++ b/tests/test_decks.py @@ -71,4 +71,4 @@ def test_removedDeckConfigId_fails_with_invalid_id(session_with_profile_loaded): def test_getDeckStats(session_with_profile_loaded): result = ac.getDeckStats(decks=["Default"]) - assert result["name"] == "Default" + assert list(result.values())[0]["name"] == "Default"