On Tue, Jan 27, 2015 at 2:57 PM, Branko Čibej <br...@wandisco.com> wrote:
> On 27.01.2015 14:29, Ivan Zhakov wrote: > > On 27 January 2015 at 14:16, <stef...@apache.org> wrote: > >> Author: stefan2 > >> Date: Tue Jan 27 11:16:35 2015 > >> New Revision: 1655008 > >> > >> URL: http://svn.apache.org/r1655008 > >> Log: > >> Make the test added in r1654933 somewhat more robust by using the > >> parser / serializer functions provided by FSFS. > >> > >> * subversion/tests/libsvn_fs_fs/fs-fs-pack-test.c > >> (stringbuf_find): Just return a position, not a pointer. > >> (plain_0_length): Modify the revision content using FSFS noderev I/O > and > >> tweak the native structure instead of its serialized > >> format. > >> > >> Suggested by: danielsh > >> > > I think it's will be better to use pre-cooked FSFS repository created > > using documented reproduction script using older Subversion instead of > > manipulating revision files directly. > That would possibly require a large-ish number of repositories. While 1.8.x are the only *SVN* releases that are known to create the problematic content, our spec allowed them since version 1.1. The current test implementation is able to create the pattern for any --compatible-server-version that supports FSFS. > It would be great if we could do that for all (most?) of the C tests, > similar to the way it works now in the Python tests. I know the C tests > typically create specific repository layouts, but maybe we could > consolidate many of them to use the greek tree and maybe a couple variants. > It is certainly possible to mirror the python logic in C. What I have been thinking of in the past, was a mechanism to create template repos on the fly via create_templated_repos(path, template_name, constructor_func) If a template with the given name exists, copy it. Otherwise, use the constructor to create it. This would be somewhat independent from support for pre-cooked repos. -- Stefan