mirror of
https://github.com/ditkrg/active_model_serializers.git
synced 2026-01-25 15:23:06 +00:00
Better AMS Model attributes interface
This commit is contained in:
@@ -2,16 +2,16 @@ require 'test_helper'
|
||||
|
||||
module SerializationScopeTesting
|
||||
class User < ActiveModelSerializers::Model
|
||||
attr_accessor :id, :name, :admin
|
||||
attributes :id, :name, :admin
|
||||
def admin?
|
||||
admin
|
||||
end
|
||||
end
|
||||
class Comment < ActiveModelSerializers::Model
|
||||
attr_accessor :id, :body
|
||||
attributes :id, :body
|
||||
end
|
||||
class Post < ActiveModelSerializers::Model
|
||||
attr_accessor :id, :title, :body, :comments
|
||||
attributes :id, :title, :body, :comments
|
||||
end
|
||||
class PostSerializer < ActiveModel::Serializer
|
||||
attributes :id, :title, :body, :comments
|
||||
|
||||
@@ -10,7 +10,7 @@ module ActiveModelSerializers
|
||||
|
||||
def test_initialization_with_string_keys
|
||||
klass = Class.new(ActiveModelSerializers::Model) do
|
||||
attr_accessor :key
|
||||
attributes :key
|
||||
end
|
||||
value = 'value'
|
||||
|
||||
|
||||
@@ -384,7 +384,7 @@ module ActiveModelSerializers
|
||||
|
||||
def new_model(model_attributes)
|
||||
Class.new(ActiveModelSerializers::Model) do
|
||||
attr_accessor(*model_attributes.keys)
|
||||
attributes(*model_attributes.keys)
|
||||
|
||||
def self.name
|
||||
'TestModel'
|
||||
|
||||
@@ -244,7 +244,7 @@ module ActiveModelSerializers
|
||||
# rubocop:disable Metrics/AbcSize
|
||||
def test_a_serializer_rendered_by_two_adapter_returns_differently_fetch_attributes
|
||||
Object.const_set(:Alert, Class.new(ActiveModelSerializers::Model) do
|
||||
attr_accessor :id, :status, :resource, :started_at, :ended_at, :updated_at, :created_at
|
||||
attributes :id, :status, :resource, :started_at, :ended_at, :updated_at, :created_at
|
||||
end)
|
||||
Object.const_set(:UncachedAlertSerializer, Class.new(ActiveModel::Serializer) do
|
||||
attributes :id, :status, :resource, :started_at, :ended_at, :updated_at, :created_at
|
||||
|
||||
2
test/fixtures/poro.rb
vendored
2
test/fixtures/poro.rb
vendored
@@ -31,7 +31,7 @@ end
|
||||
# model.validate! # => ["cannot be nil"]
|
||||
# model.errors.full_messages # => ["name cannot be nil"]
|
||||
class ModelWithErrors < ::ActiveModelSerializers::Model
|
||||
attr_accessor :name
|
||||
attributes :name
|
||||
end
|
||||
|
||||
class Profile < Model
|
||||
|
||||
@@ -5,10 +5,10 @@ module ActiveModel
|
||||
class ReadAttributeForSerializationTest < ActiveSupport::TestCase
|
||||
# https://github.com/rails-api/active_model_serializers/issues/1653
|
||||
class Parent < ActiveModelSerializers::Model
|
||||
attr_accessor :id
|
||||
attributes :id
|
||||
end
|
||||
class Child < Parent
|
||||
attr_accessor :name
|
||||
attributes :name
|
||||
end
|
||||
class ParentSerializer < ActiveModel::Serializer
|
||||
attributes :$id
|
||||
@@ -30,7 +30,7 @@ module ActiveModel
|
||||
|
||||
# https://github.com/rails-api/active_model_serializers/issues/1658
|
||||
class ErrorResponse < ActiveModelSerializers::Model
|
||||
attr_accessor :error
|
||||
attributes :error
|
||||
end
|
||||
class ApplicationSerializer < ActiveModel::Serializer
|
||||
attributes :status
|
||||
|
||||
@@ -2,10 +2,10 @@ module ActiveModel
|
||||
class Serializer
|
||||
class SerializationTest < ActiveSupport::TestCase
|
||||
class Blog < ActiveModelSerializers::Model
|
||||
attr_accessor :id, :name, :authors
|
||||
attributes :id, :name, :authors
|
||||
end
|
||||
class Author < ActiveModelSerializers::Model
|
||||
attr_accessor :id, :name
|
||||
attributes :id, :name
|
||||
end
|
||||
class BlogSerializer < ActiveModel::Serializer
|
||||
attributes :id
|
||||
|
||||
Reference in New Issue
Block a user