как смоделировать нод-редис, используя шутку - PullRequest
0 голосов
/ 05 марта 2020

я использую jest и пытаюсь смоделировать node-redis , используя redis-mock .

// redis.js

const redis = require("redis");
const client = redis.createClient({ host: '127.0.0.1', port: 6379 });

// redis.test.js
const redisMock = require("redis-mock");

describe("redis", () => {
  jest.doMock("redis", () => jest.fn(() => redisMock));
  const redis = require("./redis");
});

при запуске тесты, я получаю ошибку

TypeError: redis.createClient не является функцией

мне кажется, что я делаю что-то не так при использовании jest.doMock().

был бы признателен за вашу помощь.

1 Ответ

0 голосов
/ 05 марта 2020

У меня работает следующее:

import redis from 'redis-mock'
jest.mock('redis', () => redis)

Я не включаю библиотеку redis в тест, но включаю ее только в файл, который содержит тестируемый класс. (Файл с тестируемым классом, конечно, включен в тестовый файл.)

...