require 'integration_helper'
-require 'selenium-webdriver'
-require 'headless'
class ReportIssueTest < ActionDispatch::IntegrationTest
setup do
- headless = Headless.new
- headless.start
- Capybara.current_driver = :selenium
-
+ need_javascript
@user_profile_form_fields = Rails.configuration.user_profile_form_fields
end
# test version info and report issue from help menu
def check_version_info_and_report_issue_from_help_menu
- within('.navbar-fixed-top') do
- page.find("#arv-help").click
- within('.dropdown-menu') do
+ within '.navbar-fixed-top' do
+ find('.help-menu > a').click
+ within '.help-menu .dropdown-menu' do
assert page.has_link?('Tutorials and User guide'), 'No link - Tutorials and User guide'
assert page.has_link?('API Reference'), 'No link - API Reference'
assert page.has_link?('SDK Reference'), 'No link - SDK Reference'
end
# check report issue link
- within('.navbar-fixed-top') do
- page.find("#arv-help").click
- within('.dropdown-menu') do
- click_link 'Report a problem ...'
- end
+ within '.navbar-fixed-top' do
+ find('.help-menu > a').click
+ find('.help-menu .dropdown-menu a', text: 'Report a problem ...').click
end
within '.modal-content' do
# 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'
+
+ report = mock
+ report.expects(:deliver).returns true
+ IssueReporter.expects(:send_report).returns report
+
click_button 'Send problem report'
# ajax success updated button texts and added footer message
['active', api_fixture('users')['active']],
['admin', api_fixture('users')['admin']],
['active_no_prefs', api_fixture('users')['active_no_prefs']],
- ['active_no_prefs_profile', api_fixture('users')['active_no_prefs_profile']],
+ ['active_no_prefs_profile_no_getting_started_shown',
+ api_fixture('users')['active_no_prefs_profile_no_getting_started_shown']],
].each do |token, user|
test "check version info and report issue for user #{token}" do