closes #6602
[arvados.git] / apps / workbench / test / integration / user_manage_account_test.rb
index d0ddb499a62a8d22c0f24dee40c53d52dcd978d1..cc28b276c82186cbd991b2fb87569ead7bc067d2 100644 (file)
@@ -9,7 +9,7 @@ class UserManageAccountTest < ActionDispatch::IntegrationTest
   def verify_manage_account user
     if user['is_active']
       within('.navbar-fixed-top') do
-        find('a', text: "#{user['email']}").click
+        page.find("#notifications-menu").click
         within('.dropdown-menu') do
           find('a', text: 'Manage account').click
         end
@@ -24,7 +24,7 @@ class UserManageAccountTest < ActionDispatch::IntegrationTest
       add_and_verify_ssh_key
     else  # inactive user
       within('.navbar-fixed-top') do
-        find('a', text: "#{user['email']}").click
+        page.find("#notifications-menu").click
         within('.dropdown-menu') do
           assert page.has_no_link?('Manage profile'), 'Found link - Manage profile'
         end
@@ -135,6 +135,7 @@ 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'
@@ -151,7 +152,7 @@ class UserManageAccountTest < ActionDispatch::IntegrationTest
     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.andand.each do |email|
+    ActionMailer::Base.deliveries.each do |email|
       if email.subject.include?(expected)
         found_email += 1
       end
@@ -161,7 +162,7 @@ class UserManageAccountTest < ActionDispatch::IntegrationTest
     # Revisit the page and verify the request sent message along with
     # the request button.
     within('.navbar-fixed-top') do
-      find('a', text: 'spectator').click
+      page.find("#notifications-menu").click
       within('.dropdown-menu') do
         find('a', text: 'Manage account').click
       end
@@ -170,4 +171,16 @@ 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"
+    assert_match /git@git.*:active\/workbenchtest.git/, page.text
+    assert_match /https:\/\/git.*\/active\/workbenchtest.git/, page.text
+  end
 end