Rev467, requirements.txt accept newer dependecies, Boost dbschema.json, Move getDirname getFilename to helper, Verify optional files, Includes not allowed in user files, Optional files rules, Peer hashfield functions, Test optional files signing, Test file info, Test verify file, Test helpers
2015-10-01 01:35:13 +02:00
|
|
|
class Spy:
|
2017-10-04 13:31:49 +02:00
|
|
|
def __init__(self, obj, func_name):
|
|
|
|
self.obj = obj
|
2019-03-15 21:06:59 +01:00
|
|
|
self.__name__ = func_name
|
2017-10-04 13:31:49 +02:00
|
|
|
self.func_original = getattr(self.obj, func_name)
|
|
|
|
self.calls = []
|
Rev467, requirements.txt accept newer dependecies, Boost dbschema.json, Move getDirname getFilename to helper, Verify optional files, Includes not allowed in user files, Optional files rules, Peer hashfield functions, Test optional files signing, Test file info, Test verify file, Test helpers
2015-10-01 01:35:13 +02:00
|
|
|
|
2017-10-04 13:31:49 +02:00
|
|
|
def __enter__(self, *args, **kwargs):
|
|
|
|
def loggedFunc(cls, *args, **kwargs):
|
|
|
|
call = dict(enumerate(args, 1))
|
|
|
|
call[0] = cls
|
|
|
|
call.update(kwargs)
|
2019-03-15 21:06:59 +01:00
|
|
|
print("Logging", call)
|
2017-10-04 13:31:49 +02:00
|
|
|
self.calls.append(call)
|
|
|
|
return self.func_original(cls, *args, **kwargs)
|
2019-03-15 21:06:59 +01:00
|
|
|
setattr(self.obj, self.__name__, loggedFunc)
|
2017-10-04 13:31:49 +02:00
|
|
|
return self.calls
|
Rev467, requirements.txt accept newer dependecies, Boost dbschema.json, Move getDirname getFilename to helper, Verify optional files, Includes not allowed in user files, Optional files rules, Peer hashfield functions, Test optional files signing, Test file info, Test verify file, Test helpers
2015-10-01 01:35:13 +02:00
|
|
|
|
2017-10-04 13:31:49 +02:00
|
|
|
def __exit__(self, *args, **kwargs):
|
2019-03-15 21:06:59 +01:00
|
|
|
setattr(self.obj, self.__name__, self.func_original)
|