--- a/iro/controller/viewinterface.py Tue Feb 28 01:44:11 2012 +0100
+++ b/iro/controller/viewinterface.py Tue Feb 28 01:45:05 2012 +0100
@@ -100,8 +100,8 @@
d.addCallback(ret)
return d
- @validate(kwd="recipients",func=vEmail)
- @validate(kwd="frm",func=vEmail)
+ @validate(kwd="recipients",func=vEmail, allowString=False)
+ @validate(kwd="frm",func=vEmail, need=False, allowList=False)
@vUser
@vRoute(typ="mail")
def mail(self, user, subject, body, recipients, frm=None, route="default", info=""):
--- a/tests/viewinterface.py Tue Feb 28 01:44:11 2012 +0100
+++ b/tests/viewinterface.py Tue Feb 28 01:45:05 2012 +0100
@@ -232,6 +232,25 @@
self.assertEqual(taskPool.pool.q.qsize(),1)
@inlineCallbacks
+ def testMailFrmNone(self):
+ with self.session() as session:
+ u = User(name='test',apikey='abcdef123456789')
+ o = Offer(name='loc',provider="localhost",route="",typ="mail")
+ u.rights.append(Userright(o))
+ session.add(u)
+
+ jobid = yield Interface().mail('abcdef123456789','sub', "hey body!", ['t@te.de'], None,['loc'])
+ with self.session() as session:
+ u = session.merge(u)
+ job = u.job(jobid)
+ exJob = job.extend
+
+ self.assertEqual(exJob.message,Mail("sub",'hey body!',None))
+ self.assertEqual(taskPool.pool.q.qsize(),1)
+
+
+
+ @inlineCallbacks
def testFax(self):
with self.session() as session:
u = User(name='test',apikey='abcdef123456789')