Merge pull request #926 from guardicore/new-user-tests

New user tests
This commit is contained in:
Mike Salvatore 2021-01-27 11:26:34 -05:00 committed by GitHub
commit 0b6ef67f49
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
2 changed files with 65 additions and 0 deletions

View File

@ -0,0 +1,31 @@
import subprocess
import pytest
from infection_monkey.utils.linux.users import AutoNewLinuxUser
TEST_USER = "test_user"
@pytest.fixture
def subprocess_check_output_spy(monkeypatch):
def mock_check_output(command, stderr, shell):
mock_check_output.command = command
mock_check_output.command = ""
monkeypatch.setattr(subprocess, "check_output", mock_check_output)
return mock_check_output
def test_new_user_expires(subprocess_check_output_spy):
with (AutoNewLinuxUser(TEST_USER, "password")):
assert "--expiredate" in subprocess_check_output_spy.command
assert "--inactive 0" in subprocess_check_output_spy.command
def test_new_user_try_delete(subprocess_check_output_spy):
with (AutoNewLinuxUser(TEST_USER, "password")):
pass
assert f"deluser {TEST_USER}" in subprocess_check_output_spy.command

View File

@ -0,0 +1,34 @@
import pytest
import infection_monkey.utils.auto_new_user_factory as new_user_factory
class NewUserStub:
def __init__(self, username, password):
pass
class NewWindowsUserStub(NewUserStub):
pass
class NewLinuxUserStub(NewUserStub):
pass
@pytest.fixture
def patch_new_user_classes(monkeypatch):
monkeypatch.setattr(new_user_factory, "AutoNewWindowsUser", NewWindowsUserStub)
monkeypatch.setattr(new_user_factory, "AutoNewLinuxUser", NewLinuxUserStub)
def test_create_auto_new_user_windows_user(patch_new_user_classes):
new_user = new_user_factory.create_auto_new_user("user", "password", True)
assert isinstance(new_user, NewWindowsUserStub)
def test_create_auto_new_user_linux_user(patch_new_user_classes):
new_user = new_user_factory.create_auto_new_user("user", "password", False)
assert isinstance(new_user, NewLinuxUserStub)