enthought / mayavi

3D visualization of scientific data in Python
http://docs.enthought.com/mayavi/mayavi/
Other
1.3k stars 284 forks source link

Ignore classes to fix hanging build with vtk 9.0.3 #1088

Closed rahulporuri closed 2 years ago

rahulporuri commented 2 years ago

This PR ignores two VTK classes - vtkDataEncoder and vtkWebApplication to prevent the package build/install from hanging with the latest version of vtk - 9.0.3. We should investigate why these classes are causing the build to hang but for now, we need to ensure that the build doesnt hang. See #1097

fixes https://github.com/enthought/mayavi/issues/1073

larsoner commented 2 years ago

This looks redundant with #1050

rahulporuri commented 2 years ago

This looks redundant with #1050

I don't know which of these is the "right"/"better" solution. @prabhuramachandran comments?

mdickinson commented 2 years ago

Over on #1096 I'm investigating a related issue having to do with hangs during the test suite run. It appears that with this PR, there are still hangs related to vtkDataEncoder in the test suite. If we're definitely not wrapping vtkDataEncoder, it's not clear to me how we're getting hold of an instance of that class in the tests. Is there some other class that uses it that we also need to exclude from the wrapping?

Here's a transcript of an example shell session (zsh, inside VS Code, on macOS 10.15.7 / Intel, with Python 3.9.7 from MacPorts).

``` mdickinson@mirzakhani mayavi % git clean -ffxd mdickinson@mirzakhani mayavi % git show commit b29d164cf5f87ee8ca665e32d4d45454a28734ca (HEAD -> fix/hanging-build-with-latest-vtk, origin/fix/hanging-build-with-latest-vtk) Merge: abdf1c43 42e8f734 Author: Poruri Sai Rahul Date: Fri Oct 8 20:39:20 2021 +0530 Merge branch 'master' of github.com:enthought/mayavi into fix/hanging-build-with-latest-vtk mdickinson@mirzakhani mayavi % git status On branch fix/hanging-build-with-latest-vtk Your branch is up to date with 'origin/fix/hanging-build-with-latest-vtk'. nothing to commit, working tree clean mdickinson@mirzakhani mayavi % python3.9 -m venv --clear ~/.venvs/mayavi mdickinson@mirzakhani mayavi % source ~/.venvs/mayavi/bin/activate (mayavi) mdickinson@mirzakhani mayavi % pip install -e . Obtaining file:///Users/mdickinson/Enthought/ETS/mayavi Collecting apptools Using cached apptools-5.1.0-py3-none-any.whl Collecting envisage Using cached envisage-6.0.1-py3-none-any.whl Collecting numpy Using cached numpy-1.21.2-cp39-cp39-macosx_10_9_x86_64.whl (17.0 MB) Collecting pyface>=6.1.1 Using cached pyface-7.3.0-py3-none-any.whl Collecting pygments Using cached Pygments-2.10.0-py3-none-any.whl (1.0 MB) Collecting traits>=6.0.0 Using cached traits-6.3.1-cp39-cp39-macosx_10_9_x86_64.whl (5.0 MB) Collecting traitsui>=7.0.0 Using cached traitsui-7.2.1-py3-none-any.whl Collecting vtk Using cached vtk-9.0.3-cp39-cp39-macosx_10_10_x86_64.whl (47.9 MB) Collecting importlib-resources>=1.1.0 Using cached importlib_resources-5.2.2-py3-none-any.whl (27 kB) Collecting importlib-metadata Using cached importlib_metadata-4.8.1-py3-none-any.whl (17 kB) Collecting zipp>=3.1.0 Using cached zipp-3.6.0-py3-none-any.whl (5.3 kB) Collecting configobj Using cached configobj-5.0.6-py3-none-any.whl Collecting six Using cached six-1.16.0-py2.py3-none-any.whl (11 kB) Requirement already satisfied: setuptools in /Users/mdickinson/.venvs/mayavi/lib/python3.9/site-packages (from envisage->mayavi==4.7.4.dev0) (57.4.0) Collecting wslink>=0.1.3 Using cached wslink-1.0.7-py3-none-any.whl (20 kB) Collecting Twisted>=17.5.0 Using cached Twisted-21.7.0-py3-none-any.whl (3.1 MB) Collecting matplotlib>=2.0.0 Using cached matplotlib-3.4.3-cp39-cp39-macosx_10_9_x86_64.whl (7.2 MB) Collecting autobahn>=17.7.1 Using cached autobahn-21.3.1-py2.py3-none-any.whl (495 kB) Collecting txaio>=21.2.1 Using cached txaio-21.2.1-py2.py3-none-any.whl (30 kB) Collecting cryptography>=3.4.6 Using cached cryptography-35.0.0-cp36-abi3-macosx_10_10_x86_64.whl (2.5 MB) Collecting hyperlink>=21.0.0 Using cached hyperlink-21.0.0-py2.py3-none-any.whl (74 kB) Collecting cffi>=1.12 Using cached cffi-1.15.0-cp39-cp39-macosx_10_9_x86_64.whl (178 kB) Collecting pycparser Using cached pycparser-2.20-py2.py3-none-any.whl (112 kB) Collecting idna>=2.5 Using cached idna-3.3-py3-none-any.whl (61 kB) Collecting pyparsing>=2.2.1 Using cached pyparsing-2.4.7-py2.py3-none-any.whl (67 kB) Collecting pillow>=6.2.0 Using cached Pillow-8.3.2-cp39-cp39-macosx_10_10_x86_64.whl (3.0 MB) Collecting cycler>=0.10 Using cached cycler-0.10.0-py2.py3-none-any.whl (6.5 kB) Collecting python-dateutil>=2.7 Using cached python_dateutil-2.8.2-py2.py3-none-any.whl (247 kB) Collecting kiwisolver>=1.0.1 Using cached kiwisolver-1.3.2-cp39-cp39-macosx_10_9_x86_64.whl (61 kB) Collecting typing-extensions>=3.6.5 Using cached typing_extensions-3.10.0.2-py3-none-any.whl (26 kB) Collecting incremental>=21.3.0 Using cached incremental-21.3.0-py2.py3-none-any.whl (15 kB) Collecting constantly>=15.1 Using cached constantly-15.1.0-py2.py3-none-any.whl (7.9 kB) Collecting Automat>=0.8.0 Using cached Automat-20.2.0-py2.py3-none-any.whl (31 kB) Collecting attrs>=19.2.0 Using cached attrs-21.2.0-py2.py3-none-any.whl (53 kB) Collecting zope.interface>=4.4.2 Using cached zope.interface-5.4.0-cp39-cp39-macosx_10_14_x86_64.whl (208 kB) Collecting aiohttp Using cached aiohttp-3.7.4.post0-cp39-cp39-macosx_10_14_x86_64.whl (649 kB) Collecting async-timeout<4.0,>=3.0 Using cached async_timeout-3.0.1-py3-none-any.whl (8.2 kB) Collecting yarl<2.0,>=1.0 Using cached yarl-1.7.0-cp39-cp39-macosx_10_9_x86_64.whl (121 kB) Collecting chardet<5.0,>=2.0 Using cached chardet-4.0.0-py2.py3-none-any.whl (178 kB) Collecting multidict<7.0,>=4.5 Using cached multidict-5.2.0-cp39-cp39-macosx_10_9_x86_64.whl (45 kB) Installing collected packages: zipp, traits, pycparser, multidict, importlib-resources, importlib-metadata, idna, yarl, typing-extensions, six, pyface, chardet, cffi, attrs, async-timeout, zope.interface, txaio, traitsui, python-dateutil, pyparsing, pillow, numpy, kiwisolver, incremental, hyperlink, cycler, cryptography, constantly, configobj, Automat, aiohttp, wslink, Twisted, matplotlib, autobahn, apptools, vtk, pygments, envisage, mayavi Running setup.py develop for mayavi Successfully installed Automat-20.2.0 Twisted-21.7.0 aiohttp-3.7.4.post0 apptools-5.1.0 async-timeout-3.0.1 attrs-21.2.0 autobahn-21.3.1 cffi-1.15.0 chardet-4.0.0 configobj-5.0.6 constantly-15.1.0 cryptography-35.0.0 cycler-0.10.0 envisage-6.0.1 hyperlink-21.0.0 idna-3.3 importlib-metadata-4.8.1 importlib-resources-5.2.2 incremental-21.3.0 kiwisolver-1.3.2 matplotlib-3.4.3 mayavi-4.7.4.dev0 multidict-5.2.0 numpy-1.21.2 pillow-8.3.2 pycparser-2.20 pyface-7.3.0 pygments-2.10.0 pyparsing-2.4.7 python-dateutil-2.8.2 six-1.16.0 traits-6.3.1 traitsui-7.2.1 txaio-21.2.1 typing-extensions-3.10.0.2 vtk-9.0.3 wslink-1.0.7 yarl-1.7.0 zipp-3.6.0 zope.interface-5.4.0 WARNING: You are using pip version 21.2.3; however, version 21.2.4 is available. You should consider upgrading via the '/Users/mdickinson/.venvs/mayavi/bin/python3.9 -m pip install --upgrade pip' command. (mayavi) mdickinson@mirzakhani mayavi % python -VV Python 3.9.7 (default, Sep 1 2021, 04:00:27) [Clang 11.0.3 (clang-1103.0.32.62)] (mayavi) mdickinson@mirzakhani mayavi % python -m unittest -v multiple 'tvtk.toolkits' plugins found for toolkit 'null': tvtk.pyface.ui.null.init, tvtk.pyface.ui.null.init test_2d_data (mayavi.tests.test_array_source.TestArraySource) Generic tests for 2D data arrays. ... /Users/mdickinson/.venvs/mayavi/lib/python3.9/site-packages/vtkmodules/util/numpy_support.py:74: DeprecationWarning: `np.bool` is a deprecated alias for the builtin `bool`. To silence this warning, use `bool` by itself. Doing this will not modify any behavior and is safe. If you specifically wanted the numpy scalar type, use `np.bool_` here. Deprecated in NumPy 1.20; for more details and guidance: https://numpy.org/devdocs/release/1.20.0-notes.html#deprecations _vtk_np = {vtkConstants.VTK_BIT:numpy.bool, ok test_3d_data (mayavi.tests.test_array_source.TestArraySource) Test for 3D data arrays. ... ok test_input_validation (mayavi.tests.test_array_source.TestArraySource) Tests if only the correct forms of input arrays are supported. ... ok test_pickle (mayavi.tests.test_array_source.TestArraySource) Test if pickling works. ... ok test_add_attribute_raises_errors (mayavi.tests.test_array_source.TestArraySourceAttributes) ... ok test_add_attribute_works_for_cell_data (mayavi.tests.test_array_source.TestArraySourceAttributes) ... ok test_add_attribute_works_for_point_data (mayavi.tests.test_array_source.TestArraySourceAttributes) ... ok test_remove_attribute (mayavi.tests.test_array_source.TestArraySourceAttributes) ... ok test_rename_attribute (mayavi.tests.test_array_source.TestArraySourceAttributes) ... ok test_change (mayavi.tests.test_builtin_image.TestBuiltinImageSource) ... ok test_data_source (mayavi.tests.test_builtin_image.TestBuiltinImageSource) ... ok test_save_and_restore (mayavi.tests.test_builtin_image.TestBuiltinImageSource) Test if saving a visualization and restoring it works. ... ok test_change (mayavi.tests.test_builtin_surface.TestBuiltinSurfaceSource) Test if it works fine on changing the source ... ok test_poly_data_source (mayavi.tests.test_builtin_surface.TestBuiltinSurfaceSource) Do the basic testing ... ok test_save_and_restore (mayavi.tests.test_builtin_surface.TestBuiltinSurfaceSource) Test if saving a visualization and restoring it works. ... ok test_mb_contour (mayavi.tests.test_composite_data.TestCompositeData) ... ok test_mb_scalar_cut_plane (mayavi.tests.test_composite_data.TestCompositeData) ... ok test_mb_surface (mayavi.tests.test_composite_data.TestCompositeData) ... ok test_mb_vector_cut_plane (mayavi.tests.test_composite_data.TestCompositeData) ... ok test_components_changed (mayavi.tests.test_contour.TestContour) Test if the modules respond correctly when the components ... ok test_contour (mayavi.tests.test_contour.TestContour) Test if the test fixture works ... ok test_deepcopied (mayavi.tests.test_contour.TestContour) Test if the MayaVi2 visualization can be deep-copied. ... ok test_save_and_restore (mayavi.tests.test_contour.TestContour) Test if saving a visualization and restoring it works. ... ok test_get_engine (mayavi.tests.test_core_common.TestCoreCommon) ... ok test_get_object_path (mayavi.tests.test_core_common.TestCoreCommon) Check if the get_object_path method works correctly. ... ok test_remove (mayavi.tests.test_core_common.TestCoreCommon) Does obj.remove() work correctly ... ok test_that_custom_views_are_loaded (mayavi.tests.test_core_common.TestHandCraftedView) ... ok test_simple_timer (mayavi.tests.test_core_common.TestNoUITimer) ... ok test_timer_stops_on_error_and_raises (mayavi.tests.test_core_common.TestNoUITimer) ... ok test_timer_stops_on_stop_iteration (mayavi.tests.test_core_common.TestNoUITimer) ... ok test_get_range_works_for_VTKNoneArray (mayavi.tests.test_core_utils.TestDataSetHelper) ... ok test_get_range_works_for_multiblock_datasets (mayavi.tests.test_core_utils.TestDataSetHelper) ... ok test_get_range_works_for_simple_datasets (mayavi.tests.test_core_utils.TestDataSetHelper) ... ok test_API (mayavi.tests.test_csv_sniff.Test) ... ok test_comment (mayavi.tests.test_csv_sniff.Test) ... ok test_empty_file (mayavi.tests.test_csv_sniff.Test) ... ok test_nohead (mayavi.tests.test_csv_sniff.Test) ... ok test_tabs (mayavi.tests.test_csv_sniff.Test) ... ok test_11 (mayavi.tests.test_csv_sniff.Test_csv_py_files) ... ok test_1col (mayavi.tests.test_csv_sniff.Test_csv_py_files) ... ok test_54 (mayavi.tests.test_csv_sniff.Test_csv_py_files) ... ok test_79 (mayavi.tests.test_csv_sniff.Test_csv_py_files) ... ok test_82 (mayavi.tests.test_csv_sniff.Test_csv_py_files) ... ok test_89 (mayavi.tests.test_csv_sniff.Test_csv_py_files) ... ok test_99 (mayavi.tests.test_csv_sniff.Test_csv_py_files) ... ok test_OObeta3 (mayavi.tests.test_csv_sniff.Test_csv_py_files) ... ok test_colors (mayavi.tests.test_csv_sniff.Test_csv_py_files) ... ok test_example1 (mayavi.tests.test_csv_sniff.Test_csv_py_files) ... ok test_hp11c (mayavi.tests.test_csv_sniff.Test_csv_py_files) ... ok test_loc (mayavi.tests.test_csv_sniff.Test_csv_py_files) ... ok test_multi_col (mayavi.tests.test_csv_sniff.Test_csv_py_files) ... ok test_mydata (mayavi.tests.test_csv_sniff.Test_csv_py_files) ... ok test_post (mayavi.tests.test_csv_sniff.Test_csv_py_files) ... ok test_webaccess (mayavi.tests.test_csv_sniff.Test_csv_py_files) ... ok test_import_contrib (mayavi.tests.test_customize.TestCustomize) Test the import_contrib function. ... ok test_with_structured_data (mayavi.tests.test_cut_plane.TestCutter) ... ok test_with_unstructured_data (mayavi.tests.test_cut_plane.TestCutter) ... ok test_activate (mayavi.tests.test_dataset_manager.TestDataSetManager) Does activating a particular array work. ... ok test_add_array (mayavi.tests.test_dataset_manager.TestDataSetManager) Does the add_array method work. ... ok test_cell_array_view (mayavi.tests.test_dataset_manager.TestDataSetManager) Are the manager's cell arrays views of the VTK data? ... ok test_cell_arrays (mayavi.tests.test_dataset_manager.TestDataSetManager) Are the cell arrays of the manager setup right? ... ok test_point_array_view (mayavi.tests.test_dataset_manager.TestDataSetManager) Are the manager's point arrays views of the VTK data? ... ok test_point_arrays (mayavi.tests.test_dataset_manager.TestDataSetManager) Are the point data arrays of the manager setup right? ... ok test_remove_array (mayavi.tests.test_dataset_manager.TestDataSetManager) Does the remove_array method work correctly. ... ok test_rename_array (mayavi.tests.test_dataset_manager.TestDataSetManager) Does array renaming work. ... ok test_get_engine_backend_auto_with_existing_engine (mayavi.tests.test_engine_manager.TestEngineManager) ... ok test_get_engine_backend_envisage (mayavi.tests.test_engine_manager.TestEngineManager) ... ok test_get_engine_backend_simple_with_existing_engine (mayavi.tests.test_engine_manager.TestEngineManager) ... ERROR test_get_engine_backend_test (mayavi.tests.test_engine_manager.TestEngineManager) ... ok test_get_engine_offscreen_backend_auto_switched_twice (mayavi.tests.test_engine_manager.TestEngineManager) ... ok test_get_engine_offscreen_backend_auto_with_existing_engine (mayavi.tests.test_engine_manager.TestEngineManager) ... ok test_get_engine_offscreen_backend_envisage (mayavi.tests.test_engine_manager.TestEngineManager) ... ok test_get_engine_offscreen_backend_simple_with_started_engine (mayavi.tests.test_engine_manager.TestEngineManager) ... ok test_get_engine_offscreen_backend_test (mayavi.tests.test_engine_manager.TestEngineManager) ... ok test_extract_grid_filter_sample (mayavi.tests.test_extract_grid_filter.TestExtractGridFilter) ... ok test_voi (mayavi.tests.test_extract_grid_filter.TestExtractGridFilter) ... ok test_loop_loops_timesteps (mayavi.tests.test_file_timestep.TestFileDataSourceTimestep) ... ok test_play_calls_movie_maker_correctly (mayavi.tests.test_file_timestep.TestFileDataSourceTimestep) ... ok test_play_updates_timestep (mayavi.tests.test_file_timestep.TestFileDataSourceTimestep) ... ok test_sync_timesteps_steps_relevant_readers (mayavi.tests.test_file_timestep.TestFileDataSourceTimestep) ... ok test_update_files_updates_all_file_lists (mayavi.tests.test_file_timestep.TestFileDataSourceTimestep) ... ok test_update_files_updates_file_list (mayavi.tests.test_file_timestep.TestFileDataSourceTimestep) ... ok test_engine (mayavi.tests.test_garbage_collection.TestMayaviGarbageCollection) Tests if core Engine can be garbage collected. ... ok test_mayavi_scene (mayavi.tests.test_garbage_collection.TestMayaviGarbageCollection) Tests if Mayavi UI Scene can be garbage collected. ... ok test_mlab_scene_model (mayavi.tests.test_garbage_collection.TestMayaviGarbageCollection) Tests if MlabSceneModel can be garbage collected. ... ok test_mlab_scene_model_with_gui (mayavi.tests.test_garbage_collection.TestMayaviGarbageCollection) Tests if MlabSceneModel with GUI can be garbage collected. ... ERROR test_null_engine (mayavi.tests.test_garbage_collection.TestMayaviGarbageCollection) Tests if core Null Engine can be garbage collected. ... ok test_scene (mayavi.tests.test_garbage_collection.TestMayaviGarbageCollection) Tests if core Scene can be garbage collected. ... ok test_components_changed (mayavi.tests.test_glyph.TestGlyph) "Test if the modules respond correctly when the components ... ok test_deepcopied (mayavi.tests.test_glyph.TestGlyph) Test if the MayaVi2 visualization can be deep-copied. ... ok test_glyph (mayavi.tests.test_glyph.TestGlyph) Test if the test fixture works ... ok test_mask_input_points_with_random_mode (mayavi.tests.test_glyph.TestGlyph) Test if masking input points works with random mode. ... skipped 'Test crashes on OSX. See issue #373' test_mask_input_points_without_random_mode (mayavi.tests.test_glyph.TestGlyph) Test if masking input points works without random mode. ... ok test_save_and_restore (mayavi.tests.test_glyph.TestGlyph) Test if saving a visualization and restoring it works. ... ok test_deepcopied (mayavi.tests.test_grid_plane.TestGridPlane) Test if the MayaVi2 visualization can be deep-copied. ... ok test_grid_plane (mayavi.tests.test_grid_plane.TestGridPlane) Test if the test fixture works ... ok test_save_and_restore (mayavi.tests.test_grid_plane.TestGridPlane) Test if saving a visualization and restoring it works. ... ok test_deepcopied (mayavi.tests.test_image_data_probe.TestImageDataProbe) Test if the MayaVi2 visualization can be deep-copied. ... ok test_image_data_probe (mayavi.tests.test_image_data_probe.TestImageDataProbe) Test if the test fixture works ... ok test_save_and_restore (mayavi.tests.test_image_data_probe.TestImageDataProbe) Test if saving a visualization and restoring it works. ... ok test_deepcopied (mayavi.tests.test_image_data_reader.TestDEMImageReader) Test if the MayaVi2 visualization can be deep-copied. ... ok test_dem_image_data_reader (mayavi.tests.test_image_data_reader.TestDEMImageReader) Test if the test fixture works ... ok test_save_and_restore (mayavi.tests.test_image_data_reader.TestDEMImageReader) Test if saving a visualization and restoring it works. ... ok test_deepcopied (mayavi.tests.test_image_data_reader.TestMHAImageReader) Test if the MayaVi2 visualization can be deep-copied. ... ok test_mha_image_data_reader (mayavi.tests.test_image_data_reader.TestMHAImageReader) Test if the test fixture works ... ok test_save_and_restore (mayavi.tests.test_image_data_reader.TestMHAImageReader) Test if saving a visualization and restoring it works. ... ok test_deepcopied (mayavi.tests.test_image_plane_widget.TestImagePlaneWidget) Test if the MayaVi2 visualization can be deep-copied. ... ok test_image_plane_widget (mayavi.tests.test_image_plane_widget.TestImagePlaneWidget) Test if the test fixture works ... ok test_save_and_restore (mayavi.tests.test_image_plane_widget.TestImagePlaneWidget) Test if saving a visualization and restoring it works. ... ok test_ipw_works_with_image_data_probe (mayavi.tests.test_image_plane_widget.TestImagePlaneWidgetNewPipeline) ... ok test_ipw (mayavi.tests.test_ipw_multiple_scalars.TestIPWMultipleScalars) Test the image plane widget. ... ok test_default (mayavi.tests.test_mayavi_traits.TestArrayOrNone) ... ok test_no_compare (mayavi.tests.test_mayavi_traits.TestArrayOrNone) ... ok test_set_trait_change_notify (mayavi.tests.test_mayavi_traits.TestShadowProperty) If trait_change_notify is honored. ... ok test_shadow_property_not_smart (mayavi.tests.test_mayavi_traits.TestShadowProperty) Test if the shadow property trait type works correctly. ... ok test_shadow_property_smart (mayavi.tests.test_mayavi_traits.TestShadowProperty) Test if the shadow property trait type works correctly. ... ok test_simple_case (mayavi.tests.test_mayavi_traits.TestShadowProperty) Test a simple trait wrapped as a shadow property. ... ok test_type_checking (mayavi.tests.test_mayavi_traits.TestShadowProperty) Test if the validation works correctly. ... ok test_animate_sets_up_movie_maker (mayavi.tests.test_mlab_integration.TestMlabAnimate) ... ok test_barchart (mayavi.tests.test_mlab_integration.TestMlabHelperFunctions) ... ok test_imshow (mayavi.tests.test_mlab_integration.TestMlabHelperFunctions) ... ok test_imshow_colormap (mayavi.tests.test_mlab_integration.TestMlabHelperFunctions) ... ok test_imshow_extent (mayavi.tests.test_mlab_integration.TestMlabHelperFunctions) ... ok test_volume_slice (mayavi.tests.test_mlab_integration.TestMlabHelperFunctions) ... ok test_axes (mayavi.tests.test_mlab_integration.TestMlabModules) ... ok test_barchart (mayavi.tests.test_mlab_integration.TestMlabModules) Test the barchart function. ... ok test_contour_grid_plane (mayavi.tests.test_mlab_integration.TestMlabModules) Test the contour_grid_plane. ... ok test_text (mayavi.tests.test_mlab_integration.TestMlabModules) Test the text module. ... ok test_text3d (mayavi.tests.test_mlab_integration.TestMlabModules) Test the text3d module. ... ok test_volume (mayavi.tests.test_mlab_integration.TestMlabModules) Test the mlab volume factory. ... ok test_add_dataset_works_with_vtk_datasets (mayavi.tests.test_mlab_integration.TestMlabNullEngineMisc) ... ok test_close (mayavi.tests.test_mlab_integration.TestMlabNullEngineMisc) Various tests for mlab.close(). ... ok test_colorbar (mayavi.tests.test_mlab_integration.TestMlabNullEngineMisc) Test that when an object with scalars hidden is created, it ... ok test_contour_filter (mayavi.tests.test_mlab_integration.TestMlabNullEngineMisc) ... ok test_figure (mayavi.tests.test_mlab_integration.TestMlabNullEngineMisc) Various tests for mlab.figure(). ... ok test_mlab_source (mayavi.tests.test_mlab_integration.TestMlabNullEngineMisc) ... ok test_set_active_attribute (mayavi.tests.test_mlab_integration.TestMlabNullEngineMisc) ... ok test_slice_unstructured_grid (mayavi.tests.test_mlab_integration.TestMlabNullEngineMisc) ... ok test_source_can_save_output_to_file (mayavi.tests.test_mlab_integration.TestMlabNullEngineMisc) ... ok test_strange_vmin_vmax (mayavi.tests.test_mlab_integration.TestMlabNullEngineMisc) ... ok test_triangular_mesh_reset (mayavi.tests.test_mlab_integration.TestMlabNullEngineMisc) When reseting the triangular mesh (ie polydata), if we are ... ok test_user_defined_filter (mayavi.tests.test_mlab_integration.TestMlabNullEngineMisc) ... ok test_probe_data (mayavi.tests.test_mlab_integration.TestMlabPipeline) Test probe_data ... ok test_glyph_reset_twice_with_fewer_points (mayavi.tests.test_mlab_integration.TestSourceReset) ... ok test_lines_reset_twice_with_fewer_points (mayavi.tests.test_mlab_integration.TestSourceReset) ... ok test_mesh_reset_twice_with_fewer_points (mayavi.tests.test_mlab_integration.TestSourceReset) ... ok test_trimesh_reset_twice_with_fewer_points (mayavi.tests.test_mlab_integration.TestSourceReset) ... ok test_test_backend (mayavi.tests.test_mlab_null_engine.TestRealMlabNullEngine) Test if setting the backend to 'test' works. ... ok test_several_scene_models (mayavi.tests.test_mlab_scene_model.TestMlabSceneModel) Check that plotting to scene attributes using their ... ok test_handlers (mayavi.tests.test_mlab_source.TestMArray2DSource) Test if the various static handlers work correctly. ... ok test_reset (mayavi.tests.test_mlab_source.TestMArray2DSource) ... ok test_set (mayavi.tests.test_mlab_source.TestMArray2DSource) Test if the set method works correctly. ... ok test_handlers (mayavi.tests.test_mlab_source.TestMArray2DSourceNoArgs) Test if the various static handlers work correctly. ... ok test_reset (mayavi.tests.test_mlab_source.TestMArray2DSourceNoArgs) Test the reset method. ... ok test_set (mayavi.tests.test_mlab_source.TestMArray2DSourceNoArgs) Test if the set method works correctly. ... ok test_handlers (mayavi.tests.test_mlab_source.TestMArraySource) Test if the various static handlers work correctly. ... ok test_reset (mayavi.tests.test_mlab_source.TestMArraySource) Test the reset method. ... ok test_reset1 (mayavi.tests.test_mlab_source.TestMArraySource) Test the reset method. ... ok test_set (mayavi.tests.test_mlab_source.TestMArraySource) Test if the set method works correctly. ... ok test_handlers (mayavi.tests.test_mlab_source.TestMGlyphSource) Test if the various static handlers work correctly. ... ok test_handlers_strange_shape (mayavi.tests.test_mlab_source.TestMGlyphSource) Test if the various static handlers work correctly for strange shapes. ... ok test_reset_changes_pipeline (mayavi.tests.test_mlab_source.TestMGlyphSource) ... ok test_reset_strange_shape (mayavi.tests.test_mlab_source.TestMGlyphSource) Test the reset method when the inputs are 2-d arrays. ... ok test_reset_with_resized_data (mayavi.tests.test_mlab_source.TestMGlyphSource) ... ok test_reset_with_same_size_data (mayavi.tests.test_mlab_source.TestMGlyphSource) ... ok test_set (mayavi.tests.test_mlab_source.TestMGlyphSource) Test if the set method works correctly. ... ok test_strange_shape (mayavi.tests.test_mlab_source.TestMGlyphSource) Test the MGlyphSource with strange shapes for the arguments ... ok test_handlers (mayavi.tests.test_mlab_source.TestMGridSource) Test if the various static handlers work correctly. ... ok test_reset (mayavi.tests.test_mlab_source.TestMGridSource) Test the reset method. ... ok test_reset_changes_pipeline (mayavi.tests.test_mlab_source.TestMGridSource) ... ok test_set (mayavi.tests.test_mlab_source.TestMGridSource) Test if the set method works correctly. ... ok test_handlers (mayavi.tests.test_mlab_source.TestMLineSource) Test if the various static handlers work correctly. ... ok test_reset (mayavi.tests.test_mlab_source.TestMLineSource) Test the reset method. ... ok test_reset1 (mayavi.tests.test_mlab_source.TestMLineSource) Test the reset method. ... ok test_reset_changes_pipeline (mayavi.tests.test_mlab_source.TestMLineSource) ... ok test_set (mayavi.tests.test_mlab_source.TestMLineSource) Test if the set method works correctly. ... ok test_set_without_scalars_attribute_works (mayavi.tests.test_mlab_source.TestMLineSource) ... ok test_set_without_scalars_works (mayavi.tests.test_mlab_source.TestMLineSource) ... ok test_changed_size (mayavi.tests.test_mlab_source.TestMTriangularMeshSource) Change the number of the points, and establish ... ok test_handlers (mayavi.tests.test_mlab_source.TestMTriangularMeshSource) Test if the various static handlers work correctly. ... ok test_reset (mayavi.tests.test_mlab_source.TestMTriangularMeshSource) Test the reset method. ... ok test_reset_changes_pipeline (mayavi.tests.test_mlab_source.TestMTriangularMeshSource) ... ok test_set (mayavi.tests.test_mlab_source.TestMTriangularMeshSource) Test if the set method works correctly. ... ok test_handlers (mayavi.tests.test_mlab_source.TestMVerticalSource) Test if the various static handlers work correctly. ... ok test_reset (mayavi.tests.test_mlab_source.TestMVerticalSource) Test the reset method. ... ok test_reset1 (mayavi.tests.test_mlab_source.TestMVerticalSource) Test the reset method. ... ok test_set (mayavi.tests.test_mlab_source.TestMVerticalSource) Test if the set method works correctly. ... ok test_input_args (mayavi.tests.test_mlab_source_integration.TestArray2DSource) Check that array2d_source can take different input arguments ... ok test_input_args (mayavi.tests.test_mlab_source_integration.TestLineSource) Check that vector_field can take different input arguments ... ok test_input_args (mayavi.tests.test_mlab_source_integration.TestScalarField) Check that scalar_field can take different input arguments ... ok test_input_args (mayavi.tests.test_mlab_source_integration.TestScalarScatter) Check that scalar_scatter can take different input arguments ... ok test_input_args (mayavi.tests.test_mlab_source_integration.TestVectorField) Check that vector_field can take different input arguments ... ok test_input_args (mayavi.tests.test_mlab_source_integration.TestVectorScatter) Check that vector_scatter can take different input arguments ... ok test_infinite (mayavi.tests.test_mlab_source_integration.TestVerticalVectorsSource) Check that passing in arrays with infinite values raises ... ok test_callback_registering (mayavi.tests.test_mouse_pick_dispatcher.TestMousePickerDispatcher) ... ok test_no_ui (mayavi.tests.test_no_ui_toolkit.TestNoUIToolkit) Test if mayavi imports work without any UI (wx or PyQt4). ... ok test_deepcopied (mayavi.tests.test_optional_collection.TestOptionalCollection) Test if the MayaVi2 visualization can be deep-copied. ... ok test_optional_collection (mayavi.tests.test_optional_collection.TestOptionalCollection) Test if the test fixture works ... ok test_save_and_restore (mayavi.tests.test_optional_collection.TestOptionalCollection) Test if saving a visualization and restoring it works. ... ok test_default_pipeline_info (mayavi.tests.test_pipeline_info.TestPipelineInfoTest) Is the default PipelineInfo class built right. ... ok test_tvtk_dataset_name (mayavi.tests.test_pipeline_info.TestPipelineInfoTest) Can tvtk datasets can be converted to names correctly. ... ok test_deepcopied (mayavi.tests.test_plot3d_mb_reader.TestPlot3dMbReader) ... ok test_plot3d_mb_reader (mayavi.tests.test_plot3d_mb_reader.TestPlot3dMbReader) ... ok test_save_and_restore (mayavi.tests.test_plot3d_mb_reader.TestPlot3dMbReader) ... ok test_byu_data_reader (mayavi.tests.test_poly_data_reader.TestBYUReader) Test if the test fixture works ... ok test_deepcopied (mayavi.tests.test_poly_data_reader.TestBYUReader) Test if the MayaVi2 visualization can be deep-copied. ... ok test_save_and_restore (mayavi.tests.test_poly_data_reader.TestBYUReader) Test if saving a visualization and restoring it works. ... ok test_deepcopied (mayavi.tests.test_poly_data_reader.TestFacetReader) Test if the MayaVi2 visualization can be deep-copied. ... ok test_facet_data_reader (mayavi.tests.test_poly_data_reader.TestFacetReader) Test if the test fixture works ... ok test_save_and_restore (mayavi.tests.test_poly_data_reader.TestFacetReader) Test if saving a visualization and restoring it works. ... ok test_deepcopied (mayavi.tests.test_poly_data_reader.TestOBJReader) Test if the MayaVi2 visualization can be deep-copied. ... ok test_obj_data_reader (mayavi.tests.test_poly_data_reader.TestOBJReader) Test if the test fixture works ... ok test_save_and_restore (mayavi.tests.test_poly_data_reader.TestOBJReader) Test if saving a visualization and restoring it works. ... ok test_deepcopied (mayavi.tests.test_poly_data_reader.TestPDBReader) Test if the MayaVi2 visualization can be deep-copied. ... ok test_pdb_data_reader (mayavi.tests.test_poly_data_reader.TestPDBReader) Test if the test fixture works ... ok test_save_and_restore (mayavi.tests.test_poly_data_reader.TestPDBReader) Test if saving a visualization and restoring it works. ... ok test_deepcopied (mayavi.tests.test_poly_data_reader.TestPLYReader) Test if the MayaVi2 visualization can be deep-copied. ... ok test_ply_data_reader (mayavi.tests.test_poly_data_reader.TestPLYReader) ... ok test_save_and_restore (mayavi.tests.test_poly_data_reader.TestPLYReader) ... ok test_deepcopied (mayavi.tests.test_poly_data_reader.TestParticleReader) Test if the MayaVi2 visualization can be deep-copied. ... ok test_particle_data_reader (mayavi.tests.test_poly_data_reader.TestParticleReader) Test if the test fixture works ... ok test_save_and_restore (mayavi.tests.test_poly_data_reader.TestParticleReader) Test if saving a visualization and restoring it works. ... ok test_deepcopied (mayavi.tests.test_poly_data_reader.TestPointsReader) Test if the MayaVi2 visualization can be deep-copied. ... ok test_points_data_reader (mayavi.tests.test_poly_data_reader.TestPointsReader) Test if the test fixture works ... ok test_save_and_restore (mayavi.tests.test_poly_data_reader.TestPointsReader) Test if saving a visualization and restoring it works. ... ok test_deepcopied (mayavi.tests.test_poly_data_reader.TestSLCReader) Test if the MayaVi2 visualization can be deep-copied. ... ok test_save_and_restore (mayavi.tests.test_poly_data_reader.TestSLCReader) Test if saving a visualization and restoring it works. ... ok test_slc_data_reader (mayavi.tests.test_poly_data_reader.TestSLCReader) Test if the test fixture works ... ok test_deepcopied (mayavi.tests.test_poly_data_reader.TestSTLReader) Test if the MayaVi2 visualization can be deep-copied. ... ok test_save_and_restore (mayavi.tests.test_poly_data_reader.TestSTLReader) Test if saving a visualization and restoring it works. ... ok test_stl_data_reader (mayavi.tests.test_poly_data_reader.TestSTLReader) Test if the test fixture works ... ok test_mirroring (mayavi.tests.test_preferences_mirror.ClassNameTest) Are the traits properly mirrored? ... ok test_no_reverse_sync (mayavi.tests.test_preferences_mirror.ClassNameTest) mirror must not sync changes back to the original preferences. ... ok test_save (mayavi.tests.test_preferences_mirror.ClassNameTest) Are Mirror's preferences saved correctly ... ok test_sync (mayavi.tests.test_preferences_mirror.ClassNameTest) Does the mirror listen for changes on original preference. ... ok test_fail_load_pylab_luts (mayavi.tests.test_pylab_luts.TestPylabLuts) Test if lut_manager can be loaded despite faulty pylab_luts.pkl ... skipped "mayavi.core.lut_manager is already loaded in another tests. Can't run this test." test_clear (mayavi.tests.test_recorder.TestRecorder) Test the clear method. ... ok test_create_object (mayavi.tests.test_recorder.TestRecorder) Is the object imported and created if unknown? ... ok test_list_items_changed (mayavi.tests.test_recorder.TestRecorder) Test if a list item is changed does the change get recorded. ... ok test_non_has_traits (mayavi.tests.test_recorder.TestRecorder) Can classes not using traits be handled? ... ok test_path_change_on_list (mayavi.tests.test_recorder.TestRecorder) Does the object path update when a list has changed? ... ok test_record (mayavi.tests.test_recorder.TestRecorder) Does recording work correctly. ... ok test_record_function (mayavi.tests.test_recorder.TestRecorder) See if recordable function calls are handled correctly. ... ok test_recorded_trait_replaced (mayavi.tests.test_recorder.TestRecorder) Does recording work right when a trait is replaced. ... ok test_recorder_and_ignored (mayavi.tests.test_recorder.TestRecorder) Test if recorder trait is set and private traits are ignored. ... ok test_save (mayavi.tests.test_recorder.TestRecorder) Test if saving tape to file works. ... ok test_set_script_id (mayavi.tests.test_recorder.TestRecorder) Test if setting script_id at registration time works. ... ok test_unique_name (mayavi.tests.test_recorder.TestRecorder) Does the get_unique_id method work. ... ok test_write_script_id_in_namespace (mayavi.tests.test_recorder.TestRecorder) Test the write_script_id_in_namespace method. ... ok test_multipe_readers (mayavi.tests.test_registry.TestRegistry) Test if reader conflict is resolved ... ok test_multiple_valid_readers (mayavi.tests.test_registry.TestRegistry) Test if the fixture works fine if there are multiple readers ... ok test_no_valid_reader (mayavi.tests.test_registry.TestRegistry) Test that if there is no reader which can read the file with ... ok test_unique_reader (mayavi.tests.test_registry.TestRegistry) Check if a file with a unique reader in Mayavi2 can be read ... ok test_unsupported_file (mayavi.tests.test_registry.TestRegistry) Test if the mechanism to handle unsupported files works fine ... ok test_script_recording (mayavi.tests.test_script_recording.TestScriptRecording) Does script recording work correctly. ... ok test_deepcopied (mayavi.tests.test_set_active_attribute.TestSetActiveAttribute) Test if the MayaVi2 visualization can be deep-copied. ... ok test_save_and_restore (mayavi.tests.test_set_active_attribute.TestSetActiveAttribute) Test if saving a visualization and restoring it works. ... ok test_set_active_attribute (mayavi.tests.test_set_active_attribute.TestSetActiveAttribute) Test if the test fixture works ... ok test_convert_to_arrays (mayavi.tests.test_sources.TestSources) Test if the convert_to_arrays routine works properly ... ok test_components_changed (mayavi.tests.test_streamline.TestStreamline) Test if the modules respond correctly when the components ... ok test_deepcopied (mayavi.tests.test_streamline.TestStreamline) Test if the MayaVi2 visualization can be deep-copied. ... ok test_save_and_restore (mayavi.tests.test_streamline.TestStreamline) Test if saving a visualization and restoring it works. ... ok test_streamline (mayavi.tests.test_streamline.TestStreamline) Test if the test fixture works ... ok test_follower (mayavi.tests.test_text3d.TestText3D) Test if changing 'orient_to_camera' switches between plain ... ok test_persistence (mayavi.tests.test_text3d.TestText3D) ... ok test_text3d (mayavi.tests.test_text3d.TestText3D) Test if the text3d has been properly instanciated ... ok test_threshold_filter_data_range_changes (mayavi.tests.test_threshold_filter.TestThresholdFilter) ... ok test_threshold_filter_nan (mayavi.tests.test_threshold_filter.TestThresholdFilter) ... ok test_threshold_filter_threhsold (mayavi.tests.test_threshold_filter.TestThresholdFilter) ... ok test_threshold_with_other_filter_as_input (mayavi.tests.test_threshold_filter.TestThresholdFilter) ... ok test_avsucd_data_reader (mayavi.tests.test_unstructured_data_reader.TestAVSUCDReader) Test if the test fixture works ... ok test_deepcopied (mayavi.tests.test_unstructured_data_reader.TestAVSUCDReader) Test if the MayaVi2 visualization can be deep-copied. ... ok test_save_and_restore (mayavi.tests.test_unstructured_data_reader.TestAVSUCDReader) Test if saving a visualization and restoring it works. ... ok test_point_cell_data (mayavi.tests.test_unstructured_data_reader.TestExodusIIReader) Test if the point and cell data is parsed correctly. ... skipped 'ExodusIIReader support is disabled for now.' test_deepcopied (mayavi.tests.test_unstructured_data_reader.TestGambitReader) Test if the MayaVi2 visualization can be deep-copied. ... ok test_gambit_data_reader (mayavi.tests.test_unstructured_data_reader.TestGambitReader) Test if the test fixture works ... ok test_save_and_restore (mayavi.tests.test_unstructured_data_reader.TestGambitReader) Test if saving a visualization and restoring it works. ... ok test_deepcopied (mayavi.tests.test_user_defined.TestUserDefined) Test if the MayaVi2 visualization can be deep-copied. ... ok test_save_and_restore (mayavi.tests.test_user_defined.TestUserDefined) Test if saving a visualization and restoring it works. ... ok test_user_defined (mayavi.tests.test_user_defined.TestUserDefined) Test if the test fixture works ... ok test_volume_works_with_probe (mayavi.tests.test_volume.TestVolumeWorksWithProbe) ... ok test_add_child (mayavi.tests.test_vtk_data_source.TestVTKDataSource) Test if adding a source as a child works correctly. ... ok test_deepcopied (mayavi.tests.test_vtk_data_source.TestVTKDataSource) ... ok test_save_and_restore (mayavi.tests.test_vtk_data_source.TestVTKDataSource) Test if saving a visualization and restoring it works. ... ok test_vtk_data_source (mayavi.tests.test_vtk_data_source.TestVTKDataSource) ... ok test_add_attribute_raises_errors (mayavi.tests.test_vtk_data_source.TestVTKDataSourceAttributes) ... ok test_add_attribute_works_for_cell_data (mayavi.tests.test_vtk_data_source.TestVTKDataSourceAttributes) ... ok test_add_attribute_works_for_point_data (mayavi.tests.test_vtk_data_source.TestVTKDataSourceAttributes) ... ok test_remove_attribute (mayavi.tests.test_vtk_data_source.TestVTKDataSourceAttributes) ... ok test_rename_attribute (mayavi.tests.test_vtk_data_source.TestVTKDataSourceAttributes) ... ok test_field_file (mayavi.tests.test_vtk_file_reader.TestVTKFileReader) ... ok test_polydata_file (mayavi.tests.test_vtk_file_reader.TestVTKFileReader) ... ok test_rectiliner_grid_file (mayavi.tests.test_vtk_file_reader.TestVTKFileReader) ... ok test_structured_grid_file (mayavi.tests.test_vtk_file_reader.TestVTKFileReader) ... ok test_structured_points_file (mayavi.tests.test_vtk_file_reader.TestVTKFileReader) ... ok test_unstructured_grid_file (mayavi.tests.test_vtk_file_reader.TestVTKFileReader) ... ok test_add_dataset_uses_vtk_data_source_for_datasets (mayavi.tests.test_vtk_object_source.TestVTKObjectSource) ... ok test_add_dataset_uses_vtk_object_source_for_objects (mayavi.tests.test_vtk_object_source.TestVTKObjectSource) ... ok test_data_changed_is_fired_when_object_is_modified (mayavi.tests.test_vtk_object_source.TestVTKObjectSource) ... ok test_simple_vtk_object_source (mayavi.tests.test_vtk_object_source.TestVTKObjectSource) ... ok test_vtk_object_source_works_with_any_vtk_object (mayavi.tests.test_vtk_object_source.TestVTKObjectSource) ... ok test_deepcopied (mayavi.tests.test_vtk_xml_reader.TestVTKXMLReader) Test if the MayaVi2 visualization can be deep-copied. ... ok test_save_and_restore (mayavi.tests.test_vtk_xml_reader.TestVTKXMLReader) Test if saving a visualization and restoring it works. ... ok test_vtk_xml_reader (mayavi.tests.test_vtk_xml_reader.TestVTKXMLReader) Test if the test fixture works ... ok test_set_id_type_array (tvtk.tests.test_array_ext.TestArrayExt) ... ok test_set_id_type_array_py (tvtk.tests.test_array_ext.TestArrayExt) ... ok test_arr2cell_array (tvtk.tests.test_array_handler.TestArrayHandler) Test Numeric array to vtkCellArray conversion. ... ok test_arr2vtkIdList (tvtk.tests.test_array_handler.TestArrayHandler) Test array to vtkIdList conversion. ... ok test_arr2vtkPoints (tvtk.tests.test_array_handler.TestArrayHandler) Test Numeric array to vtkPoints conversion. ... ok test_array2vtk (tvtk.tests.test_array_handler.TestArrayHandler) Test Numeric array to VTK array conversion and vice-versa. ... ok test_array_cache (tvtk.tests.test_array_handler.TestArrayHandler) Test the ArrayCache class. ... ok test_deref_array (tvtk.tests.test_array_handler.TestArrayHandler) Test if dereferencing array args works correctly. ... ok test_get_correct_sig (tvtk.tests.test_array_handler.TestArrayHandler) Test multiple signature cases that have array arguments. ... ok test_id_array (tvtk.tests.test_array_handler.TestArrayHandler) Test if a vtkIdTypeArray is converted correctly. ... ok test_reference_to_array (tvtk.tests.test_array_handler.TestArrayHandler) Does to_array return an existing array instead of a new copy. ... ok test_vtk2array_appended_array (tvtk.tests.test_array_handler.TestArrayHandler) Test the vtk2array can tolerate appending a cached array. ... ok test_get_children (tvtk.tests.test_browser.TestFullTreeGenrator) ... ok test_glyph_pipeline (tvtk.tests.test_browser.TestFullTreeGenrator) ... ok test_has_children_is_correct (tvtk.tests.test_browser.TestFullTreeGenrator) ... ok test_simple_usage (tvtk.tests.test_browser.TestPipelineBrowser) ... ok test_get_children (tvtk.tests.test_browser.TestSimpleTreeGenerator) ... ok test_has_children_is_correct (tvtk.tests.test_browser.TestSimpleTreeGenerator) ... ok test_ancestors (tvtk.tests.test_class_tree.TestClassTree) Check if get_ancestors is OK. ... /Users/mdickinson/Enthought/ETS/mayavi/tvtk/class_tree.py:260: DeprecationWarning: NotImplemented should not be used in a boolean context if klass and hasattr(klass, '__bases__'): ok test_basic_vtk (tvtk.tests.test_class_tree.TestClassTree) Basic tests for the VTK module. ... ok test_builtin (tvtk.tests.test_class_tree.TestClassTree) Check if tree structure for builtins works. ... ok test_level (tvtk.tests.test_class_tree.TestClassTree) Check the node levels. ... ok test_parent_child (tvtk.tests.test_class_tree.TestClassTree) Check if the node's parent and children are correct. ... ok test_tree (tvtk.tests.test_class_tree.TestClassTree) Check the tree structure. ... ok test_rescale_ctf (tvtk.tests.test_ctf_util.TestCTFUtil) Test rescaling a CTF. ... ok test_save_load_ctf (tvtk.tests.test_ctf_util.TestCTFUtil) Test saving and loading of a CTF. ... ok test_decorated_scene (tvtk.tests.test_garbage_collection.TestTVTKGarbageCollection) Tests if Decorated Scene can be garbage collected. ... ERROR test_scene (tvtk.tests.test_garbage_collection.TestTVTKGarbageCollection) Tests if Scene can be garbage collected. ... ERROR test_scene_model (tvtk.tests.test_garbage_collection.TestTVTKGarbageCollection) Tests if SceneModel can be garbage collected. ... ok test_tvtk_scene (tvtk.tests.test_garbage_collection.TestTVTKGarbageCollection) Tests if TVTK scene can be garbage collected. ... ok test_basic (tvtk.tests.test_indenter.TestIndent) Simple tests for indenter. ... ok test_format (tvtk.tests.test_indenter.TestIndent) Tests if formatting works ok. ... ok test_class_doc (tvtk.tests.test_indenter.TestVTKDocMassager) Test if class docs are generated correctly. ... ok test_doc_massage (tvtk.tests.test_indenter.TestVTKDocMassager) Test massage method. ... ok test_get_method_doc (tvtk.tests.test_indenter.TestVTKDocMassager) Test if get_method_doc works correctly. ... ok test_method_doc (tvtk.tests.test_indenter.TestVTKDocMassager) Test if method docs are generated correctly. ... ok test_remove_sig (tvtk.tests.test_indenter.TestVTKDocMassager) Test if function signature is removed correctly. ... ok test_rename_class (tvtk.tests.test_indenter.TestVTKDocMassager) Test if VTK classes are renamed correctly. ... ok test_trait_doc (tvtk.tests.test_indenter.TestVTKDocMassager) Test if trait docs are generated correctly. ... ok test_basic (tvtk.tests.test_messenger.TestMessenger) Test basic functionality of the messenger. ... ok test_catchall (tvtk.tests.test_messenger.TestMessenger) Tests if catch all handlers are called. ... ok test_disconnect (tvtk.tests.test_messenger.TestMessenger) Tests if disconnection works correctly. ... ok test_reload (tvtk.tests.test_messenger.TestMessenger) Tests if module is reload safe. ... ok test_send_on_dead_ref (tvtk.tests.test_messenger.TestMessenger) Test if sending to a gc'd callback works gracefully. ... ok test_suppress_vtk_warnings (tvtk.tests.test_misc.TestMisc) ... ok test_write_data_vtk (tvtk.tests.test_misc.TestMisc) Old-style VTK file writing with specified extension ... ok test_write_data_xml (tvtk.tests.test_misc.TestMisc) XML file writing with specified extension ... ok test_write_data_xml_kwargs (tvtk.tests.test_misc.TestMisc) XML file writing with extra keyword arguments ... ok test_write_data_xml_noext (tvtk.tests.test_misc.TestMisc) XML file writing without extensions ... ok test_calls_save_scene_when_record_is_on (tvtk.tests.test_movie_maker.TestMovieMaker) ... ok test_calls_save_scene_with_record_movie (tvtk.tests.test_movie_maker.TestMovieMaker) ... ok test_directory_updates_correctly (tvtk.tests.test_movie_maker.TestMovieMaker) ... ok test_does_nothing_when_record_is_off (tvtk.tests.test_movie_maker.TestMovieMaker) ... ok test_popup_save_with_user_not_ok (tvtk.tests.test_pyface_utils.TestPopupSave) ... ERROR test_popup_save_with_user_ok (tvtk.tests.test_pyface_utils.TestPopupSave) ... ERROR test_algorithm_methods_are_wrapped (tvtk.tests.test_tvtk.TestTVTK) ... 2021-10-14 16:10:45.594 ( 15.499s) [ 17ECC] vtkAlgorithm.cxx:1385 ERR| vtkAlgorithm (0x7ffe52554f80): Attempt to get connection index 0 for input port 0, for an algorithm with 0 ports. ok test_append_poly_data_input (tvtk.tests.test_tvtk.TestTVTK) Test if AppendPolyData has its get_input wrapped right. ... ok test_array_conversion (tvtk.tests.test_tvtk.TestTVTK) Test if Numeric/VTK array conversion works. ... ok test_auto_update (tvtk.tests.test_tvtk.TestTVTK) Test if traits are updated when the VTK object changes. ... ok test_axes_transform_representation_tolerance (tvtk.tests.test_tvtk.TestTVTK) Test the tolerance of AxesTransformRepresentation is set properly ... ok test_basic (tvtk.tests.test_tvtk.TestTVTK) Test a simple tvtk pipeline. ... ok test_cache (tvtk.tests.test_tvtk.TestTVTK) Test the caching of ancestor classes. ... ok test_cell_array (tvtk.tests.test_tvtk.TestTVTK) Test if cell array insertion updates number of cells. ... ok test_collection (tvtk.tests.test_tvtk.TestTVTK) Test if Collection objects work nicely. ... ok test_contextdevice2d_matrix_api (tvtk.tests.test_tvtk.TestTVTK) Test ContextDevice2D Get/SetMatrix API ... skipped 'ContextDevice2D has a subclass. This may cause the TVTK API to be different from if it had not' test_custom (tvtk.tests.test_tvtk.TestTVTK) Test if custom modules can be imported. ... ok test_data_array (tvtk.tests.test_tvtk.TestTVTK) Test if vtkDataArrays behave in a Pythonic fashion. ... ok test_distance_representation_2d_point1_world_position (tvtk.tests.test_tvtk.TestTVTK) Test that Position attributes in DistanceRepresentation2D works ... ok test_do_change (tvtk.tests.test_tvtk.TestTVTK) Test if VTK object changes when trait is changed. ... ok test_hardware_selector_prop_color_value (tvtk.tests.test_tvtk.TestTVTK) Test that PropColorValue of HardwareSelector works ... ok test_help_trait (tvtk.tests.test_tvtk.TestTVTK) Test if the help attribute is correct. ... ok test_idlist (tvtk.tests.test_tvtk.TestTVTK) Test if vtkIdList behaves in a Pythonic fashion. ... ok test_image_convolve_kernel (tvtk.tests.test_tvtk.TestTVTK) Test that setting the kernels in ImageConvolve works ... ok test_information_keys (tvtk.tests.test_tvtk.TestTVTK) Test if vtk information objects can be created. ... ok test_init_traits (tvtk.tests.test_tvtk.TestTVTK) Test if the objects traits can be set in __init__. ... ok test_matrix4x4 (tvtk.tests.test_tvtk.TestTVTK) Test if Matrix4x4 works nicely. ... ok test_null_string_wrapper (tvtk.tests.test_tvtk.TestTVTK) Check if a null string default is wrapped as a String trait. ... ok test_obj_del (tvtk.tests.test_tvtk.TestTVTK) Test object deletion and reference cycles. ... ok test_object_cache (tvtk.tests.test_tvtk.TestTVTK) Test if object cache works. ... ok test_object_factory_enableflag_api (tvtk.tests.test_tvtk.TestTVTK) Test ObjectFactory Get/SetEnableFlag API ... skipped 'ObjectFactory has a subclass. This may cause the TVTK API to be different from if it had not' test_parent_child_bounds (tvtk.tests.test_tvtk.TestTVTK) CubeAxesActor2D's bounds should be writable. ... ok test_parent_child_input (tvtk.tests.test_tvtk.TestTVTK) Case where parent has GetInput and child SetInput. ... ok test_points (tvtk.tests.test_tvtk.TestTVTK) Test if vtkPoints behaves in a Pythonic fashion. ... ok test_points_lookup (tvtk.tests.test_tvtk.TestTVTK) Test if points can be looked up. ... ok test_property (tvtk.tests.test_tvtk.TestTVTK) Test if Property's color works ok in all circumstances. ... ok test_property_change_notification (tvtk.tests.test_tvtk.TestTVTK) Test if changes to properties generate notification events. ... ok test_set_scalars (tvtk.tests.test_tvtk.TestTVTK) Test if SetScalars works without a segfault. ... ok test_spider_plot_actor_set_axis_label (tvtk.tests.test_tvtk.TestTVTK) Test SpiderPlotActor Get/SetAxisLabel works ... ok test_to_tvtk_returns_tvtk_object (tvtk.tests.test_tvtk.TestTVTK) ... ok test_to_tvtk_wraps_subclass_of_vtk (tvtk.tests.test_tvtk.TestTVTK) ... ok test_to_vtk_returns_vtk_object (tvtk.tests.test_tvtk.TestTVTK) ... ok test_tuple_array_handling (tvtk.tests.test_tvtk.TestTVTK) Test if methods can take any sequence rather than only tuples. ... ok test_vtk_python_algorithm_base_is_wrapped (tvtk.tests.test_tvtk.TestTVTK) ... ok test_wrap_vtk (tvtk.tests.test_tvtk.TestTVTK) Test if the wrap_vtk function works. ... ok test_xopengl_render_window (tvtk.tests.test_tvtk.TestTVTK) Test that setting the position to a render window works ... skipped 'XOpenGLRenderWindow is not available on this build of TVTK' test_all_instantiable (tvtk.tests.test_tvtk.TestTVTKModule) Test if all the TVTK classes can be instantiated ... ok test_all_traits_can_be_obtained (tvtk.tests.test_tvtk.TestTVTKModule) Test if all of the traits can be obtained ... ok test_import_tvtk_does_not_import_gui (tvtk.tests.test_tvtk.TestTVTKModule) ... ok test_no_trait_has_ptr_address_as_value (tvtk.tests.test_tvtk.TestTVTKModule) Test if none of the TVTK classes' traits has a value of "*_p_void" ... ok test_trait_with_range (tvtk.tests.test_tvtk.TestTVTKModule) Test if all the attributes with MinValue/MaxValue are traits ... ok test_auto_update (tvtk.tests.test_tvtk_base.TestTVTKBase) Test trait updation when the VTK object changes. ... ok test_camel2enthought (tvtk.tests.test_tvtk_base.TestTVTKBase) Test CamelCase to Enthought style name conversion. ... ok test_deref_vtk (tvtk.tests.test_tvtk_base.TestTVTKBase) Test the `deref_vtk` function. ... ok test_do_change (tvtk.tests.test_tvtk_base.TestTVTKBase) Test if VTK object changes when trait is changed. ... ok test_global_disable_update (tvtk.tests.test_tvtk_base.TestTVTKBase) ... ok test_init_traits (tvtk.tests.test_tvtk_base.TestTVTKBase) Test if the objects traits can be set in __init__. ... ok test_obj_del (tvtk.tests.test_tvtk_base.TestTVTKBase) Test object deletion and reference cycles. ... ok test_pickle (tvtk.tests.test_tvtk_base.TestTVTKBase) Test if pickling works. ... ok test_rev_prefix_map (tvtk.tests.test_tvtk_base.TestTVTKBase) Test the reverse prefix map trait we use. ... ok test_setup_teardown_observers (tvtk.tests.test_tvtk_base.TestTVTKBase) If setup_observers and teardown_observers work correctly. ... ok test_strict_traits (tvtk.tests.test_tvtk_base.TestTVTKBase) Test if TVTK objects use strict traits. ... ok test_tvtk_name (tvtk.tests.test_tvtk_base.TestTVTKBase) Test VTK to TVTK class name conversion. ... ok test_wrap_call_is_graceful_on_failure (tvtk.tests.test_tvtk_base.TestTVTKBase) ... ok test_zz_object_cache (tvtk.tests.test_tvtk_base.TestTVTKBase) Test if object cache works correctly. ... ok test_tvtk_scene_garbage_collected (tvtk.tests.test_tvtk_scene.TestTVTKScene) ... ERROR test_arrow (tvtk.tests.test_visual.TestVisual) ... ERROR test_box (tvtk.tests.test_visual.TestVisual) ... ERROR test_cone (tvtk.tests.test_visual.TestVisual) ... ERROR test_curve (tvtk.tests.test_visual.TestVisual) ... ERROR test_cylinder (tvtk.tests.test_visual.TestVisual) ... ERROR test_ellipsoid (tvtk.tests.test_visual.TestVisual) ... ERROR test_frame (tvtk.tests.test_visual.TestVisual) ... ERROR test_helix (tvtk.tests.test_visual.TestVisual) ... ERROR test_ring (tvtk.tests.test_visual.TestVisual) ... ERROR test_sphere (tvtk.tests.test_visual.TestVisual) ... ERROR test_method_signature (tvtk.tests.test_vtk_parser.TestVTKParser) Check if VTK method signatures are parsed correctly. ... ok test_methods (tvtk.tests.test_vtk_parser.TestVTKParser) Check get_methods. ... ok test_no_tree (tvtk.tests.test_vtk_parser.TestVTKParser) Check if parser is usable without the tree. ... ok test_parse (tvtk.tests.test_vtk_parser.TestVTKParser) Check if the methods are organized correctly. ... ok test_parse_all (tvtk.tests.test_vtk_parser.TestVTKParser) Check if all VTK classes are parseable. ... ```

Here's the LLDB backtrace from the main thread at the point where the hang occurs:

``` mdickinson@mirzakhani ~ % lldb -p 3525 (lldb) process attach --pid 3525 Process 3525 stopped * thread #1, queue = 'com.apple.main-thread', stop reason = signal SIGSTOP frame #0: 0x00007fff70dad55e libsystem_kernel.dylib`__ulock_wait + 10 libsystem_kernel.dylib`__ulock_wait: -> 0x7fff70dad55e <+10>: jae 0x7fff70dad568 ; <+20> 0x7fff70dad560 <+12>: movq %rax, %rdi 0x7fff70dad563 <+15>: jmp 0x7fff70dac629 ; cerror_nocancel 0x7fff70dad568 <+20>: retq Target 0: (Python) stopped. Executable module set to "/opt/local/Library/Frameworks/Python.framework/Versions/3.9/Resources/Python.app/Contents/MacOS/Python". Architecture set to: x86_64h-apple-macosx-. (lldb) bt * thread #1, queue = 'com.apple.main-thread', stop reason = signal SIGSTOP * frame #0: 0x00007fff70dad55e libsystem_kernel.dylib`__ulock_wait + 10 frame #1: 0x00007fff70e705c2 libsystem_pthread.dylib`_pthread_join + 347 frame #2: 0x0000000113b758a2 libvtkCommonCore-9.0.dylib`vtkMultiThreader::TerminateThread(int) + 226 frame #3: 0x0000000113f075cc libvtkWebCore-9.0.dylib`vtkDataEncoder::vtkInternals::TerminateAllWorkers() + 124 frame #4: 0x0000000113f0767d libvtkWebCore-9.0.dylib`vtkDataEncoder::~vtkDataEncoder() + 29 frame #5: 0x0000000113906e3d libvtkWrappingPythonCore-9.0.dylib`vtkPythonUtil::RemoveObjectFromMap(_object*) + 157 frame #6: 0x00000001138eb215 libvtkWrappingPythonCore-9.0.dylib`PyVTKObject_Delete + 37 frame #7: 0x000000010590db01 Python`_PyEval_EvalFrameDefault + 14465 frame #8: 0x000000010586ae1a Python`function_code_fastcall + 97 frame #9: 0x0000000105913086 Python`call_function + 403 frame #10: 0x0000000105910599 Python`_PyEval_EvalFrameDefault + 25369 frame #11: 0x0000000105913be2 Python`_PyEval_EvalCode + 2008 frame #12: 0x000000010586adaa Python`_PyFunction_Vectorcall + 249 frame #13: 0x0000000105913086 Python`call_function + 403 frame #14: 0x0000000105910599 Python`_PyEval_EvalFrameDefault + 25369 frame #15: 0x0000000105913be2 Python`_PyEval_EvalCode + 2008 frame #16: 0x000000010586adaa Python`_PyFunction_Vectorcall + 249 frame #17: 0x0000000105913086 Python`call_function + 403 frame #18: 0x0000000105910599 Python`_PyEval_EvalFrameDefault + 25369 frame #19: 0x000000010586ae1a Python`function_code_fastcall + 97 frame #20: 0x000000010586ca6b Python`method_vectorcall + 164 frame #21: 0x0000000105913086 Python`call_function + 403 frame #22: 0x0000000105910653 Python`_PyEval_EvalFrameDefault + 25555 frame #23: 0x000000010586ae1a Python`function_code_fastcall + 97 frame #24: 0x0000000105913086 Python`call_function + 403 frame #25: 0x0000000105910599 Python`_PyEval_EvalFrameDefault + 25369 frame #26: 0x0000000105913be2 Python`_PyEval_EvalCode + 2008 frame #27: 0x000000010586adaa Python`_PyFunction_Vectorcall + 249 frame #28: 0x000000010586cb6e Python`method_vectorcall + 423 frame #29: 0x00000001059108c6 Python`_PyEval_EvalFrameDefault + 26182 frame #30: 0x0000000105913be2 Python`_PyEval_EvalCode + 2008 frame #31: 0x000000010586adaa Python`_PyFunction_Vectorcall + 249 frame #32: 0x000000010586a638 Python`_PyObject_FastCallDictTstate + 212 frame #33: 0x000000010586b063 Python`_PyObject_Call_Prepend + 139 frame #34: 0x00000001058b2b56 Python`slot_tp_call + 87 frame #35: 0x000000010586a774 Python`_PyObject_MakeTpCall + 266 frame #36: 0x00000001059130ba Python`call_function + 455 frame #37: 0x0000000105910653 Python`_PyEval_EvalFrameDefault + 25555 frame #38: 0x0000000105913be2 Python`_PyEval_EvalCode + 2008 frame #39: 0x000000010586adaa Python`_PyFunction_Vectorcall + 249 frame #40: 0x000000010586cb6e Python`method_vectorcall + 423 frame #41: 0x00000001059108c6 Python`_PyEval_EvalFrameDefault + 26182 frame #42: 0x0000000105913be2 Python`_PyEval_EvalCode + 2008 frame #43: 0x000000010586adaa Python`_PyFunction_Vectorcall + 249 frame #44: 0x000000010586a638 Python`_PyObject_FastCallDictTstate + 212 frame #45: 0x000000010586b063 Python`_PyObject_Call_Prepend + 139 frame #46: 0x00000001058b2b56 Python`slot_tp_call + 87 frame #47: 0x000000010586a774 Python`_PyObject_MakeTpCall + 266 frame #48: 0x00000001059130ba Python`call_function + 455 frame #49: 0x0000000105910653 Python`_PyEval_EvalFrameDefault + 25555 frame #50: 0x0000000105913be2 Python`_PyEval_EvalCode + 2008 frame #51: 0x000000010586adaa Python`_PyFunction_Vectorcall + 249 frame #52: 0x000000010586cb6e Python`method_vectorcall + 423 frame #53: 0x00000001059108c6 Python`_PyEval_EvalFrameDefault + 26182 frame #54: 0x0000000105913be2 Python`_PyEval_EvalCode + 2008 frame #55: 0x000000010586adaa Python`_PyFunction_Vectorcall + 249 frame #56: 0x000000010586a638 Python`_PyObject_FastCallDictTstate + 212 frame #57: 0x000000010586b063 Python`_PyObject_Call_Prepend + 139 frame #58: 0x00000001058b2b56 Python`slot_tp_call + 87 frame #59: 0x000000010586a774 Python`_PyObject_MakeTpCall + 266 frame #60: 0x00000001059130ba Python`call_function + 455 frame #61: 0x0000000105910653 Python`_PyEval_EvalFrameDefault + 25555 frame #62: 0x0000000105913be2 Python`_PyEval_EvalCode + 2008 frame #63: 0x000000010586adaa Python`_PyFunction_Vectorcall + 249 frame #64: 0x000000010586cb6e Python`method_vectorcall + 423 frame #65: 0x00000001059108c6 Python`_PyEval_EvalFrameDefault + 26182 frame #66: 0x0000000105913be2 Python`_PyEval_EvalCode + 2008 frame #67: 0x000000010586adaa Python`_PyFunction_Vectorcall + 249 frame #68: 0x000000010586a638 Python`_PyObject_FastCallDictTstate + 212 frame #69: 0x000000010586b063 Python`_PyObject_Call_Prepend + 139 frame #70: 0x00000001058b2b56 Python`slot_tp_call + 87 frame #71: 0x000000010586a774 Python`_PyObject_MakeTpCall + 266 frame #72: 0x00000001059130ba Python`call_function + 455 frame #73: 0x0000000105910653 Python`_PyEval_EvalFrameDefault + 25555 frame #74: 0x000000010586ae1a Python`function_code_fastcall + 97 frame #75: 0x0000000105913086 Python`call_function + 403 frame #76: 0x0000000105910599 Python`_PyEval_EvalFrameDefault + 25369 frame #77: 0x000000010586ae1a Python`function_code_fastcall + 97 frame #78: 0x0000000105913086 Python`call_function + 403 frame #79: 0x0000000105910599 Python`_PyEval_EvalFrameDefault + 25369 frame #80: 0x0000000105913be2 Python`_PyEval_EvalCode + 2008 frame #81: 0x000000010586adaa Python`_PyFunction_Vectorcall + 249 frame #82: 0x000000010586a5f9 Python`_PyObject_FastCallDictTstate + 149 frame #83: 0x000000010586b063 Python`_PyObject_Call_Prepend + 139 frame #84: 0x00000001058b36f1 Python`slot_tp_init + 87 frame #85: 0x00000001058acf0e Python`type_call + 150 frame #86: 0x000000010586a774 Python`_PyObject_MakeTpCall + 266 frame #87: 0x00000001059130ba Python`call_function + 455 frame #88: 0x0000000105910700 Python`_PyEval_EvalFrameDefault + 25728 frame #89: 0x0000000105913be2 Python`_PyEval_EvalCode + 2008 frame #90: 0x000000010590a1c8 Python`PyEval_EvalCode + 57 frame #91: 0x0000000105907501 Python`builtin_exec + 581 frame #92: 0x000000010589aae7 Python`cfunction_vectorcall_FASTCALL + 203 frame #93: 0x0000000105913086 Python`call_function + 403 frame #94: 0x0000000105910653 Python`_PyEval_EvalFrameDefault + 25555 frame #95: 0x0000000105913be2 Python`_PyEval_EvalCode + 2008 frame #96: 0x000000010586adaa Python`_PyFunction_Vectorcall + 249 frame #97: 0x0000000105913086 Python`call_function + 403 frame #98: 0x0000000105910653 Python`_PyEval_EvalFrameDefault + 25555 frame #99: 0x0000000105913be2 Python`_PyEval_EvalCode + 2008 frame #100: 0x000000010586adaa Python`_PyFunction_Vectorcall + 249 frame #101: 0x000000010595ad5f Python`pymain_run_module + 353 frame #102: 0x000000010595a547 Python`Py_RunMain + 1199 frame #103: 0x000000010595ab36 Python`pymain_main + 360 frame #104: 0x000000010595ab8b Python`Py_BytesMain + 42 frame #105: 0x00007fff70c6acc9 libdyld.dylib`start + 1 ```
mdickinson commented 2 years ago

If we're definitely not wrapping vtkDataEncoder, it's not clear to me how we're getting hold of an instance of that class in the tests.

Ah, sorry; this is a test that digs into vtk directly. We probably need to exclude vtkDataEncoder explicitly in that test, too, as something that's known to cause issues.

rahulporuri commented 2 years ago

closing given that we've gone with #1050