oats 0.0.2 → 0.0.3
Sign up to get free protection for your applications and to get access to all the features.
- data/lib/oats/driver.rb +2 -3
- data/lib/oats/oats_lock.rb +5 -5
- data/lib/oats/oselenium.rb +5 -5
- data/lib/oats/test_case.rb +1 -1
- data/lib/oats/test_data.rb +1 -1
- data/lib/oats/util.rb +1 -1
- data/lib/oats/version.rb +1 -1
- data/oats.gemspec +1 -1
- metadata +3 -3
data/lib/oats/driver.rb
CHANGED
@@ -5,8 +5,6 @@ require 'oats/oats_data'
|
|
5
5
|
require 'oats/roptions'
|
6
6
|
require 'oats/build_id'
|
7
7
|
|
8
|
-
autoload :Spreadsheet, 'spreadsheet'
|
9
|
-
|
10
8
|
module Oats
|
11
9
|
|
12
10
|
module Driver
|
@@ -45,7 +43,7 @@ module Oats
|
|
45
43
|
# Returns oats_info object containing execution results
|
46
44
|
def Driver.run(args)
|
47
45
|
unless ENV['HOSTNAME']
|
48
|
-
if RUBY_PLATFORM =~ /
|
46
|
+
if RUBY_PLATFORM =~ /(mswin|mingw)/
|
49
47
|
ENV['HOSTNAME'] = ENV['COMPUTERNAME']
|
50
48
|
else
|
51
49
|
ENV['HOSTNAME'] = `hostname`.chomp
|
@@ -446,6 +444,7 @@ module Oats
|
|
446
444
|
# Return all the included worksheet lists in XL and place all
|
447
445
|
# their test arrays in $oats_global['xl']
|
448
446
|
def Driver.parse_xl(path,id)
|
447
|
+
require 'spreadsheet' unless defined?(Spreadsheet)
|
449
448
|
book = Spreadsheet.open path
|
450
449
|
sheet = book.worksheet 'Main'
|
451
450
|
Oats.assert sheet, "Could not locate worksheet 'Main' in: " + path
|
data/lib/oats/oats_lock.rb
CHANGED
@@ -1,5 +1,5 @@
|
|
1
1
|
# Manages a lock file indicating a OATS session is in process
|
2
|
-
require 'win32ole' if RUBY_PLATFORM =~ /
|
2
|
+
require 'win32ole' if RUBY_PLATFORM =~ /(mswin|mingw)/
|
3
3
|
module Oats
|
4
4
|
|
5
5
|
module OatsLock
|
@@ -14,7 +14,7 @@ module Oats
|
|
14
14
|
@@file_handle = File.open(in_progress_file, 'w')
|
15
15
|
my_pid = Process.pid.to_s
|
16
16
|
@@file_handle.puts my_pid
|
17
|
-
if RUBY_PLATFORM !~ /
|
17
|
+
if RUBY_PLATFORM !~ /(mswin|mingw)/ or ENV['TEMP'] =~ /^\/cygdrive/
|
18
18
|
# Leave file handle open for windows to detect and kill associated java, etc.
|
19
19
|
# processes using file handles.
|
20
20
|
@@file_handle.close
|
@@ -30,7 +30,7 @@ module Oats
|
|
30
30
|
def OatsLock.locked?(verify = nil)
|
31
31
|
return @@is_locked unless verify
|
32
32
|
@@is_locked = false
|
33
|
-
if RUBY_PLATFORM !~ /
|
33
|
+
if RUBY_PLATFORM !~ /(mswin|mingw)/ or ENV['TEMP'] =~ /^\/cygdrive/
|
34
34
|
if File.exist?(in_progress_file)
|
35
35
|
pids = IO.readlines(in_progress_file)
|
36
36
|
ruby_pid = pids.shift
|
@@ -140,7 +140,7 @@ module Oats
|
|
140
140
|
|
141
141
|
def OatsLock.find_matching_processes(proc_names)
|
142
142
|
matched = []
|
143
|
-
if RUBY_PLATFORM =~ /
|
143
|
+
if RUBY_PLATFORM =~ /(mswin|mingw)/
|
144
144
|
processes = WIN32OLE.connect("winmgmts://").ExecQuery("select * from win32_process")
|
145
145
|
# for process in processes do
|
146
146
|
# for property in process.Properties_ do
|
@@ -222,7 +222,7 @@ module Oats
|
|
222
222
|
@@file_handle = nil
|
223
223
|
@@is_locked = true
|
224
224
|
else # Doesn't return status properly for non-windows, just resets the lock
|
225
|
-
if $oats_execution['agent'].nil? and RUBY_PLATFORM !~ /
|
225
|
+
if $oats_execution['agent'].nil? and RUBY_PLATFORM !~ /(mswin|mingw)/ and File.exist?(in_progress_file)
|
226
226
|
pids = IO.readlines(in_progress_file)
|
227
227
|
current_pid = pids.shift
|
228
228
|
pids.each { |pid| OatsLock.kill_pid(pid.chomp) } # Legacy firefox
|
data/lib/oats/oselenium.rb
CHANGED
@@ -45,13 +45,13 @@ module Oats
|
|
45
45
|
if browser_type == 'firefox'
|
46
46
|
$oats_global['download_dir'] = $oats['execution']['dir_results'] + '/downloads'
|
47
47
|
elsif Oats.data("selenium.default_downloads")
|
48
|
-
$oats_global['download_dir'] = File.join(ENV[ RUBY_PLATFORM =~ /
|
49
|
-
$oats_global['download_dir'].gsub!('\\','/') if RUBY_PLATFORM =~ /
|
48
|
+
$oats_global['download_dir'] = File.join(ENV[ RUBY_PLATFORM =~ /(mswin|mingw)/ ? 'USERPROFILE' : 'HOME'], 'Downloads')
|
49
|
+
$oats_global['download_dir'].gsub!('\\','/') if RUBY_PLATFORM =~ /(mswin|mingw)/
|
50
50
|
end
|
51
51
|
end
|
52
52
|
|
53
53
|
download_dir = $oats_global['download_dir'].gsub('/','\\\\') if $oats_global['download_dir'] and
|
54
|
-
RUBY_PLATFORM =~ /
|
54
|
+
RUBY_PLATFORM =~ /(mswin|mingw)/
|
55
55
|
download_dir ||= $oats_global['download_dir']
|
56
56
|
case browser_type
|
57
57
|
when 'firefox'
|
@@ -70,7 +70,7 @@ module Oats
|
|
70
70
|
profile['download.prompt_for_download'] = false
|
71
71
|
profile['download.default_directory'] = download_dir
|
72
72
|
# unless $oats_global['browser_path']
|
73
|
-
# vpath = File.join($oats['_']['vendor'], ENV['OS'], 'chromedriver' + (RUBY_PLATFORM =~ /
|
73
|
+
# vpath = File.join($oats['_']['vendor'], ENV['OS'], 'chromedriver' + (RUBY_PLATFORM =~ /(mswin|mingw)/ ? '.exe' : '') )
|
74
74
|
# $oats_global['browser_path'] = vpath if File.exist?(vpath)
|
75
75
|
# end
|
76
76
|
end
|
@@ -129,7 +129,7 @@ module Oats
|
|
129
129
|
else
|
130
130
|
file_os = RUBY_PLATFORM
|
131
131
|
end
|
132
|
-
file_os =~ /
|
132
|
+
file_os =~ /(mswin|mingw)/ ? file.gsub('/','\\') : file
|
133
133
|
end
|
134
134
|
|
135
135
|
def Oselenium.reset
|
data/lib/oats/test_case.rb
CHANGED
@@ -432,7 +432,7 @@ module Oats
|
|
432
432
|
out_contents = IO.read(file_out).gsub(/\s/,'')
|
433
433
|
unless ok_contents == out_contents
|
434
434
|
err = "File in out folder did not match out folder in: #{file_ok}"
|
435
|
-
diff_lines = `diff -b '#{file_ok}' '#{file_out}'` unless RUBY_PLATFORM =~ /
|
435
|
+
diff_lines = `diff -b '#{file_ok}' '#{file_out}'` unless RUBY_PLATFORM =~ /(mswin|mingw)/
|
436
436
|
end
|
437
437
|
else
|
438
438
|
err = "Extra output [#{file}] missing from: #{test_ok_out}"
|
data/lib/oats/test_data.rb
CHANGED
@@ -62,7 +62,7 @@ module Oats
|
|
62
62
|
extn = File.extname(test_file)
|
63
63
|
extn = nil if extn == ''
|
64
64
|
found_file = catch :found_file do
|
65
|
-
if RUBY_PLATFORM =~ /
|
65
|
+
if RUBY_PLATFORM =~ /(mswin|mingw)/ ? test_file[1] == ?: : test_file[0] == ?/ # absolute path
|
66
66
|
# Try exact match
|
67
67
|
throw(:found_file, test_file) if File.exist?(test_file) and (is_dir or not FileTest.directory?(test_file))
|
68
68
|
|
data/lib/oats/util.rb
CHANGED
data/lib/oats/version.rb
CHANGED
data/oats.gemspec
CHANGED
@@ -29,7 +29,7 @@ Gem::Specification.new do |s|
|
|
29
29
|
s.add_dependency 'log4r'
|
30
30
|
s.add_dependency 'net-http-persistent' unless RUBY_VERSION =~ /^1.9/ # Speed up 1.8 connections
|
31
31
|
|
32
|
-
if RUBY_PLATFORM =~ /
|
32
|
+
if RUBY_PLATFORM =~ /(mswin|mingw)/ # Assume won't use the agent
|
33
33
|
s.add_dependency 'win32-process'
|
34
34
|
else
|
35
35
|
s.add_dependency 'json'
|
metadata
CHANGED