scoutui 2.0.4.2.pre → 2.0.5.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (48) hide show
  1. checksums.yaml +4 -4
  2. data/.gitignore +4 -2
  3. data/README.md +0 -7
  4. data/examples/ex1/phantom.chrome.json +4 -0
  5. data/examples/ex1/run.sh +85 -0
  6. data/examples/ex1/simple.yml +13 -0
  7. data/examples/ex1/win10.chromebeta.json +6 -0
  8. data/lib/scoutui/base/q_har_mgr.rb +63 -0
  9. data/lib/scoutui/base/visual_test_framework.rb +1 -1
  10. data/lib/scoutui/commands/strategy.rb +58 -64
  11. data/lib/scoutui/utils/utils.rb +6 -0
  12. data/lib/scoutui/version.rb +1 -1
  13. data/scoutui.gemspec +2 -3
  14. metadata +15 -58
  15. data/bin/scoutui_driver +0 -1
  16. data/examples/benchmark/ex.rb +0 -16
  17. data/examples/capabilities/win10.chrome46.json +0 -6
  18. data/examples/carmax/appmodel/search_results.json +0 -27
  19. data/examples/carmax/commands/commands.yml +0 -63
  20. data/examples/cmdshell/commands/hello.yml +0 -22
  21. data/examples/converters/jsonupdate.rb +0 -31
  22. data/examples/ex2/appmodel/common.json +0 -51
  23. data/examples/ex2/appmodel/page_model.json +0 -106
  24. data/examples/ex2/appmodel/register.model.json +0 -42
  25. data/examples/ex2/commands/commands.basic.appmodel.yml +0 -8
  26. data/examples/ex2/commands/commands.yml +0 -115
  27. data/examples/ex2/commands/ex1.yml +0 -7
  28. data/examples/ex2/commands/ex1c.yml +0 -8
  29. data/examples/ex2/commands/ex1d.yml +0 -22
  30. data/examples/ex2/commands/ex2.hover.yml +0 -43
  31. data/examples/ex2/commands/ex2.yml +0 -24
  32. data/examples/ex2/data.json +0 -6
  33. data/examples/ex2/test-configs/test.config.basic.json +0 -12
  34. data/examples/ex2/test-configs/test.config.json +0 -31
  35. data/examples/ex2/tests/run-test.sh +0 -125
  36. data/examples/ex2/tests/test-basic-appmodel.sh +0 -14
  37. data/examples/ex2/tests/test-example.sh +0 -39
  38. data/examples/ex2/tests/test-example1a.sh +0 -16
  39. data/examples/ex2/tests/test-example1b.sh +0 -13
  40. data/examples/ex2/tests/test-example1c.sh +0 -15
  41. data/examples/ex2/tests/test-example1d.sh +0 -15
  42. data/examples/ex2/tests/test-example2.forms.eyes.sh +0 -40
  43. data/examples/ex2/tests/test-example2.hover.eyes.sh +0 -40
  44. data/examples/ex2/tests/test-example2.hover.sh +0 -26
  45. data/examples/ex2/tests/test-example2.sh +0 -43
  46. data/examples/ex2/tests/test-example3.sauce.sh +0 -77
  47. data/examples/ex2/tests/test-example3.sh +0 -41
  48. data/examples/headless/run.sh +0 -15
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 2f11c86e2a301c190203b1f2059134b57b057f6a
4
- data.tar.gz: 56e92a8233f0a054ecc6503b78035bdb92e8fb07
3
+ metadata.gz: c992aa713a0c469c5e31dd51b696eaefac62082c
4
+ data.tar.gz: a35ae4a239a24f26945513ca5a717eb8232bd424
5
5
  SHA512:
6
- metadata.gz: b413d04da361934ff6afdb0184a6e676ddcbc575ddc93c067fa099711f1c4ac5797a06dee19af3d414cdcd4af76cf078a3208f460264ff3ce5c9bd229e3237af
7
- data.tar.gz: 830c865c88755907e6d063a9f5051ac38260f896f66b6bf7e38f20bcadeb184ff0ca2701b9332ab520f02607445a21ee535421bad1c18bdbeb141107ff76b61f
6
+ metadata.gz: 0c003f9524476eb6b223bcb557752dce215c8fe9b8c8c22e9aa633da4a1351e1387045e05a3ba236fa170dd0a4b037c51db4b8daf871fc839184278aa0700ca0
7
+ data.tar.gz: 288182fa5fc6fa3463a91662fa36bfaaf8a2702b6ad5eaa9b64186da3d22ae5114aba42cc82c02991b309205ca0f47bfa1929893fe2c26e12db3ce7e37d88c71
data/.gitignore CHANGED
@@ -4,7 +4,9 @@
4
4
  /_yardoc/
5
5
  /coverage/
6
6
  /doc/
7
+ /pkg/
7
8
  /spec/reports/
8
- /test/gateway
9
9
  /tmp/
10
- /test/travel
10
+ /.idea
11
+ /.travis.yml
12
+
data/README.md CHANGED
@@ -59,13 +59,6 @@ To run unit tests:
59
59
  To run a specific unit test:
60
60
 
61
61
  $ rspec spec/json_spec.rb
62
-
63
- To build:
64
-
65
- $ bundle exec rake build
66
-
67
- To push the build (gem)
68
- $ gem push <gem file>
69
62
 
70
63
  ## Running the examples
71
64
 
@@ -0,0 +1,4 @@
1
+ {
2
+ "browser": "phantomjs",
3
+ "useragent": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_10_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/54.0.2840.98 Safari/537.36"
4
+ }
@@ -0,0 +1,85 @@
1
+ #!/usr/bin/env bash
2
+ ##
3
+ # H20Dragon
4
+ ##
5
+
6
+ ##
7
+ # Execute test on Chrome locally.
8
+ ##
9
+ run_chrome()
10
+ {
11
+ CMD=$1
12
+ ruby $SCOUTUI_BIN --config ./test.config.json \
13
+ --browser chrome \
14
+ --host "http://www.elvis-presley.com" \
15
+ --viewport 800x600 \
16
+ --dut ${CMD} --debug
17
+ }
18
+
19
+ ##
20
+ # Execute test on Firefox locally.
21
+ ##
22
+ run_firefox()
23
+ {
24
+ CMD=$1
25
+ ruby $SCOUTUI_BIN --config ./test.config.json \
26
+ --browser firefox \
27
+ --host "http://www.elvis-presley.com" \
28
+ --viewport 800x600 \
29
+ --dut ${CMD} --debug
30
+ }
31
+
32
+ ##
33
+ # Execute test on phantom (GhostDriver)
34
+ ##
35
+ run_headless()
36
+ {
37
+ CMD=$1
38
+ ruby $SCOUTUI_BIN --config ./test.config.json \
39
+ --browser phantomjs \
40
+ --host "http://www.elvis-presley.com" \
41
+ --viewport 800x600 \
42
+ --dut ${CMD} --debug
43
+ }
44
+
45
+
46
+ ##
47
+ # Run tests on ghostdriver (phantom) as defined in
48
+ # its capabilities file.
49
+ ##
50
+ run_headless2()
51
+ {
52
+ CMD=$1
53
+ ruby $SCOUTUI_BIN --config ./test.config.json \
54
+ --capabilities ./phantom.chrome.json \
55
+ --host "http://www.elvis-presley.com" \
56
+ --viewport 800x600 \
57
+ --dut ${CMD} --debug
58
+ }
59
+
60
+
61
+ ##
62
+ # Run a test on ghostdriver (phantom) defined by
63
+ # capabilities files, while taking screen shots.
64
+ ##
65
+ run_screenshots_phantom()
66
+ {
67
+ CMD=$1
68
+ ruby $SCOUTUI_BIN --config ./test.config.json \
69
+ --capabilities ./phantom.chrome.json \
70
+ --screenshots:run true \
71
+ --screenshots:dir /tmp/phantom \
72
+ --host "http://www.elvis-presley.com" \
73
+ --viewport 800x600 \
74
+ --dut ${CMD} --debug
75
+ }
76
+
77
+
78
+
79
+ run_chrome ./simple.yml
80
+ run_firefox ./simple.yml
81
+
82
+ #run_headless ./simple.yml
83
+ #run_headless2 ./simple.yml
84
+ #run_screenshots_phantom ./simple.yml
85
+
@@ -0,0 +1,13 @@
1
+ page:
2
+ name: Home
3
+ action: navigate(http://www.elvis.com)
4
+ ---
5
+ page:
6
+ name: TAB
7
+ action: type(__TAB__)
8
+ do:
9
+ - focused.Highlight
10
+ - press(__TAB__)
11
+ until:
12
+ - true
13
+
@@ -0,0 +1,6 @@
1
+ {
2
+ "platform": "Windows 10",
3
+ "browser": "chrome",
4
+ "version": "beta",
5
+ "screenResolution": "1280x1024"
6
+ }
@@ -0,0 +1,63 @@
1
+ require 'singleton'
2
+ #require 'browsermob/proxy'
3
+
4
+
5
+ module Scoutui::Base
6
+
7
+ class QHarMgr
8
+ include Singleton
9
+
10
+ attr_accessor :proxy_binary
11
+ attr_accessor :proxy
12
+ attr_accessor :seleniumProfile
13
+
14
+
15
+ def initialize()
16
+ puts __FILE__ + (__LINE__).to_s + " -- start BrowserMob --" if Scoutui::Utils::TestUtils.instance.isDebug?
17
+ @proxy_binary = BrowserMob::Proxy::Server.new(ENV['BROWSER_MOB_BIN'], { :port => 8088 })
18
+ end
19
+
20
+ def start()
21
+ puts __FILE__ + (__LINE__).to_s + " --start --"
22
+ @proxy_binary.start
23
+ @proxy = @proxy_binary.create_proxy
24
+ @seleniumProfile = @proxy.selenium_proxy # Needed by Selenium instance
25
+
26
+ @proxy.new_har(:capture_headers => true)
27
+ end
28
+
29
+
30
+ def getSeleniumProfile()
31
+ puts __FILE__ + (__LINE__).to_s + " == getSeleniumProfile() => #{@seleniumProfile} --"
32
+ @seleniumProfile
33
+ end
34
+
35
+ def stop(save_as=nil)
36
+ puts __FILE__ + (__LINE__).to_s + " -- stop(#{save_as.to_s} --"
37
+ # @proxy.close
38
+
39
+ if !save_as.nil?
40
+ @proxy.har.save_to(save_as)
41
+ end
42
+
43
+ @proxy.close
44
+ end
45
+
46
+ def capture_traffic
47
+ # @proxy.new_har
48
+ yield
49
+ @proxy.har
50
+ end
51
+
52
+ def run(n)
53
+ puts __FILE__ + (__LINE__).to_s + " -- run --"
54
+ @har = capture_traffic { yield }
55
+ # @proxy.close
56
+ # @har.save_to(n)
57
+ end
58
+
59
+
60
+ end
61
+
62
+
63
+ end
@@ -987,7 +987,7 @@ module Scoutui::Base
987
987
 
988
988
  Scoutui::Commands::Utils.instance.reset(e)
989
989
 
990
- puts __FILE__ + (__LINE__).to_s + " page => #{e}"
990
+ Scoutui::Logger::LogMgr.instance.debug __FILE__ + (__LINE__).to_s + " page => #{e}"
991
991
 
992
992
  if e[STEP_KEY].has_key?("timeout")
993
993
  Scoutui::Commands::Utils.instance.setTimeout(e[STEP_KEY]["timeout"])
@@ -5,6 +5,15 @@ module Scoutui::Commands
5
5
 
6
6
  class Strategy
7
7
 
8
+ USER_AGENTS = {
9
+ 'MAC_CHROME' => 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_10_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/54.0.2840.98 Safari/537.36',
10
+ 'WIN81_IE11' => 'Mozilla/5.0 (Windows NT 6.3; Trident/7.0; rv 11.0) like Gecko',
11
+ 'WIN7_IE10' => 'Mozilla/5.0 (compatible; MSIE 10.0; Windows NT 6.1; WOW64; Trident/6.0)',
12
+ 'WIN10_EDGE13' => '#Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/46.0.2486.0 Safari/537.36 Edge/13.10586',
13
+ 'WIN10_CHROME_BETA' => 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/56.0.2924.21 Safari/537.36',
14
+ 'YOSE_CHROME_BETA' => 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_10_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/54.0.2840.98 Safari/537.36'
15
+ }
16
+
8
17
  attr_accessor :drv
9
18
  attr_accessor :profile
10
19
 
@@ -23,6 +32,22 @@ module Scoutui::Commands
23
32
  rc
24
33
  end
25
34
 
35
+ def isHeadlessBrowser?(browserType)
36
+ !browserType.match(/(phantom|phantomjs|ghost|ghostdriver)/i).nil?
37
+ end
38
+
39
+ def isHeadlessCap?(caps)
40
+ !caps.nil? && caps.has_key?(:browser) && isHeadlessBrowser?(caps[:browser])
41
+ end
42
+
43
+ def setViewport()
44
+ _viewport = Scoutui::Utils::TestUtils.instance.getViewPort()
45
+ if !_viewport.nil?
46
+ target_size = Selenium::WebDriver::Dimension.new(_viewport[:width], _viewport[:height])
47
+ getDriver().manage.window.size = target_size
48
+ end
49
+ end
50
+
26
51
  def navigate(url)
27
52
  Scoutui::Logger::LogMgr.instance.debug __FILE__ + (__LINE__).to_s + " [enter]:navigate(#{url})"
28
53
  rc = false
@@ -96,26 +121,15 @@ module Scoutui::Commands
96
121
  browserType = Scoutui::Base::UserVars.instance.getBrowserType()
97
122
  caps = Scoutui::Utils::TestUtils.instance.getCapabilities()
98
123
 
99
- if false
100
- if !browserType.to_s.match(/chrome/i).nil?
101
- @profile = Selenium::WebDriver::Chrome::Profile.new
102
- elsif !browserType.to_s.match(/fire/i).nil?
103
- @profile = Selenium::WebDriver::Firefox::Profile.new
104
- elsif !browserType.to_s.match(/ie/i).nil?
105
- @profile = Selenium::WebDriver::IE::Profile.new
106
- elsif !browserType.to_s.match(/safari/i).nil?
107
- @profile = Selenium::WebDriver::Safari::Profile.new
108
- else
109
- @profile = Selenium::WebDriver::Firefox::Profile.new
110
- browserType='firefox'
111
- end
124
+ ##
125
+ # If running on Sauce, we need the capabilities.
126
+ ##
127
+ if Scoutui::Utils::TestUtils.instance.sauceEnabled?
112
128
 
113
- Scoutui::Logger::LogMgr.instance.debug __FILE__ + (__LINE__).to_s + " profile => #{@profile}"
114
- end
129
+ caps = Scoutui::Utils::TestUtils.instance.getSauceCaps()
115
130
 
116
- if Scoutui::Utils::TestUtils.instance.sauceEnabled?
131
+ caps = Scoutui::Utils::TestUtils.instance.getCapabilities() if caps.nil?
117
132
 
118
- caps = Scoutui::Utils::TestUtils.instance.getCapabilities()
119
133
  client=nil
120
134
  proxy=nil
121
135
 
@@ -223,7 +237,7 @@ module Scoutui::Commands
223
237
 
224
238
  begin
225
239
  if client.nil?
226
- puts __FILE__ + (__LINE__).to_s + " caps => #{caps}"
240
+ Scoutui::Logger::LogMgr.instance.debug __FILE__ + (__LINE__).to_s + " caps => #{caps}"
227
241
  @drv=Selenium::WebDriver.for :remote, :url => sauce_endpoint, :desired_capabilities => caps # setup(caps)
228
242
  else
229
243
  @drv=Selenium::WebDriver.for :remote, :url => sauce_endpoint, :http_client => client, :desired_capabilities => caps # setup(caps)
@@ -239,71 +253,51 @@ module Scoutui::Commands
239
253
  # https://wiki.saucelabs.com/display/DOCS/Setting+Up+Reporting+between+Sauce+Labs+and+Jenkins
240
254
  puts "SauceOnDemandSessionID=#{@drv.session_id} job-name=#{caps[:name]}"
241
255
 
242
- elsif !caps.nil? && caps.has_key?(:browser) && caps[:browser].match(/(phantom|phantomjs|ghost|ghostdriver)/i)
243
256
 
244
- _YosemiteChromeBeta='Mozilla/5.0 (Macintosh; Intel Mac OS X 10_10_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/54.0.2840.98 Safari/537.36'
245
- _cap=Selenium::WebDriver::Remote::Capabilities.phantomjs('phantomjs.page.settings.userAgent' => _YosemiteChromeBeta)
257
+ elsif isHeadlessCap?(caps) || isHeadlessBrowser?(browserType)
246
258
 
247
- if caps.has_key?(:browser) && caps[:browser].match(/(phantom|phantomjs|ghost|ghostdriver)/i)
248
- selenium_server=Scoutui::Utils::TestUtils.instance.getSeleniumServer()
249
- selenium_server='http://localhost:8001' if selenium_server.nil?
259
+ Scoutui::Logger::LogMgr.instance.debug __FILE__ + (__LINE__).to_s + " Headless browser : <caps, browser>::<#{caps}, #{browserType}>"
250
260
 
251
- if caps.has_key?(:useragent)
252
- _cap=Selenium::WebDriver::Remote::Capabilities.phantomjs('phantomjs.page.settings.userAgent' => caps[:useragent])
253
- end
261
+ _cap=Selenium::WebDriver::Remote::Capabilities.phantomjs('phantomjs.page.settings.userAgent' => USER_AGENTS['YOSE_CHROME_BETA'])
254
262
 
255
- @drv=Selenium::WebDriver.for :remote, :url => selenium_server, :desired_capabilities => _cap
256
263
 
257
- _viewport = Scoutui::Utils::TestUtils.instance.getViewPort()
258
- if !_viewport.nil?
259
- target_size = Selenium::WebDriver::Dimension.new(_viewport[:width], _viewport[:height])
260
- @drv.manage.window.size = target_size
261
- end
264
+ selenium_server=Scoutui::Utils::TestUtils.instance.getSeleniumServer()
265
+ selenium_server='http://localhost:8001' if selenium_server.nil?
262
266
 
267
+ if isHeadlessCap?(caps) && caps.has_key?(:useragent)
268
+ _cap=Selenium::WebDriver::Remote::Capabilities.phantomjs('phantomjs.page.settings.userAgent' => caps[:useragent])
263
269
  end
264
270
 
271
+ Scoutui::Logger::LogMgr.instance.debug __FILE__ + (__LINE__).to_s + " Headless capabilities : #{_cap}"
265
272
 
266
- elsif browserType.match(/(phantom|phantomjs|ghost|ghostdriver)/i)
267
-
268
- puts __FILE__ + (__LINE__).to_s + " => Headless testing"
269
-
270
- selenium_server=Scoutui::Utils::TestUtils.instance.getSeleniumServer()
271
- selenium_server='http://localhost:8001' if selenium_server.nil?
272
-
273
- ##
274
- # caps
275
- ##
276
- _useragentChromeOnMac='Mozilla/5.0 (Macintosh; Intel Mac OS X 10_10_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/54.0.2840.98 Safari/537.36'
277
- _useragentWin81IE11='Mozilla/5.0 (Windows NT 6.3; Trident/7.0; rv 11.0) like Gecko'
273
+ _connected=false
274
+ _tm={:start => Time.now, :end => nil }
275
+ begin
276
+ @drv=Selenium::WebDriver.for :remote, :url => selenium_server, :desired_capabilities => _cap
277
+ _tm[:end]=Time.now
278
+ _connected=true
279
+ setViewport()
278
280
 
279
- _Win7IE10 = 'Mozilla/5.0 (compatible; MSIE 10.0; Windows NT 6.1; WOW64; Trident/6.0)'
281
+ rescue Errno::ECONNREFUSED => ex
282
+ Scoutui::Logger::LogMgr.instance.fatal __FILE__ + (__LINE__).to_s + " Unable to connect to GhostDriver"
280
283
 
281
- _Win10Edge13='#Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/46.0.2486.0 Safari/537.36 Edge/13.10586'
284
+ Scoutui::Utils::TestUtils.instance.setState(:abort, __FILE__ + (__LINE__).to_s + " Unable to connect to GhostDriver : #{ex.class.to_s}: #{ex}")
282
285
 
283
- _Win10ChromeBeta='Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/56.0.2924.21 Safari/537.36'
284
- _YosemiteChromeBeta='Mozilla/5.0 (Macintosh; Intel Mac OS X 10_10_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/54.0.2840.98 Safari/537.36'
286
+ rescue => ex
287
+ Scoutui::Utils::TestUtils.instance.setState(:abort, __FILE__ + (__LINE__).to_s + " : #{ex.class.to_s}: #{ex}")
288
+ Scoutui::Logger::LogMgr.instance.warn __FILE__ + (__LINE__).to_s + " #{ex.class.to_s} Error during processing: #{ex}"
289
+ Scoutui::Logger::LogMgr.instance.warn ex.backtrace
290
+ end
285
291
 
286
- _useragent = _YosemiteChromeBeta
292
+ _tm[:end]=Time.now if _tm[:end].nil?
287
293
 
288
- caps=Selenium::WebDriver::Remote::Capabilities.phantomjs('phantomjs.page.settings.userAgent' => _useragent)
289
- # @drv=Selenium::WebDriver.for :phantomjs, :url => selenium_server, :desired_capabilities => caps
290
- @drv=Selenium::WebDriver.for :remote, :url => selenium_server, :desired_capabilities => caps
294
+ Testmgr::TestReport.instance.getReq('Execution').tc('Status').add(_connected, "Connect to GhostDriver on #{selenium_server}", _tm[:end] - _tm[:start])
291
295
 
292
- _viewport = Scoutui::Utils::TestUtils.instance.getViewPort()
293
- if !_viewport.nil?
294
- target_size = Selenium::WebDriver::Dimension.new(_viewport[:width], _viewport[:height])
295
- @drv.manage.window.size = target_size
296
- end
297
296
 
298
297
  else
299
298
  Scoutui::Logger::LogMgr.instance.debug __FILE__ + (__LINE__).to_s + " Create WebDriver: #{browserType.to_s}"
300
299
  @drv=Selenium::WebDriver.for browserType.to_sym, :profile => @profile
301
-
302
- _viewport = Scoutui::Utils::TestUtils.instance.getViewPort()
303
- if !_viewport.nil?
304
- target_size = Selenium::WebDriver::Dimension.new(_viewport[:width], _viewport[:height])
305
- @drv.manage.window.size = target_size
306
- end
300
+ setViewport()
307
301
 
308
302
  end
309
303
 
@@ -299,6 +299,7 @@ module Scoutui::Utils
299
299
  @options[:enable_sauce] = !o.match(/true/i).nil?
300
300
  }
301
301
  opt.on('--sauce_name NAME') { |o| @options[:sauce_name] = o }
302
+ opt.on('--sauce:capabilities Capabilities') { |o| @options[:sauce_capabilities] = o }
302
303
  opt.on('--sauce:name NAME') { |o| @options[:sauce_name] = o }
303
304
  opt.on('--sauce:build id') { |o| @options[:sauce_build] = o }
304
305
  opt.on('--sauce:browser Browser') { |o| @options[:sauce_browser] = o }
@@ -316,6 +317,7 @@ module Scoutui::Utils
316
317
  end.parse!
317
318
 
318
319
  if Scoutui::Utils::TestUtils.instance.isDebug?
320
+ Scoutui::Logger::LogMgr.instance.info __FILE__ + (__LINE__).to_s + " ScoutUI Version : " + Scoutui::VERSION
319
321
  Scoutui::Logger::LogMgr.instance.info __FILE__ + (__LINE__).to_s + " " + @options.to_s
320
322
  Scoutui::Logger::LogMgr.instance.info "Test file => #{@options[:test_file]}"
321
323
  Scoutui::Logger::LogMgr.instance.info "Host => #{@options[:host]}"
@@ -474,6 +476,10 @@ module Scoutui::Utils
474
476
  @options[:retries]
475
477
  end
476
478
 
479
+ def getSauceCaps()
480
+ @options[:sauce_capabilities]
481
+ end
482
+
477
483
  def getSauceName()
478
484
  @options[:sauce_name].to_s
479
485
  end
@@ -1,3 +1,3 @@
1
1
  module Scoutui
2
- VERSION = "2.0.4.2.pre"
2
+ VERSION = "2.0.5.0"
3
3
  end
data/scoutui.gemspec CHANGED
@@ -32,9 +32,8 @@ Gem::Specification.new do |spec|
32
32
  spec.add_development_dependency "json", ">= 1.8.3"
33
33
  spec.add_development_dependency "faker"
34
34
  spec.add_development_dependency "logging"
35
- spec.add_development_dependency "sauce_whisk"
35
+ spec.add_development_dependency "sauce_whisk", "0.0.21"
36
36
  spec.add_development_dependency "testmgr", ">= 0.3.2.pre"
37
- spec.add_development_dependency "tiny_tds"
38
- spec.add_development_dependency "DataMgr", ">= 0.1.1.1.pre"
37
+ spec.add_development_dependency "DataMgr", ">=0.2.0"
39
38
  spec.add_development_dependency "CmdShellMgr", ">= 0.1.1.2.pre"
40
39
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: scoutui
3
3
  version: !ruby/object:Gem::Version
4
- version: 2.0.4.2.pre
4
+ version: 2.0.5.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Peter Kim
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2016-12-12 00:00:00.000000000 Z
11
+ date: 2016-12-15 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: bundler
@@ -154,16 +154,16 @@ dependencies:
154
154
  name: sauce_whisk
155
155
  requirement: !ruby/object:Gem::Requirement
156
156
  requirements:
157
- - - ">="
157
+ - - '='
158
158
  - !ruby/object:Gem::Version
159
- version: '0'
159
+ version: 0.0.21
160
160
  type: :development
161
161
  prerelease: false
162
162
  version_requirements: !ruby/object:Gem::Requirement
163
163
  requirements:
164
- - - ">="
164
+ - - '='
165
165
  - !ruby/object:Gem::Version
166
- version: '0'
166
+ version: 0.0.21
167
167
  - !ruby/object:Gem::Dependency
168
168
  name: testmgr
169
169
  requirement: !ruby/object:Gem::Requirement
@@ -178,34 +178,20 @@ dependencies:
178
178
  - - ">="
179
179
  - !ruby/object:Gem::Version
180
180
  version: 0.3.2.pre
181
- - !ruby/object:Gem::Dependency
182
- name: tiny_tds
183
- requirement: !ruby/object:Gem::Requirement
184
- requirements:
185
- - - ">="
186
- - !ruby/object:Gem::Version
187
- version: '0'
188
- type: :development
189
- prerelease: false
190
- version_requirements: !ruby/object:Gem::Requirement
191
- requirements:
192
- - - ">="
193
- - !ruby/object:Gem::Version
194
- version: '0'
195
181
  - !ruby/object:Gem::Dependency
196
182
  name: DataMgr
197
183
  requirement: !ruby/object:Gem::Requirement
198
184
  requirements:
199
185
  - - ">="
200
186
  - !ruby/object:Gem::Version
201
- version: 0.1.1.1.pre
187
+ version: 0.2.0
202
188
  type: :development
203
189
  prerelease: false
204
190
  version_requirements: !ruby/object:Gem::Requirement
205
191
  requirements:
206
192
  - - ">="
207
193
  - !ruby/object:Gem::Version
208
- version: 0.1.1.1.pre
194
+ version: 0.2.0
209
195
  - !ruby/object:Gem::Dependency
210
196
  name: CmdShellMgr
211
197
  requirement: !ruby/object:Gem::Requirement
@@ -237,46 +223,16 @@ files:
237
223
  - README.md
238
224
  - Rakefile
239
225
  - bin/console
240
- - bin/scoutui_driver
241
226
  - bin/scoutui_driver.rb
242
227
  - bin/setup
243
- - examples/benchmark/ex.rb
244
- - examples/capabilities/win10.chrome46.json
245
- - examples/carmax/appmodel/search_results.json
246
- - examples/carmax/commands/commands.yml
247
- - examples/cmdshell/commands/hello.yml
248
- - examples/converters/jsonupdate.rb
249
228
  - examples/ex1/commands.holidays.yml
250
229
  - examples/ex1/commands.yml
230
+ - examples/ex1/phantom.chrome.json
231
+ - examples/ex1/run.sh
232
+ - examples/ex1/simple.yml
251
233
  - examples/ex1/test-example.sh
252
234
  - examples/ex1/test.config.json
253
- - examples/ex2/appmodel/common.json
254
- - examples/ex2/appmodel/page_model.json
255
- - examples/ex2/appmodel/register.model.json
256
- - examples/ex2/commands/commands.basic.appmodel.yml
257
- - examples/ex2/commands/commands.yml
258
- - examples/ex2/commands/ex1.yml
259
- - examples/ex2/commands/ex1c.yml
260
- - examples/ex2/commands/ex1d.yml
261
- - examples/ex2/commands/ex2.hover.yml
262
- - examples/ex2/commands/ex2.yml
263
- - examples/ex2/data.json
264
- - examples/ex2/test-configs/test.config.basic.json
265
- - examples/ex2/test-configs/test.config.json
266
- - examples/ex2/tests/run-test.sh
267
- - examples/ex2/tests/test-basic-appmodel.sh
268
- - examples/ex2/tests/test-example.sh
269
- - examples/ex2/tests/test-example1a.sh
270
- - examples/ex2/tests/test-example1b.sh
271
- - examples/ex2/tests/test-example1c.sh
272
- - examples/ex2/tests/test-example1d.sh
273
- - examples/ex2/tests/test-example2.forms.eyes.sh
274
- - examples/ex2/tests/test-example2.hover.eyes.sh
275
- - examples/ex2/tests/test-example2.hover.sh
276
- - examples/ex2/tests/test-example2.sh
277
- - examples/ex2/tests/test-example3.sauce.sh
278
- - examples/ex2/tests/test-example3.sh
279
- - examples/headless/run.sh
235
+ - examples/ex1/win10.chromebeta.json
280
236
  - lib/scoutui.rb
281
237
  - lib/scoutui/appmodel/q_model.rb
282
238
  - lib/scoutui/base/assertions.rb
@@ -284,6 +240,7 @@ files:
284
240
  - lib/scoutui/base/q_applitools.rb
285
241
  - lib/scoutui/base/q_browser.rb
286
242
  - lib/scoutui/base/q_form.rb
243
+ - lib/scoutui/base/q_har_mgr.rb
287
244
  - lib/scoutui/base/requirements.rb
288
245
  - lib/scoutui/base/test_context.rb
289
246
  - lib/scoutui/base/test_data.rb
@@ -346,9 +303,9 @@ required_ruby_version: !ruby/object:Gem::Requirement
346
303
  version: '0'
347
304
  required_rubygems_version: !ruby/object:Gem::Requirement
348
305
  requirements:
349
- - - ">"
306
+ - - ">="
350
307
  - !ruby/object:Gem::Version
351
- version: 1.3.1
308
+ version: '0'
352
309
  requirements: []
353
310
  rubyforge_project:
354
311
  rubygems_version: 2.6.2
data/bin/scoutui_driver DELETED
@@ -1 +0,0 @@
1
- scoutui_driver.rb
@@ -1,16 +0,0 @@
1
-
2
-
3
-
4
- def foo(opts)
5
-
6
- puts opts
7
-
8
-
9
- end
10
-
11
-
12
-
13
-
14
- foo(rover: 'Rover')
15
-
16
-
@@ -1,6 +0,0 @@
1
- {
2
- "platform": "Windows 10",
3
- "browser": "chrome",
4
- "version": "46.0",
5
- "screenResolution": "1024x768"
6
- }
@@ -1,27 +0,0 @@
1
- {
2
-
3
-
4
- "search_results": {
5
-
6
-
7
- "results": {
8
-
9
- "header": {
10
- "reqid": "REQ-HEADER",
11
- "locator": "//span[text()='Applied filters']",
12
- "visible_when": "title(Search Results)"
13
- }
14
-
15
-
16
- }
17
-
18
-
19
-
20
- }
21
-
22
-
23
-
24
-
25
-
26
-
27
- }