mirror of
https://github.com/saltstack/salt.git
synced 2025-04-10 23:01:39 +00:00
46 lines
1.3 KiB
Python
46 lines
1.3 KiB
Python
import os
|
|
|
|
import pytest
|
|
|
|
|
|
@pytest.fixture(scope="module")
|
|
def install():
|
|
pytest.helpers.clean_env()
|
|
# Create a custom config
|
|
pytest.helpers.custom_config()
|
|
# Install salt with custom config
|
|
args = ["/S", "/custom-config=custom_conf", "/minion-name=cli_minion"]
|
|
pytest.helpers.install_salt(args)
|
|
yield args
|
|
pytest.helpers.clean_env()
|
|
|
|
|
|
def test_binaries_present(install):
|
|
# This will show the contents of the directory on failure
|
|
inst_dir = pytest.INST_DIR
|
|
inst_dir_exists = os.path.exists(inst_dir)
|
|
dir_contents = os.listdir(inst_dir)
|
|
assert os.path.exists(rf"{inst_dir}\ssm.exe")
|
|
|
|
|
|
def test_config_present(install):
|
|
assert os.path.exists(rf"{pytest.DATA_DIR}\conf\minion")
|
|
|
|
|
|
def test_config_correct(install):
|
|
# The config file should be the custom config with only minion set
|
|
expected = [
|
|
"# Custom config from test suite line 1/6\n",
|
|
"master: custom_master\n",
|
|
"# Custom config from test suite line 2/6\n",
|
|
"id: cli_minion\n",
|
|
"# Custom config from test suite line 3/6\n",
|
|
"# Custom config from test suite line 4/6\n",
|
|
"# Custom config from test suite line 5/6\n",
|
|
"# Custom config from test suite line 6/6\n",
|
|
]
|
|
|
|
with open(rf"{pytest.DATA_DIR}\conf\minion") as f:
|
|
result = f.readlines()
|
|
|
|
assert result == expected
|