scoutui 2.0.3.28.pre → 2.0.3.29.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: e62490127bd891adcfc389e89e9d66c28f67ca8b
4
- data.tar.gz: e230c70a13d642d0941ac7a8daf2e5ef12bb7d80
3
+ metadata.gz: 5d84c794cae92dd79cce22350ab9384e82ec4569
4
+ data.tar.gz: bffc895c5992b8bcbbbdfe63d2977fc2d3ac36c7
5
5
  SHA512:
6
- metadata.gz: fcbde622927e2c78d21f448777f24d89626c41ea0748195b63c80bc487c14cc2451cc88e2c95c0502899cd63fbb5f8e39b5699ba3b524d38eee4e7e854807cf6
7
- data.tar.gz: 42b9fc8ebef14155f30e6fbfbf6b4bdd563312db35593522a0f733247037130c7e0524cb3845521a8689ffa34913383f6ce66445ebeaefded2137ab7ffb1da04
6
+ metadata.gz: d4f33996046dd9dda7e351056b926995877969033b674ad9ba41828cef58de0b11293151fa00448049a4dc0c2a74f8b42bb3c4f543e9b7ab4cb060c4ffc80308
7
+ data.tar.gz: 1308726062f9fff6cfae328a657bb72571a3a878eb081a703942f21fd42c7b003a1881be52a2c1c825701c2145d597dc65262e10cb6a3a5924faf79c03eafc85
@@ -0,0 +1,31 @@
1
+
2
+
3
+ def iterate(h)
4
+ h.each do |k, v|
5
+ if v.is_a?(Hash) || v.is_a?(Array)
6
+ iterate(v)
7
+ else
8
+ puts("k is #{k}, value is #{v}")
9
+ if v.match(/peter/i)
10
+ h[k]='Elvis'
11
+ end
12
+ end
13
+ end
14
+ end
15
+
16
+
17
+ h={
18
+ 'person': {
19
+ 'first': 'Peter',
20
+ 'last': 'Kim',
21
+ 'address': {
22
+ 'city': 'Manhattan peter',
23
+ 'state': 'New York'
24
+ }
25
+ }
26
+ }
27
+
28
+
29
+ iterate(h)
30
+
31
+ puts "h => #{h}"
@@ -34,7 +34,7 @@ setup()
34
34
  CMD="../commands/basic_search.yml"
35
35
 
36
36
  CMD="../commands/home.commands.yml"
37
-
37
+ CMD="../commands/cud.yml"
38
38
  }
39
39
 
40
40
 
@@ -27,6 +27,11 @@ module Scoutui::Base
27
27
  _a.is_a?(String) && _a.match(/^\s*[!]*(isSelected|selected)\((.*)\)\s*$/i)
28
28
  end
29
29
 
30
+
31
+ def isTitleCmd?(_a)
32
+ _a.is_a?(String) && _a.match(/^\s*[!]*(isTitle|title)\s*\((.*)\)\s*$/i)
33
+ end
34
+
30
35
  def isValueCmd?(_a)
31
36
  _a.is_a?(String) && _a.match(/^\s*(value|text)\s*\(.*\)\s*\=\s*(.*)/i)
32
37
  end
@@ -35,6 +40,24 @@ module Scoutui::Base
35
40
  _a.is_a?(String) && _a.match(/^\s*[!]*visible\((.*)\)\s*$/i)
36
41
  end
37
42
 
43
+
44
+ def isTitle(my_driver, _execute_when)
45
+
46
+ rc=nil
47
+
48
+ Scoutui::Logger::LogMgr.instance.debug __FILE__ + (__LINE__).to_s + " isTitle(#{_execute_when}"
49
+
50
+ _locator = _execute_when.match(/^\s*[!]*(isTitle|title)\((.*)\)\s*$/i)[2].to_s
51
+ Scoutui::Logger::LogMgr.instance.debug __FILE__ + (__LINE__).to_s + " isTitle => #{_locator}"
52
+
53
+ current_title = my_driver.title
54
+ expected_title = Regexp.new(_locator)
55
+ rc=!expected_title.match(current_title).nil?
56
+
57
+ Scoutui::Logger::LogMgr.instance.debug __FILE__ + (__LINE__).to_s + " isTitle?(#{_execute_when}) => #{rc}"
58
+ rc
59
+ end
60
+
38
61
  def isValue?(my_driver, page_elt)
39
62
 
40
63
  rc = false
@@ -59,12 +82,12 @@ module Scoutui::Base
59
82
  puts __FILE__ + (__LINE__).to_s + " #{condition} : #{obj}"
60
83
 
61
84
  if !obj.nil?
62
- if condition.match(/^text/)
85
+ if condition.match(/^\s*text/)
63
86
  _txt = obj.text
64
87
  Scoutui::Logger::LogMgr.instance.debug __FILE__ + (__LINE__).to_s + " text : #{_txt}"
65
88
  expected_regex = Regexp.new(expectedVal)
66
89
  rc = !_txt.to_s.match(expected_regex).nil?
67
- elsif condition.match(/^value/)
90
+ elsif condition.match(/^\*value/)
68
91
  _txt = obj.attribute('value')
69
92
  expected_regex = Regexp.new(expectedVal)
70
93
  rc = !_txt.to_s.match(expected_regex).nil?
@@ -314,25 +314,68 @@ module Scoutui::Base
314
314
 
315
315
  end
316
316
 
317
-
318
317
  def self.processAssertions(my_driver, e)
318
+ processConditions(my_driver, e, 'assertions')
319
+ end
320
+
321
+ def self.processAsserts(my_driver, _execute_when)
322
+
323
+ Scoutui::Logger::LogMgr.instance.debug __FILE__ + (__LINE__).to_s + " processAsserts#{_execute_when}"
324
+
325
+ _executeIt=true
326
+
327
+ if !_execute_when.nil? && _execute_when.is_a?(Array)
328
+
329
+ _req = Scoutui::Utils::TestUtils.instance.getReq()
330
+
331
+ _execute_when.each do |_a|
332
+ Scoutui::Logger::LogMgr.instance.debug __FILE__ + (__LINE__).to_s + " exeucute_when => #{_a}"
333
+
334
+ _rc=nil
335
+
336
+ if Scoutui::Base::Assertions.instance.isEnabledCmd?(_a)
337
+ _rc=Scoutui::Base::Assertions.instance.isEnabled?(my_driver, _a)
338
+ elsif Scoutui::Base::Assertions.instance.isRoleCmd?(_a)
339
+ _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)
342
+ elsif Scoutui::Base::Assertions.instance.isSelectedCmd?(_a)
343
+ _rc=Scoutui::Base::Assertions.instance.isSelected?(my_driver, _a)
344
+ elsif Scoutui::Base::Assertions.instance.isValueCmd?(_a)
345
+ _rc=Scoutui::Base::Assertions.instance.isValue?(my_driver, _a)
346
+ elsif Scoutui::Base::Assertions.instance.isTitleCmd?(_a)
347
+ _rc=Scoutui::Base::Assertions.instance.isTitle(my_driver, _a)
348
+ end
349
+
350
+ if !_rc.nil?
351
+ Scoutui::Logger::LogMgr.instance.asserts.info __FILE__ + (__LINE__).to_s + "Verify #{_a} - #{_rc}"
352
+ Testmgr::TestReport.instance.getReq(_req).get_child('visible_when').add(_rc, "Verify #{_a}")
353
+ end
354
+
355
+ end
356
+ end
357
+
358
+ end
359
+
360
+
361
+ def self.processConditions(my_driver, e, _conditionType)
319
362
  Scoutui::Logger::LogMgr.instance.info __FILE__ + (__LINE__).to_s + " === ProcessAssertions(#{e.to_s} ====" if Scoutui::Utils::TestUtils.instance.isDebug?
320
363
 
321
- if !e[STEP_KEY].has_key?('assertions')
364
+ if !e[STEP_KEY].has_key?(_conditionType)
322
365
  return
323
366
  end
324
367
 
325
- if !e[STEP_KEY]['assertions'].is_a?(Array)
368
+ if !e[STEP_KEY][_conditionType].is_a?(Array)
326
369
  Scoutui::Logger::LogMgr.instance.warn __FILE__ + (__LINE__).to_s + " \'assertions\' field must be type Array."
327
370
  return
328
371
  end
329
372
 
330
373
  _req = Scoutui::Utils::TestUtils.instance.getReq()
331
374
 
332
- puts __FILE__ + (__LINE__).to_s + "======= #{e[STEP_KEY]['assertions']} ========="
375
+ puts __FILE__ + (__LINE__).to_s + "======= #{e[STEP_KEY][_conditionType]} ========="
333
376
 
334
377
 
335
- e[STEP_KEY]['assertions'].each do |elt|
378
+ e[STEP_KEY][_conditionType].each do |elt|
336
379
 
337
380
  begin
338
381
 
@@ -970,24 +1013,31 @@ module Scoutui::Base
970
1013
  processExpected(my_driver, e)
971
1014
 
972
1015
  processAssertions(my_driver, e)
1016
+ processAsserts(my_driver, e[STEP_KEY]["asserts"])
973
1017
 
974
1018
  if e[STEP_KEY].has_key?('saveas')
975
1019
  # processSaveAs(e)
976
1020
 
977
- puts __FILE__ + (__LINE__).to_s + " == Process SaveAs =="
978
1021
  _saveAs = e[STEP_KEY]['saveas']['file'].to_s
1022
+
1023
+ puts __FILE__ + (__LINE__).to_s + " == Process SaveAs #{_saveAs}=="
1024
+
979
1025
  _f=File.open(_saveAs, 'w')
980
1026
 
981
- if e[STEP_KEY]['saveas']['data'].match(/.*\.json$/)
982
- _f.puts e[STEP_KEY]['saveas']['data'].to_json
983
- elsif e[STEP_KEY]['saveas']['data'].match(/.*\.(yml|yaml)$/)
1027
+ if _saveAs.match(/.*\.json\s*$/)
1028
+ # _f.puts e[STEP_KEY]['saveas']['data'].to_json
1029
+ _f.puts Scoutui::Utils::TestUtils.instance.expandVars(e[STEP_KEY]['saveas']['data'])
984
1030
 
985
- # y_file = File.open("#{$yaml_file}", 'a')
986
- _f.write(YAML.dump(JSON.parse(IO.read($json_file))))
987
- y_file.close
1031
+ elsif _saveAs.match(/.*\.(yml|yaml)\s*$/)
988
1032
 
1033
+ # y_file = File.open("#{$yaml_file}", 'a')
1034
+ puts __FILE__ + (__LINE__).to_s + " Generate a YAML file"
1035
+ # _f.write(e[STEP_KEY]['saveas']['data'].to_yaml)
989
1036
 
990
- _f.puts e[STEP_KEY]['saveas']['data'].to_json
1037
+ _f.write(Scoutui::Utils::TestUtils.instance.expandVars(e[STEP_KEY]['saveas']['data'].to_yaml))
1038
+ _f.close
1039
+ else
1040
+ __FILE__ + (__LINE__).to_s + " Unknown file extension."
991
1041
  end
992
1042
 
993
1043
  _f.close
@@ -513,6 +513,55 @@ module Scoutui::Utils
513
513
  @options[:title]
514
514
  end
515
515
 
516
+
517
+ def transpile(_val)
518
+ _uservars = _val.scan(/\$\{(.*?)\}/)
519
+
520
+ _v2 = _val
521
+ for i in 0 .. (_uservars.size - 1)
522
+
523
+ _t = Scoutui::Base::UserVars.instance.get(_uservars[i][0])
524
+ puts __FILE__ + (__LINE__).to_s + " translate(#{_uservars[i][0]}) => #{_t}"
525
+
526
+ if !_t.nil? && _uservars[i][0]!=_t
527
+ _v2.gsub!("\$\{#{_uservars[i][0]}\}", _t)
528
+ end
529
+
530
+ puts __FILE__ + (__LINE__).to_s + " value => #{_v2}"
531
+
532
+ end
533
+
534
+ ## Global replaces
535
+ _text_to_type = Scoutui::Base::UserVars.instance.get(_v2)
536
+
537
+ puts __FILE__ + (__LINE__).to_s + " rawText : #{_text_to_type}"
538
+ _text_to_type = Scoutui::Commands::Utils.instance.expandMacro(_text_to_type)
539
+ puts __FILE__ + (__LINE__).to_s + " Text to type : #{_text_to_type}"
540
+
541
+ _text_to_type
542
+ end
543
+
544
+
545
+
546
+ def expandVars(h)
547
+
548
+ puts __FILE__ + (__LINE__).to_s + " expandVars(#{h})"
549
+
550
+ h.each do |k, v|
551
+ if v.is_a?(Hash) || v.is_a?(Array)
552
+ expandVars(v)
553
+ else
554
+ puts("k is #{k}, value is #{v}")
555
+
556
+ h[k]=transpile(v)
557
+ end
558
+ end
559
+
560
+ h
561
+ end
562
+
563
+
564
+
516
565
  end
517
566
 
518
567
 
@@ -1,3 +1,3 @@
1
1
  module Scoutui
2
- VERSION = "2.0.3.28.pre"
2
+ VERSION = "2.0.3.29.pre"
3
3
  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.3.28.pre
4
+ version: 2.0.3.29.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-25 00:00:00.000000000 Z
11
+ date: 2016-07-26 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: bundler
@@ -191,6 +191,7 @@ files:
191
191
  - examples/carmax/commands/commands.yml
192
192
  - examples/carmax/tests/test-carmax.sh
193
193
  - examples/ci_reporter/ci_example.rb
194
+ - examples/converters/jsonupdate.rb
194
195
  - examples/converters/jsony.rb
195
196
  - examples/ex1/commands.holidays.yml
196
197
  - examples/ex1/commands.yml