diff options
Diffstat (limited to 'test/units/parsing')
-rw-r--r-- | test/units/parsing/test_ajson.py | 3 | ||||
-rw-r--r-- | test/units/parsing/test_dataloader.py | 23 | ||||
-rw-r--r-- | test/units/parsing/test_mod_args.py | 3 | ||||
-rw-r--r-- | test/units/parsing/test_splitter.py | 4 | ||||
-rw-r--r-- | test/units/parsing/test_unquote.py | 4 | ||||
-rw-r--r-- | test/units/parsing/utils/test_addresses.py | 3 | ||||
-rw-r--r-- | test/units/parsing/utils/test_jsonify.py | 5 | ||||
-rw-r--r-- | test/units/parsing/utils/test_yaml.py | 3 | ||||
-rw-r--r-- | test/units/parsing/vault/test_vault.py | 19 | ||||
-rw-r--r-- | test/units/parsing/vault/test_vault_editor.py | 6 | ||||
-rw-r--r-- | test/units/parsing/yaml/test_constructor.py | 3 | ||||
-rw-r--r-- | test/units/parsing/yaml/test_dumper.py | 6 | ||||
-rw-r--r-- | test/units/parsing/yaml/test_loader.py | 21 | ||||
-rw-r--r-- | test/units/parsing/yaml/test_objects.py | 6 |
14 files changed, 50 insertions, 59 deletions
diff --git a/test/units/parsing/test_ajson.py b/test/units/parsing/test_ajson.py index bb7bf1a..6faf3f9 100644 --- a/test/units/parsing/test_ajson.py +++ b/test/units/parsing/test_ajson.py @@ -2,8 +2,7 @@ # Copyright 2019, Andrew Klychkov @Andersson007 <aaklychkov@mail.ru> # GNU General Public License v3.0+ (see COPYING or https://www.gnu.org/licenses/gpl-3.0.txt) -from __future__ import absolute_import, division, print_function -__metaclass__ = type +from __future__ import annotations import os import json diff --git a/test/units/parsing/test_dataloader.py b/test/units/parsing/test_dataloader.py index a7f8b1d..05040c3 100644 --- a/test/units/parsing/test_dataloader.py +++ b/test/units/parsing/test_dataloader.py @@ -15,13 +15,11 @@ # You should have received a copy of the GNU General Public License # along with Ansible. If not, see <http://www.gnu.org/licenses/>. -# Make coding more python3-ish -from __future__ import (absolute_import, division, print_function) -__metaclass__ = type +from __future__ import annotations import os -from units.compat import unittest +import unittest from unittest.mock import patch, mock_open from ansible.errors import AnsibleParserError, yaml_strings, AnsibleFileNotFound from ansible.parsing.vault import AnsibleVaultError @@ -230,5 +228,20 @@ class TestDataLoaderWithVault(unittest.TestCase): """ with patch('builtins.open', mock_open(read_data=vaulted_data.encode('utf-8'))): - output = self._loader.load_from_file('dummy_vault.txt') + output = self._loader.load_from_file('dummy_vault.txt', cache='none') self.assertEqual(output, dict(foo='bar')) + + # no cache used + self.assertFalse(self._loader._FILE_CACHE) + + # vault cache entry written + output = self._loader.load_from_file('dummy_vault.txt', cache='vaulted') + self.assertEqual(output, dict(foo='bar')) + self.assertTrue(self._loader._FILE_CACHE) + + # cache entry used + key = next(iter(self._loader._FILE_CACHE.keys())) + modified = {'changed': True} + self._loader._FILE_CACHE[key] = modified + output = self._loader.load_from_file('dummy_vault.txt', cache='vaulted') + self.assertEqual(output, modified) diff --git a/test/units/parsing/test_mod_args.py b/test/units/parsing/test_mod_args.py index aeb74ad..0bb0c95 100644 --- a/test/units/parsing/test_mod_args.py +++ b/test/units/parsing/test_mod_args.py @@ -2,8 +2,7 @@ # Copyright 2017, Ansible Project # GNU General Public License v3.0+ (see COPYING or https://www.gnu.org/licenses/gpl-3.0.txt) -from __future__ import absolute_import, division, print_function -__metaclass__ = type +from __future__ import annotations import pytest diff --git a/test/units/parsing/test_splitter.py b/test/units/parsing/test_splitter.py index 893f047..9eb957d 100644 --- a/test/units/parsing/test_splitter.py +++ b/test/units/parsing/test_splitter.py @@ -16,9 +16,7 @@ # You should have received a copy of the GNU General Public License # along with Ansible. If not, see <http://www.gnu.org/licenses/>. -# Make coding more python3-ish -from __future__ import (absolute_import, division, print_function) -__metaclass__ = type +from __future__ import annotations from ansible.parsing.splitter import split_args, parse_kv from ansible.errors import AnsibleParserError diff --git a/test/units/parsing/test_unquote.py b/test/units/parsing/test_unquote.py index 4b4260e..9d8918a 100644 --- a/test/units/parsing/test_unquote.py +++ b/test/units/parsing/test_unquote.py @@ -16,9 +16,7 @@ # You should have received a copy of the GNU General Public License # along with Ansible. If not, see <http://www.gnu.org/licenses/>. -# Make coding more python3-ish -from __future__ import (absolute_import, division, print_function) -__metaclass__ = type +from __future__ import annotations from ansible.parsing.quoting import unquote diff --git a/test/units/parsing/utils/test_addresses.py b/test/units/parsing/utils/test_addresses.py index 4f7304f..7562940 100644 --- a/test/units/parsing/utils/test_addresses.py +++ b/test/units/parsing/utils/test_addresses.py @@ -1,7 +1,6 @@ # -*- coding: utf-8 -*- -from __future__ import (absolute_import, division, print_function) -__metaclass__ = type +from __future__ import annotations import unittest diff --git a/test/units/parsing/utils/test_jsonify.py b/test/units/parsing/utils/test_jsonify.py index 37be782..bb71a02 100644 --- a/test/units/parsing/utils/test_jsonify.py +++ b/test/units/parsing/utils/test_jsonify.py @@ -16,10 +16,9 @@ # You should have received a copy of the GNU General Public License # along with Ansible. If not, see <http://www.gnu.org/licenses/>. -from __future__ import (absolute_import, division, print_function) -__metaclass__ = type +from __future__ import annotations -from units.compat import unittest +import unittest from ansible.parsing.utils.jsonify import jsonify diff --git a/test/units/parsing/utils/test_yaml.py b/test/units/parsing/utils/test_yaml.py index 27b2905..64d43c3 100644 --- a/test/units/parsing/utils/test_yaml.py +++ b/test/units/parsing/utils/test_yaml.py @@ -16,8 +16,7 @@ # You should have received a copy of the GNU General Public License # along with Ansible. If not, see <http://www.gnu.org/licenses/>. -from __future__ import (absolute_import, division, print_function) -__metaclass__ = type +from __future__ import annotations import pytest diff --git a/test/units/parsing/vault/test_vault.py b/test/units/parsing/vault/test_vault.py index f94171a..982ae82 100644 --- a/test/units/parsing/vault/test_vault.py +++ b/test/units/parsing/vault/test_vault.py @@ -17,9 +17,7 @@ # You should have received a copy of the GNU General Public License # along with Ansible. If not, see <http://www.gnu.org/licenses/>. -# Make coding more python3-ish -from __future__ import (absolute_import, division, print_function) -__metaclass__ = type +from __future__ import annotations import io import os @@ -28,11 +26,10 @@ import tempfile from binascii import hexlify import pytest -from units.compat import unittest +import unittest from unittest.mock import patch, MagicMock from ansible import errors -from ansible.module_utils import six from ansible.module_utils.common.text.converters import to_bytes, to_text from ansible.parsing import vault @@ -507,7 +504,7 @@ class TestVaultCipherAes256(unittest.TestCase): b_password = b'hunter42' b_salt = os.urandom(32) b_key_cryptography = self.vault_cipher._create_key_cryptography(b_password, b_salt, key_length=32, iv_length=16) - self.assertIsInstance(b_key_cryptography, six.binary_type) + self.assertIsInstance(b_key_cryptography, bytes) def test_create_key_known_cryptography(self): b_password = b'hunter42' @@ -515,13 +512,13 @@ class TestVaultCipherAes256(unittest.TestCase): # A fixed salt b_salt = b'q' * 32 # q is the most random letter. b_key_1 = self.vault_cipher._create_key_cryptography(b_password, b_salt, key_length=32, iv_length=16) - self.assertIsInstance(b_key_1, six.binary_type) + self.assertIsInstance(b_key_1, bytes) # verify we get the same answer # we could potentially run a few iterations of this and time it to see if it's roughly constant time # and or that it exceeds some minimal time, but that would likely cause unreliable fails, esp in CI b_key_2 = self.vault_cipher._create_key_cryptography(b_password, b_salt, key_length=32, iv_length=16) - self.assertIsInstance(b_key_2, six.binary_type) + self.assertIsInstance(b_key_2, bytes) self.assertEqual(b_key_1, b_key_2) def test_is_equal_is_equal(self): @@ -612,7 +609,7 @@ class TestVaultLib(unittest.TestCase): plaintext = u'Some text to encrypt in a café' b_vaulttext = self.v.encrypt(plaintext) - self.assertIsInstance(b_vaulttext, six.binary_type) + self.assertIsInstance(b_vaulttext, bytes) b_header = b'$ANSIBLE_VAULT;1.1;AES256\n' self.assertEqual(b_vaulttext[:len(b_header)], b_header) @@ -621,7 +618,7 @@ class TestVaultLib(unittest.TestCase): plaintext = u'Some text to encrypt in a café' b_vaulttext = self.v.encrypt(plaintext, vault_id='test_id') - self.assertIsInstance(b_vaulttext, six.binary_type) + self.assertIsInstance(b_vaulttext, bytes) b_header = b'$ANSIBLE_VAULT;1.2;AES256;test_id\n' self.assertEqual(b_vaulttext[:len(b_header)], b_header) @@ -631,7 +628,7 @@ class TestVaultLib(unittest.TestCase): plaintext = to_bytes(u'Some text to encrypt in a café') b_vaulttext = self.v.encrypt(plaintext) - self.assertIsInstance(b_vaulttext, six.binary_type) + self.assertIsInstance(b_vaulttext, bytes) b_header = b'$ANSIBLE_VAULT;1.1;AES256\n' self.assertEqual(b_vaulttext[:len(b_header)], b_header) diff --git a/test/units/parsing/vault/test_vault_editor.py b/test/units/parsing/vault/test_vault_editor.py index 28561c6..d191cf8 100644 --- a/test/units/parsing/vault/test_vault_editor.py +++ b/test/units/parsing/vault/test_vault_editor.py @@ -16,9 +16,7 @@ # You should have received a copy of the GNU General Public License # along with Ansible. If not, see <http://www.gnu.org/licenses/>. -# Make coding more python3-ish -from __future__ import (absolute_import, division, print_function) -__metaclass__ = type +from __future__ import annotations import os import tempfile @@ -26,7 +24,7 @@ from io import BytesIO, StringIO import pytest -from units.compat import unittest +import unittest from unittest.mock import patch from ansible import errors diff --git a/test/units/parsing/yaml/test_constructor.py b/test/units/parsing/yaml/test_constructor.py index 717bf35..7e16d17 100644 --- a/test/units/parsing/yaml/test_constructor.py +++ b/test/units/parsing/yaml/test_constructor.py @@ -2,8 +2,7 @@ # (c) 2020 Matt Martz <matt@sivel.net> # GNU General Public License v3.0+ (see COPYING or https://www.gnu.org/licenses/gpl-3.0.txt) -from __future__ import absolute_import, division, print_function -__metaclass__ = type +from __future__ import annotations import pytest from yaml import MappingNode, Mark, ScalarNode diff --git a/test/units/parsing/yaml/test_dumper.py b/test/units/parsing/yaml/test_dumper.py index 8af1eee..5d3961e 100644 --- a/test/units/parsing/yaml/test_dumper.py +++ b/test/units/parsing/yaml/test_dumper.py @@ -14,15 +14,13 @@ # You should have received a copy of the GNU General Public License # along with Ansible. If not, see <http://www.gnu.org/licenses/>. -# Make coding more python3-ish -from __future__ import (absolute_import, division, print_function) -__metaclass__ = type +from __future__ import annotations import io from jinja2.exceptions import UndefinedError -from units.compat import unittest +import unittest from ansible.parsing import vault from ansible.parsing.yaml import dumper, objects from ansible.parsing.yaml.loader import AnsibleLoader diff --git a/test/units/parsing/yaml/test_loader.py b/test/units/parsing/yaml/test_loader.py index 117f80a..75ad7c4 100644 --- a/test/units/parsing/yaml/test_loader.py +++ b/test/units/parsing/yaml/test_loader.py @@ -16,17 +16,14 @@ # You should have received a copy of the GNU General Public License # along with Ansible. If not, see <http://www.gnu.org/licenses/>. -# Make coding more python3-ish -from __future__ import (absolute_import, division, print_function) -__metaclass__ = type +from __future__ import annotations from collections.abc import Sequence, Set, Mapping from io import StringIO -from units.compat import unittest +import unittest from ansible import errors -from ansible.module_utils.six import text_type, binary_type from ansible.parsing.yaml.loader import AnsibleLoader from ansible.parsing import vault from ansible.parsing.yaml.objects import AnsibleVaultEncryptedUnicode @@ -66,7 +63,7 @@ class TestAnsibleLoaderBasic(unittest.TestCase): loader = AnsibleLoader(stream, 'myfile.yml') data = loader.get_single_data() self.assertEqual(data, u'Ansible') - self.assertIsInstance(data, text_type) + self.assertIsInstance(data, str) self.assertEqual(data.ansible_pos, ('myfile.yml', 2, 17)) @@ -77,7 +74,7 @@ class TestAnsibleLoaderBasic(unittest.TestCase): loader = AnsibleLoader(stream, 'myfile.yml') data = loader.get_single_data() self.assertEqual(data, u'Cafè Eñyei') - self.assertIsInstance(data, text_type) + self.assertIsInstance(data, str) self.assertEqual(data.ansible_pos, ('myfile.yml', 2, 17)) @@ -90,8 +87,8 @@ class TestAnsibleLoaderBasic(unittest.TestCase): data = loader.get_single_data() self.assertEqual(data, {'webster': 'daniel', 'oed': 'oxford'}) self.assertEqual(len(data), 2) - self.assertIsInstance(list(data.keys())[0], text_type) - self.assertIsInstance(list(data.values())[0], text_type) + self.assertIsInstance(list(data.keys())[0], str) + self.assertIsInstance(list(data.values())[0], str) # Beginning of the first key self.assertEqual(data.ansible_pos, ('myfile.yml', 2, 17)) @@ -108,7 +105,7 @@ class TestAnsibleLoaderBasic(unittest.TestCase): data = loader.get_single_data() self.assertEqual(data, [u'a', u'b']) self.assertEqual(len(data), 2) - self.assertIsInstance(data[0], text_type) + self.assertIsInstance(data[0], str) self.assertEqual(data.ansible_pos, ('myfile.yml', 2, 17)) @@ -355,10 +352,10 @@ class TestAnsibleLoaderPlay(unittest.TestCase): def walk(self, data): # Make sure there's no str in the data - self.assertNotIsInstance(data, binary_type) + self.assertNotIsInstance(data, bytes) # Descend into various container types - if isinstance(data, text_type): + if isinstance(data, str): # strings are a sequence so we have to be explicit here return elif isinstance(data, (Sequence, Set)): diff --git a/test/units/parsing/yaml/test_objects.py b/test/units/parsing/yaml/test_objects.py index f899915..32aca1c 100644 --- a/test/units/parsing/yaml/test_objects.py +++ b/test/units/parsing/yaml/test_objects.py @@ -16,11 +16,9 @@ # # Copyright 2016, Adrian Likins <alikins@redhat.com> -# Make coding more python3-ish -from __future__ import (absolute_import, division, print_function) -__metaclass__ = type +from __future__ import annotations -from units.compat import unittest +import unittest from ansible.errors import AnsibleError |