Merge branch 'master' of git.curoverse.com:arvados into 13429-cwl-runner-storage...
[arvados.git] / apps / workbench / test / integration / pipeline_templates_test.rb
index d131986d25843613a62ff10faca1fb51c11338f9..ad14df18a0009c7449707f4d135ca9bbb5b46a5a 100644 (file)
@@ -1,8 +1,12 @@
+# Copyright (C) The Arvados Authors. All rights reserved.
+#
+# SPDX-License-Identifier: AGPL-3.0
+
 require 'integration_helper'
 
 class PipelineTemplatesTest < ActionDispatch::IntegrationTest
   test "JSON popup available for strange components" do
-    Capybara.current_driver = Capybara.javascript_driver
+    need_javascript
     uuid = api_fixture("pipeline_templates")["components_is_jobspec"]["uuid"]
     visit page_with_token("active", "/pipeline_templates/#{uuid}")
     click_on "Components"
@@ -12,4 +16,34 @@ class PipelineTemplatesTest < ActionDispatch::IntegrationTest
     assert(page.has_text?("script_parameters"),
            "components JSON not found")
   end
+
+  test "pipeline template description" do
+    need_javascript
+    visit page_with_token("active", "/pipeline_templates")
+
+    # go to Two Part pipeline template
+    within first('tr', text: 'Two Part Pipeline Template') do
+      find(".fa-gears").click
+    end
+
+    # edit template description
+    within('.arv-description-as-subtitle') do
+      find('.fa-pencil').click
+      find('.editable-input textarea').set('*Textile description for pipeline template* - "Go to dashboard":/')
+      find('.editable-submit').click
+    end
+    wait_for_ajax
+
+    # Verfiy edited description
+    assert page.has_no_text? '*Textile description for pipeline template*'
+    assert page.has_text? 'Textile description for pipeline template'
+    assert page.has_link? 'Go to dashboard'
+    click_link 'Go to dashboard'
+    assert page.has_text? 'Recent pipelines and processes'
+
+    # again visit recent templates page and verify edited description
+    visit page_with_token("active", "/pipeline_templates")
+    assert page.has_no_text? '*Textile description for pipeline template*'
+    assert page.has_text? 'Textile description for pipeline template'
+  end
 end