Имеется вот такой код:
from netrc import netrc
from transmissionrpc import Client as Transmission
def list_torrents(trans, _args):
"""List torrents."""
for num, torr in trans.list().iteritems():
fields = torr.fields
print num, fields['name'][:30], status(torr), torr.progress, torr.eta
def main():
nrc = netrc()
tr_login, _, tr_passwd = nrc.authenticators('localhost')
trans = Transmission(user=tr_login, password=tr_passwd, timeout=10)
list_torrents(trans, [])
Я хочу его протестировать. Естественно поднимать для этого transmission-daemon и прописывать пароли в ~/.netrc я не имею ни малейшего желания. Стало быть нужно это делать через моки. Документацию по mock http://www.voidspace.org.uk/python/mock/ читал, но когда доходит до реальных тестов получается какая-то фигня - слишком детализировано, зависит от реализации и очень многословно.
А хочется-то простого - сделать моки для Transmission, netrc и для вывода, запустить main() поймать вывод и сравнить его с тем, чего ожидаешь. Помогите, кто чем может! Желательно кодом :)
Да, в качестве тест-фреймворка используется nose.