MCPcopy Create free account
hub / github.com/FreeOpcUa/python-opcua / test_events_MyObject

Method test_events_MyObject

tests/tests_subscriptions.py:381–407  ·  view source on GitHub ↗
(self)

Source from the content-addressed store, hash-verified

379 sub.delete()
380
381 def test_events_MyObject(self):
382 objects = self.srv.get_objects_node()
383 o = objects.add_object(3, 'MyObject')
384 evgen = self.srv.get_event_generator()
385 evgen.event.SourceNode=o.nodeid
386 evgen.event.SourceName=o.get_browse_name().Name
387
388 myhandler = MySubHandler()
389 sub = self.opc.create_subscription(100, myhandler)
390 handle = sub.subscribe_events()
391
392 tid = datetime.utcnow()
393 msg = "this is my msg "
394 evgen.trigger(tid, msg)
395
396 ev = myhandler.future.result(10)
397 self.assertIsNot(ev, None) # we did not receive event
398 self.assertEqual(ev.EventType, ua.NodeId(ua.ObjectIds.BaseEventType))
399 self.assertEqual(ev.Severity, 1)
400 self.assertEqual(ev.SourceName, 'MyObject')
401 self.assertEqual(ev.SourceNode, o.nodeid)
402 self.assertEqual(ev.Message.Text, msg)
403 self.assertEqual(ev.Time, tid)
404
405 # time.sleep(0.1)
406 sub.unsubscribe(handle)
407 sub.delete()
408
409 def test_events_wrong_source(self):
410 objects = self.srv.get_objects_node()

Callers

nothing calls this directly

Calls 10

get_event_generatorMethod · 0.80
get_browse_nameMethod · 0.80
subscribe_eventsMethod · 0.80
triggerMethod · 0.80
unsubscribeMethod · 0.80
MySubHandlerClass · 0.70
get_objects_nodeMethod · 0.45
add_objectMethod · 0.45
create_subscriptionMethod · 0.45
deleteMethod · 0.45

Tested by

no test coverage detected