def test_ne_attribute(self): ec1 = bt2.EventClass(name='name', id=23, context_field_type=self._context_ft, payload_field_type=self._payload_ft, attributes={'model.emf.uri': 'my URI'}) ec2 = bt2.EventClass(name='name', id=23, context_field_type=self._context_ft, payload_field_type=self._payload_ft, attributes={'model.emf.uri': 'my UR'}) self.assertNotEqual(ec1, ec2)
def _create_event_classes(self): context_ft = bt2.StructureFieldType() context_ft.append_field('allo', bt2.StringFieldType()) context_ft.append_field('zola', bt2.IntegerFieldType(18)) payload_ft = bt2.StructureFieldType() payload_ft.append_field('zoom', bt2.StringFieldType()) ec1 = bt2.EventClass('event23', id=23, context_field_type=context_ft, payload_field_type=payload_ft) ec2 = bt2.EventClass('event17', id=17, context_field_type=payload_ft, payload_field_type=context_ft) return ec1, ec2
def test_ne_log_level(self): ec1 = bt2.EventClass(name='name', id=23, context_field_class=self._context_fc, payload_field_class=self._payload_fc, emf_uri='my URI', log_level=bt2.EventClassLogLevel.WARNING) ec2 = bt2.EventClass(name='name', id=23, context_field_class=self._context_fc, payload_field_class=self._payload_fc, emf_uri='my URI', log_level=bt2.EventClassLogLevel.ERROR) self.assertNotEqual(ec1, ec2)
def test_ne_emf_uri(self): ec1 = bt2.EventClass(name='name', id=23, context_field_type=self._context_ft, payload_field_type=self._payload_ft, emf_uri='my URI', log_level=bt2.EventClassLogLevel.WARNING) ec2 = bt2.EventClass(name='name', id=23, context_field_type=self._context_ft, payload_field_type=self._payload_ft, emf_uri='my UR', log_level=bt2.EventClassLogLevel.WARNING) self.assertNotEqual(ec1, ec2)
def setUp(self): self._trace = bt2.Trace() self._sc = bt2.StreamClass() self._ec = bt2.EventClass('salut') self._my_int_ft = bt2.IntegerFieldType(32) self._ec.payload_field_type = bt2.StructureFieldType() self._ec.payload_field_type += collections.OrderedDict([ ('my_int', self._my_int_ft), ]) self._sc.add_event_class(self._ec) self._clock_class = bt2.ClockClass('allo', 1000) self._trace.add_clock_class(self._clock_class) self._trace.packet_header_field_type = bt2.StructureFieldType() self._trace.packet_header_field_type += collections.OrderedDict([ ('hello', self._my_int_ft), ]) self._trace.add_stream_class(self._sc) self._cc_prio_map = bt2.ClockClassPriorityMap() self._cc_prio_map[self._clock_class] = 231 self._stream = self._sc() self._packet = self._stream.create_packet() self._packet.header_field['hello'] = 19487 self._event = self._ec() self._event.add_clock_value(self._clock_class(1772)) self._event.payload_field['my_int'] = 23 self._event.packet = self._packet
def _complete_sc_event_simple_ts(self): ehft = bt2.StructureFieldType() ehft.append_field('id', bt2.IntegerFieldType(32)) ehft.append_field('timestamp', bt2.IntegerFieldType(16, mapped_clock_class=self._cc)) self._sc.event_header_field_type = ehft self._ec = bt2.EventClass('evt') payloadft = bt2.StructureFieldType() payloadft.append_field('value', bt2.IntegerFieldType(32)) self._ec.payload_field_type = payloadft self._complete_sc()
def setUp(self): self._context_ft = bt2.StructureFieldType() self._context_ft.append_field('allo', bt2.StringFieldType()) self._context_ft.append_field('zola', bt2.IntegerFieldType(18)) self._payload_ft = bt2.StructureFieldType() self._payload_ft.append_field('zoom', bt2.StringFieldType()) self._ec = bt2.EventClass('my_event') self._ec.id = 18 self._ec.context_field_type = self._context_ft self._ec.payload_field_type = self._payload_ft
def test_create_full(self): ec = bt2.EventClass(name='name', id=23, context_field_type=self._context_ft, payload_field_type=self._payload_ft, attributes={'model.emf.uri': 'my URI'}) self.assertEqual(ec.name, 'name') self.assertEqual(ec.id, 23) self.assertEqual(ec.context_field_type, self._context_ft) self.assertEqual(ec.payload_field_type, self._payload_ft) self.assertEqual(ec.attributes['model.emf.uri'], 'my URI')
def setUp(self): self._context_fc = bt2.StructureFieldClass() self._context_fc.append_field('allo', bt2.StringFieldClass()) self._context_fc.append_field('zola', bt2.IntegerFieldClass(18)) self._payload_fc = bt2.StructureFieldClass() self._payload_fc.append_field('zoom', bt2.StringFieldClass()) self._ec = bt2.EventClass('my_event') self._ec.id = 18 self._ec.emf_uri = 'yes' self._ec.log_level = bt2.EventClassLogLevel.INFO self._ec.context_field_class = self._context_fc self._ec.payload_field_class = self._payload_fc
def test_create_full(self): ec = bt2.EventClass(name='name', id=23, context_field_class=self._context_fc, payload_field_class=self._payload_fc, emf_uri='my URI', log_level=bt2.EventClassLogLevel.WARNING) self.assertEqual(ec.name, 'name') self.assertEqual(ec.id, 23) self.assertEqual(ec.context_field_class, self._context_fc) self.assertEqual(ec.payload_field_class, self._payload_fc) self.assertEqual(ec.emf_uri, 'my URI') self.assertEqual(ec.log_level, bt2.EventClassLogLevel.WARNING)
def _build_meta(self): self._trace = bt2.Trace() self._sc = bt2.StreamClass() self._ec = bt2.EventClass('salut') self._my_int_fc = bt2.IntegerFieldClass(32) self._ec.payload_field_class = bt2.StructureFieldClass() self._ec.payload_field_class += collections.OrderedDict([ ('my_int', self._my_int_fc), ]) self._sc.add_event_class(self._ec) self._trace.add_stream_class(self._sc) self._stream = self._sc() self._packet = self._stream.create_packet()
def _create_ec(): # clock class cc = bt2.ClockClass('salut_clock') # event header eh = bt2.StructureFieldType() eh += OrderedDict(( ('id', bt2.IntegerFieldType(8)), ('ts', bt2.IntegerFieldType(32, mapped_clock_class=cc)), )) # packet context pc = bt2.StructureFieldType() pc += OrderedDict((('something', bt2.IntegerFieldType(8)), )) # stream class sc = bt2.StreamClass() sc.packet_context_field_type = pc sc.event_header_field_type = eh sc.event_context_field_type = None # event payload ep = bt2.StructureFieldType() ep += OrderedDict((('mosquito', bt2.StringFieldType()), )) # event class event_class = bt2.EventClass('ec', id=0) event_class.context_field_type = None event_class.payload_field_type = ep sc.add_event_class(event_class) # packet header ph = bt2.StructureFieldType() ph += OrderedDict(( ('magic', bt2.IntegerFieldType(32)), ('stream_id', bt2.IntegerFieldType(16)), )) # trace trace = bt2.Trace() trace.packet_header_field_type = ph trace.add_clock_class(cc) trace.add_stream_class(sc) return event_class
def setUp(self): self._trace = bt2.Trace() self._sc = bt2.StreamClass() self._ec = bt2.EventClass('salut') self._clock_class = bt2.ClockClass('yo', 1000) self._uint64_int_fc = bt2.IntegerFieldClass(64, mapped_clock_class=self._clock_class) self._my_int_fc = bt2.IntegerFieldClass(32) self._ec.payload_field_class = bt2.StructureFieldClass() self._ec.payload_field_class += collections.OrderedDict([ ('my_int', self._my_int_fc), ]) self._sc.add_event_class(self._ec) self._sc.packet_context_field_class = bt2.StructureFieldClass() self._sc.packet_context_field_class += collections.OrderedDict([ ('events_discarded', self._my_int_fc), ('timestamp_begin', self._uint64_int_fc), ('timestamp_end', self._uint64_int_fc), ]) self._trace.add_clock_class(self._clock_class) self._trace.add_stream_class(self._sc) self._stream = self._sc()
def _create_packet(self, with_ph=True, with_pc=True): # event header eh = bt2.StructureFieldType() eh += OrderedDict(( ('id', bt2.IntegerFieldType(8)), ('ts', bt2.IntegerFieldType(32)), )) # stream event context sec = bt2.StructureFieldType() sec += OrderedDict(( ('cpu_id', bt2.IntegerFieldType(8)), ('stuff', bt2.FloatingPointNumberFieldType()), )) # packet context if with_pc: pc = bt2.StructureFieldType() pc += OrderedDict(( ('something', bt2.IntegerFieldType(8)), ('something_else', bt2.FloatingPointNumberFieldType()), )) else: pc = None # stream class sc = bt2.StreamClass() sc.packet_context_field_type = pc sc.event_header_field_type = eh sc.event_context_field_type = sec # event context ec = bt2.StructureFieldType() ec += OrderedDict(( ('ant', bt2.IntegerFieldType(16, is_signed=True)), ('msg', bt2.StringFieldType()), )) # event payload ep = bt2.StructureFieldType() ep += OrderedDict(( ('giraffe', bt2.IntegerFieldType(32)), ('gnu', bt2.IntegerFieldType(8)), ('mosquito', bt2.IntegerFieldType(8)), )) # event class event_class = bt2.EventClass('ec') event_class.context_field_type = ec event_class.payload_field_type = ep sc.add_event_class(event_class) # packet header if with_ph: ph = bt2.StructureFieldType() ph += OrderedDict(( ('magic', bt2.IntegerFieldType(32)), ('stream_id', bt2.IntegerFieldType(16)), )) else: ph = None # trace c;ass tc = bt2.Trace() tc.packet_header_field_type = ph tc.add_stream_class(sc) # stream stream = sc() # packet return stream.create_packet()
def test_create_invalid_no_name(self): with self.assertRaises(TypeError): bt2.EventClass()
def _create_stream(self, name='my_stream', stream_id=None): # event header eh = bt2.StructureFieldClass() eh += OrderedDict(( ('id', bt2.IntegerFieldClass(8)), ('ts', bt2.IntegerFieldClass(32)), )) # stream event context sec = bt2.StructureFieldClass() sec += OrderedDict(( ('cpu_id', bt2.IntegerFieldClass(8)), ('stuff', bt2.FloatingPointNumberFieldClass()), )) # packet context pc = bt2.StructureFieldClass() pc += OrderedDict(( ('something', bt2.IntegerFieldClass(8)), ('something_else', bt2.FloatingPointNumberFieldClass()), )) # stream class sc = bt2.StreamClass() sc.packet_context_field_class = pc sc.event_header_field_class = eh sc.event_context_field_class = sec # event context ec = bt2.StructureFieldClass() ec += OrderedDict(( ('ant', bt2.IntegerFieldClass(16, is_signed=True)), ('msg', bt2.StringFieldClass()), )) # event payload ep = bt2.StructureFieldClass() ep += OrderedDict(( ('giraffe', bt2.IntegerFieldClass(32)), ('gnu', bt2.IntegerFieldClass(8)), ('mosquito', bt2.IntegerFieldClass(8)), )) # event class event_class = bt2.EventClass('ec') event_class.context_field_class = ec event_class.payload_field_class = ep sc.add_event_class(event_class) # packet header ph = bt2.StructureFieldClass() ph += OrderedDict(( ('magic', bt2.IntegerFieldClass(32)), ('stream_id', bt2.IntegerFieldClass(16)), )) # trace c;ass tc = bt2.Trace() tc.packet_header_field_class = ph tc.add_stream_class(sc) # stream return sc(name=name, id=stream_id)
def setUp(self): self._values = { 'ph_field_1': 42, 'ph_field_2': 'bla bla', 'spc_field': 'some string', 'seh_field': 'another string', 'sec_field': 68752, 'ec_field': 89, 'ef_field': 8476, } self._int_ft = bt2.IntegerFieldType(32) self._str_ft = bt2.StringFieldType() self._trace = bt2.Trace() self._trace.packet_header_field_type = bt2.StructureFieldType() self._trace.packet_header_field_type += collections.OrderedDict([ ('ph_field_1', self._int_ft), ('ph_field_2', self._str_ft), ]) self._sc = bt2.StreamClass() self._sc.packet_context_field_type = bt2.StructureFieldType() self._sc.packet_context_field_type += collections.OrderedDict([ ('spc_field', self._str_ft), ]) self._sc.event_header_field_type = bt2.StructureFieldType() self._sc.event_header_field_type += collections.OrderedDict([ ('seh_field', self._str_ft), ]) self._sc.event_context_field_type = bt2.StructureFieldType() self._sc.event_context_field_type += collections.OrderedDict([ ('sec_field', self._int_ft), ]) self._clock_class = bt2.ClockClass('allo', 1000) self._trace.add_clock_class(self._clock_class) self._ec = bt2.EventClass('event_class_name') self._ec.context_field_type = bt2.StructureFieldType() self._ec.context_field_type += collections.OrderedDict([ ('ec_field', self._int_ft), ]) self._ec.payload_field_type = bt2.StructureFieldType() self._ec.payload_field_type += collections.OrderedDict([ ('ef_field', self._int_ft), ]) self._sc.add_event_class(self._ec) self._trace.add_stream_class(self._sc) self._cc_prio_map = bt2.ClockClassPriorityMap() self._cc_prio_map[self._clock_class] = 231 self._stream = self._sc() self._packet = self._stream.create_packet() self._packet.header_field['ph_field_1'] = self._values['ph_field_1'] self._packet.header_field['ph_field_2'] = self._values['ph_field_2'] self._packet.context_field['spc_field'] = self._values['spc_field'] self._event = self._ec() self._event.add_clock_value(self._clock_class(1772)) self._event.header_field['seh_field'] = self._values['seh_field'] self._event.stream_event_context_field['sec_field'] = self._values[ 'sec_field'] self._event.context_field['ec_field'] = self._values['ec_field'] self._event.payload_field['ef_field'] = self._values['ef_field'] self._event.packet = self._packet
def _create_ec(self, with_eh=True, with_sec=True, with_ec=True, with_ep=True): # event header if with_eh: eh = bt2.StructureFieldClass() eh += OrderedDict(( ('id', bt2.IntegerFieldClass(8)), ('ts', bt2.IntegerFieldClass(32)), )) else: eh = None # stream event context if with_sec: sec = bt2.StructureFieldClass() sec += OrderedDict(( ('cpu_id', bt2.IntegerFieldClass(8)), ('stuff', bt2.FloatingPointNumberFieldClass()), )) else: sec = None # packet context pc = bt2.StructureFieldClass() pc += OrderedDict(( ('something', bt2.IntegerFieldClass(8)), ('something_else', bt2.FloatingPointNumberFieldClass()), )) # stream class sc = bt2.StreamClass() sc.packet_context_field_class = pc sc.event_header_field_class = eh sc.event_context_field_class = sec # event context if with_ec: ec = bt2.StructureFieldClass() ec += OrderedDict(( ('ant', bt2.IntegerFieldClass(16, is_signed=True)), ('msg', bt2.StringFieldClass()), )) else: ec = None # event payload if with_ep: ep = bt2.StructureFieldClass() ep += OrderedDict(( ('giraffe', bt2.IntegerFieldClass(32)), ('gnu', bt2.IntegerFieldClass(8)), ('mosquito', bt2.IntegerFieldClass(8)), )) else: ep = None # event class event_class = bt2.EventClass('ec') event_class.context_field_class = ec event_class.payload_field_class = ep sc.add_event_class(event_class) return event_class