Use event to close dialog

- Work around close handler method being private

Refs #849
This commit is contained in:
Will Abson 2016-11-14 09:58:25 +00:00 committed by Mario Romano
parent 5f60760cd5
commit 840912967e
2 changed files with 6 additions and 3 deletions

View File

@ -74,7 +74,7 @@
<activiti-task-details [taskId]="selectedTaskId" (formCompleted)="taskFormCompleted()" #taskdetails></activiti-task-details>
</div>
<div class="mdl-dialog__actions">
<button type="button" (click)="closeDialog()" class="mdl-button close">{{ 'DETAILS.TASKS.TASK_CLOSE' | translate }}</button>
<button type="button" (click)="closeDialog()" class="mdl-button close" data-automation-id="button-task-close">{{ 'DETAILS.TASKS.TASK_CLOSE' | translate }}</button>
</div>
</dialog>

View File

@ -15,7 +15,7 @@
* limitations under the License.
*/
import { NO_ERRORS_SCHEMA } from '@angular/core';
import { DebugElement, NO_ERRORS_SCHEMA } from '@angular/core';
import { ComponentFixture, TestBed, async } from '@angular/core/testing';
import { By } from '@angular/platform-browser';
import { Observable } from 'rxjs/Rx';
@ -34,6 +34,7 @@ describe('ActivitiProcessInstanceTasks', () => {
let componentHandler: any;
let component: ActivitiProcessInstanceTasks;
let fixture: ComponentFixture<ActivitiProcessInstanceTasks>;
let debugElement: DebugElement;
let service: ActivitiProcessService;
let getProcessTasksSpy: jasmine.Spy;
@ -59,6 +60,7 @@ describe('ActivitiProcessInstanceTasks', () => {
fixture = TestBed.createComponent(ActivitiProcessInstanceTasks);
component = fixture.componentInstance;
debugElement = fixture.debugElement;
service = fixture.debugElement.injector.get(ActivitiProcessService);
getProcessTasksSpy = spyOn(service, 'getProcessTasks').and.returnValue(Observable.of([new TaskDetailsModel(taskDetailsMock)]));
@ -181,7 +183,8 @@ describe('ActivitiProcessInstanceTasks', () => {
it('should close the task details dialog when close button clicked', () => {
component.clickTask({}, new TaskDetailsModel(taskDetailsMock));
fixture.detectChanges();
component.cancelDialog();
let closeButton: DebugElement = debugElement.query(By.css('[data-automation-id="button-task-close"]'));
closeButton.triggerEventHandler('click', null);
expect(closeSpy).toHaveBeenCalled();
});