def init_test_setup(config):
    if not config.get('testmode', False):
        return 

    def register(addr):
        def _wrapper(func):
            EventBus.register_handler(addr, handler=func)
            return func
        return _wrapper

    @register('test.tweets')
    def tweet_handler(msg):
        print msg.body

    @functools.partial(vertx.set_periodic, 1000)
    def status(tid):
        EventBus.publish(HBCAgent.STATUS_ADDRESS, dict(replyTo="test.status"))

    @register('test.status')
    def print_status(msg):
        print "Status >>>", msg.body

    @register('test.shutdown')
    def on_shutdown(msg):
        print "Shutdown >>>", msg.body
        vertx.exit()
        
    # simple shutdown hook
    exit_after = config.get('testmode').get('exitAfter', 10)
    if exit_after:
        vertx.set_timer(exit_after * 1000, 
                        lambda x: EventBus.publish(HBCAgent.SHUTDOWN_ADDRESS, 
                                                   dict(replyTo="test.shutdown")))
def start_handler(error, feeder):
  if error:
    Assert.true(False)
  else:
    def ack_handler(error=None):
      Assert.null(error)
      Test.complete()

    def do_feed(timer_id):
      feeder.feed({'body': 'Hello world!'}, tag='test', handler=ack_handler)
    vertx.set_timer(1000, do_feed)
Example #3
0
 def handler(timer_id):
     tu.check_thread()
     self.count += 1
     if self.count == fires:
         vertx.cancel_timer(timer_id)
         # End test in another timer in case the first timer fires again - we want to catch that
         def complete(timer_id):
             tu.test_complete()            
         vertx.set_timer(100, complete)
     elif self.count > fires:
         tu.azzert(False, 'Fired too many times')
        def handler(msg):
            if self.received:
                tu.azzert(False, "handler already called") 
            tu.azzert(msg.body['message'] == json['message'])
            EventBus.unregister_handler(id)
            self.received = True

            def timer_complete(id):
                tu.test_complete()
            
            # End test on a timer to give time for other messages to arrive
            vertx.set_timer(100, timer_complete)
Example #5
0
        def handler(msg):
            if self.received:
                tu.azzert(False, "handler already called")
            tu.azzert(msg.body['message'] == json['message'])
            EventBus.unregister_handler(id)
            self.received = True

            def timer_complete(id):
                tu.test_complete()

            # End test on a timer to give time for other messages to arrive
            vertx.set_timer(100, timer_complete)
        def handler(timer_id):
            tu.check_thread()
            self.count += 1
            if self.count == fires:
                vertx.cancel_timer(timer_id)

                # End test in another timer in case the first timer fires again - we want to catch that
                def complete(timer_id):
                    tu.test_complete()

                vertx.set_timer(100, complete)
            elif self.count > fires:
                tu.azzert(False, 'Fired too many times')
def set_one_timer(time, path):
    def handler(tid):
       def delete_handler(err,res):
           if err: print res
           logger.info("file %s was deleted"% path)
       fs.delete(path,handler=delete_handler)
    tid = vertx.set_timer(time, handler)
def test_complete_on_timer():
    def handler(timer_id):
        VertxAssert.assertNotNull(timer_id)
        VertxAssert.testComplete()
    vertx.set_timer(1000, handler)
Example #9
0
def test_complete_on_timer():
    def handler(timer_id):
        VertxAssert.assertNotNull(timer_id)
        VertxAssert.testComplete()

    vertx.set_timer(1000, handler)
    def test_one_off(self):
        def handler(timer_id):
            tu.check_thread()
            tu.test_complete()

        vertx.set_timer(10, handler)
Example #11
0
 def test_one_off(self):
     def handler(timer_id):
         tu.check_thread()
         tu.test_complete()
     vertx.set_timer(10, handler)