[ARVADOS] updated: 5b6180084964461d6201aacdb327fe4b1b2bc8b5

git at public.curoverse.com git at public.curoverse.com
Sat Aug 9 11:33:49 EDT 2014


Summary of changes:
 .../app/controllers/application_controller.rb      |  4 +-
 apps/workbench/app/views/users/profile.html.erb    |  2 +-
 .../test/integration/application_layout_test.rb    | 47 ++++++++++++++++------
 3 files changed, 39 insertions(+), 14 deletions(-)

       via  5b6180084964461d6201aacdb327fe4b1b2bc8b5 (commit)
       via  a5186eeef2d320d34d70d9f55c70a1e6679c29cf (commit)
      from  7a5a843993ad8502bfe1a290d0b0a5f3d9692bf3 (commit)

Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.


commit 5b6180084964461d6201aacdb327fe4b1b2bc8b5
Author: radhika <radhika at curoverse.com>
Date:   Sat Aug 9 11:32:18 2014 -0400

    3296: fix test

diff --git a/apps/workbench/test/integration/application_layout_test.rb b/apps/workbench/test/integration/application_layout_test.rb
index e8a9049..70b7767 100644
--- a/apps/workbench/test/integration/application_layout_test.rb
+++ b/apps/workbench/test/integration/application_layout_test.rb
@@ -136,10 +136,10 @@ class ApplicationLayoutTest < ActionDispatch::IntegrationTest
     end
 
     # now in manage account page
-    assert page.has_link? 'Virtual Machines'
-    assert page.has_link? 'Repositories'
-    assert page.has_link? 'SSH Keys'
-    assert page.has_link? 'Current Token'
+    assert page.has_text? 'Virtual Machines'
+    assert page.has_text? 'Repositories'
+    assert page.has_text? 'SSH Keys'
+    assert page.has_text? 'Current Token'
 
     assert page.has_text? 'The Arvados API token is a secret key that enables the Arvados SDKs to access Arvados'
 
@@ -232,7 +232,7 @@ class ApplicationLayoutTest < ActionDispatch::IntegrationTest
 
       # let's search again for an invalid valid uuid
       within('.navbar-fixed-top') do
-        search_for = user['uuid']
+        search_for = String.new user['uuid']
         search_for[0]='1'
         page.find_field('search').set search_for
         page.find('.glyphicon-search').click

commit a5186eeef2d320d34d70d9f55c70a1e6679c29cf
Author: radhika <radhika at curoverse.com>
Date:   Sat Aug 9 10:14:10 2014 -0400

    3296: good tests do add value.

diff --git a/apps/workbench/app/controllers/application_controller.rb b/apps/workbench/app/controllers/application_controller.rb
index cd74dff..0593ee3 100644
--- a/apps/workbench/app/controllers/application_controller.rb
+++ b/apps/workbench/app/controllers/application_controller.rb
@@ -536,7 +536,9 @@ class ApplicationController < ActionController::Base
 
       profile_config.kind_of?(Array) && profile_config.andand.each do |entry|
         if entry['required']
-          if !current_user_profile || !current_user_profile[entry['key'].to_sym]
+          if !current_user_profile ||
+             !current_user_profile[entry['key'].to_sym] ||
+             current_user_profile[entry['key'].to_sym].empty?
             missing_required_profile = true
             break
           end
diff --git a/apps/workbench/app/views/users/profile.html.erb b/apps/workbench/app/views/users/profile.html.erb
index 193c8b5..dfb1948 100644
--- a/apps/workbench/app/views/users/profile.html.erb
+++ b/apps/workbench/app/views/users/profile.html.erb
@@ -62,7 +62,7 @@
                   <div class="form-group">
                     <label for="<%=entry['key']%>"
                            class="col-sm-3 control-label"
-                           style=<%="color:red" if entry['required']&&!value%>> <%=label%>
+                           style=<%="color:red" if entry['required']&&(!value||value.empty?)%>> <%=label%>
                     </label>
                     <% if entry['type'] == 'select' %>
                       <div class="col-sm-9">
diff --git a/apps/workbench/test/integration/application_layout_test.rb b/apps/workbench/test/integration/application_layout_test.rb
index f4b9880..e8a9049 100644
--- a/apps/workbench/test/integration/application_layout_test.rb
+++ b/apps/workbench/test/integration/application_layout_test.rb
@@ -170,7 +170,7 @@ class ApplicationLayoutTest < ActionDispatch::IntegrationTest
     assert page.has_text? 'added_in_test'
   end
 
-  # check manage profile page and add missing profile to the user
+  # Check manage profile page and add missing profile to the user
   def add_profile user
     assert page.has_no_text? 'My projects'
     assert page.has_no_text? 'Projects shared with me'
@@ -182,7 +182,16 @@ class ApplicationLayoutTest < ActionDispatch::IntegrationTest
     assert page.has_text? 'Email'
     assert page.has_text? user['email']
 
-    # using the default profile which has message and one required field
+    # Using the default profile which has message and one required field
+
+    # Save profile without filling in the required field. Expect to be back in this profile page again
+    click_button "Save profile"
+    assert page.has_text? 'Profile'
+    assert page.has_text? 'First name'
+    assert page.has_text? 'Last name'
+    assert page.has_text? 'Save profile'
+
+    # This time fill in required field and then save. Expect to go to requested page after that.
     profile_config = Rails.configuration.user_profile_form_fields
     profile_message = ''
     required_field_title = ''
@@ -212,16 +221,30 @@ class ApplicationLayoutTest < ActionDispatch::IntegrationTest
   # test the search box
   def check_search_box user
     if user
-      # let's search for the anonymously accessible project
-      publicly_accessible_project = api_fixture('groups')['anonymously_accessible_project']
-
+      # let's search for a valid uuid
       within('.navbar-fixed-top') do
         page.find_field('search').set user['uuid']
         page.find('.glyphicon-search').click
-        
-        # we should now be in the user's page as a result of search
-        assert page.has_text? user['email']
+      end
+
+      # we should now be in the user's page as a result of search
+      assert page.has_text? user['first_name']
+
+      # let's search again for an invalid valid uuid
+      within('.navbar-fixed-top') do
+        search_for = user['uuid']
+        search_for[0]='1'
+        page.find_field('search').set search_for
+        page.find('.glyphicon-search').click
+      end
 
+      # we should see 'not found' error page
+      assert page.has_text? 'Not Found'
+
+      # let's search for the anonymously accessible project
+      publicly_accessible_project = api_fixture('groups')['anonymously_accessible_project']
+
+      within('.navbar-fixed-top') do
         # search again for the anonymously accessible project
         page.find_field('search').set publicly_accessible_project['name'][0,10]
         page.find('.glyphicon-search').click

-----------------------------------------------------------------------


hooks/post-receive
-- 




More information about the arvados-commits mailing list