add specs

This commit is contained in:
Bilal
2020-07-14 09:05:10 +02:00
parent 7d4ff7cdb8
commit bc1ff4cf39
5 changed files with 245 additions and 0 deletions

View File

@@ -118,6 +118,57 @@ describe ContractTemplatesController do
end
end
describe '#edit' do
let(:contract_template) do
create(:contract_template,
name: 'My Contract Template', fee: 50, release_type: 'appearance',
project: project)
end
it 'responds ok' do
get :edit, params: { project_id: project, id: contract_template }
expect(response).to be_successful
end
context 'when current user is an associate' do
let(:current_user) { create(:user, :associate) }
it 'raises exception' do
expect do
get :edit, params: { project_id: project, id: contract_template }
end.to raise_error(Pundit::NotAuthorizedError)
end
end
end
describe '#update' do
let(:contract_template) do
create(:contract_template,
name: 'My Contract Template', fee: 50, release_type: 'appearance',
project: project)
end
it 'redirects' do
patch :update, params: { project_id: project, id: contract_template, contract_template: contract_template_params }
expect(response).to redirect_to(project_contract_templates_path(project))
end
context 'when current user is an associate' do
let(:current_user) { create(:user, :associate) }
it 'raises exception' do
expect do
patch :update, params: { project_id: project, id: contract_template, contract_template: contract_template_params }
end.to raise_error(Pundit::NotAuthorizedError)
end
end
end
describe '#destroy' do
let!(:contract_template) { create(:contract_template, project: project) }