В курсе codeschool.com , Rails Testing для Zombies , они дают это определение терминов:
Stub
Для замены метода кодом, возвращающим заданный результат.
Mock
Заглушка с утверждением о вызове метода.
Итак, как сказал Шон Копенгавер в своем ответе, разница в том, что издеваются над ожиданиями (т. е. делают утверждения, о том, вызваны ли они или как они вызваны).
Вы звоните IOLoop.instance().stop()
из основного потока, что запрещено. Единственный метод в Tornado, который безопасно вызывать из потока, отличного от того, в котором работает IOLoop, - IOLoop.add_callback
. Чтобы инициировать отключение из основного потока, когда IOLoop работает в другом потоке, замените метод остановки следующим:
def stop(self):
"""Instruct the IOLoop to stop itself."""
IOLoop.instance().add_callback(IOLoop.instance().stop)