diff --git a/ng2-components/ng2-activiti-form/src/components/widgets/dropdown/dropdown.widget.html b/ng2-components/ng2-activiti-form/src/components/widgets/dropdown/dropdown.widget.html index 5b8f73f170..5ca84824b9 100644 --- a/ng2-components/ng2-activiti-form/src/components/widgets/dropdown/dropdown.widget.html +++ b/ng2-components/ng2-activiti-form/src/components/widgets/dropdown/dropdown.widget.html @@ -1,11 +1,11 @@ diff --git a/ng2-components/ng2-activiti-form/src/components/widgets/dropdown/dropdown.widget.spec.ts b/ng2-components/ng2-activiti-form/src/components/widgets/dropdown/dropdown.widget.spec.ts index 7fb176b8c1..4da33f8b69 100644 --- a/ng2-components/ng2-activiti-form/src/components/widgets/dropdown/dropdown.widget.spec.ts +++ b/ng2-components/ng2-activiti-form/src/components/widgets/dropdown/dropdown.widget.spec.ts @@ -98,4 +98,53 @@ describe('DropdownWidget', () => { expect(widget.field.options[0]).toBe(emptyOption); expect(widget.field.options[1]).toBe(restFieldValue); }); + + describe('when template is ready', () => { + let dropDownWidget: DropdownWidget; + let fixture: ComponentFixture; + let element: HTMLElement; + let componentHandler; + + beforeEach(async(() => { + componentHandler = jasmine.createSpyObj('componentHandler', ['upgradeAllRegistered', 'upgradeElement']); + window['componentHandler'] = componentHandler; + TestBed.configureTestingModule({ + imports: [CoreModule], + declarations: [DropdownWidget] + }).compileComponents().then(() => { + fixture = TestBed.createComponent(DropdownWidget); + dateWidget = fixture.componentInstance; + element = fixture.nativeElement; + }); + })); + + beforeEach(() => { + spyOn(dateWidget, 'setupMaterialTextField').and.stub(); + dateWidget.field = new FormFieldModel(new FormModel(), { + id: 'date-field-id', + name: 'date-name', + value: '9-9-9999', + type: 'date', + readOnly: 'false' + }); + dateWidget.field.isVisible = true; + fixture.detectChanges(); + }); + + afterEach(() => { + fixture.destroy(); + TestBed.resetTestingModule(); + }); + + it('should show visible date widget', async(() => { + fixture.whenStable() + .then(() => { + expect(element.querySelector('#date-field-id')).toBeDefined(); + expect(element.querySelector('#date-field-id')).not.toBeNull(); + let dateElement: any = element.querySelector('#date-field-id'); + expect(dateElement.value).toEqual('9-9-9999'); + }); + })); + + }); }); diff --git a/ng2-components/ng2-activiti-form/src/components/widgets/dropdown/dropdown.widget.ts b/ng2-components/ng2-activiti-form/src/components/widgets/dropdown/dropdown.widget.ts index 721bccf4da..f20345f8a5 100644 --- a/ng2-components/ng2-activiti-form/src/components/widgets/dropdown/dropdown.widget.ts +++ b/ng2-components/ng2-activiti-form/src/components/widgets/dropdown/dropdown.widget.ts @@ -80,6 +80,16 @@ export class DropdownWidget extends WidgetComponent implements OnInit { ); } + getOptionValue(option: FormFieldOption): string { + let optionValue: string = ''; + if (option.id === 'empty') { + optionValue = option.id; + } else { + optionValue = option.name; + } + return optionValue; + } + handleError(error: any) { console.error(error); }