Dear Georg,

thank you for looking into this.

On 2015-09-13, Georg Baum wrote:
> Guenter Milde wrote:

...

> ... One thing I have learned during many years of software development
> is that source code and unit tests should always be changed at the same
> time (in some projects this is even enforced technically). 

I agree with this. Is this recorded somewhere in the LyX development policies?
(Something like "run `make alltests` before committing any change".)

> Looking at the unit test will result in one of the following three
> cases:

> 1) The unit test does still pass => code change can be submitted, no unit 
> test change needed

> 2) Unit test does not pass, investigation shows that the unit test is not 
> correct here and needs to be changed => code change + unit test change can 
> be submitted

  2a) unit test case was buggy,
  2b) unit test was correct but new behaviour is also correct.

> 3) Unit test does not pass, investigation shows that the unit test did its 
> job and the changed source code introduces a regression => Oops

  4) Unit test does not pass, investigation shows that the unit test is
  not correct here and needs to be changed => correct unit test reveals a
  different problem that was hidden by the incorrect test case and fails
  without further changes to the code.

...

> For the case we are discussing it is already too late to submit the test 
> change at the same time as the source change, but it is not too late to 
> verify that the fix for #9764 does not introduce a regression _before_ 
> submitting.

...

> The assumption of the tex2lyx tests is that only correct .lyx.lyx files
> are submitted to the repository. Obviouly, this assumption is not true
> for the current version of test-insets.lyx.lyx, but will be fixed by
> updating it.

However, as both, the current state of the code as well as the
"pre-commit 268bd00" state produce/require a wrong .lyx.lyx file, we
would either need to submit a changed but still wrong test case or submit
a state where the test still fails.

> Please let us revisit the tex2lyx changes separately (after the tests pass 
> again). Both 268bd00 and the patch from #9764 do only concern 
> lib/unicodesymbols, bugs in tex2lyx are a separate issue and should be 
> treated as such.

Both, unicodesymbols as well as tex2lyx use(d) \b instead of \textsubbar for
the COMBINING MINUS SIGN BELOW (IPA: retracted or backed articulation).
The unit test cases test-insets.tex and test-insets.lyx.lyx connect these
issues. This is why I'd prefer to treat them in one commit.


If you go a different way to reach a correct end-state, I am fine with it.


> Ah, now I understand. You compile in tree and not in a separate build 
> directory. The tex2lyx tests work only if you use a separate build 
> directory. 

Is there a pointer somewhere how to compile to a build dir?
I currently just run "make" in the repository base dir (as suggested in
lyx/INSTALL).

regards,
Günter

Reply via email to