Jonas Maebe <jonas.ma...@elis.ugent.be> wrote: > > The tests must pass under Wine without any additional "fixes" as they do > > currently under Windows. If you add some code to the tests which suddenly > > makes them pass under Wine - that's not a fix, Wine implementation should > > be fixed instead. > > What I understood from Wolfgang's previous explanations is that there is > currently this situation: > > todo_wine > test1(); > /* test1 fails because wine has a bug. As a side-effect, bytes will be left > in the transmission buffer under wine, but not under windows. */ > test2(); > /* test2 also fails under wine because of the failure of test1 that > influences the behaviour of test2, not because the functionality tested by > test2 is broken. This make it impossible to individually evaluate test1() and > test2(). */ > > So either > * you add code in between that resets the state so that test2 can be run > independently of whether test1 failed (as Wolfgang proposes), or > * you put the tests in completely different executables so they don't > influence each other (hopefully), or > * you reorder the test so that first all the tests that currently work under > wine are run (under the assumption that no regression will ever creep in), or > * you require that bugs in wine routines are fixed in the order that they are > called in that test (which would be strange)
How about a patch set which does: 1/2. add a workaround to the tests to pass under Wine 2/2. fix Wine code and simultaneously remove the workaround added by 1/2. But that looks even more strange if the fix contained in 2/2 could be sent alone. -- Dmitry.