diff options
author | Simo Sorce <simo@redhat.com> | 2014-09-19 15:08:52 -0400 |
---|---|---|
committer | Patrick Uiterwijk <puiterwijk@redhat.com> | 2014-09-24 20:29:12 +0200 |
commit | 745b0a9de5824df83887325390ca2a4e5b194264 (patch) | |
tree | 29013f149af82a784fb2c639010a30235a05114f | |
parent | a642c3ffedfc270fdd1ae97203e19d631a8e6721 (diff) | |
download | ipsilon-745b0a9de5824df83887325390ca2a4e5b194264.tar.gz ipsilon-745b0a9de5824df83887325390ca2a4e5b194264.tar.xz ipsilon-745b0a9de5824df83887325390ca2a4e5b194264.zip |
Handle the presence of additional form fields
For exampe hidden fields which must be preserved and POSTed back to the
action url.
Signed-off-by: Simo Sorce <simo@redhat.com>
Reviewed-by: Patrick Uiterwijk <puiterwijk@redhat.com>
-rwxr-xr-x | tests/helpers/http.py | 13 |
1 files changed, 10 insertions, 3 deletions
diff --git a/tests/helpers/http.py b/tests/helpers/http.py index 833637f..1d026a7 100755 --- a/tests/helpers/http.py +++ b/tests/helpers/http.py @@ -129,9 +129,11 @@ class HttpSessions(object): srv = self.servers[idp] try: - results = self.get_form_data(page, "login_form", []) + results = self.get_form_data(page, "login_form", ["name", "value"]) action_url = results[0] method = results[1] + names = results[2] + values = results[3] if action_url is None: raise Exception except Exception: # pylint: disable=broad-except @@ -139,8 +141,13 @@ class HttpSessions(object): referer = page.make_referer() headers = {'referer': referer} - payload = {'login_name': srv['user'], - 'login_password': srv['pwd']} + payload = {} + for i in range(0, len(names)): + payload[names[i]] = values[i] + + # replace known values + payload['login_name'] = srv['user'] + payload['login_password'] = srv['pwd'] return [method, self.new_url(referer, action_url), {'headers': headers, 'data': payload}] |