tests/offer.py
branchdevel
changeset 150 c6896c3374c4
parent 146 8cae6cfc1de4
child 157 0192f9107870
--- a/tests/offer.py	Mon Feb 13 17:59:11 2012 +0100
+++ b/tests/offer.py	Mon Feb 13 18:00:27 2012 +0100
@@ -48,6 +48,9 @@
         ret = yield offer.extendProvider(u, "sms", ["blub"])
         self.assertEqual(ret, ["blub"])
 
+        ret = yield offer.extendProvider(u, "sms", ["blub", "blub"])
+        self.assertEqual(ret, ["blub"])
+
     @inlineCallbacks
     def testExtendProviderProvider(self):
         '''test the extendProvider Function (provider known)'''
@@ -58,5 +61,30 @@
             u.rights.append(Userright(o)) 
         
         offer.offers={"bla":Offer("bla",["a","b","c"])}
-        ret = yield offer.extendProvider(u, "sms", ["bla"])
-        self.assertEqual(ret, ["oh"])
+
+        for l in [['bla'],['oh'],['oh','bla'],['bla','oh']]:
+            ret = yield offer.extendProvider(u, "sms", l)
+            self.assertEqual(ret, ["oh"])
+
+    @inlineCallbacks
+    def testExtendProviderDouble(self):
+        '''test the extendProvider Function (provider and name doubles)'''
+        with self.session() as session:
+            u = User(name='test',apikey='abcdef123456789')
+            session.add(u)
+            o=DBOffer(name="oh", provider="bla", route="a", typ="sms")
+            u.rights.append(Userright(o)) 
+            o=DBOffer(name="a", provider="bla", route="b", typ="sms")
+            u.rights.append(Userright(o)) 
+        
+        offer.offers={"bla":Offer("bla",["a","b","c"])}
+
+        ret = yield offer.extendProvider(u, "sms",  ["bla"])
+        self.assertEqual(ret, ["oh","a"])
+    
+        ret = yield offer.extendProvider(u, "sms",  ["a","bla"])
+        self.assertEqual(ret, ["a","oh"])
+
+        ret = yield offer.extendProvider(u, "sms",  ["bla", "a"])
+        self.assertEqual(ret, ["oh","a"])
+