|
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"]) |