mirror of
https://github.com/ansible-collections/community.general.git
synced 2025-10-06 16:34:02 -07:00
move extravars and option vars loading into VM (#51070)
* move extravars and option vars loading into VM also safedir setting, all these are intrinsic to VM avoid uneeded and inefectual shallow copy remove setters/getters as VM now does most of the work in init updated and added tests * feedback + fixes * keep extra_vars property for vars_prompt * pass values not objects
This commit is contained in:
parent
f99aaa7144
commit
abb964a5a0
5 changed files with 39 additions and 47 deletions
|
@ -24,10 +24,9 @@ import os
|
|||
from collections import defaultdict
|
||||
|
||||
from units.compat import unittest
|
||||
from units.compat.mock import MagicMock, mock_open, patch
|
||||
from units.compat.mock import MagicMock, patch
|
||||
from ansible.inventory.manager import InventoryManager
|
||||
from ansible.module_utils.six import iteritems
|
||||
from ansible.module_utils.six.moves import builtins
|
||||
from ansible.playbook.play import Play
|
||||
|
||||
|
||||
|
@ -63,14 +62,27 @@ class TestVariableManager(unittest.TestCase):
|
|||
extra_vars = dict(a=1, b=2, c=3)
|
||||
mock_inventory = MagicMock()
|
||||
v = VariableManager(loader=fake_loader, inventory=mock_inventory)
|
||||
v.extra_vars = extra_vars
|
||||
|
||||
vars = v.get_vars(use_cache=False)
|
||||
# override internal extra_vars loading
|
||||
v._extra_vars = extra_vars
|
||||
|
||||
myvars = v.get_vars(use_cache=False)
|
||||
for (key, val) in iteritems(extra_vars):
|
||||
self.assertEqual(vars.get(key), val)
|
||||
self.assertEqual(myvars.get(key), val)
|
||||
|
||||
self.assertIsNot(v.extra_vars, extra_vars)
|
||||
def test_variable_manager_options_vars(self):
|
||||
fake_loader = DictDataLoader({})
|
||||
|
||||
options_vars = dict(a=1, b=2, c=3)
|
||||
mock_inventory = MagicMock()
|
||||
v = VariableManager(loader=fake_loader, inventory=mock_inventory)
|
||||
|
||||
# override internal options_vars loading
|
||||
v._extra_vars = options_vars
|
||||
|
||||
myvars = v.get_vars(use_cache=False)
|
||||
for (key, val) in iteritems(options_vars):
|
||||
self.assertEqual(myvars.get(key), val)
|
||||
|
||||
def test_variable_manager_play_vars(self):
|
||||
fake_loader = DictDataLoader({})
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue