[Pkg-octave-devel] Unit test bug in octave-signal

Rafael Laboissière rafael at debian.org
Mon Nov 13 15:36:05 UTC 2017


* Sébastien Villemot <sebastien at debian.org> [2017-11-13 16:18]:

> On Sun, Nov 05, 2017 at 09:14:08AM +0100, Rafael Laboissière wrote:
>> Version 1.3.2-3 of the octave-signal, uploaded yesterday to unstable, builds
>> correctly on i386.  However, in order to achieve that, the first unit test
>> of function fir2 had to be bypassed [*]:
>>
>> ####################################### 
>> ***** xtest 
>>  f = [0 0.6 0.6 1]; m = [1 1 0 0]; 
>>  b9  = fir2 (30, f, m, 9); 
>>  b16 = fir2 (30, f, m, 16); 
>>  b17 = fir2 (30, f, m, 17); 
>>  b32 = fir2 (30, f, m, 32); 
>>  assert ( isequal (b9,  b16)) 
>>  assert ( isequal (b17, b32)) 
>>  assert (~isequal (b16, b17)) 
>>  !!!!! known failure 
>>  assert (isequal (b9, b16)) failed 
>> #######################################
>>
>> This is a highly strange bug that I cannot replicate on my i386 chroot 
>> (running on an amd64 system).  If someone has access to a native i386 system 
>> and could track down the problem, I would be grateful.
>
> This test failure seems non-deterministic. I am able to reproduce it in my i386 
> chroot, but had to run the build three times (without the fir2-*.patch) before 
> getting an FTBFS.

I usually try to get non-deterministic failures from the command line, 
like this:

    while true ; do echo 'pkg load signal; test fir2' |  octave-cli -qf ; done

Anyway, it is really mysterious why a test that does not involve random 
generated values can have a non-deterministic behavior.

Rafael



More information about the Pkg-octave-devel mailing list