20032: Fix unnecessary race in test.
[arvados.git] / apps / workbench / test / controllers / disabled_api_test.rb
index 47276c02e835419cf89601e78c153f4f5431df21..9144564c912bb96735b4ce967e06b2e1795ec30e 100644 (file)
@@ -1,7 +1,14 @@
+# Copyright (C) The Arvados Authors. All rights reserved.
+#
+# SPDX-License-Identifier: AGPL-3.0
+
 require 'test_helper'
 require 'helpers/share_object_helper'
 
 class DisabledApiTest < ActionController::TestCase
+  reset_api_fixtures :after_each_test, false
+  reset_api_fixtures :after_suite, false
+
   test "dashboard recent processes when pipeline_instance index API is disabled" do
     @controller = ProjectsController.new
 
@@ -9,12 +16,23 @@ class DisabledApiTest < ActionController::TestCase
     dd[:resources][:pipeline_instances][:methods].delete(:index)
     ArvadosApiClient.any_instance.stubs(:discovery).returns(dd)
 
-    get :index, {}, session_for(:active)
+    get :index, params: {}, session: session_for(:active)
     assert_includes @response.body, "zzzzz-xvhdp-cr4runningcntnr" # expect crs
     assert_not_includes @response.body, "zzzzz-d1hrv-"   # expect no pipelines
     assert_includes @response.body, "Run a process"
   end
 
+  test "dashboard compute node status not shown when pipeline_instance index API is disabled" do
+    @controller = ProjectsController.new
+
+    dd = ArvadosApiClient.new_or_current.discovery.deep_dup
+    dd[:resources][:pipeline_instances][:methods].delete(:index)
+    ArvadosApiClient.any_instance.stubs(:discovery).returns(dd)
+
+    get :index, params: {}, session: session_for(:active)
+    assert_not_includes @response.body, "compute-node-summary-pane"
+  end
+
   [
     [:jobs, JobsController.new],
     [:job_tasks, JobTasksController.new],
@@ -28,7 +46,7 @@ class DisabledApiTest < ActionController::TestCase
       dd[:resources][ctrl_name][:methods].delete(:index)
       ArvadosApiClient.any_instance.stubs(:discovery).returns(dd)
 
-      get :index, {}, session_for(:active)
+      get :index, params: {}, session: session_for(:active)
       assert_response 404
     end
   end
@@ -41,7 +59,7 @@ class DisabledApiTest < ActionController::TestCase
     test "project tabs as user #{user} when pipeline related index APIs are disabled" do
       @controller = ProjectsController.new
 
-      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']
 
       dd = ArvadosApiClient.new_or_current.discovery.deep_dup
       dd[:resources][:pipeline_templates][:methods].delete(:index)
@@ -50,9 +68,9 @@ class DisabledApiTest < ActionController::TestCase
       proj_uuid = api_fixture('groups')['anonymously_accessible_project']['uuid']
 
       if user
-        get(:show, {id: proj_uuid}, session_for(user))
+        get(:show, params: {id: proj_uuid}, session: session_for(user))
       else
-        get(:show, {id: proj_uuid})
+        get(:show, params: {id: proj_uuid})
       end
 
       resp = @response.body