tests/xmlrpc.py
branchdevel
changeset 119 3462c2c90f95
parent 117 351a02310dd8
child 120 7bde35ad89e0
equal deleted inserted replaced
118:e16c0250c974 119:3462c2c90f95
    81         self.failUnlessEqual(self.__rpc2().status('abcdef123456789','abcde', True), ["<User('test','abcdef123456789')>",'abcde', True])
    81         self.failUnlessEqual(self.__rpc2().status('abcdef123456789','abcde', True), ["<User('test','abcdef123456789')>",'abcde', True])
    82         self.failUnlessEqual(self.__rpc2().status('abcdef123456789', '', 'true'), ["<User('test','abcdef123456789')>", '', True])
    82         self.failUnlessEqual(self.__rpc2().status('abcdef123456789', '', 'true'), ["<User('test','abcdef123456789')>", '', True])
    83         self.failUnlessEqual(self.__rpc2().status('abcdef123456789', '', 'false'), "<User('test','abcdef123456789')>")
    83         self.failUnlessEqual(self.__rpc2().status('abcdef123456789', '', 'false'), "<User('test','abcdef123456789')>")
    84         self.failUnlessEqual(self.__rpc2().status('abcdef123456789', '', 0), "<User('test','abcdef123456789')>")
    84         self.failUnlessEqual(self.__rpc2().status('abcdef123456789', '', 0), "<User('test','abcdef123456789')>")
    85         self.failUnlessEqual(self.__rpc2().status('abcdef123456789', '', 1), ["<User('test','abcdef123456789')>", '', True])
    85         self.failUnlessEqual(self.__rpc2().status('abcdef123456789', '', 1), ["<User('test','abcdef123456789')>", '', True])
    86 
    86     
    87     def testNoSuchUser(self):
    87     def testNoSuchUser(self):
    88         '''a unknown user should raise a UserNotNound Exception
    88         '''a unknown user should raise a UserNotNound Exception
    89         bewcause xmlrpc only has a Fault exception this Exception has to be deliverd through a xmlrpclib.Fault Exception'''
    89         bewcause xmlrpc only has a Fault exception this Exception has to be deliverd through a xmlrpclib.Fault Exception'''
    90         with self.assertRaises(Fault) as fault:
    90         with self.assertRaises(Fault) as fault:
    91             self.__rpc2().status('abcdef123456789')
    91             self.__rpc2().status('abcdef123456789')
   127         
   127         
   128         with WithSession(md.engine, autocommit=True) as session:
   128         with WithSession(md.engine, autocommit=True) as session:
   129             o=Offer(name="sipgate_plus", provider="sipgate", route="plus", typ="sms")
   129             o=Offer(name="sipgate_plus", provider="sipgate", route="plus", typ="sms")
   130             u = session.query(User).filter_by(name="test").first()
   130             u = session.query(User).filter_by(name="test").first()
   131             u.rights.append(Userright(o)) 
   131             u.rights.append(Userright(o)) 
       
   132             o=Offer(name="faxde", provider="faxde", route="", typ="fax")
       
   133             session.add(o)
   132             session.commit()
   134             session.commit()
   133         self.failUnlessEqual(self.__rpc2().routes('abcdef123456789','sms'),['sipgate_basic','sipgate_plus'])
   135         self.failUnlessEqual(self.__rpc2().routes('abcdef123456789','sms'),['sipgate_basic','sipgate_plus'])
       
   136         self.failUnlessEqual(self.__rpc2().routes('abcdef123456789','fax'),[])
       
   137 
       
   138         with WithSession(md.engine, autocommit=True) as session:
       
   139             u = session.query(User).filter_by(name="test").first()
       
   140             u.rights.append(Userright(o)) 
       
   141         
       
   142         self.failUnlessEqual(self.__rpc2().routes('abcdef123456789','sms'),['sipgate_basic','sipgate_plus'])
       
   143         self.failUnlessEqual(self.__rpc2().routes('abcdef123456789','fax'),['faxde'])
   134 
   144 
   135 def startReactor(engine):
   145 def startReactor(engine):
   136     """starts the Rector with a special debug Clild, so that the reactor can be stopped remotly. """
   146     """starts the Rector with a special debug Clild, so that the reactor can be stopped remotly. """
   137     from twisted.internet import reactor
   147     from twisted.internet import reactor
   138     from twisted.web import xmlrpc, resource
   148     from twisted.web import xmlrpc, resource