diff --git a/spec/acceptance/collections_spec.rb b/spec/acceptance/collections_spec.rb
index b9d91814b18f2e849aa268a7413aac83907a2ab6..92a73342d56b601ee40946f25dd1fe5764d21e48 100644
--- a/spec/acceptance/collections_spec.rb
+++ b/spec/acceptance/collections_spec.rb
@@ -1,5 +1,6 @@
 require 'acceptance_helpers'
 require 'shared/examples'
+require 'shared/contexts'
 
 resource 'Collections' do
   header 'Accept', 'application/json'
@@ -34,4 +35,39 @@ resource 'Collections' do
     end
   end
 
+  post '/v1/collections/:id/like' do
+    include_context "authenticate_user"
+
+    let(:id) { collections.first.id }
+
+    example 'Liking a collection' do
+      likes = collections.first.likes.count
+      do_request
+      expect(path).to eq("/v1/collections/#{id}/like")
+      expect(JSON.parse(response_body)['count']).to eq(likes + 1)
+      expect(status).to eq(201)
+    end
+  end
+
+  delete '/v1/collections/:id/like' do
+    include_context "authenticate_user"
+
+    let(:id) { collections.first.id }
+
+    before do
+      create(:like, user: @user, likeable: collections.first)
+    end
+
+    example 'Unliking a collection' do
+      likes = collections.first.likes.count
+      do_request
+      expect(path).to eq("/v1/collections/#{id}/like")
+      expect(JSON.parse(response_body)['count']).to eq(likes - 1)
+      expect(status).to eq(200)
+    end
+  end
+
+
+
+
 end
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