scoutui 2.0.3.29.pre → 2.0.3.30.pre

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 5d84c794cae92dd79cce22350ab9384e82ec4569
4
- data.tar.gz: bffc895c5992b8bcbbbdfe63d2977fc2d3ac36c7
3
+ metadata.gz: bec2331d9973d87b6ebde0aa7d385835cd64d28e
4
+ data.tar.gz: 1773cec8ac473fac69be4a81cd86ee4b3a05823c
5
5
  SHA512:
6
- metadata.gz: d4f33996046dd9dda7e351056b926995877969033b674ad9ba41828cef58de0b11293151fa00448049a4dc0c2a74f8b42bb3c4f543e9b7ab4cb060c4ffc80308
7
- data.tar.gz: 1308726062f9fff6cfae328a657bb72571a3a878eb081a703942f21fd42c7b003a1881be52a2c1c825701c2145d597dc65262e10cb6a3a5924faf79c03eafc85
6
+ metadata.gz: f0bb080dd63f6f999f572991459bc34dafa68b5f471b5b1e9e2192df7464a7657137388c4c424bd7461426bba572fd6d02b87566a5f2c2346bf5ac4e9aaa5ba2
7
+ data.tar.gz: c79d401e27bd6b1d506f3b74e4aac4786ed0328ecfbe03389baf126692dfc6c87a7014a00ff002752f94bc754729702645951816a1d172c73982790b095d34b3
@@ -0,0 +1,5 @@
1
+ page:
2
+ asserts:
3
+ - one
4
+ - two:
5
+ foo: bar
@@ -0,0 +1,18 @@
1
+ require 'yaml'
2
+
3
+
4
+
5
+ y = YAML.load_stream File.read('./dut.yml')
6
+
7
+
8
+ puts y
9
+
10
+ i=0
11
+ y.each do |e|
12
+ puts "#{i}. #{e}"
13
+
14
+ e['page']['asserts'].each do |a|
15
+ puts "=> #{a}"
16
+ end
17
+ i+=1
18
+ end
@@ -9,16 +9,86 @@ module Scoutui::Base
9
9
  include Singleton
10
10
 
11
11
  attr_accessor :drv
12
+ attr_accessor :assertionTypes
12
13
 
14
+ def initialize
15
+ @assertionTypes=[
16
+ { :cmd => 'isEnabled', :pattern => '^\s*[!]*isEnabled\((.*)\)\s*$'},
17
+ { :cmd => 'visible', :pattern => '^\s*[!]*visible\((.*)\)\s*$'}
18
+ ]
19
+
20
+ end
21
+
22
+
23
+ def isValidAssertType(_a)
24
+
25
+ puts __FILE__ + (__LINE__).to_s + " isValidAssertionType(#{_a})"
26
+ @assertionTypes.each do |e|
27
+ _p=e[:pattern]
28
+
29
+ puts __FILE__ + (__LINE__).to_s + " == verify #{_p} =="
30
+
31
+ if _a.match(/#{_p}/)
32
+ return e
33
+ end
34
+ end
35
+
36
+ puts _FILE__ + (__LINE__).to_s + " => unknown command : #{_a}"
37
+ return nil
38
+ end
13
39
 
14
40
  def setDriver(_drv)
15
41
  @drv=_drv
16
42
  end
17
43
 
44
+
45
+ # _a : frame(xyz).frame(123), <locator>
46
+ def _parseFrameLoc(_cmd, _a)
47
+ rc=nil
48
+
49
+ begin
50
+ _fMatch=nil
51
+
52
+ _pattern='(frame\(.*\)[\.frame\(.*\)]*)\s*,\s*(.*)\s*$'
53
+
54
+ c=_a.match(/^\s*([!]*#{_cmd})\((.*)\)\s*$/)
55
+
56
+ if c
57
+ cmd = c[1].strip
58
+ _fMatch = c[2].match(/#{_pattern}/)
59
+ end
60
+
61
+
62
+ if _fMatch
63
+ f=c[2].strip
64
+
65
+ puts __FILE__ + (__LINE__).to_s + " arg: #{f}"
66
+
67
+ rc = { 'cmd' => cmd,
68
+ 'frame' => _fMatch[1].strip,
69
+ 'locator' => _fMatch[2].strip }
70
+ elsif c
71
+ rc = {
72
+ 'cmd' => cmd,
73
+ 'locator' => c[2].strip
74
+ }
75
+ end
76
+
77
+ rescue => ex
78
+ ;
79
+ end
80
+
81
+ rc
82
+ end
83
+
18
84
  def isEnabledCmd?(_a)
19
85
  _a.is_a?(String) && _a.match(/^\s*[!]*isEnabled\((.*)\)\s*$/i)
20
86
  end
21
87
 
88
+ def isEnabledFrameCmd?(_a)
89
+ _parseFrameLoc('isEnabled', _a)
90
+ end
91
+
22
92
  def isRoleCmd?(_a)
23
93
  _a.is_a?(String) && _a.match(/^\s*(isrole|role)\(.*\)\s*/i)
24
94
  end
@@ -41,6 +111,35 @@ module Scoutui::Base
41
111
  end
42
112
 
43
113
 
114
+ def isVisibleFrameCmd?(_a)
115
+ rc=nil
116
+
117
+ puts __FILE__ + (__LINE__).to_s + " [isVisibleFrameCmd]: #{_a}"
118
+
119
+ begin
120
+ if isVisibleCmd?(_a)
121
+
122
+ _pattern='(frame\(.*\)[\.frame\(.*\)]*)\s*,\s*(.*)\s*$'
123
+
124
+ f=_a.match(/^\s*[!]*visible\((.*)\)\s*$/)[1].strip
125
+
126
+ puts __FILE__ + (__LINE__).to_s + " arg: #{f}"
127
+ rc = { 'frame' => f.match(/#{_pattern}/)[1].strip,
128
+ 'locator' => f.match(/#{_pattern}/)[2].strip }
129
+
130
+ else
131
+ puts "=> NOT vsibleCmd"
132
+ end
133
+
134
+ rescue => ex
135
+ ;
136
+ end
137
+
138
+ puts __FILE__ + (__LINE__).to_s + " isVisibleCmd?(#{_a}) : #{rc}"
139
+ rc
140
+ end
141
+
142
+
44
143
  def isTitle(my_driver, _execute_when)
45
144
 
46
145
  rc=nil
@@ -105,21 +204,42 @@ module Scoutui::Base
105
204
  def isEnabled?(my_driver, _execute_when)
106
205
  rc=true
107
206
 
108
- _locator = _execute_when.match(/^\s*[!]*isEnabled\((.*)\)\s*$/i)[1].to_s
109
- Scoutui::Logger::LogMgr.instance.debug __FILE__ + (__LINE__).to_s + " isChecked => #{_locator}"
207
+ # _locator = _execute_when.match(/^\s*[!]*isEnabled\((.*)\)\s*$/i)[1].to_s
208
+ _locator=nil
209
+ _obj=nil
110
210
 
111
- _obj = Scoutui::Base::QBrowser.findElement(my_driver, _locator, Scoutui::Commands::Utils.instance.getFrameSearch(), Scoutui::Commands::Utils.instance.getTimeout)
211
+ _t = isEnabledFrameCmd?(_execute_when)
112
212
 
113
- _state = _obj.enabled?
213
+ if !_t.nil?
214
+ _locator = _t['locator']
114
215
 
115
- puts __FILE__ + (__LINE__).to_s + " _obj.enabled? => #{_state}"
216
+ if _t.has_key?('frame')
217
+ Scoutui::Commands::Utils.instance.setEnableFrameSearch(_t['frame'])
218
+ end
116
219
 
117
- if _execute_when.match(/^\s*!isEnabled/i) && _state
118
- Scoutui::Logger::LogMgr.instance.debug __FILE__ + (__LINE__).to_s + " !isEnabled(#{_locator}) : false"
119
- rc=false
120
- elsif _execute_when.match(/^\s*isEnabled/i) && !_state
121
- Scoutui::Logger::LogMgr.instance.debug __FILE__ + (__LINE__).to_s + " isEnabled(#{_locator}) : false"
122
- rc=false
220
+ Scoutui::Logger::LogMgr.instance.debug __FILE__ + (__LINE__).to_s + " isChecked => #{_locator}"
221
+ _obj = Scoutui::Base::QBrowser.findElement(my_driver, _locator, Scoutui::Commands::Utils.instance.getFrameSearch(), Scoutui::Commands::Utils.instance.getTimeout)
222
+ else
223
+ Scoutui::Logger::LogMgr.instance.warn __FILE__ + (__LINE__).to_s + " invalid visible cmd: #{_execute_when}"
224
+ end
225
+
226
+
227
+ if _obj.is_a?(Selenium::WebDriver::Element) && _t.has_key?('cmd') && !_t['cmd'].empty?
228
+
229
+ _enabled = _obj.enabled?
230
+
231
+ puts __FILE__ + (__LINE__).to_s + " _obj.enabled? => #{_enabled}"
232
+
233
+ if _execute_when.match(/^\s*!isEnabled/i) && _enabled
234
+ Scoutui::Logger::LogMgr.instance.debug __FILE__ + (__LINE__).to_s + " !isEnabled(#{_locator}) : false"
235
+ rc=false
236
+ elsif _execute_when.match(/^\s*isEnabled/i) && !_enabled
237
+ Scoutui::Logger::LogMgr.instance.debug __FILE__ + (__LINE__).to_s + " isEnabled(#{_locator}) : false"
238
+ rc=false
239
+ end
240
+
241
+ else
242
+ Scoutui::Logger::LogMgr.instance.warn __FILE__ + (__LINE__).to_s + " Element not found: #{_execute_when}"
123
243
  end
124
244
 
125
245
  Scoutui::Logger::LogMgr.instance.debug __FILE__ + (__LINE__).to_s + " isEnabled?(#{_execute_when}) => #{rc}"
@@ -154,7 +274,18 @@ module Scoutui::Base
154
274
  rc=true
155
275
 
156
276
  begin
157
- _locator = _execute_when.match(/^\s*[!]*visible\((.*)\)\s*$/i)[1].to_s
277
+
278
+ _t = isVisibleFrameCmd?(_execute_when)
279
+
280
+ if !_t.nil?
281
+ _locator = _t['locator']
282
+ Scoutui::Commands::Utils.instance.setEnableFrameSearch(_t['frame'])
283
+ elsif isVisibleCmd?(_execute_when)
284
+ _locator = _execute_when.match(/^\s*[!]*visible\((.*)\)\s*$/i)[1].to_s
285
+ else
286
+ Scoutui::Logger::LogMgr.instance.warn __FILE__ + (__LINE__).to_s + " invalid visible cmd: #{_execute_when}"
287
+ end
288
+
158
289
  Scoutui::Logger::LogMgr.instance.debug __FILE__ + (__LINE__).to_s + " visible => #{_locator}"
159
290
 
160
291
  _obj = Scoutui::Base::QBrowser.findElement(my_driver, _locator, Scoutui::Commands::Utils.instance.getFrameSearch(), Scoutui::Commands::Utils.instance.getTimeout)
@@ -333,12 +333,22 @@ module Scoutui::Base
333
333
 
334
334
  _rc=nil
335
335
 
336
- if Scoutui::Base::Assertions.instance.isEnabledCmd?(_a)
337
- _rc=Scoutui::Base::Assertions.instance.isEnabled?(my_driver, _a)
336
+
337
+ _assertType=Scoutui::Base::Assertions.instance.isValidAssertType(_a)
338
+
339
+ if !_assertType.nil?
340
+
341
+
342
+ if _assertType[:cmd]=='isEnabled' # Scoutui::Base::Assertions.instance.isEnabledCmd?(_a)
343
+ _rc=Scoutui::Base::Assertions.instance.isEnabled?(my_driver, _a)
344
+ elsif _assertType[:cmd]=='visible'
345
+ _rc=Scoutui::Base::Assertions.instance.isVisible?(my_driver, _a)
346
+ end
347
+
338
348
  elsif Scoutui::Base::Assertions.instance.isRoleCmd?(_a)
339
349
  _rc=Scoutui::Base::Assertions.instance.isRole?(_a)
340
- elsif Scoutui::Base::Assertions.instance.isVisibleCmd?(_a)
341
- _rc=Scoutui::Base::Assertions.instance.isVisible?(my_driver, _a)
350
+ # elsif Scoutui::Base::Assertions.instance.isVisibleCmd?(_a)
351
+ # _rc=Scoutui::Base::Assertions.instance.isVisible?(my_driver, _a)
342
352
  elsif Scoutui::Base::Assertions.instance.isSelectedCmd?(_a)
343
353
  _rc=Scoutui::Base::Assertions.instance.isSelected?(my_driver, _a)
344
354
  elsif Scoutui::Base::Assertions.instance.isValueCmd?(_a)
@@ -350,6 +360,8 @@ module Scoutui::Base
350
360
  if !_rc.nil?
351
361
  Scoutui::Logger::LogMgr.instance.asserts.info __FILE__ + (__LINE__).to_s + "Verify #{_a} - #{_rc}"
352
362
  Testmgr::TestReport.instance.getReq(_req).get_child('visible_when').add(_rc, "Verify #{_a}")
363
+
364
+ Scoutui::Commands::Utils.instance.resetFrameSearch()
353
365
  end
354
366
 
355
367
  end
@@ -1,3 +1,3 @@
1
1
  module Scoutui
2
- VERSION = "2.0.3.29.pre"
2
+ VERSION = "2.0.3.30.pre"
3
3
  end
data/scoutui.gemspec CHANGED
@@ -25,7 +25,7 @@ Gem::Specification.new do |spec|
25
25
  spec.add_development_dependency "bundler"
26
26
  spec.add_development_dependency "rake"
27
27
  spec.add_development_dependency "rspec"
28
- spec.add_development_dependency "eyes_selenium", ">= 2.28"
28
+ spec.add_development_dependency "eyes_selenium", ">= 2.33"
29
29
  spec.add_development_dependency "selenium-webdriver", ">= 2.53.4"
30
30
  spec.add_development_dependency "httparty", ">=0.13.7"
31
31
  spec.add_development_dependency "json", ">= 1.8.3"
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.3.29.pre
4
+ version: 2.0.3.30.pre
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-07-26 00:00:00.000000000 Z
11
+ date: 2016-07-27 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: bundler
@@ -58,14 +58,14 @@ dependencies:
58
58
  requirements:
59
59
  - - ">="
60
60
  - !ruby/object:Gem::Version
61
- version: '2.28'
61
+ version: '2.33'
62
62
  type: :development
63
63
  prerelease: false
64
64
  version_requirements: !ruby/object:Gem::Requirement
65
65
  requirements:
66
66
  - - ">="
67
67
  - !ruby/object:Gem::Version
68
- version: '2.28'
68
+ version: '2.33'
69
69
  - !ruby/object:Gem::Dependency
70
70
  name: selenium-webdriver
71
71
  requirement: !ruby/object:Gem::Requirement
@@ -228,6 +228,8 @@ files:
228
228
  - examples/eyes/diff.rb
229
229
  - examples/eyes/ex2.rb
230
230
  - examples/eyes_results/response.json
231
+ - examples/yaml/dut.yml
232
+ - examples/yaml/ex_yaml.rb
231
233
  - lib/scoutui.rb
232
234
  - lib/scoutui/appmodel/q_model.rb
233
235
  - lib/scoutui/base/assertions.rb