From 9856706880441ade6bba9bae270c79efa589cf0f Mon Sep 17 00:00:00 2001 From: Sorin Sbarnea Date: Thu, 20 Aug 2020 09:31:52 +0100 Subject: [PATCH] Enable testing on MacOS Attempt to reproduce local failure of 4 tests which reproduces with multiple python versions, likely OSX specific. --- .travis.yml | 14 ++++++++++++++ tests/rules/test_key_ordering.py | 8 ++++---- tests/test_cli.py | 7 ++++--- 3 files changed, 22 insertions(+), 7 deletions(-) diff --git a/.travis.yml b/.travis.yml index 2f6b3ba..4c301bb 100644 --- a/.travis.yml +++ b/.travis.yml @@ -8,6 +8,20 @@ python: - 3.7 - 3.8 - nightly +jobs: + include: + - python: 2.7 + os: osx + env: REMOVE_LOCALES=false + - python: 2.7 + os: osx + env: REMOVE_LOCALES=true + - python: 3.8 + os: osx + env: REMOVE_LOCALES=false + - python: 3.8 + os: osx + env: REMOVE_LOCALES=true env: - REMOVE_LOCALES=false - REMOVE_LOCALES=true diff --git a/tests/rules/test_key_ordering.py b/tests/rules/test_key_ordering.py index 7e94b81..de8e6f2 100644 --- a/tests/rules/test_key_ordering.py +++ b/tests/rules/test_key_ordering.py @@ -116,9 +116,9 @@ class KeyOrderingTestCase(RuleTestCase): def test_locale_case(self): self.addCleanup(locale.setlocale, locale.LC_ALL, (None, None)) try: - locale.setlocale(locale.LC_ALL, 'en_US.UTF-8') + locale.setlocale(locale.LC_ALL, 'C.UTF-8') except locale.Error: - self.skipTest('locale en_US.UTF-8 not available') + self.skipTest('locale C.UTF-8 not available') conf = ('key-ordering: enable') self.check('---\n' 't-shirt: 1\n' @@ -135,9 +135,9 @@ class KeyOrderingTestCase(RuleTestCase): def test_locale_accents(self): self.addCleanup(locale.setlocale, locale.LC_ALL, (None, None)) try: - locale.setlocale(locale.LC_ALL, 'en_US.UTF-8') + locale.setlocale(locale.LC_ALL, 'C.UTF-8') except locale.Error: - self.skipTest('locale en_US.UTF-8 not available') + self.skipTest('locale C.UTF-8 not available') conf = ('key-ordering: enable') self.check('---\n' 'hair: true\n' diff --git a/tests/test_cli.py b/tests/test_cli.py index 9b7801d..f7653f6 100644 --- a/tests/test_cli.py +++ b/tests/test_cli.py @@ -308,13 +308,14 @@ class CommandLineTestCase(unittest.TestCase): self.addCleanup(os.environ.update, HOME=os.environ['HOME']) os.environ['HOME'] = home + os.environ.pop('XDG_CONFIG_HOME', None) with open(config, 'w') as f: f.write('rules: {trailing-spaces: disable}') with RunContext(self) as ctx: cli.run((os.path.join(self.wd, 'a.yaml'), )) - self.assertEqual(ctx.returncode, 0) + self.assertEqual(ctx.returncode, 0, msg="%s" % config) with open(config, 'w') as f: f.write('rules: {trailing-spaces: enable}') @@ -347,9 +348,9 @@ class CommandLineTestCase(unittest.TestCase): # reset to default before running the test, # as the first two runs don't use setlocale() try: - locale.setlocale(locale.LC_ALL, 'en_US.UTF-8') + locale.setlocale(locale.LC_ALL, 'C.UTF-8') except locale.Error: - self.skipTest('locale en_US.UTF-8 not available') + self.skipTest('locale C.UTF-8 not available') locale.setlocale(locale.LC_ALL, (None, None)) # C + en.yaml should fail