Я хочу создать модульные тесты для проверки моего кода.Я хотел бы посмеяться над ответом из кода knex, например:
async function getDataById({ id }) {
return knex
.from('data')
.select(
'a AS A',
'b as B',
)
.where('id', id);}
Я недавно перешел на использование Knex, поэтому до этого мой тест был
describe('Data Get', () => {
let dBStub;
before(() => {
dBStub = sinon.stub(conn, 'executeQuery');
dBStub.withArgs(sinon.match.string, validId).returns(data);
});
after(() => {
conn.executeQuery.restore();
});
it('Should provide prices for valid ID', () =>
pricesDb
.get({ id: validId })
.should.eventually.deep.equal({ data: expected }));
У меня больше нет запроса на выполнениеметоды и просто есть файл knex.
Как преобразовать тесты, чтобы обеспечить имитацию ответа от функции getDataById?
Когда я преобразовываю заглушку в метод getDataByID, я получаю следующую ошибку: TypeError: Невозможно заглушить несуществующее собственное свойство