def test_listener_registration_error(self): app = App(signing_secret="valid", client=self.web_client) with pytest.raises(BoltError): app.action({ "type": "invalid_type", "action_id": "a" })(self.simple_listener)
}, ] }) @app.view("view-id") def handle_view_submission(ack, body, logger): ack() logger.info(body["view"]["state"]["values"]) def ack_button_click(ack, respond): ack() respond("Loading ...") def respond_5_seconds_later(respond): time.sleep(5) respond("Completed!") app.action("a")(ack=ack_button_click, lazy=[respond_5_seconds_later]) if __name__ == "__main__": app.start(3000) # pip install slack_bolt # export SLACK_SIGNING_SECRET=*** # export SLACK_BOT_TOKEN=xoxb-*** # python modals_app.py
def test_listener_registration_error(self): app = App(signing_secret="valid", token="xoxb-xxx") with pytest.raises(BoltError): app.action({"type": "invalid_type", "action_id": "a"})(self.simple_listener)
def register_actions(app: App, middleware: Type[SlackMiddleware]) -> None: action_delete_goal = app.action(constraints={"action_id": "delete_goal"}, middleware=[middleware.ctx_goal_store]) assert action_delete_goal action_delete_goal(delete_goal)