Я планирую использовать атрибуты псевдонимов для нескольких моих ассоциаций моделей. Примечание: Я полностью в курсе, что я могу также псевдоним это объединение с помощью:Тестирование ассоциации с alias_attribute
belongs_to :type, class_name: "AlbumType"
, но хотел бы продолжить изучение метода alias_attribute. Имея это в виду, у меня есть Album
, который принадлежит AlbumType
.
class Album < ApplicationRecord
alias_attribute :type, :album_type
belongs_to :album_type
end
class AlbumType < ApplicationRecord
has_many :albums
end
Пока все хорошо. Теперь я бы хотел протестировать aliased-ассоциацию в своем альбоме. Похоже, что традиционный belongs_to
musta-matcher недостаточно умен, чтобы определить, что тип является album_type, даже после указания названия класса. Я, конечно, не против написания традиционного теста RSpec, но не совсем уверен, как в этом случае. Любая помощь приветствуется.
RSpec.describe Album, type: :model do
describe "ActiveRecord associations" do
it { should belong_to(:album_type) }
context "alias attributes" do
it { should belong_to(:type).class_name("AlbumType") }
end
end
end
Спасибо, что поняли, что для меня. В настоящее время в процессе настройки моих сериализаторов ActiveModel это произошло в самый последний момент. –