/* * Squidex Headless CMS * * @license * Copyright (c) Squidex UG (haftungsbeschränkt). All rights reserved. */ import { of } from 'rxjs'; import { IMock, Mock, Times } from 'typemoq'; import { LanguagesState } from '@app/shared'; import { LoadLanguagesGuard } from './load-languages.guard'; describe('LoadLanguagesGuard', () => { let languagesState: IMock; let languageGuard: LoadLanguagesGuard; beforeEach(() => { languagesState = Mock.ofType(); languageGuard = new LoadLanguagesGuard(languagesState.object); }); it('should load languages', () => { languagesState.setup(x => x.load()) .returns(() => of(null)); let result = false; languageGuard.canActivate().subscribe(value => { result = value; }); expect(result).toBeTruthy(); languagesState.verify(x => x.load(), Times.once()); }); });