[ADF-3684] not autoselect first process in start process when multi process are present in an app

fix failing unit test
This commit is contained in:
Eugenio Romano
2018-10-22 17:39:58 +01:00
parent 7f448d78d1
commit ddbb5b3d65
3 changed files with 23 additions and 8 deletions

View File

@@ -284,6 +284,16 @@ describe('StartFormComponent', () => {
});
}));
it('should not select automatically any processDefinition if the app contain multiple process and does not have any processDefinition as input', async(() => {
getDefinitionsSpy = getDefinitionsSpy.and.returnValue(of(testMultipleProcessDefs));
component.appId = 123;
component.ngOnChanges({});
fixture.detectChanges();
fixture.whenStable().then(() => {
expect(component.selectedProcessDef.name).toBeNull();
});
}));
describe('dropdown', () => {
it('should hide the process dropdown button if showSelectProcessDropdown is false', async(() => {

View File

@@ -135,13 +135,15 @@ export class StartProcessInstanceComponent implements OnChanges, OnInit {
}
private _filter(value: string): ProcessDefinitionRepresentation[] {
const filterValue = value.toLowerCase();
let filteredProcess = this.processDefinitions.filter(option => option.name.toLowerCase().includes(filterValue));
if (value !== null && value !== undefined) {
const filterValue = value.toLowerCase();
let filteredProcess = this.processDefinitions.filter(option => option.name.toLowerCase().includes(filterValue));
if (this.processFilterSelector) {
this.selectedProcessDef = this.getSelectedProcess(filterValue);
if (this.processFilterSelector) {
this.selectedProcessDef = this.getSelectedProcess(filterValue);
}
return filteredProcess;
}
return filteredProcess;
}
getSelectedProcess(selectedProcess) {
@@ -162,7 +164,10 @@ export class StartProcessInstanceComponent implements OnChanges, OnInit {
this.processDefinitions = processDefinitionRepresentations;
if (!this.isProcessDefinitionsEmpty()) {
this.selectedProcessDef = this.processDefinitions[0];
if (this.processDefinitions.length == 1) {
this.selectedProcessDef = this.processDefinitions[0];
}
if (this.processDefinitionName) {
let selectedProcess = this.processDefinitions.find((currentProcessDefinition) => {