У меня есть конструктор, который внедряет объект конфигурации. Я делаю некоторую проверку объекта в конструкторе. Если проверка не пройдена, я хочу выдать ошибку, описывающую пользователю, что пошло не так.
Как мне проверить это с Angular и Jasmine ?
Вот как я это делаю сейчас, но это возвращает неудачный тест:
import { TestBed, inject } from '@angular/core/testing';
import { AwsCognitoService } from './aws-cognito.service';
import { AWS_COGNITO_CONFIG, AwsCognitoConfig } from './aws-cognito.config';
describe('AwsCognitoService', () => {
beforeEach(() => {
TestBed.configureTestingModule({
providers: [
AwsCognitoService,
{
provide: AWS_COGNITO_CONFIG,
useValue: new AwsCognitoConfig({
region: 'eu-west-1'
})
}
]
});
});
it('should throw error when missing userPoolId or identityPoolId', inject(
[AwsCognitoService],
(service: AwsCognitoService) => {
expect(service).toThrowError('Missing required configuration property: userPoolId or identityPoolId');
}
));
});
Полный источник теста: Пример стекаблиц