Typescript, утверждающий импорт, экспортируется с помощью Jest - PullRequest
0 голосов
/ 22 декабря 2018

Я пишу небольшую библиотеку на машинописном языке, делаю TDD.Я нахожу сложным сделать утверждение, что мой основной файл экспортирует некоторые из моих интерфейсов.Следующий тест не скомпилируется с ошибкой 'X' only refers to a type, but is being used as a value here.

jest.mock('../lib/supervisor', () => jest.fn())
import ISupervisor from '../lib/supervisor'

import { ISupervisor as exportedISupervisor } from '../lib/index'

describe('index', () => {
  it('should export supervisor', () => {
    expect(exportedISupervisor).toBe(ISupervisor)
  })
})

Намерение состоит в том, чтобы утверждать, что main имеет что-то вроде:

import ISupervisor from './supervisor'
export { ISupervisor }

Что не так в моем тесте?Как я могу издеваться над импортом, чтобы подтвердить экспорт?

1 Ответ

0 голосов
/ 23 декабря 2018

Вы уже косвенно утверждали, что основной интерфейс экспорта ISupervisor, когда вы это сделали:

import { ISupervisor as exportedISupervisor } from '../lib/index'

Если интерфейса не было в файле, компилятор машинописного текста потерпит неудачу в этой строке.

Шутка не подходит для этого.Сам Jest не знает ни о каких типах сценариев и интерфейсах.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...