99 PerInputValidation ,
1010} from './FilterLiveForm.stories' ;
1111import React from 'react' ;
12+ import { WithFilterListSection } from '../../../ra-ui-materialui/src/list/filter/FilterLiveForm.stories' ;
1213
1314describe ( '<FilterLiveForm />' , ( ) => {
1415 it ( 'should allow to set a filter value' , async ( ) => {
@@ -138,6 +139,30 @@ describe('<FilterLiveForm />', () => {
138139 ) . toBeNull ( ) ;
139140 } ) ;
140141
142+ it ( 'should not reapply old filter values when they change externally' , async ( ) => {
143+ render ( < WithFilterListSection /> ) ;
144+ // Click on Yes
145+ fireEvent . click ( await screen . findByText ( 'Yes' ) ) ;
146+ await screen . findByText ( '"has_newsletter": true' , { exact : false } ) ;
147+ await new Promise ( resolve => setTimeout ( resolve , 510 ) ) ;
148+ await screen . findByText ( '"has_newsletter": true' , { exact : false } ) ;
149+ // Click on No
150+ fireEvent . click ( await screen . findByText ( 'No' ) ) ;
151+ await screen . findByText ( '"has_newsletter": false' , { exact : false } ) ;
152+ await new Promise ( resolve => setTimeout ( resolve , 510 ) ) ;
153+ await screen . findByText ( '"has_newsletter": false' , { exact : false } ) ;
154+ // Click on Yes
155+ fireEvent . click ( await screen . findByText ( 'Yes' ) ) ;
156+ await screen . findByText ( '"has_newsletter": true' , { exact : false } ) ;
157+ await new Promise ( resolve => setTimeout ( resolve , 510 ) ) ;
158+ await screen . findByText ( '"has_newsletter": true' , { exact : false } ) ;
159+ // Click on No
160+ fireEvent . click ( await screen . findByText ( 'No' ) ) ;
161+ await screen . findByText ( '"has_newsletter": false' , { exact : false } ) ;
162+ await new Promise ( resolve => setTimeout ( resolve , 510 ) ) ;
163+ await screen . findByText ( '"has_newsletter": false' , { exact : false } ) ;
164+ } ) ;
165+
141166 describe ( 'getFilterFormValues' , ( ) => {
142167 it ( 'should correctly get the filter form values from the new filterValues' , ( ) => {
143168 const currentFormValues = {
@@ -154,6 +179,7 @@ describe('<FilterLiveForm />', () => {
154179 nestedUpdated : { nestedValue : 'jkl2' } ,
155180 nestedToSet : { nestedValue : 'mno2' } ,
156181 published_at : '2022-01-01T03:00:00.000Z' ,
182+ newIgnoredValue : 'pqr' ,
157183 } ;
158184
159185 expect (
0 commit comments