Taskme update
This commit is contained in:
@@ -5,25 +5,72 @@ feature "User managing location releases" do
|
||||
let(:project) { create(:project, members: current_user, account: current_user.primary_account) }
|
||||
|
||||
context "when signed out" do
|
||||
scenario "creating a release", js: true do
|
||||
scenario "United States is default country" do
|
||||
contract_template = create(:contract_template, project: project)
|
||||
|
||||
visit new_account_project_contract_template_location_release_path(project.account, project, contract_template)
|
||||
expect(country_field_value).to eq "US"
|
||||
end
|
||||
|
||||
scenario "creating a release without photos", js: true do
|
||||
contract_template = create(:contract_template, project: project)
|
||||
|
||||
visit new_account_project_contract_template_location_release_path(project.account, project, contract_template)
|
||||
|
||||
by "filling out the form" do
|
||||
fill_in location_name_field, with: "Benny's Burritos"
|
||||
fill_in location_address_street_1, with: "Location's street address"
|
||||
fill_in location_address_city, with: "Location's city"
|
||||
fill_in location_address_state, with: "Location's state"
|
||||
fill_in location_address_zip, with: "Location's zip"
|
||||
fill_in person_first_name_field, with: "Jane"
|
||||
fill_in person_last_name_field, with: "Doe"
|
||||
fill_in person_phone_field, with: "555-555-5555"
|
||||
fill_in person_email_field, with: "jane.doe@test.com"
|
||||
fill_in person_company_field, with: "BIG"
|
||||
fill_in person_title_field, with: "Ms."
|
||||
fill_in person_address_street1_field, with: "100 Broadway"
|
||||
fill_in person_address_city, with: "Person's City"
|
||||
fill_in person_address_state, with: "Person's State"
|
||||
fill_in person_address_zip, with: "Person's Zip"
|
||||
fill_in filming_hours_field, with: "04:00 - 22:00"
|
||||
draw_signature file_fixture("signature.png"), "location_release_signature_base64"
|
||||
end
|
||||
|
||||
click_button "I have read and agree to the above"
|
||||
click_button submit_release_button
|
||||
|
||||
expect(page).to have_content("Your release was successfully submitted. Thank you.")
|
||||
end
|
||||
|
||||
scenario "creating a release with photos", js: true do
|
||||
contract_template = create(:contract_template, project: project)
|
||||
|
||||
visit new_account_project_contract_template_location_release_path(project.account, project, contract_template)
|
||||
|
||||
fill_in location_name_field, with: "Benny's Burritos"
|
||||
fill_in location_address_street_1, with: "Location's street address"
|
||||
fill_in location_address_city, with: "Location's city"
|
||||
fill_in location_address_state, with: "Location's state"
|
||||
fill_in location_address_zip, with: "Location's zip"
|
||||
fill_in person_first_name_field, with: "Jane"
|
||||
fill_in person_last_name_field, with: "Doe"
|
||||
fill_in person_phone_field, with: "555-555-5555"
|
||||
fill_in person_email_field, with: "jane.doe@test.com"
|
||||
fill_in person_company_field, with: "BIG"
|
||||
fill_in person_title_field, with: "Ms."
|
||||
fill_in person_address_street1_field, with: "100 Broadway"
|
||||
fill_in person_address_city, with: "Person's City"
|
||||
fill_in person_address_state, with: "Person's State"
|
||||
fill_in person_address_zip, with: "Person's Zip"
|
||||
fill_in filming_hours_field, with: "04:00 - 22:00"
|
||||
draw_signature file_fixture("signature.png"), "location_release_signature_base64"
|
||||
|
||||
drop_file Rails.root.join(file_fixture("location_photo.png")), type: :dropzone
|
||||
click_button submit_release_button
|
||||
|
||||
expect(page).to have_content("Your release was successfully submitted. Thank you.")
|
||||
expect(LocationRelease.last.photos.attached?).to eq true
|
||||
end
|
||||
end
|
||||
|
||||
context "when signed in" do
|
||||
@@ -51,6 +98,7 @@ feature "User managing location releases" do
|
||||
|
||||
by "filling out the remaining information" do
|
||||
fill_in_release_fields name: "Test Location Release"
|
||||
fill_in filming_hours_field, with: "04:00 - 22:00"
|
||||
click_button create_release_button
|
||||
expect(page).to have_content(create_release_notice)
|
||||
expect(page).to have_photo("location_photo.png")
|
||||
@@ -136,6 +184,7 @@ feature "User managing location releases" do
|
||||
:native,
|
||||
project: project,
|
||||
name: "Benny's Burritos",
|
||||
filming_hours: "06:00 - 20:00",
|
||||
tag_list: "Restaurant",
|
||||
notes: [
|
||||
build(:note,
|
||||
@@ -172,6 +221,8 @@ feature "User managing location releases" do
|
||||
expect(pdf_body).to have_content("Restaurant")
|
||||
expect(pdf_body).to have_content photos_heading.upcase
|
||||
expect(pdf_body).to have_content("location_photo.png")
|
||||
expect(pdf_body).to have_content("Filming Hours")
|
||||
expect(pdf_body).to have_content("06:00 - 20:00")
|
||||
end
|
||||
|
||||
context "when the user is associate" do
|
||||
@@ -190,6 +241,10 @@ feature "User managing location releases" do
|
||||
|
||||
private
|
||||
|
||||
def country_field_value
|
||||
find_field("location_release[person_address_country]").value
|
||||
end
|
||||
|
||||
def photos_heading(photos_count = 1)
|
||||
t 'contracts.photos.heading', count: photos_count
|
||||
end
|
||||
@@ -198,6 +253,22 @@ feature "User managing location releases" do
|
||||
"location_release[name]"
|
||||
end
|
||||
|
||||
def location_address_street_1
|
||||
"location_release[address_street1]"
|
||||
end
|
||||
|
||||
def location_address_city
|
||||
"location_release[address_city]"
|
||||
end
|
||||
|
||||
def location_address_state
|
||||
"location_release[address_state]"
|
||||
end
|
||||
|
||||
def location_address_zip
|
||||
"location_release[address_zip]"
|
||||
end
|
||||
|
||||
def contract_field
|
||||
"location_release[contract]"
|
||||
end
|
||||
@@ -210,18 +281,42 @@ feature "User managing location releases" do
|
||||
"location_release[person_last_name]"
|
||||
end
|
||||
|
||||
def person_email_field
|
||||
"location_release[person_email]"
|
||||
end
|
||||
|
||||
def person_address_street1_field
|
||||
"location_release[person_address_street1]"
|
||||
end
|
||||
|
||||
def person_address_city
|
||||
"location_release[person_address_city]"
|
||||
end
|
||||
|
||||
def person_address_state
|
||||
"location_release[person_address_state]"
|
||||
end
|
||||
|
||||
def person_address_zip
|
||||
"location_release[person_address_zip]"
|
||||
end
|
||||
|
||||
def person_phone_field
|
||||
"location_release[person_phone]"
|
||||
end
|
||||
|
||||
def person_email_field
|
||||
"location_release[person_email]"
|
||||
end
|
||||
|
||||
def person_company_field
|
||||
"location_release[person_company]"
|
||||
end
|
||||
|
||||
def person_title_field
|
||||
"location_release[person_title]"
|
||||
end
|
||||
|
||||
def filming_hours_field
|
||||
"location_release[filming_hours]"
|
||||
end
|
||||
|
||||
def have_photo(filename, attr: "src")
|
||||
have_selector("img[#{attr}*='#{filename}']")
|
||||
end
|
||||
@@ -246,6 +341,10 @@ feature "User managing location releases" do
|
||||
t "helpers.submit.location_release.create"
|
||||
end
|
||||
|
||||
def submit_release_button
|
||||
t("shared.submit_release_long")
|
||||
end
|
||||
|
||||
def create_release_notice
|
||||
t "location_releases.create.notice"
|
||||
end
|
||||
|
||||
Reference in New Issue
Block a user