1

I wrote a function in python that will receive a flask.request. I am wondering how can I test this function by sending a fake request to it. Is there a way to do this locally ?

My function:

def main(request: flask.Request):
    if request.method == 'GET':
        try:
            request_json = request.get_json()
        except:
            return '', 400
        else:
            stuff = do_stuff(request_json)
            return stuff, 200
cuzureau
  • 330
  • 2
  • 17

1 Answers1

1

I use this to test your issue on my local

import flask


app = flask.Flask(__name__)

@app.route("/<request>")
def main(request: flask.Request):
    if flask.request.method == 'GET':
        try:
            request_json = request.get_json()
        except:
            return '', 400
        else:
            stuff = do_stuff(request_json)
        return stuff, 200

if __name__ == "__main__":
    app.run(debug=True)

then do curl

curl -i http://localhost:5000/testing

and will give output like

HTTP/1.0 400 BAD REQUEST
Content-Type: text/html; charset=utf-8
Content-Length: 0
Server: Werkzeug/2.0.1 Python/3.9.6
Date: Tue, 26 Oct 2021 16:57:19 GMT

is this expected output?

Lazuardi N Putra
  • 428
  • 1
  • 5
  • 15