create_list(:oauth_application, 2, :owner => user)
get oauth_applications_path
- assert_response :redirect
assert_redirected_to login_path(:referer => oauth_applications_path)
session_for(user)
get oauth_applications_path
assert_response :success
assert_template "oauth2_applications/index"
- assert_select "tr", 2
+ assert_select "tbody tr", 2
end
def test_new
user = create(:user)
get new_oauth_application_path
- assert_response :redirect
assert_redirected_to login_path(:referer => new_oauth_application_path)
session_for(user)
assert_response :success
assert_template "oauth2_applications/new"
assert_select "form", 1 do
- assert_select "input#doorkeeper_application_name", 1
- assert_select "textarea#doorkeeper_application_redirect_uri", 1
- assert_select "input#doorkeeper_application_confidential", 1
+ assert_select "input#oauth2_application_name", 1
+ assert_select "textarea#oauth2_application_redirect_uri", 1
+ assert_select "input#oauth2_application_confidential", 1
Oauth.scopes.each do |scope|
- assert_select "input#doorkeeper_application_scopes_#{scope.name}", 1
+ assert_select "input#oauth2_application_scopes_#{scope.name}", 1
end
end
end
session_for(user)
assert_difference "Doorkeeper::Application.count", 0 do
- post oauth_applications_path(:doorkeeper_application => {
+ post oauth_applications_path(:oauth2_application => {
:name => "Test Application"
})
end
assert_template "oauth2_applications/new"
assert_difference "Doorkeeper::Application.count", 0 do
- post oauth_applications_path(:doorkeeper_application => {
+ post oauth_applications_path(:oauth2_application => {
:name => "Test Application",
:redirect_uri => "https://test.example.com/",
:scopes => ["bad_scope"]
assert_template "oauth2_applications/new"
assert_difference "Doorkeeper::Application.count", 1 do
- post oauth_applications_path(:doorkeeper_application => {
+ post oauth_applications_path(:oauth2_application => {
:name => "Test Application",
:redirect_uri => "https://test.example.com/",
:scopes => ["read_prefs"]
})
end
- assert_response :redirect
+ assert_redirected_to oauth_application_path(:id => Doorkeeper::Application.find_by(:name => "Test Application").id)
+ end
+
+ def test_create_privileged
+ session_for(create(:user))
+
+ assert_difference "Doorkeeper::Application.count", 0 do
+ post oauth_applications_path(:oauth2_application => {
+ :name => "Test Application",
+ :redirect_uri => "https://test.example.com/",
+ :scopes => ["read_email"]
+ })
+ end
+ assert_response :success
+ assert_template "oauth2_applications/new"
+
+ session_for(create(:administrator_user))
+
+ assert_difference "Doorkeeper::Application.count", 1 do
+ post oauth_applications_path(:oauth2_application => {
+ :name => "Test Application",
+ :redirect_uri => "https://test.example.com/",
+ :scopes => ["read_email"]
+ })
+ end
assert_redirected_to oauth_application_path(:id => Doorkeeper::Application.find_by(:name => "Test Application").id)
end
other_client = create(:oauth_application)
get oauth_application_path(:id => client)
- assert_response :redirect
assert_redirected_to login_path(:referer => oauth_application_path(:id => client.id))
session_for(user)
other_client = create(:oauth_application)
get edit_oauth_application_path(:id => client)
- assert_response :redirect
assert_redirected_to login_path(:referer => edit_oauth_application_path(:id => client.id))
session_for(user)
assert_response :success
assert_template "oauth2_applications/edit"
assert_select "form", 1 do
- assert_select "input#doorkeeper_application_name", 1
- assert_select "textarea#doorkeeper_application_redirect_uri", 1
- assert_select "input#doorkeeper_application_confidential", 1
+ assert_select "input#oauth2_application_name", 1
+ assert_select "textarea#oauth2_application_redirect_uri", 1
+ assert_select "input#oauth2_application_confidential", 1
Oauth.scopes.each do |scope|
- assert_select "input#doorkeeper_application_scopes_#{scope.name}", 1
+ assert_select "input#oauth2_application_scopes_#{scope.name}", 1
end
end
end
assert_template "oauth2_applications/not_found"
put oauth_application_path(:id => client,
- :doorkeeper_application => {
+ :oauth2_application => {
:name => "New Name",
:redirect_uri => nil
})
assert_template "oauth2_applications/edit"
put oauth_application_path(:id => client,
- :doorkeeper_application => {
+ :oauth2_application => {
:name => "New Name",
:redirect_uri => "https://new.example.com/url"
})
- assert_response :redirect
assert_redirected_to oauth_application_path(:id => client.id)
end
assert_difference "Doorkeeper::Application.count", -1 do
delete oauth_application_path(:id => client)
end
- assert_response :redirect
assert_redirected_to oauth_applications_path
end
end