class GameValidator::Validator
Public Instance Methods
call(action_hash:, user:)
click to toggle source
# File lib/game_validator/validator.rb, line 14 def call(action_hash:, user:) a = action_hash.dup a[:user] = user result = validate_player_action_and_user.(a) return build_failure.(errors: result.errors) if result.failure? validate = full_validator_for[[a[:player_action], a[:user].admin?]] result = validate.(action_hash) return build_failure.(errors: result.errors) if result.failure? result end