99438dc1e0ac76ff4e95690101486c948d589e07
[babeltrace.git] / tests / bindings / python / bt2 / test_component.py
1 from bt2 import values
2 import unittest
3 import copy
4 import bt2
5
6
7 class UserComponentTestCase(unittest.TestCase):
8 @staticmethod
9 def _create_comp(comp_cls, name=None):
10 graph = bt2.Graph()
11
12 if name is None:
13 name = 'comp'
14
15 return graph.add_component(comp_cls, name)
16
17 def test_name(self):
18 class MySink(bt2._UserSinkComponent):
19 def __init__(comp_self, params):
20 self.assertEqual(comp_self.name, 'yaes')
21
22 def _consume(self):
23 pass
24
25 comp = self._create_comp(MySink, 'yaes')
26
27 def test_graph(self):
28 class MySink(bt2._UserSinkComponent):
29 def __init__(comp_self, params):
30 nonlocal graph
31 self.assertEqual(comp_self.graph, graph)
32
33 def _consume(self):
34 pass
35
36 graph = bt2.Graph()
37 comp = graph.add_component(MySink, 'lel')
38 del graph
39
40 def test_class(self):
41 class MySink(bt2._UserSinkComponent):
42 def __init__(comp_self, params):
43 self.assertEqual(comp_self.component_class, MySink)
44
45 def _consume(self):
46 pass
47
48 self._create_comp(MySink)
49
50 def test_addr(self):
51 class MySink(bt2._UserSinkComponent):
52 def __init__(comp_self, params):
53 self.assertIsInstance(comp_self.addr, int)
54 self.assertNotEqual(comp_self.addr, 0)
55
56 def _consume(self):
57 pass
58
59 self._create_comp(MySink)
60
61 def test_finalize(self):
62 finalized = False
63
64 class MySink(bt2._UserSinkComponent):
65 def _consume(self):
66 pass
67
68 def _finalize(comp_self):
69 nonlocal finalized
70 finalized = True
71
72 graph = bt2.Graph()
73 comp = graph.add_component(MySink, 'lel')
74 del graph
75 del comp
76 self.assertTrue(finalized)
77
78
79 class GenericComponentTestCase(unittest.TestCase):
80 @staticmethod
81 def _create_comp(comp_cls, name=None):
82 graph = bt2.Graph()
83
84 if name is None:
85 name = 'comp'
86
87 return graph.add_component(comp_cls, name)
88
89 def test_name(self):
90 class MySink(bt2._UserSinkComponent):
91 def _consume(self):
92 pass
93
94 comp = self._create_comp(MySink, 'yaes')
95 self.assertEqual(comp.name, 'yaes')
96
97 def test_graph(self):
98 class MySink(bt2._UserSinkComponent):
99 def _consume(self):
100 pass
101
102 graph = bt2.Graph()
103 comp = graph.add_component(MySink, 'lel')
104 self.assertEqual(comp.graph, graph)
105
106 def test_class(self):
107 class MySink(bt2._UserSinkComponent):
108 def _consume(self):
109 pass
110
111 comp = self._create_comp(MySink)
112 self.assertEqual(comp.component_class, MySink)
113
114 def test_addr(self):
115 class MySink(bt2._UserSinkComponent):
116 def _consume(self):
117 pass
118
119 comp = self._create_comp(MySink)
120 self.assertIsInstance(comp.addr, int)
121 self.assertNotEqual(comp.addr, 0)
This page took 0.030529 seconds and 3 git commands to generate.