Использование ts-jest, получение `ошибка TS2554: ожидалось 0 аргументов, но получено 1` для конструктора

#typescript #jestjs #ts-jest

#typescript #jestjs #ts-jest

Вопрос:

Это странно. Я просто возвращаюсь к TypeScript и пытаюсь выполнить некоторый TDD. Я ts-jest настроил и запустил свои тесты, но я уже столкнулся с проблемой с чем-то безумно простым, и я не могу в этом разобраться.

organization.ts:

 class Organization implements IOrganization {
    id: Id;
    name: string;

    constructor(name: string) {
        this.name = name;
    }
}


export default Organization;
  

test.ts:

 import Organization from "./organization";
import Simulation from "./simulation";

it('stores the user organization', () => {
    let userOrganization = new Organization("does not matter");
}
  

VS Code не кричит на меня, но когда я пытаюсь запустить ts-jest , я получаю error TS2554: Expected 0 arguments, but got 1 в своем конструкторе. Должно быть, я упускаю что-то очевидное.

Комментарии:

1. Я изо всех сил пытаюсь воссоздать эту проблему. Я создал минимальный пример на основе того, что вы показали. Если бы вы могли сравнить то, что у вас есть, с тем, что я пытался сделать, и вернуться к нам с дополнительной информацией, мы могли бы вам помочь.

2. Эй, я действительно ценю, что вы делаете целый проект для этого. Я потратил некоторое время на его просмотр, и после замены моего tsconfig.json на ваш, он работал отлично. Понятия не имею, что было не так с тем, который у меня был, но теперь все в порядке, большое спасибо! РЕДАКТИРОВАТЬ: D’oh. Я исключал `*test.ts* в своей конфигурации в соответствии с примером TypeScript, и это, должно быть, что-то путало. Я удалил это, и моя собственная конфигурация также работает, на случай, если кто-нибудь столкнется с подобной проблемой.

3. Потрясающе, в таком случае не могли бы вы добавить ответ на свой собственный вопрос с подробностями о том, что устранило вашу проблему? Сохранение комментариев не гарантируется, но ответы есть 🙂

Ответ №1:

Оказывается, я исключал *test.ts* in my tsconfig.json per the TypeScript example, which I guess meant that , ts-jest` не собирал их. После удаления этого исключения все сработало. Спасибо Яннику Миусу за помощь в решении этой проблемы.