From 93519739d719c41bc691bfc3aeb50b41200c4071 Mon Sep 17 00:00:00 2001 From: Bob Swift Date: Mon, 31 May 2021 08:11:47 -0600 Subject: [PATCH] Use mock for Russian locale tests --- test/test_script.py | 19 +++++++++++++------ 1 file changed, 13 insertions(+), 6 deletions(-) diff --git a/test/test_script.py b/test/test_script.py index b46192a89..215da2c50 100644 --- a/test/test_script.py +++ b/test/test_script.py @@ -33,6 +33,7 @@ import copy import datetime import re import unittest +from unittest import mock from unittest.mock import MagicMock from test.picardtestcase import PicardTestCase @@ -1576,12 +1577,18 @@ class ScriptParserTest(PicardTestCase): context["bar"] = "" context["baz"] = "INVALID" - # Test with Russian locale (Disabled because test fails on GitHub actions. Perhaps locale information is not available?) - # i18n.setup_gettext('build/locale', ui_language='ru') - # self.assertScriptResultEquals("$countryname(ca)", "Canada", context) - # self.assertScriptResultEquals("$countryname(ca,)", "Canada", context) - # self.assertScriptResultEquals("$countryname(ca, )", "Канада", context) - # self.assertScriptResultEquals("$countryname(ca,yes)", "Канада", context) + # Test with Russian locale + i18n.setup_gettext('build/locale', ui_language='ru') + + def mock_gettext_countries(arg): + return "Канада" + + # from unittest import mock + with mock.patch('builtins.gettext_countries', mock_gettext_countries): + self.assertScriptResultEquals("$countryname(ca)", "Canada", context) + self.assertScriptResultEquals("$countryname(ca,)", "Canada", context) + self.assertScriptResultEquals("$countryname(ca, )", "Канада", context) + self.assertScriptResultEquals("$countryname(ca,yes)", "Канада", context) # Reset locale to English for remaining tests i18n.setup_gettext('build/locale', ui_language='en')