docbrown/spec/features/admin_warns_a_user_spec.rb
Mac Siri 1555388f12 Migrate to Travis CI --skip-ci (#588)
* Create .travis.yml

* Update .travis.yml

* Add postgresql to travis

* Change travis's postgresql version

* Add chrome addon to travis

* Adjust travis config --skip-ci

* Change travis dist

* Change travis to use Chrome --skip-ci

* Use IntegraitonHelpers --skip-ci

* Add no-sandbox option to headless chrome

* Add sudo to travis

* Fix broken spec

* Update travis.yml

* Change how travis store bundler cache

* Update chromedriver command

* Add CodeClimate to travis --skip-ci

* Remove deadcode --skip-ci

* Remove dead code

* Change rspec-retry back to 3

* Add deploy script to travis

* Safelist only master for Travis --skip-ci
2018-07-16 17:11:42 -04:00

42 lines
1.1 KiB
Ruby

require "rails_helper"
feature "Admin warns user" do
let(:admin) { create(:user, :super_admin) }
let(:user) { create(:user) }
background do
sign_in admin
end
before do
visit "/admin/users/#{user.id}/edit"
end
def warn_user
check("Warned")
fill_in("Reason for warning", with: "something")
click_button("Update User")
end
describe "invalid warnings" do
scenario "fails to warn if no note is left" do
check("Warned")
click_button("Update User")
expect(page).to have_content(/Reason for warning can't be blank if warned is checked/i)
end
scenario "fails to warn if a reason for warning is left but warn box is not checked" do
fill_in("Reason for warning", with: "something")
click_button("Update User")
expect(page).to have_content("Warned was not checked but had the reason filled out")
end
end
describe "valid warning" do
scenario "checks that the user is warned and has a reason for warning" do
warn_user
expect(user.warned).to eq(true)
expect(user.reason_for_warning).to eq "something"
end
end
end