Files
nairobi/spec/support/common_actions/notifications.rb
Javi Martín a326bcb0a1 Update admin notifications translatable fields
The same way we did for banners.

We needed to add new translation keys so the labels are displayed in the
correct language. I've kept the original `title` and `body` attributes
so they can be used in other places.

While backporting, we also added the original translations because they
hadn't been backported yet.
2018-10-22 15:43:56 +02:00

51 lines
1.7 KiB
Ruby

module Notifications
def click_notifications_icon
find("#notifications a").click
end
def model_name(described_class)
return :proposal_notification if described_class == ProposalNotification
described_class.name.gsub("::", "_").downcase.to_sym
end
def comment_body(resource)
"comment-body-#{resource.class.name.parameterize('_').to_sym}_#{resource.id}"
end
def create_proposal_notification(proposal)
login_as(proposal.author)
visit root_path
click_link "My activity"
within("#proposal_#{proposal.id}") do
click_link "Send notification"
end
fill_in 'proposal_notification_title', with: "Thanks for supporting proposal: #{proposal.title}"
fill_in 'proposal_notification_body', with: "Please share it with others! #{proposal.summary}"
click_button "Send message"
expect(page).to have_content "Your message has been sent correctly."
Notification.last
end
def path_for(resource)
polymorphic_hierarchy_path(resource)
end
def error_message(resource_model = nil)
resource_model ||= "(.*)"
field_check_message = 'Please check the marked fields to know how to correct them:'
/\d errors? prevented this #{resource_model} from being saved. #{field_check_message}/
end
def fill_in_admin_notification_form(options = {})
select (options[:segment_recipient] || 'All users'), from: :admin_notification_segment_recipient
fill_in 'Title', with: (options[:title] || 'This is the notification title')
fill_in 'Text', with: (options[:body] || 'This is the notification body')
fill_in :admin_notification_link, with: (options[:link] || 'https://www.decide.madrid.es/vota')
end
end