spec/serializable/resource_spec.rb in restpack_serializer-0.6.7 vs spec/serializable/resource_spec.rb in restpack_serializer-0.6.8
- old
+ new
@@ -7,53 +7,54 @@
end
let(:resource) { MyApp::SongSerializer.resource(params, scope, context) }
let(:params) { { id: @song.id } }
let(:scope) { nil }
- let(:context) { { } }
+ let(:context) { {} }
it "returns a resource by id" do
- resource[:songs].count.should == 1
- resource[:songs][0][:id].should == @song.id.to_s
+ expect(resource[:songs].count).to eq(1)
+ expect(resource[:songs][0][:id]).to eq(@song.id.to_s)
end
context "with context" do
let(:context) { { reverse_title?: true } }
it "returns reversed titles" do
- resource[:songs][0][:title].should == @song.title.reverse
+ expect(resource[:songs][0][:title]).to eq(@song.title.reverse)
end
end
describe "side-loading" do
let(:params) { { id: @song.id, include: 'albums' } }
it "includes side-loaded models" do
- resource[:linked][:albums].count.should == 1
- resource[:linked][:albums].first[:id].should == @song.album.id.to_s
+ expect(resource[:linked][:albums].count).to eq(1)
+ expect(resource[:linked][:albums].first[:id]).to eq(@song.album.id.to_s)
end
it "includes the side-loads in the main meta data" do
- resource[:meta][:songs][:include].should == ["albums"]
+ expect(resource[:meta][:songs][:include]).to eq(%w(albums))
end
end
describe "missing resource" do
let(:params) { { id: "-99" } }
+
it "returns no resource" do
- resource[:songs].length.should == 0
+ expect(resource[:songs].length).to eq(0)
end
#TODO: add specs for jsonapi error format when it has been standardised
# https://github.com/RestPack/restpack_serializer/issues/27
# https://github.com/json-api/json-api/issues/7
end
describe "song with no artist" do
- let(:song) { FactoryGirl.create(:song, :artist => nil) }
+ let(:song) { FactoryGirl.create(:song, artist: nil) }
let(:resource) { MyApp::SongSerializer.resource(id: song.id.to_s) }
it "should not have an artist link" do
- resource[:songs][0][:links].keys.should_not include(:artist)
+ expect(resource[:songs][0][:links].keys).not_to include(:artist)
end
end
end