module ValidateMyRoutes::Validate::Macros

Helper functions to provide a DSL for creating validation rules

Public Instance Methods

description(&block) click to toggle source

Customize validation rule description

description do

'this is my custom validation rule description'

end

# File lib/validate_my_routes/validate/mixins/macros.rb, line 19
def description(&block)
  define_method(:description, &block)
end
failure_code(&block) click to toggle source

Customize http status code of the failure

failure_code do |in_path|

in_path ? 404 : 400

end

# File lib/validate_my_routes/validate/mixins/macros.rb, line 46
def failure_code(&block)
  define_method(:failure_code, &block)
end
failure_message(&block) click to toggle source

Customize message returned when validation fails for all parameters

failure_message do |params|

"oh no! validation failed for #{params}"

end

# File lib/validate_my_routes/validate/mixins/macros.rb, line 28
def failure_message(&block)
  define_method(:failure_message, &block)
end
failure_message_when_negated(&block) click to toggle source

Customize message returned when opposite rule validation fails (not of type A)

failure_message_when_negated do |params|

"oh no! validation failed for #{params}, but it was not expected"

end

# File lib/validate_my_routes/validate/mixins/macros.rb, line 37
def failure_message_when_negated(&block)
  define_method(:failure_message_when_negated, &block)
end
validate(&block) click to toggle source

Define all parameters validation

validate do |params|

params.key? 'some_parameter_name'

end

# File lib/validate_my_routes/validate/mixins/macros.rb, line 10
def validate(&block)
  define_method(:validate, &block)
end