fixes #2166
This commit is contained in:
36
test/functional/api_keys_controller_test.rb
Normal file
36
test/functional/api_keys_controller_test.rb
Normal file
@@ -0,0 +1,36 @@
|
||||
require 'test_helper'
|
||||
|
||||
class ApiKeysControllerTest < ActionController::TestCase
|
||||
context "An api keys controller" do
|
||||
setup do
|
||||
@user = FactoryGirl.create(:gold_user)
|
||||
end
|
||||
|
||||
context "#new" do
|
||||
should "render" do
|
||||
get :new, {}, {:user_id => @user.id}
|
||||
assert_response :success
|
||||
end
|
||||
end
|
||||
|
||||
context "#create" do
|
||||
should "succeed" do
|
||||
assert_difference("ApiKey.count", 1) do
|
||||
post :create, {}, {:user_id => @user.id}
|
||||
end
|
||||
end
|
||||
|
||||
context "when an api key already exists" do
|
||||
setup do
|
||||
ApiKey.generate!(@user)
|
||||
end
|
||||
|
||||
should "not create another api key" do
|
||||
assert_difference("ApiKey.count", 0) do
|
||||
post :create, {}, {:user_id => @user.id}
|
||||
end
|
||||
end
|
||||
end
|
||||
end
|
||||
end
|
||||
end
|
||||
@@ -19,15 +19,16 @@ class PostsControllerTest < ActionController::TestCase
|
||||
context "passing the api limit" do
|
||||
setup do
|
||||
User.any_instance.stubs(:api_hourly_limit).returns(5)
|
||||
ApiKey.generate!(@user)
|
||||
end
|
||||
|
||||
should "work" do
|
||||
CurrentUser.user.api_hourly_limit.times do
|
||||
get :index, {:format => "json", :login => @user.name, :api_key => @user.bcrypt_cookie_password_hash}
|
||||
get :index, {:format => "json", :login => @user.name, :api_key => @user.api_key.key}
|
||||
assert_response :success
|
||||
end
|
||||
|
||||
get :index, {:format => "json", :login => @user.name, :api_key => @user.bcrypt_cookie_password_hash}
|
||||
get :index, {:format => "json", :login => @user.name, :api_key => @user.api_key.key}
|
||||
assert_response 421
|
||||
end
|
||||
end
|
||||
|
||||
Reference in New Issue
Block a user