Wpis z mikrobloga

mam unit testy, gdzie używam unittest.patch zeby zmienic zachowanie funkcji.

localserver = partial(funkcja, local=True)
lokalnie = patch('path.dupa.funkcja', local
server)

i teraz w kazdym tescie robie:

def testfooobliczajlokalnie():
with lokalnie:
# rob cokolwiek

pytanie:
daloby sie ten patch wrzucić jakoś do setUp( ) żeby nie dodawać tego with w każdym teście?
a może moglbym zrobić z tego dekorator jakoś dla unit testów czyli mialbym np.
@lokalnie
def test
fooobliczajlokalnie():

?

#python
  • 5
@filozof900: tego mi bylo trzeba :-D nie wiedzialem ze patch'a się w taki sposób stopuje.

koniec koncow co zrobilem to po prostu wraper

def lokalnie (method):
def wrapper(*args, **kwargs):
localserver = partial( bla bla )
lokalnie = patch( )
with lokalnie:
method(*args, **kwargs)
return wrapper

i nad kazdym testem dodaje sobie
@lokalnie