File: TestObjectName.py

package info (click to toggle)
paraview 5.11.0%2Bdfsg-1
  • links: PTS, VCS
  • area: main
  • in suites: bookworm
  • size: 497,236 kB
  • sloc: cpp: 3,171,290; ansic: 1,315,072; python: 134,290; xml: 103,324; sql: 65,887; sh: 5,286; javascript: 4,901; yacc: 4,383; java: 3,977; perl: 2,363; lex: 1,909; f90: 1,255; objc: 143; makefile: 119; tcl: 59; pascal: 50; fortran: 29
file content (66 lines) | stat: -rw-r--r-- 2,211 bytes parent folder | download | duplicates (6)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
import unittest
from vtkmodules.vtkCommonCore import (vtkCommand,
                                      vtkDoubleArray,
                                      vtkObject,
                                      VTK_STRING)
from vtkmodules.vtkCommonExecutionModel import (vtkTrivialProducer,
                                                vtkExecutive)
from vtkmodules.vtkRenderingCore        import vtkActor
from vtkmodules.vtkFiltersCore import vtkArrayCalculator
from vtkmodules.util.misc import calldata_type
from vtk.test import Testing

class MessageObserver(Testing.vtkTest):

   def __init__(self):
       self.event    = None
       self.message  = str()

   @calldata_type(VTK_STRING)
   def observe(self, obj, event, data):
       self.event    = event
       self.message  = str(data)

class TestObjectName(Testing.vtkTest):

    def test_SetObjectNameSetsObjectName(self):
        producer = vtkTrivialProducer()
        producer.SetObjectName("foo")
        self.assertEqual("foo",producer.GetObjectName())


    def testObjectDescriptionContainsObjectName(self):
        producer = vtkTrivialProducer()
        producer.SetObjectName("foo")
        description=producer.GetObjectDescription()
        self.assertTrue(description.endswith("'foo'"))


    def testSetObjectNameDoesNotChangeMTime(self):
        a = vtkDoubleArray()
        mtime = a.GetMTime()
        a.SetObjectName("foo")
        self.assertEqual(mtime,a.GetMTime())


    def testErrorMessageContainsObjectName(self):
        algorithm = vtkArrayCalculator()
        algorithm.SetObjectName("foo")
        observer = MessageObserver()
        algorithm.GetExecutive().AddObserver(vtkCommand.ErrorEvent,observer.observe)
        algorithm.Update() # this invokes an error event
        self.assertEqual("ErrorEvent",observer.event)
        self.assertTrue("'foo'" in observer.message, observer.message)


    def testObjectNameNotCopied(self):
        foo = vtkActor()
        foo.SetObjectName("foo")
        bar = vtkActor()
        bar.SetObjectName("bar")
        foo.ShallowCopy(bar)
        self.assertNotEqual(foo.GetObjectName(),bar.GetObjectName())


if __name__ == "__main__":
    Testing.main([(TestObjectName, 'test')])