debian-mirror-gitlab/spec/support/shared_examples/requests/applications_controller_shared_examples.rb
2021-12-11 22:18:48 +05:30

45 lines
1.1 KiB
Ruby

# frozen_string_literal: true
RSpec.shared_examples 'applications controller - GET #show' do
describe 'GET #show' do
it 'renders template' do
get show_path
expect(response).to render_template :show
end
context 'when application is viewed after being created' do
before do
create_application
end
it 'sets `@created` instance variable to `true`' do
get show_path
expect(assigns[:created]).to eq(true)
end
end
context 'when application is reviewed' do
it 'sets `@created` instance variable to `false`' do
get show_path
expect(assigns[:created]).to eq(false)
end
end
end
end
RSpec.shared_examples 'applications controller - POST #create' do
it "sets `#{OauthApplications::CREATED_SESSION_KEY}` session key to `true`" do
create_application
expect(session[OauthApplications::CREATED_SESSION_KEY]).to eq(true)
end
end
def create_application
create_params = attributes_for(:application, trusted: true, confidential: false, scopes: ['api'])
post create_path, params: { doorkeeper_application: create_params }
end