diff --git a/projects/aca-shared/src/lib/components/page-layout/page-layout.component.spec.ts b/projects/aca-shared/src/lib/components/page-layout/page-layout.component.spec.ts new file mode 100644 index 000000000..93cd36013 --- /dev/null +++ b/projects/aca-shared/src/lib/components/page-layout/page-layout.component.spec.ts @@ -0,0 +1,58 @@ +/*! + * @license + * Alfresco Example Content Application + * + * Copyright (C) 2005 - 2020 Alfresco Software Limited + * + * This file is part of the Alfresco Example Content Application. + * If the software was purchased under a paid Alfresco license, the terms of + * the paid license agreement will prevail. Otherwise, the software is + * provided under the following open source license terms: + * + * The Alfresco Example Content Application is free software: you can redistribute it and/or modify + * it under the terms of the GNU Lesser General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + * + * The Alfresco Example Content Application is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public License + * along with Alfresco. If not, see . + */ + +import { ComponentFixture, TestBed } from '@angular/core/testing'; +import { PageLayoutComponent } from './page-layout.component'; +import { AppService } from '../../services/app.service'; +import { BehaviorSubject, Subject } from 'rxjs'; + +describe('PageLayoutComponent', () => { + let fixture: ComponentFixture; + let component: PageLayoutComponent; + const appServiceMock = { + toggleAppNavBar$: new Subject(), + appNavNarMode$: new BehaviorSubject<'collapsed' | 'expanded'>('expanded') + }; + + beforeEach(() => { + TestBed.configureTestingModule({ + declarations: [PageLayoutComponent], + providers: [ + { + provide: AppService, + useValue: appServiceMock + } + ] + }); + fixture = TestBed.createComponent(PageLayoutComponent); + component = fixture.componentInstance; + }); + + it('should toggle the appService toggleAppNavBar$ Subject', () => { + spyOn(appServiceMock.toggleAppNavBar$, 'next'); + component.toggleClick(); + expect(appServiceMock.toggleAppNavBar$.next).toHaveBeenCalled(); + }); +});