@@ -385,14 +385,16 @@ def test_index_file_diffing(self, rw_repo):
385385 try :
386386 index .checkout (test_file )
387387 except CheckoutError as e :
388- self .assertEqual (len (e .failed_files ), 1 )
389- self .assertEqual (e .failed_files [0 ], osp .basename (test_file ))
390- self .assertEqual (len (e .failed_files ), len (e .failed_reasons ))
391- self .assertIsInstance (e .failed_reasons [0 ], str )
392- self .assertEqual (len (e .valid_files ), 0 )
393- with open (test_file , 'rb' ) as fd :
394- s = fd .read ()
395- self .assertTrue (s .endswith (append_data ), s )
388+ # detailed exceptions are only possible in older git versions
389+ if rw_repo .git ._version_info < (2 , 29 ):
390+ self .assertEqual (len (e .failed_files ), 1 )
391+ self .assertEqual (e .failed_files [0 ], osp .basename (test_file ))
392+ self .assertEqual (len (e .failed_files ), len (e .failed_reasons ))
393+ self .assertIsInstance (e .failed_reasons [0 ], str )
394+ self .assertEqual (len (e .valid_files ), 0 )
395+ with open (test_file , 'rb' ) as fd :
396+ s = fd .read ()
397+ self .assertTrue (s .endswith (append_data ), s )
396398 else :
397399 raise AssertionError ("Exception CheckoutError not thrown" )
398400
0 commit comments