From aa07b3fa43f88836d657cba3fbad8430a40f7927 Mon Sep 17 00:00:00 2001 From: Daniel A Wozniak Date: Fri, 7 Sep 2018 22:16:02 +0000 Subject: [PATCH] Multiple unittest fixes for 2018.3 Python 3 Windows --- tests/unit/utils/test_files.py | 10 +++++----- tests/unit/utils/test_jinja.py | 4 ++-- tests/unit/utils/test_json.py | 8 ++++---- 3 files changed, 11 insertions(+), 11 deletions(-) diff --git a/tests/unit/utils/test_files.py b/tests/unit/utils/test_files.py index ed879940a934..5e8cc7625f61 100644 --- a/tests/unit/utils/test_files.py +++ b/tests/unit/utils/test_files.py @@ -47,14 +47,14 @@ def test_safe_walk_symlink_recursion(self, tmp): if os.stat(tmp).st_ino == 0: self.skipTest('inodes not supported in {0}'.format(tmp)) os.mkdir(os.path.join(tmp, 'fax')) - os.makedirs(os.path.join(tmp, 'foo/bar')) - os.symlink('../..', os.path.join(tmp, 'foo/bar/baz')) + os.makedirs(os.path.join(tmp, 'foo', 'bar')) + os.symlink(os.path.join('..', '..'), os.path.join(tmp, 'foo', 'bar', 'baz')) os.symlink('foo', os.path.join(tmp, 'root')) expected = [ (os.path.join(tmp, 'root'), ['bar'], []), - (os.path.join(tmp, 'root/bar'), ['baz'], []), - (os.path.join(tmp, 'root/bar/baz'), ['fax', 'foo', 'root'], []), - (os.path.join(tmp, 'root/bar/baz/fax'), [], []), + (os.path.join(tmp, 'root', 'bar'), ['baz'], []), + (os.path.join(tmp, 'root', 'bar', 'baz'), ['fax', 'foo', 'root'], []), + (os.path.join(tmp, 'root', 'bar', 'baz', 'fax'), [], []), ] paths = [] for root, dirs, names in salt.utils.files.safe_walk(os.path.join(tmp, 'root')): diff --git a/tests/unit/utils/test_jinja.py b/tests/unit/utils/test_jinja.py index 588e4de01e61..4686739a1dad 100644 --- a/tests/unit/utils/test_jinja.py +++ b/tests/unit/utils/test_jinja.py @@ -368,7 +368,7 @@ def test_non_ascii_encoding(self): self.assertEqual(fc.requests[0]['path'], 'salt://macro') filename = os.path.join(self.template_dir, 'non_ascii') - with salt.utils.files.fopen(filename) as fp_: + with salt.utils.files.fopen(filename, 'rb') as fp_: out = render_jinja_tmpl( salt.utils.stringutils.to_unicode(fp_.read(), 'utf-8'), dict(opts={'cachedir': self.tempdir, 'file_client': 'remote', @@ -435,7 +435,7 @@ def test_non_ascii(self): saltenv='test', salt=self.local_salt ) - with salt.utils.files.fopen(out['data']) as fp: + with salt.utils.files.fopen(out['data'], 'rb') as fp: result = salt.utils.stringutils.to_unicode(fp.read(), 'utf-8') self.assertEqual(salt.utils.stringutils.to_unicode('Assunção' + os.linesep), result) diff --git a/tests/unit/utils/test_json.py b/tests/unit/utils/test_json.py index 0f742504a8e2..bf542474d4dc 100644 --- a/tests/unit/utils/test_json.py +++ b/tests/unit/utils/test_json.py @@ -137,9 +137,9 @@ def test_dump_load(self, json_out): ''' Test dumping to and loading from a file handle ''' - with salt.utils.files.fopen(json_out, 'w') as fp_: - salt.utils.json.dump(self.data, fp_) - with salt.utils.files.fopen(json_out, 'r') as fp_: - ret = salt.utils.json.load(fp_) + with salt.utils.files.fopen(json_out, 'wb') as fp_: + fp_.write(salt.utils.to_bytes(salt.utils.json.dumps(self.data))) + with salt.utils.files.fopen(json_out, 'rb') as fp_: + ret = salt.utils.json.loads(salt.utils.to_unicode(fp_.read())) # Loading should be equal to the original data self.assertEqual(ret, self.data)