Where is the log message? Why are you removing basic_svnrdump()?
Why are you using r0 *of the ASF repository* --- is anything special about that repository? Should we have run_and_verify_svnrdump()? Ramkumar Ramachandra wrote on Sat, Jul 24, 2010 at 03:33:53 +0530: > Hi, > > Here's a patch for a simple unittest I wrote out- the zeroth revision > of the ASF repository passes with no issues. Since this is outside my > area, I need a +1 to commit this. > > Thanks! > > Index: subversion/tests/cmdline/svnrdump_tests.py > =================================================================== > --- subversion/tests/cmdline/svnrdump_tests.py (revision 967194) > +++ subversion/tests/cmdline/svnrdump_tests.py (working copy) > @@ -41,25 +41,75 @@ XFail = svntest.testcase.XFail > Item = svntest.wc.StateItem > Wimp = svntest.testcase.Wimp > > -def basic_svnrdump(sbox): > - "dump the standard sbox repos" > - sbox.build(read_only = True, create_wc = False) > +###################################################################### > +# Helper routines > > +def build_repos(sbox): > + """Build an empty sandbox repository""" > + # Cleanup after the last run by removing any left-over repository. > + svntest.main.safe_rmtree(sbox.repo_dir) > + > + # Create an empty repository. > + svntest.main.create_repos(sbox.repo_dir) > + > +def run_test(sbox, dumpfile_name = None, dumpfile_url = None): > + """Load either a local or remote dumpfile using svnadmin load, dump > + it with svnrdump and check that the same dumpfile is produced""" > + > + # Create the empty master repository. > + build_repos(sbox) > + > + # Sanity check > r, out, err = svntest.main.run_svnrdump(sbox.repo_url) > > if (r != 0): > raise svntest.Failure('Result code not 0') > > if not out[0].startswith('SVN-fs-dump-format-version:'): > - raise svntest.Failure('No valid output') > + raise svntest.Failure('Sanity check failed') > > + # This directory contains all the dump files > + svnsync_tests_dir = os.path.join(os.path.dirname(sys.argv[0]), > + 'svnrdump_tests_data') > + > + # Load the specified dump file into the master repository. > + if (dumpfile_name): > + svnadmin_dumpfile = open(os.path.join(svnsync_tests_dir, > + dumpfile_name), > + 'rb').readlines() > + else: > + raise svntest.Failure('Unsupported test') > + > + # Create the revprop-change hook for this test > + svntest.actions.enable_revprop_changes(sbox.repo_dir) > + > + # Load dumpfile_contents into the sbox repository > + svntest.actions.run_and_verify_load(sbox.repo_dir, svnadmin_dumpfile) > + > + # Create a dump file using svnrdump > + r, svnrdump_dumpfile, err = svntest.main.run_svnrdump(sbox.repo_url) > + if (r != 0): > + raise svntest.Failure('Result code not 0') > + > + svntest.verify.compare_and_display_lines( > + "Dump files", "DUMP", svnadmin_dumpfile, svnrdump_dumpfile) > + > +###################################################################### > +# Tests > + > +def asf_0(sbox): > + "dump the zeroth revision of the ASF repository" > + > + build_repos(sbox) > + run_test(sbox, dumpfile_name = "asf-0.dump") > + > ######################################################################## > # Run the tests > > > # list all tests here, starting with None: > test_list = [ None, > - basic_svnrdump, > + asf_0, > ] > > if __name__ == '__main__': > Index: subversion/tests/cmdline/svnrdump_tests_data/asf-0.dump > =================================================================== > --- subversion/tests/cmdline/svnrdump_tests_data/asf-0.dump (revision 0) > +++ subversion/tests/cmdline/svnrdump_tests_data/asf-0.dump (working copy) > @@ -0,0 +1,30 @@ > +SVN-fs-dump-format-version: 3 > + > +UUID: 95f5730d-843b-4fe3-8879-f46da52f2123 > + > +Revision-number: 0 > +Prop-content-length: 258 > +Content-length: 258 > + > +K 8 > +svn:date > +V 27 > +2003-01-08T10:33:40.549533Z > +K 26 > +svn:sync-currently-copying > +V 2 > +15 > +K 17 > +svn:sync-from-url > +V 31 > +http://svn.apache.org/repos/asf > +K 18 > +svn:sync-from-uuid > +V 36 > +13f79535-47bb-0310-9956-ffa450edef68 > +K 24 > +svn:sync-last-merged-rev > +V 2 > +14 > +PROPS-END > +