]> source.dussan.org Git - redmine.git/commitdiff
workaround Chrome default_directory ignored on Linux
authorToshi MARUYAMA <marutosijp2@yahoo.co.jp>
Wed, 25 Sep 2019 12:31:40 +0000 (12:31 +0000)
committerToshi MARUYAMA <marutosijp2@yahoo.co.jp>
Wed, 25 Sep 2019 12:31:40 +0000 (12:31 +0000)
https://github.com/SeleniumHQ/selenium/issues/5292

git-svn-id: http://svn.redmine.org/redmine/trunk@18530 e93f8b46-1217-0410-a6f0-8f06a7374b81

test/application_system_test_case.rb
test/system/issues_test.rb

index dce8b3a0e34b091c6ddf1afa8316015e88097e33..8b552e3b76e0be0a7edbed102034aa1f6b3d159b 100644 (file)
@@ -62,14 +62,16 @@ class ApplicationSystemTestCase < ActionDispatch::SystemTestCase
     FileUtils.rm downloaded_files
   end
 
-  def downloaded_files
-    Dir.glob("#{DOWNLOADS_PATH}/*").reject {|f| f=~/\.(tmp|crdownload)$/}
+  def downloaded_files(filename='*')
+    # https://github.com/SeleniumHQ/selenium/issues/5292
+    downloaded_path = Redmine::Platform.mswin? ? DOWNLOADS_PATH : "#{ENV['HOME']}/Downloads"
+    Dir.glob("#{downloaded_path}/#{filename}").reject {|f| f=~/\.(tmp|crdownload)$/}
   end
 
   # Returns the path of the download file
-  def downloaded_file
+  def downloaded_file(filename='*')
     Timeout.timeout(5) do
-      while downloaded_files.empty?
+      while downloaded_files(filename).empty?
         sleep 0.2
       end
     end
index 28eccedbc8fbd30fe84b05975eff0031397d7bb4..0ed93a08d966bd5719eaf88cd7c3cca60d98d4e2 100644 (file)
@@ -335,7 +335,7 @@ class IssuesTest < ApplicationSystemTestCase
     click_on 'CSV'
     click_on 'Export'
 
-    csv = CSV.read(downloaded_file)
+    csv = CSV.read(downloaded_file("issues.csv"))
     subject_index = csv.shift.index('Subject')
     subjects = csv.map {|row| row[subject_index]}
     assert_equal subjects.sort, subjects