Source code for tests.test_lewrap

"""Test the LW wrapper (what little we can)"""
from typing import List
import logging

import pytest

from miniwerk.lewrap import call_certbot
from miniwerk.config import MWConfig

[docs] LOGGER = logging.getLogger(__name__)
[docs] def check_common_args(args: List[str], config: MWConfig) -> None: """Common checks""" LOGGER.debug("args={}".format(args)) assert ",".join(config.fqdns) in args assert "--no-eff-email" in args assert "--agree-tos" in args assert "--cert-name" in args assert args[0] == "certonly" assert config.le_email in args assert "rasenmaeher" in args
@pytest.mark.asyncio
[docs] async def test_default_config() -> None: """Test with default config""" config = MWConfig() # type: ignore[call-arg] LOGGER.debug("config={}".format(config)) assert config.ci is True _, args = await call_certbot(config) check_common_args(args, config) assert "--staging" in args assert "--key-type" in args assert "ecdsa" in args
@pytest.mark.asyncio
[docs] async def test_rsa_config(monkeypatch: pytest.MonkeyPatch) -> None: """Test with modified config""" with monkeypatch.context() as mpatch: mpatch.setenv("MW_KEYTYPE", "rsa") config = MWConfig() # type: ignore[call-arg] LOGGER.debug("config={}".format(config)) assert config.ci is True _, args = await call_certbot(config) check_common_args(args, config) assert "--staging" in args assert "--key-type" in args assert "rsa" in args
@pytest.mark.asyncio
[docs] async def test_live_config(monkeypatch: pytest.MonkeyPatch) -> None: """Test with modified config""" with monkeypatch.context() as mpatch: mpatch.setenv("MW_LE_TEST", "false") config = MWConfig() # type: ignore[call-arg] LOGGER.debug("config={}".format(config)) assert config.ci is True _, args = await call_certbot(config) check_common_args(args, config) assert "--staging" not in args