Уведомления

Группа в Telegram: @pythonsu

#1 Июнь 23, 2012 10:01:33

xwizard
Зарегистрирован: 2012-06-22
Сообщения: 4
Репутация: +  0  -
Профиль   Отправить e-mail  

mock для отдельных функций драйвера

Всем привет.
Пишу юнит тесты для драйвера устройства, хочу чтобы они работали даже тогда, когда самого реального устройства нет под рукой.
Решил для этого использовать mock объекты, но с ними ещё плохо знаком.
В драйвере есть различные функции, каждая из которых в итоге обращается в функции взаимодействия с устройством.
Я хочу импортировать драйвер, переопределить эти функции как мок-объекты и использовать остальные функции как обычно, так, чтобы они вызывали мок-функцию взаимодействия с драйвером.
Как это делается обычно? т.е. я представляю как сделать мок-объект всего драйвера, но это совсем не то что мне нужно. мне нужно переопределить только несколько функций из импортируемого модуля чобы остальные функции в этом модуле использовали именно подменённые функции.
По идее питон это позволяет, но мне интересна сама реализация. Пусть драйвер выглядит примерно так:

def send(info):
    send_to_device(info)
class driver(object)
    def a(x, y):
        send(a.t + y.r)
    def b(x):
        send(x.temp)
хочу импортировать этот класс и переопределить функцию send как mock объект.
вопрос несколько - правильный ли этот путь? как это сделать?

Спасибо.

Офлайн

#2 Июнь 26, 2012 22:02:00

Андрей Светлов
От:
Зарегистрирован: 2007-05-15
Сообщения: 3137
Репутация: +  14  -
Профиль   Адрес электронной почты  

mock для отдельных функций драйвера

Офлайн

Board footer

Модераторировать

Powered by DjangoBB

Lo-Fi Version