From 156030d663f1f9adcc177eac3a1aac24dca486b0 Mon Sep 17 00:00:00 2001 From: Alice Russell <Alice.Russell@tessella.com> Date: Fri, 17 Jan 2020 09:51:54 +0000 Subject: [PATCH] Add python version check In python 3.8 it calls __index__ when an int is called but in older versions it calls __int__ so a version check has been added to the test. --- .../general/test/test_general_settings.py | 16 ++++++++++++---- 1 file changed, 12 insertions(+), 4 deletions(-) diff --git a/qt/applications/workbench/workbench/widgets/settings/general/test/test_general_settings.py b/qt/applications/workbench/workbench/widgets/settings/general/test/test_general_settings.py index 4c1d96be867..0175665a486 100644 --- a/qt/applications/workbench/workbench/widgets/settings/general/test/test_general_settings.py +++ b/qt/applications/workbench/workbench/widgets/settings/general/test/test_general_settings.py @@ -8,6 +8,7 @@ from __future__ import absolute_import, unicode_literals import unittest +import sys from mantid.py3compat.mock import call, patch, Mock from mantidqt.utils.qt.testing import start_qapplication @@ -157,10 +158,17 @@ class GeneralSettingsTest(unittest.TestCase): GeneralSettings(None) # calls().__int__() are the calls to int() on the retrieved value from ConfigService.getString - mock_CONF.get.assert_has_calls([call(GeneralSettings.PROMPT_SAVE_ON_CLOSE), - call().__index__(), - call(GeneralSettings.PROMPT_SAVE_EDITOR_MODIFIED), - call().__index__()]) + # In python 3.8 it falls back to __index__() if __int__() is not defined + if sys.version_info < (3, 8): + mock_CONF.get.assert_has_calls([call(GeneralSettings.PROMPT_SAVE_ON_CLOSE), + call().__int__(), + call(GeneralSettings.PROMPT_SAVE_EDITOR_MODIFIED), + call().__int__()]) + else: + mock_CONF.get.assert_has_calls([call(GeneralSettings.PROMPT_SAVE_ON_CLOSE), + call().__index__(), + call(GeneralSettings.PROMPT_SAVE_EDITOR_MODIFIED), + call().__index__()]) mock_ConfigService.getString.assert_has_calls([call(GeneralSettings.PR_RECOVERY_ENABLED), call(GeneralSettings.PR_TIME_BETWEEN_RECOVERY), -- GitLab