Старый postinstall
This commit is contained in:
commit
4337a3f94e
349 changed files with 21945 additions and 0 deletions
67
deb_dist/postinstall-1.5.0/build/lib/tests/test_docker.py
Normal file
67
deb_dist/postinstall-1.5.0/build/lib/tests/test_docker.py
Normal file
|
|
@ -0,0 +1,67 @@
|
|||
import unittest
|
||||
from unittest.mock import patch, MagicMock
|
||||
from docker_config import DockerConfig, REGISTRY_URL, REGISTRY_LOGIN, REGISTRY_PASSWORD, DOCKER_COMPOSE_FILE_PATH
|
||||
|
||||
class TestDockerConfig(unittest.TestCase):
|
||||
def setUp(self):
|
||||
self.docker_config = DockerConfig()
|
||||
|
||||
@patch("subprocess.run")
|
||||
def test_check_installed_true(self, mock_run):
|
||||
mock_run.return_value.returncode = 0
|
||||
self.assertTrue(self.docker_config.check_installed("docker"))
|
||||
|
||||
@patch("subprocess.run")
|
||||
def test_check_installed_false(self, mock_run):
|
||||
mock_run.return_value.returncode = 1
|
||||
self.assertFalse(self.docker_config.check_installed("docker"))
|
||||
|
||||
@patch("subprocess.run")
|
||||
def test_install_docker(self, mock_run):
|
||||
self.docker_config.install_docker()
|
||||
mock_run.assert_any_call(["apt-get", "update"], check=True)
|
||||
mock_run.assert_any_call(["apt-get", "install", "-y", "docker.io"], check=True)
|
||||
mock_run.assert_any_call(
|
||||
["apt-get", "install", "-y", "docker-compose"], check=True
|
||||
)
|
||||
|
||||
@patch("subprocess.run")
|
||||
def test_check_docker_login_success(self, mock_run):
|
||||
mock_run.return_value.stdout = "Login Succeeded"
|
||||
self.assertTrue(self.docker_config.check_docker_login("registry_url"))
|
||||
|
||||
@patch("subprocess.run")
|
||||
def test_check_docker_login_failure(self, mock_run):
|
||||
mock_run.return_value.stdout = "Login Failed"
|
||||
self.assertFalse(self.docker_config.check_docker_login("registry_url"))
|
||||
|
||||
@patch("subprocess.run")
|
||||
@patch("docker_config.DockerConfig.check_docker_login")
|
||||
def test_login_to_registry(self, mock_check_login, mock_run):
|
||||
mock_check_login.return_value = False
|
||||
self.docker_config.login_to_registry()
|
||||
mock_run.assert_called_once()
|
||||
|
||||
@patch("subprocess.run")
|
||||
@patch("docker_config.DockerConfig.check_docker_login")
|
||||
@patch("docker_config.DockerConfig.login_to_registry")
|
||||
@patch("builtins.open", new_callable=unittest.mock.mock_open)
|
||||
def test_install_portainer(self, mock_open, mock_login, mock_check_login, mock_run):
|
||||
mock_check_login.return_value = True
|
||||
self.docker_config.install_portainer("9000", "admin", "password", "127.0.0.1")
|
||||
mock_open.assert_called()
|
||||
mock_run.assert_called()
|
||||
|
||||
def test_validate_input_success(self):
|
||||
self.assertTrue(
|
||||
self.docker_config.validate_input("admin", r"^[a-zA-Z0-9_-]+$", "Error")
|
||||
)
|
||||
|
||||
def test_validate_input_failure(self):
|
||||
self.assertFalse(
|
||||
self.docker_config.validate_input("admin@", r"^[a-zA-Z0-9_-]+$", "Error")
|
||||
)
|
||||
|
||||
|
||||
if __name__ == "__main__":
|
||||
unittest.main()
|
||||
Loading…
Add table
Add a link
Reference in a new issue