Files
computer-playbook/tests/unit/cli/deploy/development/test_network.py
T

44 lines
1.5 KiB
Python

from __future__ import annotations
import os
import unittest
from unittest.mock import MagicMock, patch
from cli.deploy.development.network import detect_outer_network_mtu
class TestDetectOuterNetworkMtu(unittest.TestCase):
@patch.dict(os.environ, {"INFINITO_OUTER_NETWORK_MTU": "1300"}, clear=False)
def test_prefers_explicit_outer_network_mtu_env(self) -> None:
self.assertEqual(detect_outer_network_mtu(), "1300")
@patch.dict(os.environ, {}, clear=True)
@patch("cli.deploy.development.network.Path.exists", autospec=True)
@patch("cli.deploy.development.network.Path.read_text", autospec=True)
def test_reads_outer_network_mtu_from_host_docker_daemon(
self,
read_text_mock: MagicMock,
exists_mock: MagicMock,
) -> None:
exists_mock.side_effect = lambda path: str(path) == "/etc/docker/daemon.json"
read_text_mock.return_value = '{"mtu": 1400}'
self.assertEqual(detect_outer_network_mtu(), "1400")
@patch.dict(os.environ, {}, clear=True)
@patch("cli.deploy.development.network.Path.exists", autospec=True)
@patch("cli.deploy.development.network.Path.read_text", autospec=True)
def test_ignores_invalid_daemon_config(
self,
read_text_mock: MagicMock,
exists_mock: MagicMock,
) -> None:
exists_mock.side_effect = lambda path: str(path) == "/etc/docker/daemon.json"
read_text_mock.return_value = '{"mtu": 64}'
self.assertIsNone(detect_outer_network_mtu())
if __name__ == "__main__": # pragma: no cover
unittest.main()