diaspora/features/step_definitions/publisher_steps.rb
2021-04-10 23:17:39 +02:00

79 lines
2.1 KiB
Ruby

# frozen_string_literal: true
Then /^I expand the publisher$/ do
click_publisher
end
And /^I close the publisher$/ do
find("#publisher .md-cancel").click
end
Then /^the publisher should be expanded$/ do
find("#publisher")["class"].should_not include("closed")
end
When /^I click to delete the first uploaded photo$/ do
page.execute_script("$('#photodropzone .x').css('display', 'block');")
image_count = all(".publisher_photo img", wait: false).count
find("#photodropzone .x", match: :first).trigger "click"
page.assert_selector(".publisher_photo img", count: image_count - 1)
end
Then /^I should see an uploaded image within the photo drop zone$/ do
expect(find("#photodropzone img")["src"]).to include("uploads/images")
end
Then /^I should not see an uploaded image within the photo drop zone$/ do
page.should_not have_css "#photodropzone img"
end
Then /^I should not be able to submit the publisher$/ do
expect(publisher_submittable?).to be false
end
Then /^I should see "([^"]*)" in the publisher$/ do |text|
expect(page).to have_field("status_message[text]", with: text)
end
When /^I write the status message "([^"]*)"$/ do |text|
write_in_publisher(text)
end
When /^I insert an extremely long status message$/ do
write_in_publisher("I am a very interesting message " * 64)
end
When /^I append "([^"]*)" to the publisher$/ do |text|
append_to_publisher(text)
end
When /^I type "([^"]*)" into the publisher$/ do |text|
type_into_publisher(text)
end
When /^I attach "([^"]*)" to the publisher$/ do |path|
upload_file_with_publisher(path)
end
And /^I submit the publisher$/ do
submit_publisher
end
When /^I click the publisher and post "([^"]*)"$/ do |text|
click_and_post(text)
end
When /^I post an extremely long status message$/ do
click_and_post("I am a very interesting message " * 64)
end
When /^I select "([^"]*)" on the aspect dropdown$/ do |text|
page.execute_script(
"$('#publisher .dropdown .dropdown_list, #publisher .aspect-dropdown .dropdown-menu')
.find('li').each(function(i,el){
var elem = $(el);
if ('" + text + "' == $.trim(elem.text()) ) {
elem.click();
}});"
)
end