tests: update confighelper tests

Signed-off-by:  Eric Callahan <arksine.code@gmail.com>
This commit is contained in:
Eric Callahan 2022-04-06 17:02:22 -04:00
parent 0f70037ffc
commit 2096c380c4
No known key found for this signature in database
GPG Key ID: 7027245FBBDDF59A
1 changed files with 31 additions and 33 deletions

View File

@ -4,6 +4,7 @@ import pytest
import hashlib import hashlib
import confighelper import confighelper
import shutil import shutil
import time
from confighelper import ConfigError from confighelper import ConfigError
from moonraker import Server from moonraker import Server
from utils import ServerError from utils import ServerError
@ -52,9 +53,9 @@ class TestConfigGeneric:
sec = config["file_manager"] sec = config["file_manager"]
assert sec.section == "file_manager" assert sec.section == "file_manager"
def test_get_item_fail(self, config: ConfigHelper): def test_no_section_fail(self, config: ConfigHelper):
with pytest.raises(ConfigError): with pytest.raises(ConfigError):
config["not_available"] config["not_available"].get("no_section")
def test_contains(self, config: ConfigHelper): def test_contains(self, config: ConfigHelper):
assert "file_manager" in config assert "file_manager" in config
@ -112,20 +113,20 @@ class TestGetString:
val = test_config.get("test_string") val = test_config.get("test_string")
assert val == "Hello World" assert val == "Hello World"
def test_get_st_fail(self, test_config: ConfigHelper): def test_get_str_fail(self, test_config: ConfigHelper):
with pytest.raises(ConfigError): with pytest.raises(ConfigError):
test_config.get("invalid_option") test_config.get("invalid_option")
def test_get_st_default(self, test_config: ConfigHelper): def test_get_str_default(self, test_config: ConfigHelper):
assert test_config.get("invalid_option", None) is None assert test_config.get("invalid_option", None) is None
def test_get_int_deprecate(self, test_config: ConfigHelper): def test_get_str_deprecate(self, test_config: ConfigHelper):
server = test_config.get_server() server = test_config.get_server()
test_config.get("test_string", deprecate=True) test_config.get("test_string", deprecate=True)
expected = ( expected = (
f"[test_options]: Option 'test_string' in is " f"[test_options]: Option 'test_string' is "
"deprecated, see the configuration documention " "deprecated, see the configuration documention "
"at https://moonraker.readthedocs.io" "at https://moonraker.readthedocs.io/en/latest/configuration"
) )
assert expected in server.warnings assert expected in server.warnings
@ -166,9 +167,9 @@ class TestGetInt:
server = test_config.get_server() server = test_config.get_server()
test_config.getint("test_int", deprecate=True) test_config.getint("test_int", deprecate=True)
expected = ( expected = (
f"[test_options]: Option 'test_int' in is " f"[test_options]: Option 'test_int' is "
"deprecated, see the configuration documention " "deprecated, see the configuration documention "
"at https://moonraker.readthedocs.io" "at https://moonraker.readthedocs.io/en/latest/configuration"
) )
assert expected in server.warnings assert expected in server.warnings
@ -209,9 +210,9 @@ class TestGetFloat:
server = test_config.get_server() server = test_config.get_server()
test_config.getfloat("test_float", deprecate=True) test_config.getfloat("test_float", deprecate=True)
expected = ( expected = (
f"[test_options]: Option 'test_float' in is " f"[test_options]: Option 'test_float' is "
"deprecated, see the configuration documention " "deprecated, see the configuration documention "
"at https://moonraker.readthedocs.io" "at https://moonraker.readthedocs.io/en/latest/configuration"
) )
assert expected in server.warnings assert expected in server.warnings
@ -231,9 +232,9 @@ class TestGetBoolean:
server = test_config.get_server() server = test_config.get_server()
test_config.getboolean("test_bool", deprecate=True) test_config.getboolean("test_bool", deprecate=True)
expected = ( expected = (
f"[test_options]: Option 'test_bool' in is " f"[test_options]: Option 'test_bool' is "
"deprecated, see the configuration documention " "deprecated, see the configuration documention "
"at https://moonraker.readthedocs.io" "at https://moonraker.readthedocs.io/en/latest/configuration"
) )
assert expected in server.warnings assert expected in server.warnings
@ -266,9 +267,9 @@ class TestGetList:
server = test_config.get_server() server = test_config.get_server()
test_config.getlist("test_list", deprecate=True) test_config.getlist("test_list", deprecate=True)
expected = ( expected = (
f"[test_options]: Option 'test_list' in is " f"[test_options]: Option 'test_list' is "
"deprecated, see the configuration documention " "deprecated, see the configuration documention "
"at https://moonraker.readthedocs.io" "at https://moonraker.readthedocs.io/en/latest/configuration"
) )
assert expected in server.warnings assert expected in server.warnings
@ -297,9 +298,9 @@ class TestGetDict:
server = test_config.get_server() server = test_config.get_server()
test_config.getdict("test_dict", deprecate=True) test_config.getdict("test_dict", deprecate=True)
expected = ( expected = (
f"[test_options]: Option 'test_dict' in is " f"[test_options]: Option 'test_dict' is "
"deprecated, see the configuration documention " "deprecated, see the configuration documention "
"at https://moonraker.readthedocs.io" "at https://moonraker.readthedocs.io/en/latest/configuration"
) )
assert expected in server.warnings assert expected in server.warnings
@ -343,9 +344,9 @@ class TestGetTemplate:
server = test_config.get_server() server = test_config.get_server()
test_config.gettemplate("test_template", deprecate=True) test_config.gettemplate("test_template", deprecate=True)
expected = ( expected = (
f"[test_options]: Option 'test_template' in is " f"[test_options]: Option 'test_template' is "
"deprecated, see the configuration documention " "deprecated, see the configuration documention "
"at https://moonraker.readthedocs.io" "at https://moonraker.readthedocs.io/en/latest/configuration"
) )
assert expected in server.warnings assert expected in server.warnings
@ -417,9 +418,9 @@ class TestGetGpioOut:
server = gpio_config.get_server() server = gpio_config.get_server()
gpio_config.getgpioout("test_gpio", deprecate=True) gpio_config.getgpioout("test_gpio", deprecate=True)
expected = ( expected = (
f"[test_options]: Option 'test_gpio' in is " f"[test_options]: Option 'test_gpio' is "
"deprecated, see the configuration documention " "deprecated, see the configuration documention "
"at https://moonraker.readthedocs.io" "at https://moonraker.readthedocs.io/en/latest/configuration"
) )
assert expected in server.warnings assert expected in server.warnings
@ -460,35 +461,32 @@ class TestGetConfiguration:
confighelper.get_configuration(base_server, args) confighelper.get_configuration(base_server, args)
class TestBackupConfig: class TestBackupConfig:
def test_backup_fail(self, caplog: pytest.LogCaptureFixture):
fake_path = pathlib.Path("no_exist")
if fake_path.exists():
pytest.fail("Path exists")
confighelper.backup_config(fake_path)
assert "Failed to create a backup" == caplog.messages[-1]
def test_find_backup_fail(self): def test_find_backup_fail(self):
fake_path = pathlib.Path("no_exist") fake_path = pathlib.Path("no_exist")
if fake_path.exists(): if fake_path.exists():
pytest.fail("Path exists") fake_path.unlink()
result = confighelper.find_config_backup(fake_path) result = confighelper.find_config_backup(fake_path)
assert result is None assert result is None
def test_backup_config_success(self, path_args: Dict[str, pathlib.Path]): def test_backup_config_success(
self, path_args: Dict[str, pathlib.Path], config: ConfigHelper
):
cfg_path = path_args["moonraker.conf"] cfg_path = path_args["moonraker.conf"]
bkp_dest = cfg_path.parent.joinpath(f".{cfg_path.name}.bkp") bkp_dest = cfg_path.parent.joinpath(f".{cfg_path.name}.bkp")
if bkp_dest.exists(): if bkp_dest.exists():
pytest.fail("Backup Already Exists") pytest.fail("Backup Already Exists")
confighelper.backup_config(str(cfg_path)) config.create_backup()
assert bkp_dest.is_file() assert bkp_dest.is_file()
def test_backup_skip(self, path_args: Dict[str, pathlib.Path]): def test_backup_skip(
self, path_args: Dict[str, pathlib.Path], config: ConfigHelper
):
cfg_path = path_args["moonraker.conf"] cfg_path = path_args["moonraker.conf"]
bkp_dest = cfg_path.parent.joinpath(f".{cfg_path.name}.bkp") bkp_dest = cfg_path.parent.joinpath(f".{cfg_path.name}.bkp")
if not bkp_dest.exists(): if not bkp_dest.exists():
pytest.fail("Backup Not Present") pytest.fail("Backup Not Present")
stat = bkp_dest.stat() stat = bkp_dest.stat()
confighelper.backup_config(str(cfg_path)) config.create_backup()
assert stat == bkp_dest.stat() assert stat == bkp_dest.stat()
def test_find_backup(self, path_args: Dict[str, pathlib.Path]): def test_find_backup(self, path_args: Dict[str, pathlib.Path]):