On Thu, May 19, 2011 at 10:37 AM, Daniel Shahaf <d.s_at_daniel.shahaf.name> wrote:
> Per discussion with jcorvel:
>
> jcorvel_at_apache.org wrote on Wed, May 18, 2011 at 21:23:42 -0000:
>> +# Regression test for issue #3865: 'svn' on Windows cannot address
>> +# scheduled-for-delete file, if another file differing only in case is
>> +# present on disk
>> +@XFail(svntest.main.is_fs_case_insensitive)
>> +@Issue(3865)
>> +def deleted_file_with_case_clash(sbox):
>> + """address a deleted file hidden by case clash"""
>> +
>> + sbox.build()
>
> read_only = True
>
>> + wc_dir = sbox.wc_dir
>> +
>> + iota_path = os.path.join(wc_dir, 'iota')
>> + iota2_path = os.path.join(wc_dir, 'iota2')
>> + IOTA_path = os.path.join(wc_dir, 'IOTA')
>> +
>> + # Perform a case-only rename in two steps.
>> + svntest.main.run_svn(None, 'move', iota_path, iota2_path)
>> + svntest.main.run_svn(None, 'move', iota2_path, IOTA_path)
>> +
>> + expected_status = svntest.actions.get_virginal_state(wc_dir, 1)
>> + expected_status.add({
>> + 'iota' : Item(status='D ', wc_rev=1),
>> + 'IOTA' : Item(status='A ', copied='+', wc_rev='-'),
>> + })
>> +
>> + svntest.actions.run_and_verify_status(wc_dir, expected_status)
>> +
>> + # Perform an 'info' call, where we expect to be able to see the
>> + # deleted file (which is hidden by the on-disk case-clashing file).
>> + expected_info = {'Path' : re.escape(iota_path),
>> + 'Schedule' : 'delete',
>> + }
>
> Two ideas here (one of them by Johan):
>
> * Check 'info' for both iota and IOTA
>
> * Check some field other than 'Schedule' in order to verify that 'info'
> really printed info for the right file (rather than the wrong file's
> info along with the right file's 'Schedule' field)
r1125193. Thanks.
--
Johan
Received on 2011-05-20 02:52:08 CEST