Revision d45574de test/py/cmdlib/testsupport/rpc_runner_mock.py
b/test/py/cmdlib/testsupport/rpc_runner_mock.py | ||
---|---|---|
27 | 27 |
from ganeti import objects |
28 | 28 |
from ganeti import rpc |
29 | 29 |
|
30 |
from cmdlib.testsupport.util import patchModule |
|
31 |
|
|
30 | 32 |
|
31 | 33 |
def CreateRpcRunnerMock(): |
32 | 34 |
"""Creates a new L{mock.MagicMock} tailored for L{rpc.RpcRunner} |
... | ... | |
179 | 181 |
@rtype: dict |
180 | 182 |
""" |
181 | 183 |
return dict((result.node, result) for result in self._results) |
184 |
|
|
185 |
|
|
186 |
# pylint: disable=C0103 |
|
187 |
def patchRpc(module_under_test): |
|
188 |
"""Patches the L{ganeti.rpc} module for tests. |
|
189 |
|
|
190 |
This function is meant to be used as a decorator for test methods. |
|
191 |
|
|
192 |
@type module_under_test: string |
|
193 |
@param module_under_test: the module within cmdlib which is tested. The |
|
194 |
"ganeti.cmdlib" prefix is optional. |
|
195 |
|
|
196 |
""" |
|
197 |
return patchModule(module_under_test, "rpc", wraps=rpc) |
|
198 |
|
|
199 |
|
|
200 |
def SetupDefaultRpcModuleMock(rpc_mod): |
|
201 |
"""Configures the given rpc_mod. |
|
202 |
|
|
203 |
All relevant functions in rpc_mod are stubbed in a sensible way. |
|
204 |
|
|
205 |
@param rpc_mod: the mock module to configure |
|
206 |
|
|
207 |
""" |
|
208 |
rpc_mod.DnsOnlyRunner.return_value = CreateRpcRunnerMock() |
Also available in: Unified diff