def test_form_params(self): from ptah.form.form import Form, DisplayForm request = DummyRequest() form = Form(None, request) disp_form = DisplayForm(None, request) self.assertEqual(form.method, 'post') post = {'post': 'info'} request.POST = post self.assertIs(form.form_params(), post) self.assertIs(disp_form.form_params(), DisplayForm.params) get = {'get': 'info'} request.GET = get form.method = 'get' self.assertIs(form.form_params(), get) form.method = 'unknown' self.assertEqual(form.form_params(), None) params = {'params': 'info'} form.method = 'POST' form.params = params self.assertIn('params', form.form_params().keys()) self.assertIsInstance(form.form_params(), MultiDict) params = MultiDict({'params': 'info'}) form.method = 'POST' form.params = params self.assertIs(form.form_params(), params)
def test_PUT_using_GET_param(self): app = self._make_app() request = DummyRequest(method='POST') request.GET = {'$method': 'PUT'} request.POST = {'$method': 'DUMMY'} request.headers['X-HTTP-Method-Override'] = 'DUMMY' self._assert_before(request) app.registry.notify(NewRequest(request)) self._assert_after(request, 'PUT')
def callView(self, config, path, matchdict=None, GET=None, POST=None, iface=None): from pyramid.router import Router from pyramid.testing import DummyRequest router = Router(config.registry) request = DummyRequest(path=path, registry=config.registry) request.matchdict = matchdict or {} if GET: request.GET = GET if POST: request.POST = POST if iface: directlyProvides(request, iface) return router.handle_request(request)
def test_validate_get(wrapped, view): request = DummyRequest() request.method = "GET" request.GET = MultiDict({ "title": "Hunky Dory", "release_date": "1971-12-17", }) context = object() wrapped(context, request) view.assert_called_once_with(context, request) assert request.data == { "title": "Hunky Dory", "release_date": Date(1971, 12, 17), }
def test_form_params(self): from ptah.form.form import Form, DisplayForm request = DummyRequest() form = Form(None, request) disp_form = DisplayForm(None, request) self.assertEqual(form.method, 'post') post = {'post': 'info'} request.POST = post self.assertIs(form.form_params(), post) self.assertIs(disp_form.form_params(), Form.params) get = {'get': 'info'} request.GET = get form.method = 'get' self.assertIs(form.form_params(), get) form.method = 'unknown' self.assertEqual(dict(form.form_params()), {})