Files
grecia/spec/support/common_actions/maps.rb
taitus addda0c773 Unify duplicated methods in common_actions folder
Replaced the user with a level_two one in the "Default whole city" test to
bypass the full name requirement, which only applies to unverified users.
2025-06-06 17:07:50 +02:00

40 lines
1.2 KiB
Ruby

module Maps
def submit_proposal_form
click_button "Create proposal"
expect(page).to have_content "Proposal created successfully."
if page.has_content?("Not now, go to my proposal")
click_link "Not now, go to my proposal"
expect(page).not_to have_link "Not now, go to my proposal"
end
end
def submit_budget_investment_form
click_button "Create Investment"
expect(page).to have_content "Budget Investment created successfully"
end
def set_arguments(arguments, mappable, mappable_path_arguments)
mappable_path_arguments&.each do |argument_name, path_to_value|
arguments.merge!("#{argument_name}": mappable.send(path_to_value))
end
end
def map_zoom_in
initial_zoom = page.execute_script("return App.Map.maps[0].getZoom();")
find(".leaflet-control-zoom-in").click
until page.execute_script("return App.Map.maps[0].getZoom() === #{initial_zoom + 1};") do
sleep 0.01
end
end
def place_map_at(latitude, longitude)
page.execute_script("App.Map.maps[0].setView(new L.LatLng(#{latitude}, #{longitude}))")
until page.execute_script("return App.Map.maps[0].getCenter().lat === #{latitude};") do
sleep 0.01
end
end
end