예제 #1
0
 def test_build(self):
     required_args = [
         "logger",
         "client",
         "req",
         "resp",
         "context",
         "body",
         "payload",
         "ack",
         "say",
         "respond",
         "next",
     ]
     arg_params: dict = build_async_required_kwargs(
         logger=logging.getLogger(__name__),
         required_arg_names=required_args,
         request=AsyncBoltRequest(body="", headers={}),
         response=BoltResponse(status=200),
         next_func=next,
     )
     args = AsyncArgs(**arg_params)
     assert args.logger is not None
     assert args.request is not None
     assert args.response is not None
     assert args.client is not None
예제 #2
0
 async def async_matches(self, req: AsyncBoltRequest,
                         resp: BoltResponse) -> bool:
     return await self.func(**build_async_required_kwargs(
         logger=self.logger,
         required_arg_names=self.arg_names,
         request=req,
         response=resp,
     ))
예제 #3
0
 async def request_wired_wrapper() -> None:
     try:
         await internal_func(**build_async_required_kwargs(
             logger=logger,
             required_arg_names=arg_names,
             request=request,
             response=None,
         ))
     except Exception as e:
         logger.error(f"Failed to run an internal function ({e})")
 async def async_process(
     self,
     *,
     req: AsyncBoltRequest,
     resp: BoltResponse,
     next: Callable[[], Awaitable[BoltResponse]],
 ) -> BoltResponse:
     return await self.func(**build_async_required_kwargs(
         logger=self.logger,
         required_arg_names=self.arg_names,
         request=req,
         response=resp,
         next_func=next,
     ))
예제 #5
0
 def test_all_values_from_context(self):
     req = AsyncBoltRequest(body="", headers={})
     req.context["foo"] = "FOO"
     req.context["bar"] = 123
     required_args = ["foo", "bar", "ack"]
     arg_params: dict = build_async_required_kwargs(
         logger=logging.getLogger(__name__),
         required_arg_names=required_args,
         request=req,
         response=BoltResponse(status=200),
         next_func=next,
     )
     assert arg_params["foo"] == "FOO"
     assert arg_params["bar"] == 123
     assert arg_params["ack"] is not None