16 # You should have received a copy of the GNU Lesser General Public License along |
16 # You should have received a copy of the GNU Lesser General Public License along |
17 # with CubicWeb. If not, see <http://www.gnu.org/licenses/>. |
17 # with CubicWeb. If not, see <http://www.gnu.org/licenses/>. |
18 from logilab.common.testlib import TestCase, unittest_main |
18 from logilab.common.testlib import TestCase, unittest_main |
19 from cubicweb.req import RequestSessionBase |
19 from cubicweb.req import RequestSessionBase |
20 from cubicweb.devtools.testlib import CubicWebTC |
20 from cubicweb.devtools.testlib import CubicWebTC |
21 |
21 from cubicweb import Unauthorized |
22 |
22 |
23 class RebuildURLTC(TestCase): |
23 class RebuildURLTC(TestCase): |
24 def test_rebuild_url(self): |
24 def test_rebuild_url(self): |
25 rebuild_url = RequestSessionBase(None).rebuild_url |
25 rebuild_url = RequestSessionBase(None).rebuild_url |
26 self.assertEqual(rebuild_url('http://logilab.fr?__message=pouet', __message='hop'), |
26 self.assertEqual(rebuild_url('http://logilab.fr?__message=pouet', __message='hop'), |
40 self.assertEqual(req.build_url('one'), u'http://testing.fr/cubicweb/one') |
40 self.assertEqual(req.build_url('one'), u'http://testing.fr/cubicweb/one') |
41 self.assertEqual(req.build_url(param='ok'), u'http://testing.fr/cubicweb/view?param=ok') |
41 self.assertEqual(req.build_url(param='ok'), u'http://testing.fr/cubicweb/view?param=ok') |
42 self.assertRaises(AssertionError, req.build_url, 'one', 'two not allowed') |
42 self.assertRaises(AssertionError, req.build_url, 'one', 'two not allowed') |
43 self.assertRaises(ValueError, req.build_url, 'view', test=None) |
43 self.assertRaises(ValueError, req.build_url, 'view', test=None) |
44 |
44 |
|
45 def test_ensure_no_rql(self): |
|
46 req = RequestSessionBase(None) |
|
47 self.assertEqual(req.ensure_ro_rql('Any X WHERE X is CWUser'), None) |
|
48 self.assertEqual(req.ensure_ro_rql(' Any X WHERE X is CWUser '), None) |
|
49 self.assertRaises(Unauthorized, req.ensure_ro_rql, 'SET X login "toto" WHERE X is CWUser') |
|
50 self.assertRaises(Unauthorized, req.ensure_ro_rql, ' SET X login "toto" WHERE X is CWUser ') |
45 |
51 |
46 if __name__ == '__main__': |
52 if __name__ == '__main__': |
47 unittest_main() |
53 unittest_main() |