Files

33 lines
905 B
Python
Raw Permalink Normal View History

from __future__ import annotations
from pathlib import Path
from sshctl.core.config import SshctlConfig, load_config
def test_default_config() -> None:
config = SshctlConfig()
assert config.ssh_dir == Path("~/.ssh").expanduser()
assert config.config_file == "config"
assert config.verbose is False
assert config.timeout == 10
def test_config_env_prefix() -> None:
assert SshctlConfig.model_config["env_prefix"] == "SSHCTL_"
def test_ssh_config_path() -> None:
config = SshctlConfig(ssh_dir=Path("/tmp/.ssh"))
assert config.ssh_config_path() == Path("/tmp/.ssh/config")
def test_conf_d_path() -> None:
config = SshctlConfig(ssh_dir=Path("/tmp/.ssh"))
assert config.conf_d_path() == Path("/tmp/.ssh/conf.d")
def test_load_config_nonexistent() -> None:
config = load_config(Path("/nonexistent/sshctl.yaml"))
assert isinstance(config, SshctlConfig)