X-Git-Url: https://git.arvados.org/arvados.git/blobdiff_plain/72aa70eec7693bfb5d46a4bdac3619b3c6b1f79c..a41baffe4f38019cb5b36875c5e0c838ef9201e5:/apps/workbench/test/controllers/users_controller_test.rb diff --git a/apps/workbench/test/controllers/users_controller_test.rb b/apps/workbench/test/controllers/users_controller_test.rb index 213a2a53c1..125d6b0885 100644 --- a/apps/workbench/test/controllers/users_controller_test.rb +++ b/apps/workbench/test/controllers/users_controller_test.rb @@ -40,4 +40,25 @@ class UsersControllerTest < ActionController::TestCase assert_includes editables, true, "should have a writable repository" assert_includes editables, false, "should have a readonly repository" end + + test "request shell access" do + user = api_fixture('users')['spectator'] + + post :request_shell_access, { + id: user['uuid'], + format: 'js' + }, session_for(:spectator) + assert_response :success + + found_email = false + ActionMailer::Base.deliveries.andand.each do |email| + full_name = (user['first_name'] || "") + " " + (user['last_name'] || "") + expected = "Shell account request from #{full_name} (#{user['email']}, #{user['uuid']})" + if email.subject.include?(expected) + found_email = true + break + end + end + assert_equal true, found_email, "Expected email after requesting shell access" + end end