jarus / flask-testing

Unittest extensions for Flask
http://pythonhosted.org/Flask-Testing/
Other
501 stars 110 forks source link

assertRedirects assume HTTP is always the used protocol #142

Open rafspiny opened 4 years ago

rafspiny commented 4 years ago

The function in object assume HTTP is the only scheme. If the PREFERRED_URL_SCHEME has been set to HTTPS it will not pick up the changes, resulting in false positives during testing.

It is true that you can pass an absolute URL, bypassing the problem. Nevertheless, I am wondering if it would be better to have this function to comply with the PREFERRED_URL_SCHEME specified in Flask.

Code here

Suggested change:

expected_location = urljoin("%s://%s" % (self.app.config.get('PREFERRED_URL_SCHEME'), server_name), location)