|
|
|
import pytest
|
|
|
|
from scripttease.library.commands.templates import Template
|
|
|
|
from scripttease.library.overlays.ubuntu import *
|
|
|
|
|
|
|
|
|
|
|
|
def test_apache():
|
|
|
|
c = apache("reload")
|
|
|
|
assert "service apache2 reload" in c.get_statement()
|
|
|
|
|
|
|
|
c = apache("restart")
|
|
|
|
assert "service apache2 restart" in c.get_statement()
|
|
|
|
|
|
|
|
c = apache("start")
|
|
|
|
assert "service apache2 start" in c.get_statement()
|
|
|
|
|
|
|
|
c = apache("stop")
|
|
|
|
assert "service apache2 stop" in c.get_statement()
|
|
|
|
|
|
|
|
c = apache("test")
|
|
|
|
assert "apachectl configtest" in c.get_statement()
|
|
|
|
|
|
|
|
with pytest.raises(NameError):
|
|
|
|
apache("nonexistent")
|
|
|
|
|
|
|
|
|
|
|
|
def test_apache_disable_module():
|
|
|
|
c = apache_disable_module("mod_ssl")
|
|
|
|
assert "a2dismod mod_ssl" in c.get_statement()
|
|
|
|
|
|
|
|
|
|
|
|
def test_apache_disable_site():
|
|
|
|
c = apache_disable_site("default")
|
|
|
|
assert "a2dissite default" in c.get_statement()
|
|
|
|
|
|
|
|
|
|
|
|
def test_apache_enable_module():
|
|
|
|
c = apache_enable_module("mod_wsgi")
|
|
|
|
assert "a2enmod mod_wsgi" in c.get_statement()
|
|
|
|
|
|
|
|
|
|
|
|
def test_apache_enable_site():
|
|
|
|
c = apache_enable_site("example.com")
|
|
|
|
assert "a2ensite example.com" in c.get_statement()
|
|
|
|
|
|
|
|
|
|
|
|
def test_command_exists():
|
|
|
|
assert command_exists("apache") is True
|
|
|
|
assert command_exists("nonexistent") is False
|
|
|
|
|
|
|
|
|
|
|
|
def test_service_reload():
|
|
|
|
c = service_reload("postfix")
|
|
|
|
assert "service postfix reload" in c.get_statement()
|
|
|
|
|
|
|
|
|
|
|
|
def test_service_restart():
|
|
|
|
c = service_restart("postfix")
|
|
|
|
assert "service postfix restart" in c.get_statement()
|
|
|
|
|
|
|
|
|
|
|
|
def test_service_start():
|
|
|
|
c = service_start("postfix")
|
|
|
|
assert "service postfix start" in c.get_statement()
|
|
|
|
|
|
|
|
|
|
|
|
def test_service_stop():
|
|
|
|
c = service_stop("postfix")
|
|
|
|
assert "service postfix stop" in c.get_statement()
|
|
|
|
|
|
|
|
|
|
|
|
def test_system():
|
|
|
|
c = system("reboot")
|
|
|
|
assert "reboot" in c.get_statement()
|
|
|
|
|
|
|
|
c = system("update")
|
|
|
|
assert "apt-get update -y" in c.get_statement()
|
|
|
|
|
|
|
|
c = system("upgrade")
|
|
|
|
assert "apt-get upgrade -y" in c.get_statement()
|
|
|
|
|
|
|
|
with pytest.raises(NameError):
|
|
|
|
system("nonexistent")
|
|
|
|
|
|
|
|
|
|
|
|
def test_system_install():
|
|
|
|
c = system_install("vim")
|
|
|
|
assert "apt-get install -y vim" in c.get_statement()
|
|
|
|
|
|
|
|
|
|
|
|
def test_system_uninstall():
|
|
|
|
c = system_uninstall("lftp")
|
|
|
|
assert "apt-get uninstall -y lftp" in c.get_statement()
|
|
|
|
|
|
|
|
|
|
|
|
def test_template():
|
|
|
|
t = template("/path/to/source.txt", "/path/to/target.txt")
|
|
|
|
assert isinstance(t, Template)
|
|
|
|
|
|
|
|
|
|
|
|
def test_user():
|
|
|
|
statement = user("deploy", groups="sudo", home="/path/to/deploy/root").get_statement()
|
|
|
|
assert "adduser deploy" in statement
|
|
|
|
assert "--home" in statement
|
|
|
|
assert "adduser deploy sudo" in statement
|
|
|
|
|
|
|
|
statement = user("deploy", op="remove").get_statement()
|
|
|
|
assert "deluser deploy" in statement
|
|
|
|
|
|
|
|
with pytest.raises(NameError):
|
|
|
|
user("deploy", op="unsupported")
|