Class: ActionBot::Base
- Inherits:
-
Object
- Object
- ActionBot::Base
- Defined in:
- lib/action_bot/base.rb
Instance Method Summary collapse
Instance Method Details
#action(**kwargs) ⇒ Object
17 18 19 20 21 22 23 24 |
# File 'lib/action_bot/base.rb', line 17 def action(**kwargs) params = kwargs.delete(:params) || {} controller, action = kwargs.first controller_object = "#{controller.to_s.camelize}Controller".constantize.new raise "No such method: #{action} for #{controller}" unless controller_object.respond_to?(action) controller_object.params = ActionController::Parameters.new params controller_object.public_send(action) end |
#bot_runner ⇒ Object
26 27 28 |
# File 'lib/action_bot/base.rb', line 26 def bot_runner ActionBot::Runner end |
#on(condition, **kwargs) ⇒ Object
5 6 7 8 9 10 11 12 13 14 15 |
# File 'lib/action_bot/base.rb', line 5 def on(condition, **kwargs) return unless condition params = kwargs.delete(:params) || {} controller, action = kwargs.first controller_object = "#{controller.to_s.camelize}Controller".constantize.new raise "No such method: #{action} for #{controller}" unless controller_object.respond_to?(action) controller_object.params = ActionController::Parameters.new params controller_object.public_send(action) throw(:done) end |