diff --git a/spec/acceptance/learning_objects_spec.rb b/spec/acceptance/learning_objects_spec.rb index 2340ea37d63b99039b98e2719a0f0767c2f47ad1..5b01227ddcd5d66540cebd8f20f192f739adc008 100644 --- a/spec/acceptance/learning_objects_spec.rb +++ b/spec/acceptance/learning_objects_spec.rb @@ -46,4 +46,22 @@ resource 'Learning Objects' do end end + delete '/v1/learning_objects/:id/like' do + include_context "authenticate_user" + + let(:id) { learning_objects.first.id } + + before do + create(:like, user: @user, likeable: learning_objects.first) + end + + example 'Unliking a learning object' do + likes = learning_objects.first.likes.count + do_request + expect(path).to eq("/v1/learning_objects/#{id}/like") + expect(JSON.parse(response_body)['count']).to eq(likes - 1) + expect(status).to eq(200) + end + end + end diff --git a/spec/shared/contexts.rb b/spec/shared/contexts.rb index 3241f4358722ac21d478527d823fe422e7fd4473..8550f7fbdf275be72c2e8402f24670b3854b77a6 100644 --- a/spec/shared/contexts.rb +++ b/spec/shared/contexts.rb @@ -9,7 +9,8 @@ RSpec.shared_context "authenticate_user", shared_context: :metadata do let(:access_token) { @auth_headers['access-token'] } before do - @auth_headers = create(:user).create_new_auth_token + @user = create(:user) + @auth_headers = @user.create_new_auth_token end end