Я работаю над проектом nodeJs, используя машинопись. Я хотел импортировать класс и использовать его в модульном тесте (шутка), однако продолжают появляться следующие ошибки:
Есть ли работа, чтобы заставить его работать? Я попытался изменить синтаксис импорта (добавление / удаление '*'). Некоторые потоки также предлагают использовать класс-трансформер, но я хотел, чтобы все было просто.
Пожалуйста, дайте мне знать, если вам нужно больше информации. Ценю все ваши подсказки!
error TS2351: This expression is not constructable.
Type 'SearchParams' has no construct signatures.
const model: any = new SearchParams();
unit_test.ts
import { SearchParams } from "../../../src/controllers/requests/SearchParams";
import { validate } from "class-validator";
import {
IsDefined,
IsBoolean,
IsString,
IsEmail,
IsNumberString,
IsNotEmpty,
MaxLength,
IsNumber,
Matches,
Validate
} from 'class-validator';
import { DateConditionCheck } from '../../../src/controllers/validators/DateConditionCheck';
describe("GET: search/api", () => {
const model: any = new SearchParams();
model.depArea = 'HND';
it('should throw an error message when date input is incorrect', async () => {
return validate(model).then(errors => {
expect(errors.length).toBe(1);
expect(model.dd).toThrow('Date condition seems wrong!');
});
});
});
import {
IsDefined,
IsBoolean,
IsString,
IsEmail,
IsNumberString,
IsNotEmpty,
MaxLength,
IsNumber,
Matches,
Validate
} from 'class-validator'
import { DateConditionCheck } from '../validators/DateConditionCheck'
export class SearchParams {
@IsDefined()
@IsNotEmpty()
@IsString()
@MaxLength(20)
depArea: string;
}