Skip to content

Commit 598a3c9

Browse files
committed
feat(page-dynamic-search): melhora o disclaimer para campos booleanos
Melhora o disclaimer para campos booleanos, exibindo o atributo `booleanTrue` ou `booleanFalse` quando os mesmos forem diferentes de `undefined` ao invés do atributo `value`. Fixes po-ui#1307
1 parent aa09832 commit 598a3c9

File tree

2 files changed

+40
-0
lines changed

2 files changed

+40
-0
lines changed

projects/templates/src/lib/components/po-page-dynamic-search/po-page-dynamic-search.component.spec.ts

+36
Original file line numberDiff line numberDiff line change
@@ -445,6 +445,42 @@ describe('PoPageDynamicSearchComponent:', () => {
445445
expect(component['setDisclaimers'](filters)).toEqual(result);
446446
});
447447

448+
it('getFilterValueToDisclaimer: should return true if field type is PoDynamicFieldType.Boolean', () => {
449+
const field = { type: PoDynamicFieldType.Boolean, property: '1', label: 'boolean' };
450+
const value = true;
451+
452+
const result = component['getFilterValueToDisclaimer'](field, value);
453+
454+
expect(result).toBe(true);
455+
});
456+
457+
it('getFilterValueToDisclaimer: should return yes if field type is PoDynamicFieldType.Boolean', () => {
458+
const field = { type: PoDynamicFieldType.Boolean, property: '1', label: 'boolean', booleanTrue: 'Yes' };
459+
const value = true;
460+
461+
const result = component['getFilterValueToDisclaimer'](field, value);
462+
463+
expect(result).toBe('Yes');
464+
});
465+
466+
it('getFilterValueToDisclaimer: should return false if field type is PoDynamicFieldType.Boolean', () => {
467+
const field = { type: PoDynamicFieldType.Boolean, property: '1', label: 'boolean' };
468+
const value = false;
469+
470+
const result = component['getFilterValueToDisclaimer'](field, value);
471+
472+
expect(result).toBe(false);
473+
});
474+
475+
it('getFilterValueToDisclaimer: should return no if field type is PoDynamicFieldType.Boolean', () => {
476+
const field = { type: PoDynamicFieldType.Boolean, property: '1', label: 'boolean', booleanFalse: 'No' };
477+
const value = false;
478+
479+
const result = component['getFilterValueToDisclaimer'](field, value);
480+
481+
expect(result).toBe('No');
482+
});
483+
448484
it('getFilterValueToDisclaimer: should return formated date if field type is PoDynamicFieldType.Date', () => {
449485
const field = { type: PoDynamicFieldType.Date, property: '1', label: 'date' };
450486
const value = '2020-08-12';

projects/templates/src/lib/components/po-page-dynamic-search/po-page-dynamic-search.component.ts

+4
Original file line numberDiff line numberDiff line change
@@ -230,6 +230,10 @@ export class PoPageDynamicSearchComponent extends PoPageDynamicSearchBaseCompone
230230
}
231231

232232
private getFilterValueToDisclaimer(field: any, value: any, optionsServiceObjectsList?: Array<PoComboOption>) {
233+
if (field.type === PoDynamicFieldType.Boolean) {
234+
value = value ? field.booleanTrue || value : field.booleanFalse || value;
235+
}
236+
233237
if (field.optionsService && optionsServiceObjectsList) {
234238
return this.optionsServiceDisclaimerLabel(value, optionsServiceObjectsList);
235239
}

0 commit comments

Comments
 (0)