diff options
author | Stefan Eissing <icing@apache.org> | 2021-10-11 16:08:57 +0200 |
---|---|---|
committer | Stefan Eissing <icing@apache.org> | 2021-10-11 16:08:57 +0200 |
commit | ded853c7cadc6a2b5590a0ceee5cddd0444da17a (patch) | |
tree | 2a8d944d77ba160559872ab5365bfe3a8682dccd /test/pyhttpd/htdocs/cgi/necho.py | |
parent | mod_proxy_uwsgi: Remove duplicate slashes at the beginning of PATH_INFO. (diff) | |
download | apache2-ded853c7cadc6a2b5590a0ceee5cddd0444da17a.tar.xz apache2-ded853c7cadc6a2b5590a0ceee5cddd0444da17a.zip |
* test infrastruture:
- moved common pytest code into test/pyhttpd
- does basic setup for a list of host names and some htdocs
- added modules/core and moved encoding tests from http2 there
- all test methods have module name in in prefix now, so to test only core, run
> pytest -k test_core
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@1894134 13f79535-47bb-0310-9956-ffa450edef68
Diffstat (limited to 'test/pyhttpd/htdocs/cgi/necho.py')
-rw-r--r-- | test/pyhttpd/htdocs/cgi/necho.py | 54 |
1 files changed, 54 insertions, 0 deletions
diff --git a/test/pyhttpd/htdocs/cgi/necho.py b/test/pyhttpd/htdocs/cgi/necho.py new file mode 100644 index 0000000000..b9249b8969 --- /dev/null +++ b/test/pyhttpd/htdocs/cgi/necho.py @@ -0,0 +1,54 @@ +#!/usr/bin/env python3 +import cgi, os +import time +import cgitb; cgitb.enable() + +status = '200 Ok' + +try: + form = cgi.FieldStorage() + count = form['count'] + text = form['text'] + + waitsec = float(form['wait1'].value) if 'wait1' in form else 0.0 + if waitsec > 0: + time.sleep(waitsec) + + if int(count.value): + print("Status: 200") + print("""\ +Content-Type: text/plain\n""") + + waitsec = float(form['wait2'].value) if 'wait2' in form else 0.0 + if waitsec > 0: + time.sleep(waitsec) + + i = 0; + for i in range(0, int(count.value)): + print("%s" % (text.value)) + + waitsec = float(form['wait3'].value) if 'wait3' in form else 0.0 + if waitsec > 0: + time.sleep(waitsec) + + else: + print("Status: 400 Parameter Missing") + print("""\ +Content-Type: text/html\n + <html><body> + <p>No count was specified: %s</p> + </body></html>""" % (count.value)) + +except KeyError: + print("Status: 200 Ok") + print("""\ +Content-Type: text/html\n + <html><body> + Echo <form method="POST" enctype="application/x-www-form-urlencoded"> + <input type="text" name="count"> + <input type="text" name="text"> + <button type="submit">Echo</button></form> + </body></html>""") + pass + + |