mirror of
https://github.com/Alfresco/alfresco-ng2-components.git
synced 2025-05-12 17:04:57 +00:00
AAE-34478 Hide Open next task checkbox on claim screen (#10822)
This commit is contained in:
parent
cb220968cf
commit
dc35ef8a6f
@ -1,4 +1,4 @@
|
||||
<div class="adf-user-task-cloud-container">
|
||||
<div class="adf-user-task-cloud-container">
|
||||
<div *ngIf="!loading; else loadingTemplate">
|
||||
<ng-container [ngSwitch]="taskType">
|
||||
<ng-container *ngSwitchCase="taskTypeEnum.Form">
|
||||
@ -12,7 +12,7 @@
|
||||
[showTitle]="showTitle"
|
||||
[taskId]="taskId"
|
||||
[taskDetails]="taskDetails"
|
||||
[showNextTaskCheckbox]="showNextTaskCheckbox"
|
||||
[showNextTaskCheckbox]="showNextTaskCheckbox && canCompleteTask()"
|
||||
[isNextTaskCheckboxChecked]="isNextTaskCheckboxChecked"
|
||||
(cancelClick)="onCancelForm()"
|
||||
(executeOutcome)="onExecuteOutcome($event)"
|
||||
@ -38,7 +38,6 @@
|
||||
[showCancelButton]="showCancelButton"
|
||||
[taskName]="taskDetails.name"
|
||||
[taskId]="taskId"
|
||||
|
||||
(cancelTask)="onCancelClick()"
|
||||
(claimTask)="onClaimTask()"
|
||||
(error)="onError($event)"
|
||||
@ -63,10 +62,17 @@
|
||||
<adf-empty-content
|
||||
[icon]="'description'"
|
||||
[title]="'ADF_CLOUD_TASK_FORM.EMPTY_FORM.TITLE'"
|
||||
[subtitle]="'ADF_CLOUD_TASK_FORM.EMPTY_FORM.SUBTITLE'" />
|
||||
[subtitle]="'ADF_CLOUD_TASK_FORM.EMPTY_FORM.SUBTITLE'"
|
||||
/>
|
||||
</mat-card-content>
|
||||
<mat-card-actions class="adf-task-form-actions" align="end">
|
||||
<mat-checkbox id="adf-form-open-next-task" *ngIf="showNextTaskCheckbox" [checked]="isNextTaskCheckboxChecked" (change)="onNextTaskCheckboxCheckedChanged($event)">{{'ADF_CLOUD_TASK_FORM.OPEN_NEXT_TASK.LABEL' | translate}}</mat-checkbox>
|
||||
<mat-checkbox
|
||||
id="adf-form-open-next-task"
|
||||
*ngIf="showNextTaskCheckbox && canCompleteTask()"
|
||||
[checked]="isNextTaskCheckboxChecked"
|
||||
(change)="onNextTaskCheckboxCheckedChanged($event)"
|
||||
>{{ 'ADF_CLOUD_TASK_FORM.OPEN_NEXT_TASK.LABEL' | translate }}
|
||||
</mat-checkbox>
|
||||
<span class="adf-card-actions-spacer"></span>
|
||||
<ng-template [ngTemplateOutlet]="taskFormCloudButtons" />
|
||||
<button
|
||||
@ -80,12 +86,11 @@
|
||||
color="primary"
|
||||
id="adf-form-complete"
|
||||
>
|
||||
{{'ADF_CLOUD_TASK_FORM.EMPTY_FORM.BUTTONS.COMPLETE' | translate}}
|
||||
{{ 'ADF_CLOUD_TASK_FORM.EMPTY_FORM.BUTTONS.COMPLETE' | translate }}
|
||||
</button>
|
||||
</mat-card-actions>
|
||||
</mat-card>
|
||||
</ng-container>
|
||||
|
||||
</ng-container>
|
||||
</div>
|
||||
</div>
|
||||
|
@ -482,28 +482,89 @@ describe('UserTaskCloudComponent', () => {
|
||||
it('should allow controlling [open next task] checkbox visibility', () => {
|
||||
taskDetails.formKey = 'form';
|
||||
component.getTaskType();
|
||||
component.taskId = 'taskId';
|
||||
component.appName = 'app';
|
||||
|
||||
const spy = spyOn(taskCloudService, 'canCompleteTask');
|
||||
|
||||
const isCheckboxShown = () => {
|
||||
const checkbox = fixture.debugElement.query(By.css('#adf-form-open-next-task'));
|
||||
return !!checkbox;
|
||||
};
|
||||
|
||||
const prepareTestCase = (testCase: {
|
||||
showNextTaskCheckbox: boolean;
|
||||
showCompleteButton: boolean;
|
||||
readOnly: boolean;
|
||||
canCompleteTask: boolean;
|
||||
}): void => {
|
||||
component.showNextTaskCheckbox = testCase.showNextTaskCheckbox;
|
||||
component.showCompleteButton = testCase.showCompleteButton;
|
||||
component.readOnly = testCase.readOnly;
|
||||
spy.calls.reset();
|
||||
spy.and.returnValue(testCase.canCompleteTask);
|
||||
fixture.detectChanges();
|
||||
};
|
||||
|
||||
prepareTestCase({ showNextTaskCheckbox: false, showCompleteButton: false, readOnly: false, canCompleteTask: false });
|
||||
expect(isCheckboxShown()).toBeFalse();
|
||||
|
||||
component.showNextTaskCheckbox = true;
|
||||
fixture.detectChanges();
|
||||
prepareTestCase({ showNextTaskCheckbox: false, showCompleteButton: false, readOnly: false, canCompleteTask: true });
|
||||
expect(isCheckboxShown()).toBeFalse();
|
||||
|
||||
prepareTestCase({ showNextTaskCheckbox: false, showCompleteButton: false, readOnly: true, canCompleteTask: false });
|
||||
expect(isCheckboxShown()).toBeFalse();
|
||||
|
||||
prepareTestCase({ showNextTaskCheckbox: false, showCompleteButton: false, readOnly: true, canCompleteTask: true });
|
||||
expect(isCheckboxShown()).toBeFalse();
|
||||
|
||||
prepareTestCase({ showNextTaskCheckbox: false, showCompleteButton: true, readOnly: false, canCompleteTask: false });
|
||||
expect(isCheckboxShown()).toBeFalse();
|
||||
|
||||
prepareTestCase({ showNextTaskCheckbox: false, showCompleteButton: true, readOnly: false, canCompleteTask: true });
|
||||
expect(isCheckboxShown()).toBeFalse();
|
||||
|
||||
prepareTestCase({ showNextTaskCheckbox: false, showCompleteButton: true, readOnly: true, canCompleteTask: false });
|
||||
expect(isCheckboxShown()).toBeFalse();
|
||||
|
||||
prepareTestCase({ showNextTaskCheckbox: false, showCompleteButton: true, readOnly: true, canCompleteTask: true });
|
||||
expect(isCheckboxShown()).toBeFalse();
|
||||
|
||||
prepareTestCase({ showNextTaskCheckbox: true, showCompleteButton: false, readOnly: false, canCompleteTask: false });
|
||||
expect(isCheckboxShown()).toBeFalse();
|
||||
|
||||
prepareTestCase({ showNextTaskCheckbox: true, showCompleteButton: false, readOnly: false, canCompleteTask: true });
|
||||
expect(isCheckboxShown()).toBeFalse();
|
||||
|
||||
prepareTestCase({ showNextTaskCheckbox: true, showCompleteButton: false, readOnly: true, canCompleteTask: false });
|
||||
expect(isCheckboxShown()).toBeFalse();
|
||||
|
||||
prepareTestCase({ showNextTaskCheckbox: true, showCompleteButton: false, readOnly: true, canCompleteTask: true });
|
||||
expect(isCheckboxShown()).toBeFalse();
|
||||
|
||||
prepareTestCase({ showNextTaskCheckbox: true, showCompleteButton: true, readOnly: true, canCompleteTask: false });
|
||||
expect(isCheckboxShown()).toBeFalse();
|
||||
|
||||
prepareTestCase({ showNextTaskCheckbox: true, showCompleteButton: true, readOnly: true, canCompleteTask: true });
|
||||
expect(isCheckboxShown()).toBeFalse();
|
||||
|
||||
prepareTestCase({ showNextTaskCheckbox: true, showCompleteButton: true, readOnly: false, canCompleteTask: false });
|
||||
expect(isCheckboxShown()).toBeFalse();
|
||||
|
||||
prepareTestCase({ showNextTaskCheckbox: true, showCompleteButton: true, readOnly: false, canCompleteTask: true });
|
||||
expect(isCheckboxShown()).toBeTrue();
|
||||
|
||||
component.showNextTaskCheckbox = false;
|
||||
fixture.detectChanges();
|
||||
expect(isCheckboxShown()).toBeFalse();
|
||||
});
|
||||
|
||||
it('should allow controlling [open next task] checkbox value', async () => {
|
||||
taskDetails.formKey = 'form';
|
||||
component.getTaskType();
|
||||
|
||||
component.taskId = 'taskId';
|
||||
component.appName = 'app';
|
||||
component.showNextTaskCheckbox = true;
|
||||
component.showCompleteButton = true;
|
||||
component.readOnly = false;
|
||||
spyOn(taskCloudService, 'canCompleteTask').and.returnValue(true);
|
||||
|
||||
const isCheckboxChecked = async () => {
|
||||
const checkbox = await loader.getHarness(MatCheckboxHarness.with({ selector: '#adf-form-open-next-task' }));
|
||||
@ -526,7 +587,13 @@ describe('UserTaskCloudComponent', () => {
|
||||
taskDetails.formKey = 'form';
|
||||
component.getTaskType();
|
||||
|
||||
component.taskId = 'taskId';
|
||||
component.appName = 'app';
|
||||
component.showNextTaskCheckbox = true;
|
||||
component.showCompleteButton = true;
|
||||
component.readOnly = false;
|
||||
spyOn(taskCloudService, 'canCompleteTask').and.returnValue(true);
|
||||
|
||||
fixture.detectChanges();
|
||||
const checkbox = await loader.getHarnessOrNull(MatCheckboxHarness);
|
||||
|
||||
|
Loading…
x
Reference in New Issue
Block a user