def test_all_routes_have_authentication(client): # This tests that each blueprint registered on the application has a before_request function registered. # The None row is removed from the comparison as that is not blueprint specific but app specific. before_req_funcs = set(x for x in client.application.before_request_funcs if x is not None) blueprint_names = set(client.application.blueprints.keys()) assert blueprint_names == before_req_funcs routes_blueprint_names = set([x.split('.')[0] for x in client.application.view_functions.keys()]) # The static route is always available by default for a Flask app to serve anything in the static folder. routes_blueprint_names.remove('static') assert sorted(blueprint_names) == sorted(routes_blueprint_names)