mirror of
https://github.com/saltstack/salt.git
synced 2025-04-16 09:40:20 +00:00
Migrate tests/integration/modules/test_jinja.py
to pytest
This commit is contained in:
parent
55b1ff7b64
commit
4c7f477d80
2 changed files with 64 additions and 76 deletions
|
@ -1,76 +0,0 @@
|
|||
"""
|
||||
Test the jinja module
|
||||
"""
|
||||
|
||||
import os
|
||||
|
||||
import salt.utils.files
|
||||
import salt.utils.json
|
||||
import salt.utils.yaml
|
||||
from tests.support.case import ModuleCase
|
||||
from tests.support.helpers import requires_system_grains
|
||||
from tests.support.runtests import RUNTIME_VARS
|
||||
|
||||
|
||||
class TestModulesJinja(ModuleCase):
|
||||
"""
|
||||
Test the jinja map module
|
||||
"""
|
||||
|
||||
def _path(self, name, absolute=False):
|
||||
path = os.path.join("modules", "jinja", name)
|
||||
if absolute:
|
||||
return os.path.join(RUNTIME_VARS.BASE_FILES, path)
|
||||
else:
|
||||
return path
|
||||
|
||||
def test_import_json(self):
|
||||
json_file = "osarchmap.json"
|
||||
ret = self.run_function("jinja.import_json", [self._path(json_file)])
|
||||
with salt.utils.files.fopen(self._path(json_file, absolute=True)) as fh_:
|
||||
self.assertDictEqual(salt.utils.json.load(fh_), ret)
|
||||
|
||||
def test_import_yaml(self):
|
||||
yaml_file = "defaults.yaml"
|
||||
ret = self.run_function("jinja.import_yaml", [self._path(yaml_file)])
|
||||
with salt.utils.files.fopen(self._path(yaml_file, absolute=True)) as fh_:
|
||||
self.assertDictEqual(salt.utils.yaml.safe_load(fh_), ret)
|
||||
|
||||
@requires_system_grains
|
||||
def test_load_map(self, grains):
|
||||
ret = self.run_function("jinja.load_map", [self._path("map.jinja"), "template"])
|
||||
|
||||
assert isinstance(
|
||||
ret, dict
|
||||
), "failed to return dictionary from jinja.load_map: {}".format(ret)
|
||||
|
||||
with salt.utils.files.fopen(self._path("defaults.yaml", absolute=True)) as fh_:
|
||||
defaults = salt.utils.yaml.safe_load(fh_)
|
||||
with salt.utils.files.fopen(self._path("osarchmap.json", absolute=True)) as fh_:
|
||||
osarchmap = salt.utils.json.load(fh_)
|
||||
with salt.utils.files.fopen(
|
||||
self._path("osfamilymap.yaml", absolute=True)
|
||||
) as fh_:
|
||||
osfamilymap = salt.utils.yaml.safe_load(fh_)
|
||||
with salt.utils.files.fopen(self._path("osmap.yaml", absolute=True)) as fh_:
|
||||
osmap = salt.utils.yaml.safe_load(fh_)
|
||||
with salt.utils.files.fopen(
|
||||
self._path("osfingermap.yaml", absolute=True)
|
||||
) as fh_:
|
||||
osfingermap = salt.utils.yaml.safe_load(fh_)
|
||||
|
||||
self.assertEqual(
|
||||
ret.get("arch"), osarchmap.get(grains["osarch"], {}).get("arch")
|
||||
)
|
||||
self.assertEqual(
|
||||
ret.get("config"),
|
||||
osfingermap.get(grains["osfinger"], {}).get(
|
||||
"config",
|
||||
osmap.get(grains["os"], {}).get(
|
||||
"config",
|
||||
osfamilymap.get(grains["os_family"], {}).get(
|
||||
"config", defaults.get("template").get("config")
|
||||
),
|
||||
),
|
||||
),
|
||||
)
|
64
tests/pytests/integration/modules/test_jinja.py
Normal file
64
tests/pytests/integration/modules/test_jinja.py
Normal file
|
@ -0,0 +1,64 @@
|
|||
"""
|
||||
Test the jinja module
|
||||
"""
|
||||
|
||||
import os
|
||||
|
||||
import salt.utils.files
|
||||
import salt.utils.json
|
||||
import salt.utils.yaml
|
||||
from tests.support.runtests import RUNTIME_VARS
|
||||
|
||||
|
||||
def _path(name, absolute=False):
|
||||
path = os.path.join("modules", "jinja", name)
|
||||
if absolute:
|
||||
return os.path.join(RUNTIME_VARS.BASE_FILES, path)
|
||||
else:
|
||||
return path
|
||||
|
||||
|
||||
def test_import_json(salt_cli, salt_minion):
|
||||
json_file = "osarchmap.json"
|
||||
ret = salt_cli.run("jinja.import_json", _path(json_file), minion_tgt=salt_minion.id)
|
||||
with salt.utils.files.fopen(_path(json_file, absolute=True)) as fh_:
|
||||
assert salt.utils.json.load(fh_) == ret.data
|
||||
|
||||
|
||||
def test_import_yaml(salt_cli, salt_minion):
|
||||
yaml_file = "defaults.yaml"
|
||||
ret = salt_cli.run("jinja.import_yaml", _path(yaml_file), minion_tgt=salt_minion.id)
|
||||
with salt.utils.files.fopen(_path(yaml_file, absolute=True)) as fh_:
|
||||
assert salt.utils.yaml.safe_load(fh_) == ret.data
|
||||
|
||||
|
||||
def test_load_map(grains, salt_cli, salt_minion):
|
||||
ret = salt_cli.run(
|
||||
"jinja.load_map", _path("map.jinja"), "template", minion_tgt=salt_minion.id
|
||||
)
|
||||
|
||||
assert isinstance(
|
||||
ret.data, dict
|
||||
), "failed to return dictionary from jinja.load_map: {}".format(ret)
|
||||
|
||||
with salt.utils.files.fopen(_path("defaults.yaml", absolute=True)) as fh_:
|
||||
defaults = salt.utils.yaml.safe_load(fh_)
|
||||
with salt.utils.files.fopen(_path("osarchmap.json", absolute=True)) as fh_:
|
||||
osarchmap = salt.utils.json.load(fh_)
|
||||
with salt.utils.files.fopen(_path("osfamilymap.yaml", absolute=True)) as fh_:
|
||||
osfamilymap = salt.utils.yaml.safe_load(fh_)
|
||||
with salt.utils.files.fopen(_path("osmap.yaml", absolute=True)) as fh_:
|
||||
osmap = salt.utils.yaml.safe_load(fh_)
|
||||
with salt.utils.files.fopen(_path("osfingermap.yaml", absolute=True)) as fh_:
|
||||
osfingermap = salt.utils.yaml.safe_load(fh_)
|
||||
|
||||
assert ret.data.get("arch") == osarchmap.get(grains["osarch"], {}).get("arch")
|
||||
assert ret.data.get("config") == osfingermap.get(grains["osfinger"], {}).get(
|
||||
"config",
|
||||
osmap.get(grains["os"], {}).get(
|
||||
"config",
|
||||
osfamilymap.get(grains["os_family"], {}).get(
|
||||
"config", defaults.get("template").get("config")
|
||||
),
|
||||
),
|
||||
)
|
Loading…
Add table
Reference in a new issue