[svn.haxx.se] · SVN Dev · SVN Users · SVN Org · TSVN Dev · TSVN Users · Subclipse Dev · Subclipse Users · this month's index

RE: svn commit: r25431 - trunk/subversion/tests/cmdline

From: Paul Burba <pburba_at_collab.net>
Date: 2007-06-19 00:19:31 CEST

Hi Kamesh,

Your fix breaks this test on Win32. But my original test worked on
Win32 but failed on everything else!

The problem is that the empty_rev_range_mergeinfo() test produces
mergeinfo on file paths with multiple merge sources, then runs 'svn pl'
on these paths to check on the results of a merge, e.g.

>svn pl -vR merge_tests-1.H
Properties on 'merge_tests-1.H\omega':
  prop:name : propval
  svn:mergeinfo : /A_COPY/B/E/beta:5
/A_COPY/D/H/omega:3

*There are other tests that set similar mergeinfo, but they do so on
directories. And there we can and do use svn_run_and_verify_merge,
which due to tree.get_props' implementation, avoids this problem.

As you pointed out in your log message, when there are multiple merge
sources each is separted by a <LF>. But on Win32 this <LF> ends up as
<CR><CR><LF> in the svn pl output because svn_cl__print_prop_hash()
calls svn_subst_detranslate_string() on the starting propval:

  "/A_COPY/B/E/beta:5<LF>/A_COPY/D/H/omega:3"

converting it to

  "/A_COPY/B/E/beta:5<CR><LF>/A_COPY/D/H/omega:3"

Then this is passed to printf() which converts the <LF> to <CR><LF>
giving us the final output:

Properties on 'merge_tests-1.H\omega':<CR><LF>
  prop:name : propval<CR><LF>
  svn:mergeinfo : /A_COPY/B/E/beta:5<CR><CR><LF>
/A_COPY/D/H/omega:3-4<CR><LF>

This looks fine in the Win32 CL, the <CR> is just ignored. And in fact
we already had a helper method, check_props(), in prop_tests.py that
handles this very situation. I moved that method into actions so
merge_tests.py can take advantage of it too, see r25450.

Paul

> -----Original Message-----
> From: kameshj@tigris.org [mailto:kameshj@tigris.org]
> Sent: Saturday, June 16, 2007 3:57 AM
> To: svn@subversion.tigris.org
> Subject: svn commit: r25431 - trunk/subversion/tests/cmdline
>
> Author: kameshj
> Date: Sat Jun 16 00:57:25 2007
> New Revision: 25431
>
> Log:
> Fix merge_tests-52(empty_rev_range_mergeinfo) failure.
>
> * subversion/tests/cmdline/merge_tests.py
> (empty_rev_range_mergeinfo.merge_r5_into_Other_A_D_H_omega,
>
> empty_rev_range_mergeinfo.merge_r4_into_Other_A_D_H_omega):
> Each merge info
> line ends with LF not CRLF. Fix '/A_COPY/B/E/beta:5' to
> end with LF.
>
>
> Modified:
> trunk/subversion/tests/cmdline/merge_tests.py
>
> Modified: trunk/subversion/tests/cmdline/merge_tests.py
> URL:
> http://svn.collab.net/viewvc/svn/trunk/subversion/tests/cmdlin
> e/merge_tests.py?pathrev=25431&r1=25430&r2=25431
> ==============================================================
> ================
> --- trunk/subversion/tests/cmdline/merge_tests.py (original)
> +++ trunk/subversion/tests/cmdline/merge_tests.py Sat Jun
> 16 00:57:25 2007
> @@ -6263,7 +6263,7 @@
> "':\n",
> ' prop:name : propval\n',
> ' svn:mergeinfo : ' +
> - '/A_COPY/B/E/beta:5\r\n',
> + '/A_COPY/B/E/beta:5\n',
>
> '/A_COPY/D/H/omega:3-4\n'], [],
> 'pl', '-vR', other_omega_path)
>
> @@ -6313,7 +6313,7 @@
> "':\n",
> ' prop:name : propval\n',
> ' svn:mergeinfo : ' +
> - '/A_COPY/B/E/beta:5\r\n',
> + '/A_COPY/B/E/beta:5\n',
> '/A_COPY/D/H/omega:3\n'], [],
> 'pl', '-vR', other_omega_path)
> merge_r4_into_Other_A_D_H_omega()
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: svn-unsubscribe@subversion.tigris.org
> For additional commands, e-mail: svn-help@subversion.tigris.org
>
>

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@subversion.tigris.org
For additional commands, e-mail: dev-help@subversion.tigris.org
Received on Tue Jun 19 00:20:44 2007

This is an archived mail posted to the Subversion Dev mailing list.

This site is subject to the Apache Privacy Policy and the Apache Public Forum Archive Policy.