У меня есть две функции ниже в классе, и мне нужно смоделировать соединение с базой данных и результаты курсора.cx_Oracle.connect успешно пропатчен, работает как положено.Но курсор, callfunc, fetch_all не становится ложным.Есть идеи, какой будет правильный синтаксис?
class dbconnect:
def db_connect(self, connection_details):
connection = cx_Oracle.connect(user_name,pwd,<connection_string>)
return connection
def execute_function(self, sqlFunction, args):
cursor = self.connection.cursor()
res=cursor.callfunc(sqlFunction, cursor.var(cx_Oracle.CURSOR), args)
results = {'headers' : [x[0] for x in res.description],
'data': res.fetchall()
}
cursor.close()
return results
Мой код издевательства
with mock.patch('dbconnect.cx_Oracle.connect') as mockOracle:
result_set = {}
mockOracle.cursor.callfunc.fetch_all = result_set