Upstream sync
This commit is contained in:
@@ -386,6 +386,13 @@ RSpec.feature 'User manages contract templates', type: :feature do
|
||||
expect(ct.signature_legal_text.id).not_to eq ContractTemplate.last.signature_legal_text.id
|
||||
end
|
||||
|
||||
scenario 'trix editor has underline button', js: true do
|
||||
visit new_project_contract_template_path(project)
|
||||
|
||||
select 'Appearance Release', from: 'Release type'
|
||||
expect(page).to have_selector("button[data-trix-attribute='underline']")
|
||||
end
|
||||
|
||||
context 'When the user is associate' do
|
||||
let(:current_user) { create(:user, :associate) }
|
||||
|
||||
|
||||
@@ -544,7 +544,7 @@ feature 'User managing appearance releases' do
|
||||
expect(pdf_body).to have_content('Guardian Email')
|
||||
end
|
||||
|
||||
scenario "viewing the contract PDF when exhibit A is signed" do
|
||||
scenario "viewing the contract PDF when exhibit A is signed and without questionnaire" do
|
||||
contract_template = create(:appearance_release_contract_template, project: project, exhibit_a_legal_text: "Exhibit A legal text", exhibit_a_question_text: "Exhibit A question text")
|
||||
appearance_release = create(:appearance_release,
|
||||
:amendment_signed,
|
||||
@@ -566,10 +566,122 @@ feature 'User managing appearance releases' do
|
||||
|
||||
expect(pdf_body).to have_content("John Doe")
|
||||
|
||||
expect(pdf_body).to have_content "Exhibit A"
|
||||
expect(pdf_body).to have_content exhibit_a_heading
|
||||
expect(pdf_body).to have_content "Exhibit A legal text"
|
||||
expect(pdf_body).to have_content "Exhibit A question text"
|
||||
expect(pdf_body).to have_content "Answer to exhibit A question"
|
||||
|
||||
expect(pdf_body).not_to have_content questionnaire_heading
|
||||
expect(pdf_body).not_to have_content exhibit_b_heading
|
||||
end
|
||||
|
||||
scenario "viewing the contract PDF when exhibit B is signed and without questionnaire" do
|
||||
contract_template = create(:appearance_release_contract_template, project: project, exhibit_b_legal_text: "Exhibit B legal text", exhibit_b_question_text: "Exhibit B question text")
|
||||
appearance_release = create(:appearance_release,
|
||||
:amendment_signed,
|
||||
:native,
|
||||
contract_template: contract_template,
|
||||
project: project,
|
||||
person_first_name: "John",
|
||||
person_last_name: "Doe",
|
||||
exhibit_b_answer: "Answer to exhibit B question"
|
||||
)
|
||||
|
||||
sign_in(current_user)
|
||||
visit project_appearance_releases_path(project)
|
||||
click_link *view_release_pdf_link_for(appearance_release)
|
||||
|
||||
expect(content_type).to eq("application/pdf")
|
||||
expect(content_disposition).to include("inline")
|
||||
expect(pdf_filename).to include("doe-john")
|
||||
|
||||
expect(pdf_body).to have_content("John Doe")
|
||||
|
||||
expect(pdf_body).to have_content exhibit_b_heading
|
||||
expect(pdf_body).to have_content "Exhibit B legal text"
|
||||
expect(pdf_body).to have_content "Exhibit B question text"
|
||||
expect(pdf_body).to have_content "Answer to exhibit B question"
|
||||
|
||||
expect(pdf_body).not_to have_content questionnaire_heading
|
||||
expect(pdf_body).not_to have_content exhibit_a_heading
|
||||
end
|
||||
|
||||
scenario "viewing the contract PDF with questionnaire and without exhibits" do
|
||||
contract_template = create(:appearance_release_contract_template, :with_questionnaire_legal_text, :with_one_question, project: project)
|
||||
appearance_release = create(:appearance_release,
|
||||
:amendment_signed,
|
||||
:native,
|
||||
contract_template: contract_template,
|
||||
project: project,
|
||||
person_first_name: "John",
|
||||
person_last_name: "Doe",
|
||||
question_1_answer: "Yes"
|
||||
)
|
||||
|
||||
sign_in(current_user)
|
||||
visit project_appearance_releases_path(project)
|
||||
click_link *view_release_pdf_link_for(appearance_release)
|
||||
|
||||
expect(content_type).to eq("application/pdf")
|
||||
expect(content_disposition).to include("inline")
|
||||
expect(pdf_filename).to include("doe-john")
|
||||
|
||||
expect(pdf_body).to have_content questionnaire_heading
|
||||
expect(pdf_body).to have_content contract_template.question_1_text
|
||||
expect(pdf_body).to have_content appearance_release.question_1_answer
|
||||
|
||||
expect(pdf_body).not_to have_content exhibit_a_heading
|
||||
expect(pdf_body).not_to have_content exhibit_b_heading
|
||||
end
|
||||
|
||||
scenario "viewing the contract PDF with questionnaire and with exhibits" do
|
||||
contract_template = create(:appearance_release_contract_template,
|
||||
:with_questionnaire_legal_text,
|
||||
:with_one_question,
|
||||
:with_exhibits,
|
||||
project: project)
|
||||
appearance_release = create(:appearance_release,
|
||||
:amendment_signed,
|
||||
:native,
|
||||
contract_template: contract_template,
|
||||
project: project,
|
||||
person_first_name: "John",
|
||||
person_last_name: "Doe",
|
||||
question_1_answer: "Yes",
|
||||
exhibit_a_answer: "Exhibit A answer",
|
||||
exhibit_b_answer: "Exhibit B answer"
|
||||
)
|
||||
|
||||
sign_in(current_user)
|
||||
visit project_appearance_releases_path(project)
|
||||
click_link *view_release_pdf_link_for(appearance_release)
|
||||
|
||||
expect(content_type).to eq("application/pdf")
|
||||
expect(content_disposition).to include("inline")
|
||||
expect(pdf_filename).to include("doe-john")
|
||||
|
||||
expect(pdf_body).to have_content questionnaire_heading
|
||||
expect(pdf_body).to have_content contract_template.question_1_text
|
||||
expect(pdf_body).to have_content appearance_release.question_1_answer
|
||||
|
||||
expect(pdf_body).to have_content exhibit_a_heading
|
||||
expect(pdf_body).to have_content contract_template.exhibit_a_legal_text.to_plain_text
|
||||
expect(pdf_body).to have_content contract_template.exhibit_a_question_text
|
||||
expect(pdf_body).to have_content appearance_release.exhibit_a_answer
|
||||
|
||||
expect(pdf_body).to have_content exhibit_b_heading
|
||||
expect(pdf_body).to have_content contract_template.exhibit_b_legal_text.to_plain_text
|
||||
expect(pdf_body).to have_content contract_template.exhibit_b_question_text
|
||||
expect(pdf_body).to have_content appearance_release.exhibit_b_answer
|
||||
end
|
||||
|
||||
scenario "viewing the contract PDF - it shows person photo on first page if person photo is attached" do
|
||||
appearance_release = create(:appearance_release_with_contract_template, :native, :minor_with_guardian_photo, project: project)
|
||||
|
||||
visit view_release_pdf_html_preview_link_for(appearance_release)
|
||||
|
||||
person_photo_url = url_for(appearance_release.person_photo.variant(auto_orient: true, resize: "200x200")).to_s
|
||||
expect(page).to have_selector("#top-person-photo[src^='#{person_photo_url}']")
|
||||
end
|
||||
|
||||
scenario 'deleting a release', js: true do
|
||||
@@ -908,6 +1020,10 @@ feature 'User managing appearance releases' do
|
||||
['Download', href: appearance_release_contracts_path(appearance_release, format: 'pdf')]
|
||||
end
|
||||
|
||||
def view_release_pdf_html_preview_link_for(appearance_release)
|
||||
appearance_release_contracts_path(appearance_release)
|
||||
end
|
||||
|
||||
def successful_submission_message
|
||||
'Your release was successfully submitted. Thank you.'
|
||||
end
|
||||
@@ -987,4 +1103,16 @@ feature 'User managing appearance releases' do
|
||||
def amendment_signature_label
|
||||
t 'contracts.amendment_page.description_labels.amendment_signature'
|
||||
end
|
||||
|
||||
def questionnaire_heading
|
||||
t 'contracts.questionnaire.heading.appearance_release'
|
||||
end
|
||||
|
||||
def exhibit_a_heading
|
||||
t 'contracts.exhibit_a_page.heading.appearance_release'
|
||||
end
|
||||
|
||||
def exhibit_b_heading
|
||||
t 'contracts.exhibit_b_page.heading.appearance_release'
|
||||
end
|
||||
end
|
||||
|
||||
@@ -244,11 +244,32 @@ feature "User managing medical releases" do
|
||||
expect(pdf_filename).to include("doe-john")
|
||||
|
||||
expect(pdf_body).to have_content("John Doe")
|
||||
expect(pdf_body).to have_content "MEDICAL QUESTIONNAIRE"
|
||||
expect(pdf_body).to have_content questionnaire_heading.upcase
|
||||
expect(pdf_body).to have_content "Question 1 text"
|
||||
expect(pdf_body).to have_content "Question 1 answer"
|
||||
expect(pdf_body).to have_content "Questionnaire legal text"
|
||||
end
|
||||
|
||||
scenario 'viewing contract PDF without medical questionnaire' do
|
||||
contract_template = create(:medical_release_contract_template, project: project)
|
||||
medical_release = create(:medical_release,
|
||||
:native,
|
||||
contract_template: contract_template,
|
||||
project: project,
|
||||
person_first_name: "John",
|
||||
person_last_name: "Doe",
|
||||
)
|
||||
|
||||
sign_in(current_user)
|
||||
visit project_medical_releases_path(project)
|
||||
click_link *view_release_pdf_link_for(medical_release)
|
||||
|
||||
expect(content_type).to eq("application/pdf")
|
||||
expect(content_disposition).to include("inline")
|
||||
expect(pdf_filename).to include("doe-john")
|
||||
|
||||
expect(pdf_body).not_to have_content questionnaire_heading.upcase
|
||||
end
|
||||
end
|
||||
|
||||
context "when the user is manager(project manager)" do
|
||||
@@ -499,4 +520,8 @@ feature "User managing medical releases" do
|
||||
def dummy_signature_legal_text
|
||||
'Some signature legal language'
|
||||
end
|
||||
|
||||
def questionnaire_heading
|
||||
t 'contracts.questionnaire.heading.medical_release'
|
||||
end
|
||||
end
|
||||
|
||||
@@ -80,7 +80,7 @@ feature "User managing misc releases" do
|
||||
end
|
||||
|
||||
|
||||
scenario 'viewing the contract PDF' do
|
||||
scenario 'viewing the contract PDF with questionnaire' do
|
||||
misc_release = create(:misc_release,
|
||||
:native,
|
||||
contract_template: build(:misc_release_contract_template, question_1_text: 'Q1'),
|
||||
@@ -121,10 +121,30 @@ feature "User managing misc releases" do
|
||||
expect(pdf_body).to have_content('Woman')
|
||||
expect(pdf_body).to have_content('Brunette')
|
||||
expect(pdf_body).not_to have_content('Guardian Email')
|
||||
expect(pdf_body).to have_content('QUESTIONNAIRE')
|
||||
expect(pdf_body).to have_content questionnaire_heading.upcase
|
||||
expect(pdf_body).to have_content('Q1')
|
||||
expect(pdf_body).to have_content('A1')
|
||||
end
|
||||
|
||||
scenario 'viewing the contract PDF without questionnaire' do
|
||||
misc_release = create(:misc_release,
|
||||
:native,
|
||||
contract_template: build(:misc_release_contract_template),
|
||||
project: project,
|
||||
person_first_name: 'Jane',
|
||||
person_last_name: 'Doe'
|
||||
)
|
||||
|
||||
sign_in(current_user)
|
||||
visit project_misc_releases_path(project)
|
||||
click_link *view_release_pdf_link_for(misc_release)
|
||||
|
||||
expect(content_type).to eq('application/pdf')
|
||||
expect(content_disposition).to include('inline')
|
||||
expect(pdf_filename).to include('doe-jane')
|
||||
|
||||
expect(pdf_body).not_to have_content questionnaire_heading.upcase
|
||||
end
|
||||
end
|
||||
|
||||
context "when the user is manager(project manager)" do
|
||||
@@ -215,4 +235,8 @@ feature "User managing misc releases" do
|
||||
def view_release_pdf_link_for(release)
|
||||
['Download', href: misc_release_contracts_path(release, format: 'pdf')]
|
||||
end
|
||||
|
||||
def questionnaire_heading
|
||||
t 'contracts.questionnaire.heading.misc_release'
|
||||
end
|
||||
end
|
||||
|
||||
Reference in New Issue
Block a user