@@ -7,7 +7,7 @@ use bstr::BStr;
77use  filetime:: { set_file_mtime,  FileTime } ; 
88use  gix_filter:: eol:: AutoCrlf ; 
99use  gix_index as  index; 
10- use  gix_index:: Entry ; 
10+ use  gix_index:: { entry ,   Entry } ; 
1111use  gix_status:: index_as_worktree:: Context ; 
1212use  gix_status:: { 
1313    index_as_worktree, 
@@ -231,7 +231,7 @@ fn deracify_status(status: EntryStatus) -> Option<EntryStatus> {
231231        EntryStatus :: Conflict ( c)  => EntryStatus :: Conflict ( c) , 
232232        EntryStatus :: Change ( c)  => match  c { 
233233            Change :: Removed  => Change :: Removed , 
234-             Change :: Type  => Change :: Type , 
234+             Change :: Type  {  worktree_mode  }   => Change :: Type   {  worktree_mode  } , 
235235            Change :: Modification  { 
236236                executable_bit_changed, 
237237                content_change, 
@@ -284,7 +284,17 @@ fn nonfile_untracked_are_not_visible() {
284284#[ test]  
285285#[ cfg( unix) ]  
286286fn  tracked_changed_to_non_file ( )  { 
287-     nonfile_fixture ( "tracked-swapped" ,  & [ ( BStr :: new ( b"file" ) ,  0 ,  Change :: Type . into ( ) ) ] ) ; 
287+     nonfile_fixture ( 
288+         "tracked-swapped" , 
289+         & [ ( 
290+             BStr :: new ( b"file" ) , 
291+             0 , 
292+             Change :: Type  { 
293+                 worktree_mode :  entry:: Mode :: FILE , 
294+             } 
295+             . into ( ) , 
296+         ) ] , 
297+     ) ; 
288298} 
289299
290300#[ test]  
@@ -384,7 +394,17 @@ fn subomdule_deleted_dir() {
384394#[ test]  
385395fn  subomdule_typechange ( )  { 
386396    assert_eq ! ( 
387-         submodule_fixture( "type-change" ,  & [ ( BStr :: new( b"m1" ) ,  1 ,  Change :: Type . into( ) ) ] ) , 
397+         submodule_fixture( 
398+             "type-change" , 
399+             & [ ( 
400+                 BStr :: new( b"m1" ) , 
401+                 1 , 
402+                 Change :: Type  { 
403+                     worktree_mode:  entry:: Mode :: FILE 
404+                 } 
405+                 . into( ) 
406+             ) ] 
407+         ) , 
388408        Outcome  { 
389409            entries_to_process:  2 , 
390410            entries_processed:  2 , 
@@ -596,7 +616,14 @@ fn refresh() {
596616                    } 
597617                    . into( ) , 
598618                ) , 
599-                 ( BStr :: new( b"empty" ) ,  3 ,  Change :: Type . into( ) ) , 
619+                 ( 
620+                     BStr :: new( b"empty" ) , 
621+                     3 , 
622+                     Change :: Type  { 
623+                         worktree_mode:  entry:: Mode :: FILE 
624+                     } 
625+                     . into( ) 
626+                 ) , 
600627                ( 
601628                    BStr :: new( b"executable" ) , 
602629                    4 , 
@@ -669,7 +696,14 @@ fn modified() {
669696                } 
670697                . into ( ) , 
671698            ) , 
672-             ( BStr :: new ( b"empty" ) ,  3 ,  Change :: Type . into ( ) ) , 
699+             ( 
700+                 BStr :: new ( b"empty" ) , 
701+                 3 , 
702+                 Change :: Type  { 
703+                     worktree_mode :  entry:: Mode :: FILE , 
704+                 } 
705+                 . into ( ) , 
706+             ) , 
673707            ( 
674708                BStr :: new ( b"executable" ) , 
675709                4 , 
0 commit comments