fix(tests): reliable SecurityMiddleware state reset via app.state reference
- Store direct reference to SecurityMiddleware instance in app.state._security_middleware
immediately at module load time in main.py (before middleware_stack is built)
- Rewrite conftest.py _reset_all() to use app.state._security_middleware instead of
fragile middleware stack traversal that failed before the first request was made
- Set explicit client=('127.0.0.1', 50000) on ASGITransport across all test files
to ensure guard-core always sees a valid IP and can ban/track it correctly
This commit is contained in:
@@ -56,9 +56,11 @@ config = SecurityConfig(
|
||||
)
|
||||
guard_deco = SecurityDecorator(config)
|
||||
|
||||
_security_middleware = SecurityMiddleware(app.router, config=config)
|
||||
app.add_middleware(SecurityMiddleware, config=config)
|
||||
app.add_middleware(RequestLoggingMiddleware)
|
||||
app.state.guard_decorator = guard_deco
|
||||
app.state._security_middleware = _security_middleware
|
||||
mongo_worker = MongoWorker()
|
||||
_rabbit_worker: Optional[RabbitWorker] = None
|
||||
|
||||
|
||||
Reference in New Issue
Block a user