From 697807c2d770b261b9cda87516a58c23efacfa86 Mon Sep 17 00:00:00 2001 From: Kenneth Reitz Date: Thu, 11 Oct 2018 19:11:54 -0400 Subject: [PATCH] more tests --- responder/api.py | 10 +++++----- responder/models.py | 4 ++-- test_responder.py | 10 ++++++++++ 3 files changed, 17 insertions(+), 7 deletions(-) diff --git a/responder/api.py b/responder/api.py index 89ba102..15fa232 100644 --- a/responder/api.py +++ b/responder/api.py @@ -165,11 +165,11 @@ class API: return req.json()["query"] # Support query/q in form data. - if not isinstance(req.data, str): - if "query" in req.data: - return req.data["query"] - if "q" in req.data: - return req.data["q"] + if not isinstance(req.form, str): + if "query" in req.form: + return req.form["query"] + if "q" in req.form: + return req.form["q"] # Support query/q in params. if "query" in req.params: diff --git a/responder/models.py b/responder/models.py index a01c696..e64460b 100644 --- a/responder/models.py +++ b/responder/models.py @@ -48,8 +48,8 @@ class Request: self.content = self._wz.get_data(cache=True, as_text=False) self.mimetype = self._wz.mimetype self.accepts_mimetypes = self._wz.accept_mimetypes - self.text = self._wz.get_data(cache=True, as_text=True) - self.data = self._wz.get_data(cache=True, as_text=True, parse_form_data=True) + self.text = self._wz.get_data(cache=False, as_text=True) + self.form = self._wz.form self.dispatched = False self._start_response = start_response self._environ = environ diff --git a/test_responder.py b/test_responder.py index c5394bf..dd3eb6f 100644 --- a/test_responder.py +++ b/test_responder.py @@ -186,3 +186,13 @@ def test_query_params(api): r = api.session().get("http://;/?q=q") assert r.json()["params"] == {"q": "q"} + + +def test_form_data(api): + @api.route("/") + def route(req, resp): + resp.media = {"form": req.form} + + dump = {"q": "q"} + r = api.session().get("http://;/", data=dump) + assert r.json()["form"] == dump