@@ -801,16 +801,18 @@ describe("Field", () => {
801801 ) ;
802802 expect ( red ) . toHaveBeenCalled ( ) ;
803803 expect ( red ) . toHaveBeenCalledTimes ( 2 ) ;
804- expect ( red . mock . calls [ 0 ] [ 0 ] . input . checked ) . toBe ( true ) ; // Now correctly true on first render!
805- expect ( red . mock . calls [ 1 ] [ 0 ] . input . checked ) . toBe ( true ) ; // Still true for "red" checkbox
804+ // After fix #1050, initialValues work on first render
805+ expect ( red . mock . calls [ 0 ] [ 0 ] . input . checked ) . toBe ( true ) ; // Correctly true for "red" from initialValues
806+ expect ( red . mock . calls [ 1 ] [ 0 ] . input . checked ) . toBe ( true ) ;
806807 expect ( green ) . toHaveBeenCalled ( ) ;
807808 expect ( green ) . toHaveBeenCalledTimes ( 2 ) ;
808- expect ( green . mock . calls [ 0 ] [ 0 ] . input . checked ) . toBe ( false ) ; // Correctly false on first render
809- expect ( green . mock . calls [ 1 ] [ 0 ] . input . checked ) . toBe ( false ) ; // Still false for "green" checkbox
809+ expect ( green . mock . calls [ 0 ] [ 0 ] . input . checked ) . toBe ( false ) ;
810+ expect ( green . mock . calls [ 1 ] [ 0 ] . input . checked ) . toBe ( false ) ; // Correctly false for "green"
810811 expect ( blue ) . toHaveBeenCalled ( ) ;
811812 expect ( blue ) . toHaveBeenCalledTimes ( 2 ) ;
812- expect ( blue . mock . calls [ 0 ] [ 0 ] . input . checked ) . toBe ( true ) ; // Now correctly true on first render!
813- expect ( blue . mock . calls [ 1 ] [ 0 ] . input . checked ) . toBe ( true ) ; // Still true for "blue" checkbox
813+ // After fix #1050, initialValues work on first render
814+ expect ( blue . mock . calls [ 0 ] [ 0 ] . input . checked ) . toBe ( true ) ; // Correctly true for "blue" from initialValues
815+ expect ( blue . mock . calls [ 1 ] [ 0 ] . input . checked ) . toBe ( true ) ;
814816 } ) ;
815817
816818 it ( "should render radio buttons with checked prop" , ( ) => {
@@ -880,16 +882,17 @@ describe("Field", () => {
880882 ) ;
881883 expect ( red ) . toHaveBeenCalled ( ) ;
882884 expect ( red ) . toHaveBeenCalledTimes ( 2 ) ;
883- expect ( red . mock . calls [ 0 ] [ 0 ] . input . checked ) . toBe ( false ) ; // Correctly false on first render
884- expect ( red . mock . calls [ 1 ] [ 0 ] . input . checked ) . toBe ( false ) ; // Still false for "red" radio
885+ expect ( red . mock . calls [ 0 ] [ 0 ] . input . checked ) . toBe ( false ) ;
886+ expect ( red . mock . calls [ 1 ] [ 0 ] . input . checked ) . toBe ( false ) ; // Correctly false for "red" radio
885887 expect ( green ) . toHaveBeenCalled ( ) ;
886888 expect ( green ) . toHaveBeenCalledTimes ( 2 ) ;
887- expect ( green . mock . calls [ 0 ] [ 0 ] . input . checked ) . toBe ( true ) ; // Now correctly true on first render!
888- expect ( green . mock . calls [ 1 ] [ 0 ] . input . checked ) . toBe ( true ) ; // Still true for "green" radio
889+ // After fix #1050, initialValues work on first render
890+ expect ( green . mock . calls [ 0 ] [ 0 ] . input . checked ) . toBe ( true ) ; // Correctly true for "green" from initialValues
891+ expect ( green . mock . calls [ 1 ] [ 0 ] . input . checked ) . toBe ( true ) ;
889892 expect ( blue ) . toHaveBeenCalled ( ) ;
890893 expect ( blue ) . toHaveBeenCalledTimes ( 2 ) ;
891- expect ( blue . mock . calls [ 0 ] [ 0 ] . input . checked ) . toBe ( false ) ; // Correctly false on first render
892- expect ( blue . mock . calls [ 1 ] [ 0 ] . input . checked ) . toBe ( false ) ; // Still false for "blue" radio
894+ expect ( blue . mock . calls [ 0 ] [ 0 ] . input . checked ) . toBe ( false ) ;
895+ expect ( blue . mock . calls [ 1 ] [ 0 ] . input . checked ) . toBe ( false ) ; // Correctly false for "blue" radio
893896 } ) ;
894897
895898 it ( "should use isEqual to calculate dirty/pristine" , ( ) => {
@@ -967,8 +970,6 @@ describe("Field", () => {
967970 ) }
968971 </ Form > ,
969972 ) ;
970- // With the useSyncExternalStore fix for #1050, validation runs once
971- // during the initial field registration
972973 expect ( fooValidate ) . toHaveBeenCalledTimes ( 1 ) ;
973974 expect ( barValidate ) . toHaveBeenCalledTimes ( 1 ) ;
974975 expect ( bazValidate ) . toHaveBeenCalledTimes ( 1 ) ;
@@ -1010,8 +1011,9 @@ describe("Field", () => {
10101011 </ Form > ,
10111012 ) ;
10121013
1013- // With the fix for #1050, initialValues are now correctly available on first render,
1014- // so the select multiple value IS an array from the start - no warning needed!
1014+ // After fix #1050, initialValues work on first render, so select multiple
1015+ // correctly gets the array value from initialValues and no longer triggers
1016+ // React's "must be an array" warning
10151017 expect ( errorSpy ) . toHaveBeenCalledTimes ( 0 ) ;
10161018
10171019 // Reset the spy to test the actual Field warnings
0 commit comments