Upstream sync
This commit is contained in:
@@ -95,7 +95,7 @@ describe ContractTemplatesController do
|
||||
describe '#create' do
|
||||
it 'redirects' do
|
||||
post :create, params: { project_id: project, contract_template: contract_template_params(valid: true) }
|
||||
|
||||
|
||||
expect(response).to redirect_to(project_contract_templates_path(project))
|
||||
end
|
||||
|
||||
@@ -112,6 +112,14 @@ describe ContractTemplatesController do
|
||||
end.to change(ContractTemplate, :count).by(1)
|
||||
end
|
||||
|
||||
it "logs analytics" do
|
||||
expect {
|
||||
post :create, params: { project_id: project, contract_template: contract_template_params }
|
||||
}.to(
|
||||
have_enqueued_job(TrackAnalyticsJob).with(current_user, current_user.primary_account, :track_create_contract_template, user_agent: "Rails Testing", user_ip: "0.0.0.0")
|
||||
)
|
||||
end
|
||||
|
||||
context 'when save fails' do
|
||||
it 'responds ok' do
|
||||
post :create, params: { project_id: project, contract_template: contract_template_params(valid: false) }
|
||||
@@ -120,6 +128,15 @@ describe ContractTemplatesController do
|
||||
end
|
||||
end
|
||||
|
||||
context 'when exhibit fields are present' do
|
||||
it 'saves them' do
|
||||
post :create, params: { project_id: project, contract_template: contract_template_params_with_exhibit_fields }
|
||||
|
||||
expect(ContractTemplate.last.has_exhibit_a?).to be_truthy
|
||||
expect(ContractTemplate.last.has_exhibit_b?).to be_truthy
|
||||
end
|
||||
end
|
||||
|
||||
context 'when current user is an associate' do
|
||||
let(:current_user) { create(:user, :associate) }
|
||||
|
||||
@@ -214,12 +231,21 @@ describe ContractTemplatesController do
|
||||
|
||||
def contract_template_params(valid: true)
|
||||
if valid
|
||||
attributes_for(:contract_template).merge(exploitable_rights_params)
|
||||
attributes_for(:contract_template).merge(exploitable_rights_params).merge({exhibit_a_legal_text: "Legal Text Exhibit A"})
|
||||
else
|
||||
attributes_for(:contract_template).except(:name)
|
||||
end
|
||||
end
|
||||
|
||||
def contract_template_params_with_exhibit_fields
|
||||
contract_template_params(valid: true).merge({
|
||||
exhibit_a_legal_text: "Exhibit A legal text",
|
||||
exhibit_b_legal_text: "Exhibit B legal text",
|
||||
exhibit_a_question_text: "Exhibit A Question",
|
||||
exhibit_b_question_text: "Exhibit B Question",
|
||||
})
|
||||
end
|
||||
|
||||
def exploitable_rights_params
|
||||
{
|
||||
applicable_medium_id: ApplicableMedium.last.id,
|
||||
|
||||
Reference in New Issue
Block a user