TypeScript: валидатор классов не работает для импортированных классов - PullRequest
0 голосов
/ 30 октября 2019

Я разделяю свои классы / сущности на пакет npm и в основном приложении validate() перестала работать функция.

В одном пакете Product тип

export class Product {

    @IsString()
    @Length(3, 30)
    name: string;

}

и в другом validate() test

it('shoud be longer then 3', async () => {


    const product: Product = new Product({       
        name: 'hello'
    });

    // should be valid
    let result: ValidationError[] = await validate(product);
    expect(result).to.have.lengthOf(0);

    // invalid check
    product.name = 'ab';
    result = await validate(product);
    expect(result).to.have.lengthOf(1); // error. result is empty
    let error = result[0];
    expect(error.property).to.equal('name');
    expect(error.constraints).to.have.property('length');

});

Прежде чем все работает правильно. Может быть, какая-то tsconfig.json конфигурация может помочь?

...