Class: ActiveSerializer::SerializationRulesValidator
- Inherits:
-
Object
- Object
- ActiveSerializer::SerializationRulesValidator
- Defined in:
- lib/active_serializer/serialization_rules_validator.rb
Class Method Summary collapse
Instance Method Summary collapse
- #attribute(name, value = nil, &block) ⇒ Object
- #attributes(*attrs) ⇒ Object
- #namespace(name, &block) ⇒ Object
- #resource(name, object = nil, &block) ⇒ Object
- #resources(name, objects = nil, &block) ⇒ Object
- #serialize_collection(*attrs) ⇒ Object
- #serialize_entity(*attrs) ⇒ Object
Class Method Details
.validate!(&rules) ⇒ Object
4 5 6 7 8 9 10 |
# File 'lib/active_serializer/serialization_rules_validator.rb', line 4 def self.validate!(&rules) fake_objects = rules.arity.times.map do ActiveSerializer::Support::FakeObject.new end validator = self.new validator.instance_exec(*fake_objects, &rules) end |
Instance Method Details
#attribute(name, value = nil, &block) ⇒ Object
12 13 14 |
# File 'lib/active_serializer/serialization_rules_validator.rb', line 12 def attribute(name, value = nil, &block) ActiveSerializer::Support::ArgsValidator.is_symbol!(name, 'attributes') end |
#attributes(*attrs) ⇒ Object
31 32 33 34 |
# File 'lib/active_serializer/serialization_rules_validator.rb', line 31 def attributes(*attrs) attrs.delete_at(-1) ActiveSerializer::Support::ArgsValidator.is_array_of_symbols!(attrs, 'attributes') end |
#namespace(name, &block) ⇒ Object
36 37 38 39 |
# File 'lib/active_serializer/serialization_rules_validator.rb', line 36 def namespace(name, &block) ActiveSerializer::Support::ArgsValidator.is_symbol!(name, 'namespace name') ActiveSerializer::Support::ArgsValidator.block_given!(block, 'namespace block') end |
#resource(name, object = nil, &block) ⇒ Object
41 42 43 44 |
# File 'lib/active_serializer/serialization_rules_validator.rb', line 41 def resource(name, object = nil, &block) ActiveSerializer::Support::ArgsValidator.is_symbol!(name, 'resource name') ActiveSerializer::Support::ArgsValidator.block_given!(block, 'resource block') end |
#resources(name, objects = nil, &block) ⇒ Object
46 47 48 49 |
# File 'lib/active_serializer/serialization_rules_validator.rb', line 46 def resources(name, objects = nil, &block) ActiveSerializer::Support::ArgsValidator.is_symbol!(name, 'resources name') ActiveSerializer::Support::ArgsValidator.block_given!(block, 'resources block') end |
#serialize_collection(*attrs) ⇒ Object
16 17 18 19 20 21 22 |
# File 'lib/active_serializer/serialization_rules_validator.rb', line 16 def serialize_collection(*attrs) key = attrs[0] object = attrs[1] klass = attrs[2] ActiveSerializer::Support::ArgsValidator.is_symbol!(key, 'collection name') ActiveSerializer::Support::ArgsValidator.is_class!(klass, 'serializer class') end |
#serialize_entity(*attrs) ⇒ Object
24 25 26 27 28 29 |
# File 'lib/active_serializer/serialization_rules_validator.rb', line 24 def serialize_entity(*attrs) key = attrs[0] klass = attrs[2] ActiveSerializer::Support::ArgsValidator.is_symbol!(key, 'collection name') ActiveSerializer::Support::ArgsValidator.is_class!(klass, 'serializer class') end |