Hi all,

Yesterday I made a new wiki page to create an overview of the Tree
Conflict Resolution tests we have, and where there is still a lot of
work to do for test coverage:

There are three tables currently (one per "operation" (merge, update,
switch)). We might add more separate tables (for instance stsp
suggested we could have a table for "merging into a clean working
copy" (where the local change indicates a change on the branch), and
"merging into an synced but unclean working copy" (where the local
change indicates an uncommitted change)).

Each operation section then has a table with rows for the local
situation (add_f, mv_f, mv_d, ...), and columns for the incoming stuff
(same). These I would call the "categories". They are not meant to
describe the situation in every detail, but just broad categories.

Now, I'd like us to settle on some syntax for the categories, and use
them as markers for our tests. If we can include such markers e.g. in
de test description (so it gets output by "conflicts-test --list"), we
could write a script to parse them and keep the wiki-table
automatically up to date. The markers should also be mostly
human-readable, in which case they can replace part of the test

For instance, conflicts-test#13 (which is currently XFail) has the
following description:
    merge incoming add dir replace and merge

We could change this into:
    merge [add_d-add_d] resolve: replace and merge

Which the parser could put in the table for operation "merge", in the
add_d-add_d cell, and put "resolve: replace and merge" in the cell

And if conflicts-test would be split into separate files for merge,
update and switch, that would even obviate the need to specify the
operation in the test description, leaving a bit more space in the
description (max 50 characters) for more useful content.



Reply via email to