X-Git-Url: https://git.arvados.org/arvados.git/blobdiff_plain/5b7ee6cb073457d0cf1f6b7c5ca3ee8965f144ef..c674deff8855005e39b5ddf230372cb241bc22b3:/apps/workbench/test/integration/user_manage_account_test.rb diff --git a/apps/workbench/test/integration/user_manage_account_test.rb b/apps/workbench/test/integration/user_manage_account_test.rb index f2686e2470..6d680e2d67 100644 --- a/apps/workbench/test/integration/user_manage_account_test.rb +++ b/apps/workbench/test/integration/user_manage_account_test.rb @@ -135,27 +135,32 @@ class UserManageAccountTest < ActionDispatch::IntegrationTest end test "request shell access" do + ActionMailer::Base.deliveries = [] visit page_with_token('spectator', '/manage_account') assert_text 'You do not have access to any virtual machines' click_link 'Send request for shell access' - assert_text 'A request for shell access was sent.' - assert_no_text 'You do not have access to any virtual machines.' - assert_no_selector 'a', text: 'Send request for shell access' + + # Button text changes to "sending...", then back to normal. In the + # test suite we can't depend on confirming the "sending..." state + # before it goes back to normal, though. + ## assert_selector 'a', text: 'Sending request...' + assert_selector 'a', text: 'Send request for shell access' + assert_text 'A request for shell access was sent' # verify that the email was sent user = api_fixture('users')['spectator'] - 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']})" + full_name = "#{user['first_name']} #{user['last_name']}" + expected = "Shell account request from #{full_name} (#{user['email']}, #{user['uuid']})" + found_email = 0 + ActionMailer::Base.deliveries.each do |email| if email.subject.include?(expected) - found_email = true - break + found_email += 1 end end - assert_equal true, found_email, "Expected email after requesting shell access" + assert_equal 1, found_email, "Expected email after requesting shell access" - # revisit the page and verify the request sent message along with the request button. + # Revisit the page and verify the request sent message along with + # the request button. within('.navbar-fixed-top') do find('a', text: 'spectator').click within('.dropdown-menu') do @@ -166,4 +171,14 @@ class UserManageAccountTest < ActionDispatch::IntegrationTest assert_text 'A request for shell access was sent on ' assert_selector 'a', text: 'Send request for shell access' end + + test "create new repository" do + visit page_with_token("active_trustedclient", "/manage_account") + click_on "Add new repository" + within ".modal-dialog" do + fill_in "Name", with: "workbenchtest" + click_on "Create" + end + assert_text ":active/workbenchtest.git" + end end