/* * Squidex Headless CMS * * @license * Copyright (c) Squidex UG (haftungsbeschränkt). All rights reserved. */ import { LanguagesState } from '@app/shared'; import { firstValueFrom, of } from 'rxjs'; import { IMock, Mock, Times } from 'typemoq'; 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', async () => { languagesState.setup(x => x.load()) .returns(() => of(null)); const result = await firstValueFrom(languageGuard.canActivate()); expect(result).toBeTruthy(); languagesState.verify(x => x.load(), Times.once()); }); });