예제 #1
0
	def runTest( self ):

		context = Context( 'context' )
		context.start()

		listener = TestListener()
		listener.context = context

		node = System( 'system0', listener )
		node.addListener( listener )

		assert( node.currentState == 'Stopped' )

		node.process( Event( 'Start' ) )
		assert( node.currentState == 'Started' )

		sleep( 2 )

		node.process( Event( 'Pause' ) )
		assert( node.currentState == 'Paused' )

		node.process( Event( 'Continue' ) )
		assert( node.currentState == 'Started' )

		node.process( Event( 'Stop' ) )
		assert( node.currentState == 'Stopped' )
예제 #2
0
	def runTest( self ):

		context = Context( 'context' )
		context.start()

		listener = UacSubscriptionListener()
		listener.context = context

		subscription = UacSubscription( 'subscription0', listener, subscriptionSource='', user='******', resourceUri=Uri('bones', 'cave'), event='whats-to-eat', contentType=ContentType('food', 'xml'), expires=3600 )

		context.queue( Event( subscription.EVENT_SUBSCRIBE ), subscription )

		s = 'SIP/2.0 100 Trying\r\nTo: "Matt"<sip:matthew@cave>\r\nContact: "RileyMan"<sip:riley@cave>\r\nFrom: "Josh"<sip:joshua@cave>\r\nCall-ID: abcd\r\n\r\n'
		m = Message( s )
		e = MessageEvent( MessageEvent.EVENT_RX, message=m, transport='udp', localAddress='127.0.0.1', localPort=9000, remoteAddress='127.0.0.1', remotePort=9001 )
		context.queue( e, subscription )

		s = 'SIP/2.0 200 OK\r\nTo: "Matt"<sip:matthew@cave>\r\nContact: "RileyMan"<sip:riley@cave>\r\nFrom: "Josh"<sip:joshua@cave>\r\nCall-ID: abcd\r\n\r\n'
		m = Message( s )
		e = MessageEvent( MessageEvent.EVENT_RX, message=m, transport='udp', localAddress='127.0.0.1', localPort=9000, remoteAddress='127.0.0.1', remotePort=9001 )
		context.queue( e, subscription )

		context.queue( Event( subscription.EVENT_UNSUBSCRIBE ), subscription )

		s = 'SIP/2.0 200 OK\r\nTo: "Matt"<sip:matthew@cave>\r\nContact: "RileyMan"<sip:riley@cave>\r\nFrom: "Josh"<sip:joshua@cave>\r\nCall-ID: abcd\r\n\r\n'
		m = Message( s )
		e = MessageEvent( MessageEvent.EVENT_RX, message=m, transport='udp', localAddress='127.0.0.1', localPort=9000, remoteAddress='127.0.0.1', remotePort=9001 )
		context.queue( e, subscription )

		sleep( 0.5 )

		assert 1
예제 #3
0
    def test(self):
        c = Context('Root')
        c.start()

        o0 = self.SampleObj()
        Dispatcher.add(obj=o0, parent_obj=None, context=c)

        o1 = self.SampleObj()
        Dispatcher.add(obj=o1, parent_obj=None, context=c)
        Dispatcher.add_listener(src_obj=o1, dst_obj=o0)

        Dispatcher.send(event=Event('1'), src_obj=o0, dst_obj=o1)
        assert str(o1.lastHandler) == 'on1'

        Dispatcher.queue(event=Event('2'), src_obj=o0, dst_obj=o1)
        #assert str(o1.lastHandler) == 'on2'

        Dispatcher.send(event=Event('3'), src_obj=o0, dst_obj=o1)
        #assert str(o1.lastHandler) == 'on3'

        Dispatcher.notify(event=Event('4'), src_obj=o1)
        #assert str(o1.lastHandler) == 'on4'
        Dispatcher.notify(event=Event('4'), src_obj=o1)
        #assert str(o1.lastHandler) == 'on4'

        c.stop()
예제 #4
0
    def test(self):
        events = [Event('event0'), Event('event1'), Event('event2')]

        o = SampleObj(events)

        c = Context('context0')
        c.start()

        for event in events:
            future = c.queue(event, o, o)
            #print future
            #future.cancel()
            #print future()
            #print future
        time.sleep(0.1)

        c.stop()
예제 #5
0
	def runTest( self ):

		context = Context( 'context' )
		context.start()

		listener = TestListener()
		listener.context = context

		node = System( 'system0', listener )
		node.addListener( listener )

		node.process( Event( 'Start' ) )

		s = 'SUBSCRIBE sip:chloe@cave;treats SIP/2.0\r\nTo: "Matt"<sip:matthew@cave>\r\nFrom: "Josh"<sip:joshua@cave>\r\nContact: "RileyMan"<sip:riley@cave>\r\nCall-ID: 12345\r\nCSeq: 16 SUBSCRIBE\r\n\r\n'
		m = Message( s )
		e = MessageEvent( MessageEvent.EVENT_RX, message=m, transport='udp', localAddress=node.query( 'network.localAddress' ), localPort=node.query( 'network.localPort' ), remoteAddress=node.query( 'network.remoteAddress' ), remotePort=node.query( 'network.remotePort' ) )
		context.queue( e, node )
		sleep( 2 )
예제 #6
0
파일: test_state.py 프로젝트: CaveMike/iron
    def test(self):
        d = Dispatcher()

        c = Context('Root')
        c.start()

        o = self.SampleObj()
        d.add(obj=o, parent_obj=None, context=c)

        o.Start()
        assert str(o.state.current_state) == o.STATE_STARTED
        assert str(o.last_handler) == 'inStarted_onEnter'
        o.Pause()
        assert str(o.state.current_state) == 'Paused'
        assert str(o.last_handler) == 'inPaused_onEnter'
        o.Stop()
        assert str(o.state.current_state) == 'Stopped'
        assert str(o.last_handler) == 'inStopped_onEnter'

        c.stop()
예제 #7
0
	def runTest( self ):
		context = Context( 'root' )
		context.start()

		listener = TestListener()
		listener.context = context

		node = System( 'system', listener )
		node.addListener( listener )

		context.queue( Event( System.EVENT_START ), node )

#		from message import *
		s = 'INVITE sip:[email protected] SIP/2.0\r\n' \
'Call-ID: abcde\r\nContent-Length: 136\r\nContent-Type: application/simple-message-summary\r\n\r\nMessages-Waiting: yes\r\nMessage-Account: sip:[email protected]\r\nvoice-message: 1/5(2/4)\r\nfax-message: 0/1\r\ntext-message: 3/7\r\n' \
'\r\n'
		message = Request( s )
		e = MessageEvent( MessageEvent.EVENT_RX, message )
		context.queue( e, node )

		#context.queue( Event( System.EVENT_STOP ), node )
		context.stop()
예제 #8
0
파일: __main__.py 프로젝트: widewing/apini
import logging,sys
from context import Context
from reader.dummy_reader import DummyReader
from parser.dummy_parser import DummyParser
from lister.dummy_lister import DummyLister

logging.basicConfig(level=logging.DEBUG,
                    format='%(asctime)s %(threadName)s %(levelname)s %(name)s: %(message)s',
                    datefmt='%Y-%m-%d %H:%M:%S',
                    stream=sys.stdout)

context = Context()
context.register("reader", DummyReader)
context.register("parser", DummyParser)
context.register("lister", DummyLister)
context.start("dummy://list")
print context._addedDocs