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

Re: svn commit: r18648 - trunk/contrib/client-side

From: David James <djames_at_collab.net>
Date: 2006-03-01 01:37:09 CET

On 2/28/06, Giovanni Bajo <giovannibajo@libero.it> wrote:
> > Log:
> > * contrib/client-side/svnmerge.py
> > (main): Don't reuse the same options for multiple runs of
> > svnmerge.main() within the test suite. Instead, re-initialize our
> > options from a clean copy of the options dictionary every time
> > svnmerge.main() is called.
>
> You didn't say why it is needed. I thought I had made sure it wasn't needed.

Strictly speaking, we don't need to have a clean copy of the options
dictionary for each run of svnmerge.main(). However, if we reuse the
same options dictionary, then it is possible that a run of
svnmerge.main() will accidentally reuse values from a previous run of
svnmerge. Without this fix, my test case in r18649 for "svnmerge
block" will accidentally reuse the previous values of the
"bidirectional" option from a previous run of svnmerge, thus making it
difficult to reproduce a bug where svnmerge crashes due to
"bidirectional" being undefined.

In general, I think it's a good idea if each test case has a clean
environment, so that it is as similar to a fresh run of svnmerge as is
possible.

Cheers,

David

--
David James -- http://www.cs.toronto.edu/~james
---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@subversion.tigris.org
For additional commands, e-mail: dev-help@subversion.tigris.org
Received on Wed Mar 1 01:37:33 2006

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.