diff --git a/lib/aussieaddonscommon/utils.py b/lib/aussieaddonscommon/utils.py index d2ea897..e038d4d 100644 --- a/lib/aussieaddonscommon/utils.py +++ b/lib/aussieaddonscommon/utils.py @@ -211,14 +211,17 @@ def get_kodi_build(): try: return xbmc.getInfoLabel("System.BuildVersion") except Exception: - return + return None def get_kodi_version(): """Return the version number of Kodi""" build = get_kodi_build() - version = build.split(' ')[0] - return version + if build: + version = build.split(' ')[0] + return version + else: + return '0' def get_kodi_major_version(): diff --git a/lib/tests/unit/test_utils.py b/lib/tests/unit/test_utils.py index 7e50635..dcfd528 100644 --- a/lib/tests/unit/test_utils.py +++ b/lib/tests/unit/test_utils.py @@ -129,11 +129,21 @@ def test_get_kodi_version(self, mock_info_label): mock_info_label.return_value = fakes.BUILD_VERSION self.assertEqual('18.2', utils.get_kodi_version()) + @mock.patch('xbmc.getInfoLabel') + def test_get_kodi_version_none(self, mock_info_label): + mock_info_label.return_value = None + self.assertEqual('0', utils.get_kodi_version()) + @mock.patch('xbmc.getInfoLabel') def test_get_kodi_major_version(self, mock_info_label): mock_info_label.return_value = fakes.BUILD_VERSION self.assertEqual(18, utils.get_kodi_major_version()) + @mock.patch('xbmc.getInfoLabel') + def test_get_kodi_major_version_blank(self, mock_info_label): + mock_info_label.return_value = '' + self.assertEqual(0, utils.get_kodi_major_version()) + @mock.patch('xbmcaddon.Addon', fakes.FakeAddon) @mock.patch('xbmc.log') @mock.patch('xbmc.getCondVisibility')