Пример #1
0
    def test00_test_echo(self):
        def echo_worker(name, err_queue):
            cl = OperatorClient('test_node')
            msg = 'Hello, I am %s'%name
            for i in xrange(100):
                ret_msg = cl.echo(msg)
                if ret_msg != msg:
                    error = '%s != %s'%(ret_msg, msg)
                    print 'ERROR: %s'%error
                    err_queue.put(error)

        proc = OperatorProcess(Operator, None, None, None, None, server_name='test_node')
        proc.start()
        time.sleep(1)
        try:
            processes = []
            errors = Queue()
            for i in xrange(20):
                p = Thread(target=echo_worker, args=('worker #%i'%i, errors))
                processes.append(p)

            t0 = datetime.now()
            for p in processes:
                p.start()

            for p in processes:
                p.join()

            if not errors.empty():
                raise Exception('ERROR in threads...')
            print 'stress time: %s'%(datetime.now()-t0)
        finally:
            proc.stop()
            proc.join()
Пример #2
0
    def test01_ret_struct(self):
        proc = OperatorProcess(Operator, None, None, None, None, server_name='test_node')
        proc.start()
        time.sleep(1)
        try:
            cl = OperatorClient('test_node')
            ret = cl.test_ret_struct('test message', 123456)
            self.assertEqual(len(ret), 2)
            self.assertEqual(ret[0], 'str_param=test message, int_param=123456')
            self.assertEqual(ret[1],  {'s':'test message', 'i':123456})

            ret = cl.test_object(FabnetPacketRequest(method='TestMethod', parameters={'tst': 213}))
            self.assertEqual(ret.ret_code, 0, ret.ret_message)

            try:
                cl.raise_exception('test exception')
            except Exception, err:
                from fabnet.core.fri_base import FriException
                self.assertEqual(err.__class__, FriException)
                self.assertEqual(str(err), 'test exception')
            else: