diff -r 3cc8cca036ab -r b543ab9a9724 tests/db.py --- a/tests/db.py Thu Mar 01 19:58:02 2012 +0100 +++ b/tests/db.py Thu Mar 01 20:07:51 2012 +0100 @@ -22,6 +22,46 @@ u=session.merge(u) self.assertEqual(u.routes('sms').all(),[('sipgate_basic',),]) + def testRoutesNoDefault(self): + '''test default routes''' + with self.session() as session: + u=User(name='test',apikey='abcdef123456789') + o=Offer(name="sipgate_basic", provider="sipgate", route="basic", typ="sms") + u.rights.append(Userright(o)) + session.add(u) + + with self.session() as session: + u=session.merge(u) + self.assertEqual(u.routes('sms',default=True).all(),[]) + + def testRoutesDefault(self): + '''test default routes''' + with self.session() as session: + u=User(name='test',apikey='abcdef123456789') + o=Offer(name="sipgate_basic", provider="sipgate", route="basic", typ="sms") + u.rights.append(Userright(o,default=1)) + session.add(u) + + with self.session() as session: + u=session.merge(u) + self.assertEqual(u.routes('sms',default=True).all(),[('sipgate_basic',),]) + + def testRoutesDefaultOrdering(self): + '''test default routes ordering''' + with self.session() as session: + u=User(name='test',apikey='abcdef123456789') + o=Offer(name="s1", provider="sipgate", route="basic", typ="sms") + u.rights.append(Userright(o,default=3)) + o=Offer(name="s2", provider="sipgate", route="basic", typ="sms") + u.rights.append(Userright(o,default=None)) + o=Offer(name="s3", provider="sipgate", route="basic", typ="sms") + u.rights.append(Userright(o,default=1)) + session.add(u) + + with self.session() as session: + u=session.merge(u) + self.assertEqual(u.routes('sms',default=True).all(),[('s3',),('s1',)]) + def testProviders(self): '''test providers''' with self.session() as session: