mirror of https://github.com/scrapy/scrapy.git
Add tests with incomplete buttons
This commit is contained in:
parent
b876755f1c
commit
2c28b53cc0
|
|
@ -767,6 +767,40 @@ class FormRequestTest(RequestTest):
|
|||
self.assertEqual(fs[b'test2'], [b'val2'])
|
||||
self.assertEqual(fs[b'button1'], [b'submit1'])
|
||||
|
||||
def test_from_response_submit_novalue(self):
|
||||
response = _buildresponse(
|
||||
"""<form action="post.php" method="POST">
|
||||
<input type="hidden" name="test1" value="val1">
|
||||
<input type="hidden" name="test2" value="val2">
|
||||
<input type="submit" name="button1">Submit</button>
|
||||
</form>""",
|
||||
url="http://www.example.com/this/list.html")
|
||||
req = self.request_class.from_response(response)
|
||||
self.assertEqual(req.method, 'POST')
|
||||
self.assertEqual(req.headers['Content-type'], b'application/x-www-form-urlencoded')
|
||||
self.assertEqual(req.url, "http://www.example.com/this/post.php")
|
||||
fs = _qs(req)
|
||||
self.assertEqual(fs[b'test1'], [b'val1'])
|
||||
self.assertEqual(fs[b'test2'], [b'val2'])
|
||||
self.assertEqual(fs[b'button1'], [b''])
|
||||
|
||||
def test_from_response_button_novalue(self):
|
||||
response = _buildresponse(
|
||||
"""<form action="post.php" method="POST">
|
||||
<input type="hidden" name="test1" value="val1">
|
||||
<input type="hidden" name="test2" value="val2">
|
||||
<button type="submit" name="button1">Submit</button>
|
||||
</form>""",
|
||||
url="http://www.example.com/this/list.html")
|
||||
req = self.request_class.from_response(response)
|
||||
self.assertEqual(req.method, 'POST')
|
||||
self.assertEqual(req.headers['Content-type'], b'application/x-www-form-urlencoded')
|
||||
self.assertEqual(req.url, "http://www.example.com/this/post.php")
|
||||
fs = _qs(req)
|
||||
self.assertEqual(fs[b'test1'], [b'val1'])
|
||||
self.assertEqual(fs[b'test2'], [b'val2'])
|
||||
self.assertEqual(fs[b'button1'], [b''])
|
||||
|
||||
def _buildresponse(body, **kwargs):
|
||||
kwargs.setdefault('body', body)
|
||||
kwargs.setdefault('url', 'http://example.com')
|
||||
|
|
|
|||
Loading…
Reference in New Issue