Prabhu Ramachandran | 21 Jul 15:04

Re: Overview of ETS 3.0 tests

Ilan Schnell wrote:
> thanks for all the hard work Prabhu.  I can integrationtests/mayavi

Thanks!  It took a long while to get everything working.

> with the run.py but when I use nosetests -s I get a wx error in one
> of the later tests.  I'm not really sure if it's a good idea to

I've fixed many things so the tests work (so make sure your checkout is 
up-to-date); just run nosetests (don't specify -s).  The tests work on 
the Mac and under Linux.  The test_streamline one may fail with an image 
error but I'll work around that later.  However, with nose-0.10.3 things 
ought to work.  Please send me errors you get.  I won't get to them 
before the weekend though.

> include the integrationtests in test_all.  Anyway, the reason
> I started writing the test_all.py scripts was because of
> a bug/feature in nose 0.10.3.  With that version it is not possible
> to run nose in the root of a project (because I gets confused by with
> the package namespaces), however it is possible to run nose 0.10.3 in
> each directory by itself.  Also if one adds the line
>   tests = enthought/tvtk/tests,enthought/mayavi/tests
> to the nosetests section in setup.cfg things work (with 0.10.3),
> whereas the shell command
>   Mayavi_3.0.0a1$ nosetests enthought/tvtk/tests enthought/mayavi/tests
> fails (which as fas as I understand does the same thing).

This is very wierd.  I get an error that looks like a reload of a module 
happened which causes wierd errors.

ERROR: Can tvtk datasets can be converted to names correctly.
----------------------------------------------------------------------
Traceback (most recent call last):
   File

"/skratch/prabhu/svn/enthought/Mayavi_3.0.0a1/Mayavi_3.0.0a1/enthought/mayavi/tests/test_pipeline_info.py", 
line 16, in test_tvtk_dataset_name
     datasets = [tvtk.ImageData(),
   File "tvtk_classes/image_data.py", line 32, in __init__
     tvtk_base.TVTKBase.__init__(self, vtk.vtkImageData, obj, update, 
**traits)
TypeError: unbound method __init__() must be called with TVTKBase 
instance as first argument (got ImageData instance instead)

Which is a classic case of a reload on tvtk_base.  I think your approach 
of running separate processes for each in test_all.py is fine.

> Regardless of the integrationtests, the other tests all work fine,
> except that, enthought/tvtk/tests/test_tvtk.py only work with python
> and nose 0.9.3, when I run it with nose 0.10.3 I get an AssertionError
> in line 190 but I don't know what going on in detail.

I'm happy if things work with 0.10.3 and am not going to spend time 
getting it working with 0.9.3. :)

cheers,
prabhu

Gmane