Merge branch 'master' into 4951-request-vm
[arvados.git] / apps / workbench / test / controllers / users_controller_test.rb
index 213a2a53c1630db44f3da2e1d1568670ec84a6d2..125d6b08856959904341ef78b42c43ff1a2b58ba 100644 (file)
@@ -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