Sha256: 31ae99d6cad28cbce2762551440097db4831f3662deb9db044a3723d11cff152
Contents?: true
Size: 1.44 KB
Versions: 1
Compression:
Stored size: 1.44 KB
Contents
require 'spec_helper' describe RestPack::Serializer::SideLoading do context "when side-loading" do describe ".has_many" do before(:each) do @artist1 = FactoryGirl.create(:artist_with_albums, album_count: 2) @artist2 = FactoryGirl.create(:artist_with_albums, album_count: 1) end let(:side_loads) { MyApp::ArtistSerializer.side_loads(models, options) } context "with a single model" do let(:models) { [@artist1] } context "when including :albums" do let(:options) { RestPack::Serializer::Options.new(MyApp::ArtistSerializer, { "includes" => "albums" }) } it "returns side-loaded albums" do side_loads[:albums].count.should == @artist1.albums.count side_loads[:meta][:albums][:page].should == 1 side_loads[:meta][:albums][:count].should == @artist1.albums.count end end end context "with two models" do let(:models) { [@artist1, @artist2] } context "when including :albums" do let(:options) { RestPack::Serializer::Options.new(MyApp::ArtistSerializer, { "includes" => "albums" }) } it "returns side-loaded albums" do expected_count = @artist1.albums.count + @artist2.albums.count side_loads[:albums].count.should == expected_count side_loads[:meta][:albums][:count].should == expected_count end end end end end end
Version data entries
1 entries across 1 versions & 1 rubygems
Version | Path |
---|---|
restpack_serializer-0.4.6 | spec/serializable/side_loading/has_many_spec.rb |