20 lines
691 B
Python
20 lines
691 B
Python
from __future__ import annotations
|
|
|
|
import json
|
|
|
|
from ansible.module_utils import _internal
|
|
from ansible.module_utils.common.json import AnsibleJSONEncoder
|
|
from ansible.module_utils._internal._json._legacy_encoder import LegacyTargetJSONEncoder
|
|
|
|
|
|
def test_controller_impl_patch() -> None:
|
|
"""Ensure that the context-appropriate implementation of `AnsibleJSONEncoder` is patched into the module."""
|
|
if _internal.is_controller:
|
|
assert AnsibleJSONEncoder is not LegacyTargetJSONEncoder
|
|
else:
|
|
assert AnsibleJSONEncoder is LegacyTargetJSONEncoder
|
|
|
|
|
|
def test_mu_bytes() -> None:
|
|
assert json.dumps(b'abc', cls=LegacyTargetJSONEncoder, _decode_bytes=True) == '"abc"'
|