tests/offer.py
branchdevel
changeset 146 8cae6cfc1de4
child 150 c6896c3374c4
equal deleted inserted replaced
145:b58ce5bb96cc 146:8cae6cfc1de4
       
     1 from twisted.internet import reactor
       
     2 from twisted.internet.defer import inlineCallbacks
       
     3 
       
     4 from iro.model import offer
       
     5 from iro.config import config
       
     6 
       
     7 from iro.offer.offer import Offer
       
     8 from iro.model.schema import User, Offer as DBOffer, Userright
       
     9 from iro.controller.pool  import dbPool
       
    10 from .dbtestcase import DBTestCase
       
    11 
       
    12 class TestOffers(DBTestCase):
       
    13     '''test config class'''
       
    14     def setUp(self):
       
    15         DBTestCase.setUp(self)
       
    16         dbPool.start(reactor)
       
    17 
       
    18     def tearDown(self):
       
    19         dbPool.pool.stop()
       
    20         offer.offers.clear()
       
    21         DBTestCase.tearDown(self)
       
    22 
       
    23     def testReloadList(self):
       
    24         '''test if loadOffers will be fired by reloading Config'''
       
    25         self.assertTrue(offer.loadOffers in config.reloadList)
       
    26 
       
    27     @inlineCallbacks
       
    28     def testExtendProviderUnknown(self):
       
    29         '''test the extendProvider Function (route unknown)'''
       
    30         with self.session() as session:
       
    31             u = User(name='test',apikey='abcdef123456789')
       
    32             session.add(u)
       
    33 
       
    34         offer.offers={"blub":None}
       
    35         ret = yield offer.extendProvider(u, "sms", ["blub"])
       
    36         self.assertEqual(ret, [])
       
    37 
       
    38     @inlineCallbacks
       
    39     def testExtendProviderKnown(self):
       
    40         '''test the extendProvider Function (route known)'''
       
    41         with self.session() as session:
       
    42             u = User(name='test',apikey='abcdef123456789')
       
    43             session.add(u)
       
    44             o=DBOffer(name="blub", provider="bla", route="basic", typ="sms")
       
    45             u.rights.append(Userright(o)) 
       
    46 
       
    47         offer.offers={"blub":None}
       
    48         ret = yield offer.extendProvider(u, "sms", ["blub"])
       
    49         self.assertEqual(ret, ["blub"])
       
    50 
       
    51     @inlineCallbacks
       
    52     def testExtendProviderProvider(self):
       
    53         '''test the extendProvider Function (provider known)'''
       
    54         with self.session() as session:
       
    55             u = User(name='test',apikey='abcdef123456789')
       
    56             session.add(u)
       
    57             o=DBOffer(name="oh", provider="bla", route="a", typ="sms")
       
    58             u.rights.append(Userright(o)) 
       
    59         
       
    60         offer.offers={"bla":Offer("bla",["a","b","c"])}
       
    61         ret = yield offer.extendProvider(u, "sms", ["bla"])
       
    62         self.assertEqual(ret, ["oh"])