# HG changeset patch # User Aurelien Campeas # Date 1401721298 -7200 # Node ID 29d52a785729dd3fa8de41ecc336cd14eb9068d9 # Parent d121b74e043fb315e0982c79518af345d12431da [webtests/views_errorform] use the new connection api diff -r d121b74e043f -r 29d52a785729 web/test/unittest_views_errorform.py --- a/web/test/unittest_views_errorform.py Mon Jun 02 16:52:34 2014 +0200 +++ b/web/test/unittest_views_errorform.py Mon Jun 02 17:01:38 2014 +0200 @@ -1,4 +1,4 @@ -# copyright 2003-2012 LOGILAB S.A. (Paris, FRANCE), all rights reserved. +# copyright 2003-2014 LOGILAB S.A. (Paris, FRANCE), all rights reserved. # contact http://www.logilab.fr/ -- mailto:contact@logilab.fr # # This file is part of CubicWeb. @@ -15,25 +15,20 @@ # # You should have received a copy of the GNU Lesser General Public License along # with CubicWeb. If not, see . +import re +import sys from logilab.common.testlib import unittest_main -from logilab.mtconverter import html_unescape -from cubicweb import Forbidden, ValidationError +from cubicweb import Forbidden from cubicweb.devtools.testlib import CubicWebTC -from cubicweb.utils import json -from cubicweb.view import StartupView, TRANSITIONAL_DOCTYPE_NOEXT +from cubicweb.view import StartupView from cubicweb.web import Redirect -from cubicweb.web.htmlwidgets import TableWidget -from cubicweb.web.views import vid_from_rset -import re -import hmac class ErrorViewTC(CubicWebTC): def setUp(self): super(ErrorViewTC, self).setUp() - self.req = self.request() self.vreg.config['submit-mail'] = "test@logilab.fr" self.vreg.config['print-traceback'] = "yes" @@ -48,15 +43,16 @@ raise ValueError('This is wrong') with self.temporary_appobjects(MyWrongView): - try: - self.view('my-view') - except Exception as e: - import sys - self.req.data['excinfo'] = sys.exc_info() - self.req.data['ex'] = e - html = self.view('error', req=self.req) - self.failUnless(re.search(r'^$', - html.source, re.M)) + with self.admin_access.web_request() as req: + try: + self.view('my-view', req=req) + except Exception as e: + req.data['excinfo'] = sys.exc_info() + req.data['ex'] = e + html = self.view('error', req=req) + self.failUnless(re.search(r'^$', + html.source, re.M)) def test_error_submit_nosig(self): @@ -64,36 +60,33 @@ tests that the reportbug controller refuses submission if there is not content signature """ - - self.req.form = {'description': u'toto', - } - with self.assertRaises(Forbidden) as cm: - self.ctrl_publish(self.req, 'reportbug') + with self.admin_access.web_request() as req: + req.form = {'description': u'toto'} + with self.assertRaises(Forbidden) as cm: + self.ctrl_publish(req, 'reportbug') def test_error_submit_wrongsig(self): """ tests that the reportbug controller refuses submission if the content signature is invalid """ - - self.req.form = {'__signature': 'X', - 'description': u'toto', - } - with self.assertRaises(Forbidden) as cm: - self.ctrl_publish(self.req, 'reportbug') + with self.admin_access.web_request() as req: + req.form = {'__signature': 'X', + 'description': u'toto'} + with self.assertRaises(Forbidden) as cm: + self.ctrl_publish(req, 'reportbug') def test_error_submit_ok(self): """ tests that the reportbug controller accept the email submission if the content signature is valid """ - - sign = self.vreg.config.sign_text('toto') - self.req.form = {'__signature': sign, - 'description': u'toto', - } - with self.assertRaises(Redirect) as cm: - self.ctrl_publish(self.req, 'reportbug') + with self.admin_access.web_request() as req: + sign = self.vreg.config.sign_text('toto') + req.form = {'__signature': sign, + 'description': u'toto'} + with self.assertRaises(Redirect) as cm: + self.ctrl_publish(req, 'reportbug') if __name__ == '__main__': unittest_main()