lib/fanforce/validations/validations.rb in fanforce-internal-validations-0.1.4 vs lib/fanforce/validations/validations.rb in fanforce-internal-validations-0.1.5
- old
+ new
@@ -18,11 +18,11 @@
name = field if is_blank?(name) and field.is_a?(Symbol)
name = :unknown if is_blank?(name)
name.to_sym
end
- def validates_presence_of(*args)
+ def validates_presence_of_all(*args)
opts = extract_options!(args)
params = extract_validation_params(opts)
fields_to_validate = args.is_a?(Array) ? args : [args]
invalid_fields = []
@@ -32,12 +32,13 @@
end
end
return true if invalid_fields.size == 0
errors = invalid_fields.inject([]) {|result, f| result << format_validation_error(opts, f, :missing_field) }
- raise_validation_error(opts, errors, Fanforce::Error::CorruptRequest)
+ raise_validation_errors(opts, errors, Fanforce::Error::BadRequest)
end
+ alias validates_presence_of validates_presence_of_all
def validates_presence_of_any(*args)
opts = extract_options!(args)
params = extract_validation_params(opts)
fields_to_validate = args.is_a?(Array) ? args : [args]
@@ -49,16 +50,13 @@
end
end
return true if invalid_fields.size < fields_to_validate.size
errors = [format_validation_error(opts, invalid_fields, :invalid_data)]
- raise_validation_error(opts, errors, Fanforce::Error::CorruptRequest)
+ raise_validation_errors(opts, errors, Fanforce::Error::BadRequest)
end
- def validates_presence_of_all(*args)
- validates_presence_of(args)
- end
def validates_true(*args)
opts = extract_options!(args)
params = extract_validation_params(opts)
bools_to_validate = args.is_a?(Array) ? args : [args]
@@ -70,23 +68,23 @@
end
end
return true if invalid_fields.size == 0
errors = invalid_fields.inject([]) {|result, f| result << format_validation_error(opts, f, :invalid_data) }
- raise_validation_error(opts, errors, Fanforce::Error::RequestFailed)
+ raise_validation_errors(opts, errors, Fanforce::Error::RequestFailed)
end
- def raise_validation_error(opts, errors, default_error_class)
- raise (opts[:error_class] || default_error_class).new(errors)
- end
-
def format_validation_error(opts, fields, default_error_code=nil)
error = {
resource: is_present?(opts[:resource]) ? opts[:resource] : self.class.name.demodulize.tableize.singularize,
code: is_present?(opts[:code]) ? opts[:code] : default_error_code,
message: opts[:message]
}
fields.is_a?(Array) ? error.update(fields: fields) : error.update(field: fields)
+ end
+
+ def raise_validation_errors(opts, errors, default_error_class)
+ raise (opts[:error_class] || default_error_class).new(*errors)
end
def extract_options!(args)
if args.last.is_a?(::Hash)
opts = args.pop.symbolize_keys
\ No newline at end of file