mirror of
https://github.com/Alfresco/alfresco-ng2-components.git
synced 2025-07-24 17:32:15 +00:00
[ACA-4041] Filter not emitting the latest value (#6238)
* [ACA-4041] update filter * * unit test added
This commit is contained in:
@@ -87,7 +87,7 @@ describe('SearchFilterContainerComponent', () => {
|
|||||||
expect(element).not.toBeUndefined();
|
expect(element).not.toBeUndefined();
|
||||||
});
|
});
|
||||||
|
|
||||||
it('should set new active filter after the Apply button is clicked', async () => {
|
it('should set/update the active filter after the Apply button is clicked', async () => {
|
||||||
const menuButton: HTMLButtonElement = fixture.nativeElement.querySelector('#filter-menu-button');
|
const menuButton: HTMLButtonElement = fixture.nativeElement.querySelector('#filter-menu-button');
|
||||||
menuButton.click();
|
menuButton.click();
|
||||||
fixture.detectChanges();
|
fixture.detectChanges();
|
||||||
@@ -100,6 +100,17 @@ describe('SearchFilterContainerComponent', () => {
|
|||||||
expect(queryBuilder.getActiveFilters().length).toBe(1);
|
expect(queryBuilder.getActiveFilters().length).toBe(1);
|
||||||
expect(queryBuilder.getActiveFilters()[0].key).toBe('name');
|
expect(queryBuilder.getActiveFilters()[0].key).toBe('name');
|
||||||
expect(queryBuilder.getActiveFilters()[0].value).toBe('searchText');
|
expect(queryBuilder.getActiveFilters()[0].value).toBe('searchText');
|
||||||
|
|
||||||
|
menuButton.click();
|
||||||
|
fixture.detectChanges();
|
||||||
|
await fixture.whenStable();
|
||||||
|
component.widgetContainer.componentRef.instance.value = 'updated text';
|
||||||
|
applyButton.triggerEventHandler('click', {});
|
||||||
|
fixture.detectChanges();
|
||||||
|
await fixture.whenStable();
|
||||||
|
expect(queryBuilder.getActiveFilters().length).toBe(1);
|
||||||
|
expect(queryBuilder.getActiveFilters()[0].key).toBe('name');
|
||||||
|
expect(queryBuilder.getActiveFilters()[0].value).toBe('updated text');
|
||||||
});
|
});
|
||||||
|
|
||||||
it('should emit filterChange after the Apply button is clicked', async (done) => {
|
it('should emit filterChange after the Apply button is clicked', async (done) => {
|
||||||
|
@@ -64,14 +64,15 @@ export class SearchHeaderQueryBuilderService extends BaseQueryBuilderService {
|
|||||||
}
|
}
|
||||||
|
|
||||||
setActiveFilter(columnActivated: string, filterValue: string) {
|
setActiveFilter(columnActivated: string, filterValue: string) {
|
||||||
const filterIndex = this.activeFilters.find((activeFilter) => activeFilter.key === columnActivated);
|
const selectedFilter = this.activeFilters.find((activeFilter) => activeFilter.key === columnActivated);
|
||||||
if (!filterIndex) {
|
if (!selectedFilter) {
|
||||||
this.activeFilters.push(<FilterSearch> {
|
this.activeFilters.push(<FilterSearch> {
|
||||||
key: columnActivated,
|
key: columnActivated,
|
||||||
value: filterValue
|
value: filterValue
|
||||||
});
|
});
|
||||||
|
} else {
|
||||||
|
selectedFilter.value = filterValue;
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
resetActiveFilters() {
|
resetActiveFilters() {
|
||||||
|
Reference in New Issue
Block a user