Include roots for resources in rabl index views
This commit is contained in:
parent
4e0c422a6f
commit
bdfd0edff0
@ -1,4 +1,4 @@
|
||||
collection @playlists
|
||||
collection @playlists, root: :playlists, object_root: false
|
||||
|
||||
attribute :id
|
||||
attribute :name
|
||||
|
@ -1,4 +1,4 @@
|
||||
collection @tracks
|
||||
collection @tracks, root: :tracks, object_root: false
|
||||
|
||||
attribute :id
|
||||
attribute :name
|
||||
|
@ -13,7 +13,7 @@ describe 'API sign in' do
|
||||
it 'signs the user in with valid credentials' do
|
||||
do_create
|
||||
|
||||
expect(json).to eq(id: user.id)
|
||||
expect(json).to eq(user: { id: user.id })
|
||||
end
|
||||
|
||||
[:email, :password].each do |attr|
|
||||
|
@ -7,33 +7,35 @@ describe 'API playlists' do
|
||||
playlist = create :playlist
|
||||
get api_playlists_path, format: :json
|
||||
|
||||
expect(json).to match [
|
||||
a_hash_including(
|
||||
id: an_instance_of(Fixnum),
|
||||
name: playlist[:name]
|
||||
)
|
||||
]
|
||||
expect(json).to eq(
|
||||
playlists: [{
|
||||
id: playlist.id,
|
||||
name: playlist.name
|
||||
}]
|
||||
)
|
||||
end
|
||||
|
||||
it 'shows a playlist' do
|
||||
playlist = create :playlist
|
||||
get api_playlist_path playlist, format: :json
|
||||
|
||||
expect(json).to match(
|
||||
id: playlist.id,
|
||||
name: playlist.name
|
||||
expect(json).to eq(
|
||||
playlist: {
|
||||
id: playlist.id,
|
||||
name: playlist.name
|
||||
}
|
||||
)
|
||||
end
|
||||
|
||||
it 'creates playlist' do
|
||||
playlist = attributes_for :playlist
|
||||
post api_playlists_path,
|
||||
format: :json,
|
||||
playlist: playlist
|
||||
post api_playlists_path, format: :json, playlist: playlist
|
||||
|
||||
expect(json).to match(
|
||||
id: an_instance_of(Fixnum),
|
||||
name: playlist[:name]
|
||||
playlist: {
|
||||
id: an_instance_of(Fixnum),
|
||||
name: playlist[:name]
|
||||
}
|
||||
)
|
||||
end
|
||||
end
|
||||
|
@ -8,26 +8,30 @@ describe 'API tracks' do
|
||||
track_2 = create :track, name: 'Track 2'
|
||||
get api_tracks_path, format: :json
|
||||
|
||||
expect(json).to eq [
|
||||
{
|
||||
id: track_1.id,
|
||||
name: 'Track 1',
|
||||
sound_url: api_sound_url(track_1.sound)
|
||||
},
|
||||
{
|
||||
id: track_2.id,
|
||||
name: 'Track 2'
|
||||
}
|
||||
]
|
||||
expect(json).to eq(
|
||||
tracks: [
|
||||
{
|
||||
id: track_1.id,
|
||||
name: 'Track 1',
|
||||
sound_url: api_sound_url(track_1.sound)
|
||||
},
|
||||
{
|
||||
id: track_2.id,
|
||||
name: 'Track 2'
|
||||
}
|
||||
]
|
||||
)
|
||||
end
|
||||
|
||||
it 'shows a track' do
|
||||
track = create :track
|
||||
get api_track_path track, format: :json
|
||||
|
||||
expect(json).to match(
|
||||
id: track.id,
|
||||
name: track.name
|
||||
expect(json).to eq(
|
||||
track: {
|
||||
id: track.id,
|
||||
name: track.name
|
||||
}
|
||||
)
|
||||
end
|
||||
end
|
||||
|
Loading…
x
Reference in New Issue
Block a user