migrate test_ldapmod to pytest

This commit is contained in:
Frode Gundersen 2022-12-06 20:30:33 +00:00
parent d7614651e8
commit 584676339a
No known key found for this signature in database
GPG key ID: DAB4C1C375D2EF45
2 changed files with 58 additions and 63 deletions

View file

@ -0,0 +1,58 @@
"""
:codeauthor: Jayesh Kariya <jayeshk@saltstack.com>
Test cases for salt.modules.ldapmod
"""
import time
import pytest
import salt.modules.ldapmod as ldapmod
from tests.support.mock import MagicMock, patch
@pytest.fixture
def configure_loader_modules():
return {ldapmod: {}}
# 'search' function tests: 1
def test_search():
"""
Test if it run an arbitrary LDAP query and return the results.
"""
class MockConnect:
"""
Mocking _connect method
"""
def __init__(self):
self.bdn = None
self.scope = None
self._filter = None
self.attrs = None
def search_s(self, bdn, scope, _filter, attrs):
"""
Mock function for search_s
"""
self.bdn = bdn
self.scope = scope
self._filter = _filter
self.attrs = attrs
return "SALT"
mock = MagicMock(return_value=True)
with patch.dict(ldapmod.__salt__, {"config.option": mock}):
with patch.object(ldapmod, "_connect", MagicMock(return_value=MockConnect())):
with patch.object(time, "time", MagicMock(return_value=8e-04)):
assert ldapmod.search(filter="myhost") == {
"count": 4,
"results": "SALT",
"time": {"raw": "0.0", "human": "0.0ms"},
}

View file

@ -1,63 +0,0 @@
"""
:codeauthor: Jayesh Kariya <jayeshk@saltstack.com>
"""
import time
import salt.modules.ldapmod as ldapmod
from tests.support.mixins import LoaderModuleMockMixin
from tests.support.mock import MagicMock, patch
from tests.support.unit import TestCase
class LdapmodTestCase(TestCase, LoaderModuleMockMixin):
"""
Test cases for salt.modules.ldapmod
"""
def setup_loader_modules(self):
return {ldapmod: {}}
# 'search' function tests: 1
def test_search(self):
"""
Test if it run an arbitrary LDAP query and return the results.
"""
class MockConnect:
"""
Mocking _connect method
"""
def __init__(self):
self.bdn = None
self.scope = None
self._filter = None
self.attrs = None
def search_s(self, bdn, scope, _filter, attrs):
"""
Mock function for search_s
"""
self.bdn = bdn
self.scope = scope
self._filter = _filter
self.attrs = attrs
return "SALT"
mock = MagicMock(return_value=True)
with patch.dict(ldapmod.__salt__, {"config.option": mock}):
with patch.object(
ldapmod, "_connect", MagicMock(return_value=MockConnect())
):
with patch.object(time, "time", MagicMock(return_value=8e-04)):
self.assertDictEqual(
ldapmod.search(filter="myhost"),
{
"count": 4,
"results": "SALT",
"time": {"raw": "0.0", "human": "0.0ms"},
},
)