X-Git-Url: https://git.arvados.org/arvados.git/blobdiff_plain/1acc76ca7c9d4c641a9a0f30f3498be8febbbacd..181e90a0934d0057202b92010a96139df934aaf1:/apps/workbench/test/integration/report_issue_test.rb diff --git a/apps/workbench/test/integration/report_issue_test.rb b/apps/workbench/test/integration/report_issue_test.rb index fe87c58fb0..ac9e596f8c 100644 --- a/apps/workbench/test/integration/report_issue_test.rb +++ b/apps/workbench/test/integration/report_issue_test.rb @@ -2,7 +2,7 @@ require 'integration_helper' require 'selenium-webdriver' require 'headless' -class ApplicationLayoutTest < ActionDispatch::IntegrationTest +class ReportIssueTest < ActionDispatch::IntegrationTest setup do headless = Headless.new headless.start @@ -34,13 +34,15 @@ class ApplicationLayoutTest < ActionDispatch::IntegrationTest within '.modal-content' do assert page.has_text?('Version / debugging info'), 'No text - Version / debugging info' assert page.has_no_text?('Report a problem'), 'Found text - Report a problem' - assert page.has_text?('API version'), 'No text - API version' - assert page.has_text?('API startup time'), 'No text - API startup time' - assert page.has_text?('Workbench version'), 'No text - Workbench version' - assert page.has_text?('Workbench URI'), 'No text - Arvados base' - assert page.has_no_text?('Found a problem?'), 'Found text - Found a problem' + assert page.has_no_text?('Describe the problem?'), 'Found text - Describe the problem' assert page.has_button?('Close'), 'No button - Close' assert page.has_no_button?('Send problem report'), 'Found button - Send problem report' + history_links = all('a').select do |a| + a[:href] =~ %r!^https://arvados.org/projects/arvados/repository/changes\?rev=[0-9a-f]+$! + end + assert_operator(2, :<=, history_links.count, + "Should have found two links to revision history " + + "in #{history_links.inspect}") click_button 'Close' end @@ -55,21 +57,19 @@ class ApplicationLayoutTest < ActionDispatch::IntegrationTest within '.modal-content' do assert page.has_text?('Report a problem'), 'No text - Report a problem' assert page.has_no_text?('Version / debugging info'), 'Found text - Version / debugging info' - assert page.has_text?('API version'), 'No text - API version' - assert page.has_text?('API startup time'), 'No text - API startup time' - assert page.has_text?('Workbench version'), 'No text - Workbench version' - assert page.has_text?('Workbench URI'), 'No text - Arvados base' - assert page.has_text?('Found a problem?'), 'No text - Found a problem' + assert page.has_text?('Describe the problem'), 'No text - Describe the problem' assert page.has_no_button?('Close'), 'Found button - Close' - assert page.has_button?('Send problem report'), 'No button - Send problem report' + assert page.has_text?('Send problem report'), 'Send problem report button text is not found' + assert page.has_no_button?('Send problem report'), 'Send problem report button is not disabled before entering problem description' assert page.has_button?('Cancel'), 'No button - Cancel' # enter a report text and click on report page.find_field('report_issue_text').set 'my test report text' + assert page.has_button?('Send problem report'), 'Send problem report button not enabled after entering text' click_button 'Send problem report' # ajax success updated button texts and added footer message - assert page.has_no_button?('Send problem report'), 'Found button - Send problem report' + assert page.has_no_text?('Send problem report'), 'Found button - Send problem report' assert page.has_no_button?('Cancel'), 'Found button - Cancel' assert page.has_text?('Report sent'), 'No text - Report sent' assert page.has_button?('Close'), 'No text - Close' @@ -89,7 +89,7 @@ class ApplicationLayoutTest < ActionDispatch::IntegrationTest ['active_no_prefs_profile', api_fixture('users')['active_no_prefs_profile']], ].each do |token, user| - test "check help for user #{token}" do + test "check version info and report issue for user #{token}" do if !token visit ('/') else