assert_equal api_fixture('users', 'subproject_admin')['uuid'], new_specimen.owner_uuid
end
- # An object which does not offer an expired_at field but has a xx_owner_uuid_name_unique constraint
- # will be renamed when removed and another object with the same name exists in user's home project.
- [
- ['pipeline_templates', 'template_in_asubproject_with_same_name_as_one_in_active_user_home'],
- ].each do |dm, fixture|
- test "removing #{dm} from a subproject results in renaming it when there is another such object with same name in home project" do
- object = api_fixture(dm, fixture)
- delete(:remove_item,
- params: { id: api_fixture('groups', 'asubproject')['uuid'],
- item_uuid: object['uuid'],
- format: 'js' },
- session: session_for(:active))
- assert_response :success
- assert_match(/\b#{object['uuid']}\b/, @response.body,
- "removed object not named in response")
- use_token :active
- if dm.eql?('groups')
- found = Group.find(object['uuid'])
- else
- found = PipelineTemplate.find(object['uuid'])
- end
- assert_equal api_fixture('users', 'active')['uuid'], found.owner_uuid
- assert_equal true, found.name.include?(object['name'] + ' removed from ')
- end
- end
-
test 'projects#show tab infinite scroll partial obeys limit' do
get_contents_rows(limit: 1, filters: [['uuid','is_a',['arvados#job']]])
assert_response :success
end
['', ' asc', ' desc'].each do |direction|
- test "projects#show tab partial orders correctly by #{direction}" do
+ test "projects#show tab partial orders correctly by created_at#{direction}" do
_test_tab_content_order direction
end
end
end
test "visit non-public project as anonymous when anonymous browsing is enabled and expect page not found" do
- Rails.configuration.anonymous_user_token = api_fixture('api_client_authorizations')['anonymous']['api_token']
+ Rails.configuration.Users.AnonymousUserToken = api_fixture('api_client_authorizations')['anonymous']['api_token']
get(:show, params: {id: api_fixture('groups')['aproject']['uuid']})
assert_response 404
assert_match(/log ?in/i, @response.body)
end
test "visit home page as anonymous when anonymous browsing is enabled and expect login" do
- Rails.configuration.anonymous_user_token = api_fixture('api_client_authorizations')['anonymous']['api_token']
+ Rails.configuration.Users.AnonymousUserToken = api_fixture('api_client_authorizations')['anonymous']['api_token']
get(:index)
assert_response :redirect
assert_match /\/users\/welcome/, @response.redirect_url
:active,
].each do |user|
test "visit public projects page when anon config is enabled, as user #{user}, and expect page" do
- Rails.configuration.anonymous_user_token = api_fixture('api_client_authorizations')['anonymous']['api_token']
+ Rails.configuration.Users.AnonymousUserToken = api_fixture('api_client_authorizations')['anonymous']['api_token']
if user
get :public, params: {}, session: session_for(user)
end
test "visit public projects page when anon config is not enabled as active user and expect 404" do
- Rails.configuration.anonymous_user_token = nil
- Rails.configuration.enable_public_projects_page = false
+ Rails.configuration.Users.AnonymousUserToken = ""
+ Rails.configuration.Workbench.EnablePublicProjectsPage = false
get :public, params: {}, session: session_for(:active)
assert_response 404
end
test "visit public projects page when anon config is enabled but public projects page is disabled as active user and expect 404" do
- Rails.configuration.anonymous_user_token = api_fixture('api_client_authorizations')['anonymous']['api_token']
- Rails.configuration.enable_public_projects_page = false
+ Rails.configuration.Users.AnonymousUserToken = api_fixture('api_client_authorizations')['anonymous']['api_token']
+ Rails.configuration.Workbench.EnablePublicProjectsPage = false
get :public, params: {}, session: session_for(:active)
assert_response 404
end
test "visit public projects page when anon config is not enabled as anonymous and expect login page" do
- Rails.configuration.anonymous_user_token = nil
- Rails.configuration.enable_public_projects_page = false
+ Rails.configuration.Users.AnonymousUserToken = ""
+ Rails.configuration.Workbench.EnablePublicProjectsPage = false
get :public
assert_response :redirect
assert_match /\/users\/welcome/, @response.redirect_url
end
test "visit public projects page when anon config is enabled and public projects page is disabled and expect login page" do
- Rails.configuration.anonymous_user_token = api_fixture('api_client_authorizations')['anonymous']['api_token']
- Rails.configuration.enable_public_projects_page = false
+ Rails.configuration.Users.AnonymousUserToken = api_fixture('api_client_authorizations')['anonymous']['api_token']
+ Rails.configuration.Workbench.EnablePublicProjectsPage = false
get :index
assert_response :redirect
assert_match /\/users\/welcome/, @response.redirect_url
end
test "visit public projects page when anon config is not enabled and public projects page is enabled and expect login page" do
- Rails.configuration.enable_public_projects_page = true
+ Rails.configuration.Workbench.EnablePublicProjectsPage = true
get :index
assert_response :redirect
assert_match /\/users\/welcome/, @response.redirect_url
end
end
- [
- [:admin, true],
- [:active, false],
- ].each do |user, expect_all_nodes|
+ [:admin, :active].each do |user|
test "in dashboard other index page links as #{user}" do
get :index, params: {}, session: session_for(user)
assert_includes @response.body, "href=\"#{path}\""
assert_includes @response.body, "All #{target}"
end
-
- if expect_all_nodes
- assert_includes @response.body, "href=\"/nodes\""
- assert_includes @response.body, "All nodes"
- else
- assert_not_includes @response.body, "href=\"/nodes\""
- assert_not_includes @response.body, "All nodes"
- end
end
end
end
test "visit a public project and verify the public projects page link exists" do
- Rails.configuration.anonymous_user_token = api_fixture('api_client_authorizations')['anonymous']['api_token']
+ Rails.configuration.Users.AnonymousUserToken = api_fixture('api_client_authorizations')['anonymous']['api_token']
uuid = api_fixture('groups')['anonymously_accessible_project']['uuid']
get :show, params: {id: uuid}
project = assigns(:object)
use_token user
ctrl = ProjectsController.new
current_user = User.find(api_fixture('users')[user]['uuid'])
- my_starred_project = ctrl.send :my_starred_projects, current_user
+ my_starred_project = ctrl.send :my_starred_projects, current_user, ''
assert_equal(size, my_starred_project.andand.size)
ctrl2 = ProjectsController.new
current_user = User.find(api_fixture('users')[user]['uuid'])
- my_starred_project = ctrl2.send :my_starred_projects, current_user
+ my_starred_project = ctrl2.send :my_starred_projects, current_user, ''
assert_equal(size, my_starred_project.andand.size)
end
end
use_token :project_viewer
current_user = User.find(api_fixture('users')['project_viewer']['uuid'])
ctrl = ProjectsController.new
- my_starred_project = ctrl.send :my_starred_projects, current_user
+ my_starred_project = ctrl.send :my_starred_projects, current_user, ''
assert_equal(0, my_starred_project.andand.size)
# share it again
# verify that the project is again included in starred projects
use_token :project_viewer
ctrl = ProjectsController.new
- my_starred_project = ctrl.send :my_starred_projects, current_user
+ my_starred_project = ctrl.send :my_starred_projects, current_user, ''
assert_equal(1, my_starred_project.andand.size)
end
end