mirror of
https://github.com/Alfresco/alfresco-ng2-components.git
synced 2025-07-24 17:32:15 +00:00
[ADF-2650] Error with rootDir at insights folder fixed (#3215)
* [ADF-1939] Responsive button to edit reports * [ADF-1939] Removed unused dependencies in material module * [ADF-1939] Edit buttons now use flex layout * [ADF-2650] Report action menu component created * [ADF-2650] Added Button Model * [ADF-2650] Buttons component finished * [ADF-2650] Buttons menu component moved to core library * [ADF-2650] Included index.ts in core/buttons-menu * [ADF-2650] cleaned the module and public api file * Revert "[ADF-2650] Included index.ts in core/buttons-menu" This reverts commit 6bdf1f2f48a30bb4622eb4c000e5318370503710. * [ADF-2650] Applied the peer review changes * [ADF-2650] Comment removed * [ADF-2650] Failing tests fixed * [ADF-2650] Dynamic theming for analytic reports * [ADF-2650] Themes not ap
This commit is contained in:
committed by
Eugenio Romano
parent
2c0e7aa035
commit
b2b3625929
94
lib/core/buttons-menu/buttons-menu.component.spec.ts
Normal file
94
lib/core/buttons-menu/buttons-menu.component.spec.ts
Normal file
@@ -0,0 +1,94 @@
|
||||
/*!
|
||||
* @license
|
||||
* Copyright 2016 Alfresco Software, Ltd.
|
||||
*
|
||||
* Licensed under the Apache License, Version 2.0 (the "License");
|
||||
* you may not use this file except in compliance with the License.
|
||||
* You may obtain a copy of the License at
|
||||
*
|
||||
* http://www.apache.org/licenses/LICENSE-2.0
|
||||
*
|
||||
* Unless required by applicable law or agreed to in writing, software
|
||||
* distributed under the License is distributed on an "AS IS" BASIS,
|
||||
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
* See the License for the specific language governing permissions and
|
||||
* limitations under the License.
|
||||
*/
|
||||
|
||||
import { TestBed, async } from '@angular/core/testing';
|
||||
import { ButtonsMenuComponent } from './buttons-menu.component';
|
||||
import { MenuButton } from './menu-button.model';
|
||||
import { MaterialModule } from '../material.module';
|
||||
import { CoreTestingModule } from '../testing/core.testing.module';
|
||||
|
||||
/*tslint:disable:ban*/
|
||||
|
||||
fdescribe('ButtonsMenuComponent', () => {
|
||||
|
||||
let fixture;
|
||||
let buttonsMenuComponent: ButtonsMenuComponent;
|
||||
let element: HTMLElement;
|
||||
|
||||
beforeEach(async(() => {
|
||||
TestBed.configureTestingModule({
|
||||
imports: [
|
||||
MaterialModule,
|
||||
CoreTestingModule
|
||||
]
|
||||
}).compileComponents();
|
||||
}));
|
||||
|
||||
beforeEach(() => {
|
||||
fixture = TestBed.createComponent(ButtonsMenuComponent);
|
||||
element = fixture.nativeElement;
|
||||
buttonsMenuComponent = <ButtonsMenuComponent> fixture.debugElement.componentInstance;
|
||||
});
|
||||
|
||||
afterEach(() => {
|
||||
fixture.destroy();
|
||||
TestBed.resetTestingModule();
|
||||
});
|
||||
|
||||
it('should hide buttons menu div if buttons input is empty', async(() => {
|
||||
buttonsMenuComponent.buttons = [];
|
||||
fixture.detectChanges();
|
||||
fixture.whenStable().then(() => {
|
||||
const buttonsMenuElement = element.querySelector('#adf-buttons-menu');
|
||||
expect(buttonsMenuElement).toBeNull();
|
||||
});
|
||||
}));
|
||||
|
||||
it('should render buttons menu when there is at least one button declared in the buttons array', async(() => {
|
||||
const button = new MenuButton({
|
||||
label: 'button',
|
||||
icon: 'button',
|
||||
id: 'clickMe'
|
||||
});
|
||||
buttonsMenuComponent.buttons = [button];
|
||||
fixture.detectChanges();
|
||||
fixture.whenStable().then(() => {
|
||||
const buttonsMenuElement = element.querySelector('#adf-buttons-menu');
|
||||
expect(buttonsMenuElement).not.toBeNull();
|
||||
expect(buttonsMenuElement).toBeDefined();
|
||||
});
|
||||
}));
|
||||
|
||||
it('should call the handler function when button is clicked', async(() => {
|
||||
const button = new MenuButton({
|
||||
label: 'button',
|
||||
icon: 'button',
|
||||
id: 'clickMe'
|
||||
});
|
||||
button.handler = jasmine.createSpy('handler');
|
||||
buttonsMenuComponent.buttons = [button];
|
||||
fixture.detectChanges();
|
||||
fixture.whenStable().then(() => {
|
||||
const buttonsMenuElement: HTMLButtonElement = <HTMLButtonElement> element.querySelector('#clickMe');
|
||||
expect(buttonsMenuElement).not.toBeNull();
|
||||
expect(buttonsMenuElement).toBeDefined();
|
||||
buttonsMenuElement.click();
|
||||
fixture.detectChanges();
|
||||
expect(button.handler).toHaveBeenCalled();
|
||||
});
|
||||
}));
|
||||
});
|
Reference in New Issue
Block a user