1"""Test enum support in VTK-Python
2
3Created on Nov 13, 2014 by David Gobbi
4"""
5
6import sys
7import vtk
8from vtk.test import Testing
9
10class TestEnum(Testing.vtkTest):
11    def testGlobalNamespaceEnum(self):
12        """Check that an enum in the global namespace was wrapped.
13        """
14        # defined in vtkGenericEnSightReader.h
15        if hasattr(vtk, 'vtkGenericEnsightReader'):
16            self.assertEqual(vtk.SINGLE_PROCESS_MODE, 0)
17            self.assertEqual(vtk.SPARSE_MODE, 1)
18            self.assertEqual(type(vtk.SINGLE_PROCESS_MODE),
19                             vtk.EnsightReaderCellIdMode)
20            self.assertEqual(type(vtk.SPARSE_MODE),
21                             vtk.EnsightReaderCellIdMode)
22
23    def testClassNamespaceEnum(self):
24        """Check that an enum in a class namespace was wrapped.
25        """
26        # defined in vtkColorSeries.h
27        self.assertEqual(vtk.vtkColorSeries.SPECTRUM, 0)
28        self.assertEqual(type(vtk.vtkColorSeries.SPECTRUM),
29                         vtk.vtkColorSeries.ColorSchemes)
30        # defined in vtkErrorCode.h
31        self.assertEqual(vtk.vtkErrorCode.FirstVTKErrorCode, 20000)
32        self.assertEqual(type(vtk.vtkErrorCode.FirstVTKErrorCode),
33                         vtk.vtkErrorCode.ErrorIds)
34
35    def testAnonymousEnum(self):
36        """Check that anonymous enums are wrapped.
37        """
38        # defined in vtkAbstractArray.h
39        self.assertEqual(vtk.vtkAbstractArray.AbstractArray, 0)
40
41if __name__ == "__main__":
42    Testing.main([(TestEnum, 'test')])
43