# HG changeset patch # User Sandro Knauß # Date 1330693223 -3600 # Node ID 39e4c09e1b60a215426faadcca29aa378e580e03 # Parent 3fc1f400c107ec107cfde9354038bd5561ea9346 adding tests for vRoute with default and provider names diff -r 3fc1f400c107 -r 39e4c09e1b60 iro/model/decorators.py --- a/iro/model/decorators.py Fri Mar 02 13:59:56 2012 +0100 +++ b/iro/model/decorators.py Fri Mar 02 14:00:23 2012 +0100 @@ -21,9 +21,10 @@ elif not allowList: raise ValidateException(field=field,msg='%s must be a route - No list of routes.'%field) - routes =[o.name for o in Offer.routes(session,typ)] + routes = [o.name for o in Offer.routes(session,typ)] + providers = [o.provider for o in Offer.providers(session,typ)] for v in value: - if v not in routes: + if v not in routes and v not in providers and v != "default": raise ValidateException(field=field,msg='Route %s is not valid.'%v) if v not in ret: ret.append(v) diff -r 3fc1f400c107 -r 39e4c09e1b60 tests/model_validate.py --- a/tests/model_validate.py Fri Mar 02 13:59:56 2012 +0100 +++ b/tests/model_validate.py Fri Mar 02 14:00:23 2012 +0100 @@ -47,3 +47,11 @@ e = self.assertRaises(ValidateException,vRoute, ["t"], "foo", typ="type", allowList=False) self.assertEqual(str(e),'700:foo must be a route - No list of routes.') + def testRouteProvider(self): + with self.session() as session: + session.add(Offer(name="t",provider="p",typ="type")) + self.assertEqual(vRoute("p",None,typ="type"),"p") + + def testRouteDefault(self): + self.assertEqual(vRoute("default",None,typ="type"),"default") +