Окурок с помощью синона - PullRequest
5 голосов
/ 26 февраля 2020

Итак, я обновляю зависимости в своем проекте, и я наткнулся на препятствие ...

Мои модульные тесты отлично работали с заглушкой, приведенной ниже. Однако в последней версии UUID это, похоже, сломалось. Любые предложения о том, как это исправить?

Это простые c выдержки из кода, чтобы проиллюстрировать метод, который я использую, чтобы заглушить функциональность uuid и как я использую uuid в своем коде.

import * as uuid from 'uuid'

sinon.stub(uuid, 'v4').returns('some-v4-uuid')
import * as uuid from 'uuid'

const payload = {
  id: uuid.v4()
}

Версии зависимостей

  • "uuid": "7.0.1"
  • "sinon": "9.0.0"

Вот код

Вот тест

1 Ответ

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

Учитывая, что uuid@7 dist использует Object.defineProperty для экспорта версий, я не думаю, что заглушка возможна . Это раздражает, но вам, возможно, придется поместить слой абстракции поверх uuid и заглушить эту функцию.

...