mirror of https://github.com/pallets/flask.git
				
				
				
			
		
			
				
	
	
		
			29 lines
		
	
	
		
			792 B
		
	
	
	
		
			Python
		
	
	
	
			
		
		
	
	
			29 lines
		
	
	
		
			792 B
		
	
	
	
		
			Python
		
	
	
	
| import flask
 | |
| from flask.globals import request_ctx
 | |
| from flask.sessions import SessionInterface
 | |
| 
 | |
| 
 | |
| def test_open_session_with_endpoint():
 | |
|     """If request.endpoint (or other URL matching behavior) is needed
 | |
|     while loading the session, RequestContext.match_request() can be
 | |
|     called manually.
 | |
|     """
 | |
| 
 | |
|     class MySessionInterface(SessionInterface):
 | |
|         def save_session(self, app, session, response):
 | |
|             pass
 | |
| 
 | |
|         def open_session(self, app, request):
 | |
|             request_ctx.match_request()
 | |
|             assert request.endpoint is not None
 | |
| 
 | |
|     app = flask.Flask(__name__)
 | |
|     app.session_interface = MySessionInterface()
 | |
| 
 | |
|     @app.get("/")
 | |
|     def index():
 | |
|         return "Hello, World!"
 | |
| 
 | |
|     response = app.test_client().get("/")
 | |
|     assert response.status_code == 200
 |