Log spy actions to file when running tests
This commit is contained in:
parent
b138ebc519
commit
6539ca5eb0
1 changed files with 4 additions and 1 deletions
|
@ -1,3 +1,5 @@
|
||||||
|
import logging
|
||||||
|
|
||||||
class Spy:
|
class Spy:
|
||||||
def __init__(self, obj, func_name):
|
def __init__(self, obj, func_name):
|
||||||
self.obj = obj
|
self.obj = obj
|
||||||
|
@ -6,11 +8,12 @@ class Spy:
|
||||||
self.calls = []
|
self.calls = []
|
||||||
|
|
||||||
def __enter__(self, *args, **kwargs):
|
def __enter__(self, *args, **kwargs):
|
||||||
|
logging.debug("Spy started")
|
||||||
def loggedFunc(cls, *args, **kwargs):
|
def loggedFunc(cls, *args, **kwargs):
|
||||||
call = dict(enumerate(args, 1))
|
call = dict(enumerate(args, 1))
|
||||||
call[0] = cls
|
call[0] = cls
|
||||||
call.update(kwargs)
|
call.update(kwargs)
|
||||||
print("Logging", call)
|
logging.debug("Spy call: %s" % call)
|
||||||
self.calls.append(call)
|
self.calls.append(call)
|
||||||
return self.func_original(cls, *args, **kwargs)
|
return self.func_original(cls, *args, **kwargs)
|
||||||
setattr(self.obj, self.__name__, loggedFunc)
|
setattr(self.obj, self.__name__, loggedFunc)
|
||||||
|
|
Loading…
Reference in a new issue