mirror of
https://github.com/saltstack/salt.git
synced 2025-04-17 10:10:20 +00:00
migrate test_varnish to pytest
This commit is contained in:
parent
b2d184d737
commit
f3aee75a48
2 changed files with 83 additions and 79 deletions
83
tests/pytests/unit/modules/test_varnish.py
Normal file
83
tests/pytests/unit/modules/test_varnish.py
Normal file
|
@ -0,0 +1,83 @@
|
|||
"""
|
||||
:codeauthor: Jayesh Kariya <jayeshk@saltstack.com>
|
||||
|
||||
Test cases for salt.modules.varnish
|
||||
"""
|
||||
|
||||
import pytest
|
||||
|
||||
import salt.modules.varnish as varnish
|
||||
from tests.support.mock import MagicMock, patch
|
||||
|
||||
|
||||
@pytest.fixture
|
||||
def configure_loader_modules():
|
||||
return {varnish: {}}
|
||||
|
||||
|
||||
def test_version():
|
||||
"""
|
||||
Test to return server version from varnishd -V
|
||||
"""
|
||||
with patch.dict(
|
||||
varnish.__salt__, {"cmd.run": MagicMock(return_value="(varnish-2.0)")}
|
||||
):
|
||||
assert varnish.version() == "2.0"
|
||||
|
||||
|
||||
def test_ban():
|
||||
"""
|
||||
Test to add ban to the varnish cache
|
||||
"""
|
||||
with patch.object(varnish, "_run_varnishadm", return_value={"retcode": 0}):
|
||||
assert varnish.ban("ban_expression")
|
||||
|
||||
|
||||
def test_ban_list():
|
||||
"""
|
||||
Test to list varnish cache current bans
|
||||
"""
|
||||
with patch.object(varnish, "_run_varnishadm", return_value={"retcode": True}):
|
||||
assert not varnish.ban_list()
|
||||
|
||||
with patch.object(
|
||||
varnish,
|
||||
"_run_varnishadm",
|
||||
return_value={"retcode": False, "stdout": "A\nB\nC"},
|
||||
):
|
||||
assert varnish.ban_list() == ["B", "C"]
|
||||
|
||||
|
||||
def test_purge():
|
||||
"""
|
||||
Test to purge the varnish cache
|
||||
"""
|
||||
with patch.object(varnish, "ban", return_value=True):
|
||||
assert varnish.purge()
|
||||
|
||||
|
||||
def test_param_set():
|
||||
"""
|
||||
Test to set a param in varnish cache
|
||||
"""
|
||||
with patch.object(varnish, "_run_varnishadm", return_value={"retcode": 0}):
|
||||
assert varnish.param_set("param", "value")
|
||||
|
||||
|
||||
def test_param_show():
|
||||
"""
|
||||
Test to show params of varnish cache
|
||||
"""
|
||||
with patch.object(
|
||||
varnish,
|
||||
"_run_varnishadm",
|
||||
return_value={"retcode": True, "stdout": "A\nB\nC"},
|
||||
):
|
||||
assert not varnish.param_show("param")
|
||||
|
||||
with patch.object(
|
||||
varnish,
|
||||
"_run_varnishadm",
|
||||
return_value={"retcode": False, "stdout": "A .1\nB .2\n"},
|
||||
):
|
||||
assert varnish.param_show("param") == {"A": ".1"}
|
|
@ -1,79 +0,0 @@
|
|||
"""
|
||||
:codeauthor: Jayesh Kariya <jayeshk@saltstack.com>
|
||||
"""
|
||||
|
||||
import salt.modules.varnish as varnish
|
||||
from tests.support.mixins import LoaderModuleMockMixin
|
||||
from tests.support.mock import MagicMock, patch
|
||||
from tests.support.unit import TestCase
|
||||
|
||||
|
||||
class VarnishTestCase(TestCase, LoaderModuleMockMixin):
|
||||
"""
|
||||
Test cases for salt.modules.varnish
|
||||
"""
|
||||
|
||||
def setup_loader_modules(self):
|
||||
return {varnish: {}}
|
||||
|
||||
def test_version(self):
|
||||
"""
|
||||
Test to return server version from varnishd -V
|
||||
"""
|
||||
with patch.dict(
|
||||
varnish.__salt__, {"cmd.run": MagicMock(return_value="(varnish-2.0)")}
|
||||
):
|
||||
self.assertEqual(varnish.version(), "2.0")
|
||||
|
||||
def test_ban(self):
|
||||
"""
|
||||
Test to add ban to the varnish cache
|
||||
"""
|
||||
with patch.object(varnish, "_run_varnishadm", return_value={"retcode": 0}):
|
||||
self.assertTrue(varnish.ban("ban_expression"))
|
||||
|
||||
def test_ban_list(self):
|
||||
"""
|
||||
Test to list varnish cache current bans
|
||||
"""
|
||||
with patch.object(varnish, "_run_varnishadm", return_value={"retcode": True}):
|
||||
self.assertFalse(varnish.ban_list())
|
||||
|
||||
with patch.object(
|
||||
varnish,
|
||||
"_run_varnishadm",
|
||||
return_value={"retcode": False, "stdout": "A\nB\nC"},
|
||||
):
|
||||
self.assertEqual(varnish.ban_list(), ["B", "C"])
|
||||
|
||||
def test_purge(self):
|
||||
"""
|
||||
Test to purge the varnish cache
|
||||
"""
|
||||
with patch.object(varnish, "ban", return_value=True):
|
||||
self.assertTrue(varnish.purge())
|
||||
|
||||
def test_param_set(self):
|
||||
"""
|
||||
Test to set a param in varnish cache
|
||||
"""
|
||||
with patch.object(varnish, "_run_varnishadm", return_value={"retcode": 0}):
|
||||
self.assertTrue(varnish.param_set("param", "value"))
|
||||
|
||||
def test_param_show(self):
|
||||
"""
|
||||
Test to show params of varnish cache
|
||||
"""
|
||||
with patch.object(
|
||||
varnish,
|
||||
"_run_varnishadm",
|
||||
return_value={"retcode": True, "stdout": "A\nB\nC"},
|
||||
):
|
||||
self.assertFalse(varnish.param_show("param"))
|
||||
|
||||
with patch.object(
|
||||
varnish,
|
||||
"_run_varnishadm",
|
||||
return_value={"retcode": False, "stdout": "A .1\nB .2\n"},
|
||||
):
|
||||
self.assertEqual(varnish.param_show("param"), {"A": ".1"})
|
Loading…
Add table
Reference in a new issue