community.docker/tests/unit/plugins/module_utils/test__scramble.py
Felix Fontein f45232635c
Python code modernization, 1/n (#1141)
* Remove unicode text prefixes.

* Replace str.format() uses with f-strings.

* Replace % with f-strings, and do some cleanup.

* Fix wrong variable.

* Avoid unnecessary string conversion.
2025-10-06 18:30:54 +02:00

29 lines
881 B
Python

# Copyright 2022 Red Hat | Ansible
# GNU General Public License v3.0+ (see LICENSES/GPL-3.0-or-later.txt or https://www.gnu.org/licenses/gpl-3.0.txt)
# SPDX-License-Identifier: GPL-3.0-or-later
from __future__ import (absolute_import, division, print_function)
__metaclass__ = type
import pytest
from ansible_collections.community.docker.plugins.module_utils._scramble import (
scramble,
unscramble,
)
@pytest.mark.parametrize('plaintext, key, scrambled', [
('', b'0', '=S='),
('hello', b'\x00', '=S=aGVsbG8='),
('hello', b'\x01', '=S=aWRtbW4='),
])
def test_scramble_unscramble(plaintext, key, scrambled):
scrambled_ = scramble(plaintext, key)
print(f'{scrambled_!r} == {scrambled!r}')
assert scrambled_ == scrambled
plaintext_ = unscramble(scrambled, key)
print(f'{plaintext_!r} == {plaintext!r}')
assert plaintext_ == plaintext