testability-driver 1.1.1 → 1.2.1

Sign up to get free protection for your applications and to get access to all the features.
Files changed (71) hide show
  1. data/config/sut_parameters.rb +21 -8
  2. data/config/tdriver_custom_error_recovery.rb +83 -0
  3. data/ext/extconf.rb +3 -2
  4. data/ext/native_extensions.c +60 -2
  5. data/lib/tdriver-devtools/behaviour/old/xml/example/flick-example.rb +2 -105
  6. data/lib/tdriver/base/behaviour/factory.rb +154 -89
  7. data/lib/tdriver/base/behaviour/factory_new.rb +409 -0
  8. data/lib/tdriver/base/errors.rb +3 -3
  9. data/lib/tdriver/base/state_object.rb +85 -22
  10. data/lib/tdriver/base/sut/adapter.rb +26 -0
  11. data/lib/tdriver/base/sut/controller.rb +1 -1
  12. data/lib/tdriver/base/sut/generic/behaviours/application.rb +89 -118
  13. data/lib/tdriver/base/sut/generic/behaviours/find.rb +67 -62
  14. data/lib/tdriver/base/sut/generic/behaviours/sut.rb +296 -187
  15. data/lib/tdriver/base/sut/generic/behaviours/switchbox_behaviour.rb +7 -7
  16. data/lib/tdriver/base/sut/generic/commands/application.rb +366 -295
  17. data/lib/tdriver/base/sut/sut.rb +19 -3
  18. data/lib/tdriver/base/test_object/abstract.rb +41 -21
  19. data/lib/tdriver/base/test_object/adapter.rb +62 -9
  20. data/lib/tdriver/base/test_object/behaviours/syncronization.rb +10 -6
  21. data/lib/tdriver/base/test_object/behaviours/test_object.rb +84 -47
  22. data/lib/tdriver/base/test_object/factory.rb +124 -68
  23. data/lib/tdriver/base/test_object/loader.rb +3 -4
  24. data/lib/tdriver/base/test_object/verification.rb +3 -3
  25. data/lib/tdriver/base/test_object/xml/adapter.rb +734 -0
  26. data/lib/tdriver/loader.rb +12 -0
  27. data/lib/tdriver/report/error_recovery/tdriver_error_recovery.rb +3 -2
  28. data/lib/tdriver/report/error_recovery/tdriver_error_recovery_settings.rb +14 -14
  29. data/lib/tdriver/report/report.rb +4 -8
  30. data/lib/tdriver/report/report_api.rb +9 -0
  31. data/lib/tdriver/report/report_crash_file_capture.rb +4 -4
  32. data/lib/tdriver/report/report_creator.rb +57 -35
  33. data/lib/tdriver/report/report_cucumber.rb +1 -1
  34. data/lib/tdriver/report/report_cucumber_listener.rb +5 -158
  35. data/lib/tdriver/report/report_cucumber_reporter.rb +7 -161
  36. data/lib/tdriver/report/report_execution_statistics.rb +4 -4
  37. data/lib/tdriver/report/report_file_capture.rb +5 -5
  38. data/lib/tdriver/report/report_grouping.rb +24 -22
  39. data/lib/tdriver/report/report_junit_xml.rb +5 -5
  40. data/lib/tdriver/report/report_test_case_run.rb +31 -22
  41. data/lib/tdriver/report/report_test_run.rb +107 -104
  42. data/lib/tdriver/report/report_writer.rb +150 -83
  43. data/lib/tdriver/tdriver.rb +147 -103
  44. data/lib/tdriver/util/common/boolean.rb +51 -0
  45. data/lib/tdriver/util/common/crc16.rb +110 -68
  46. data/lib/tdriver/util/common/hash.rb +63 -7
  47. data/lib/tdriver/util/common/kernel.rb +46 -1
  48. data/lib/tdriver/util/common/loader.rb +1 -0
  49. data/lib/tdriver/util/common/object.rb +20 -8
  50. data/lib/tdriver/util/common/string.rb +21 -2
  51. data/lib/tdriver/util/logger/logger.rb +4 -4
  52. data/lib/tdriver/util/parameter/loader.rb +2 -19
  53. data/lib/tdriver/util/parameter/parameter.rb +874 -177
  54. data/lib/tdriver/util/plugin/service.rb +1 -1
  55. data/lib/tdriver/util/recorder/recorder.rb +7 -1
  56. data/lib/tdriver/util/xml/abstraction.rb +13 -1
  57. data/lib/tdriver/util/xml/parsers/nokogiri/abstraction.rb +63 -10
  58. data/lib/tdriver/util/xml/parsers/nokogiri/attribute.rb +8 -2
  59. data/lib/tdriver/util/xml/parsers/nokogiri/document.rb +16 -3
  60. data/lib/tdriver/util/xml/parsers/nokogiri/node.rb +36 -32
  61. data/lib/tdriver/util/xml/parsers/nokogiri/nodeset.rb +19 -22
  62. data/lib/tdriver/util/xml/xml.rb +147 -32
  63. data/lib/tdriver/verify/verify.rb +1112 -289
  64. data/lib/tdriver/version.rb +1 -1
  65. data/xml/templates/generic.xml +14 -2
  66. metadata +51 -24
  67. data/lib/tdriver/util/parameter/parameter_hash.rb +0 -104
  68. data/lib/tdriver/util/parameter/parameter_new.rb +0 -869
  69. data/lib/tdriver/util/parameter/parameter_template.rb +0 -120
  70. data/lib/tdriver/util/parameter/parameter_user_api.rb +0 -116
  71. data/lib/tdriver/util/parameter/parameter_xml.rb +0 -261
@@ -42,4 +42,16 @@ require File.expand_path( File.join( File.dirname( __FILE__ ), 'base/loader.rb'
42
42
  # verify module
43
43
  require File.expand_path( File.join( File.dirname( __FILE__ ), 'verify/verify.rb' ) )
44
44
 
45
+ # reporting modules
46
+ if $parameters[ :enable_reporter, true ].true?
45
47
 
48
+ require File.expand_path( File.join( File.dirname( __FILE__ ), 'report/report.rb' ) )
49
+
50
+ end
51
+
52
+ # load report api for continuous verification reporting purposes
53
+ if $parameters[ :report_attach_continuous_verification_to_reporter, false ].true?
54
+
55
+ require File.expand_path( File.join( File.dirname( __FILE__ ), 'report/report_api' ) )
56
+
57
+ end
@@ -118,8 +118,9 @@ module TDriverErrorRecovery
118
118
  # false for failed ping
119
119
  # === raises
120
120
  def ping_device(current_sut)
121
- begin
122
- if current_sut.refresh()==false
121
+ begin
122
+ ui_xml=current_sut.get_ui_dump
123
+ if !ui_xml
123
124
  MobyUtil::Logger.instance.log "behaviour" , "WARNING;Device ping failed"
124
125
  false
125
126
  else
@@ -47,50 +47,50 @@ class TDriverErrorRecoverySettings
47
47
  # === returns
48
48
  # === raises
49
49
  def read_settings()
50
- @error_recovery_enabled=MobyUtil::Parameter[ :error_recovery_enabled ]
50
+ @error_recovery_enabled= $parameters[ :error_recovery_enabled ]
51
51
  Kernel::raise MobyBase::BehaviourError.new("error recovery", "error recovery enabled parameter not defined in tdriver_parameters.xml") if @error_recovery_enabled == nil
52
52
 
53
- @ats4_error_recovery_enabled=MobyUtil::Parameter[ :ats4_error_recovery_enabled ]
53
+ @ats4_error_recovery_enabled= $parameters[ :ats4_error_recovery_enabled ]
54
54
  Kernel::raise MobyBase::BehaviourError.new("error recovery", "ats4 error recovery enabled parameter not defined in tdriver_parameters.xml") if @ats4_error_recovery_enabled == nil
55
55
 
56
- @wait_time_for_ats4_error_recovery=MobyUtil::Parameter[ :wait_time_for_ats4_error_recovery ]
56
+ @wait_time_for_ats4_error_recovery= $parameters[ :wait_time_for_ats4_error_recovery ]
57
57
  Kernel::raise MobyBase::BehaviourError.new("error recovery", "ats4 error recovery wait time parameter not defined in tdriver_parameters.xml") if @wait_time_for_ats4_error_recovery == nil
58
58
 
59
- @ping_connection=MobyUtil::Parameter[ :ping_connection ]
59
+ @ping_connection= $parameters[ :ping_connection ]
60
60
  Kernel::raise MobyBase::BehaviourError.new("error recovery", "ping connection parameter not defined in tdriver_parameters.xml") if @ping_connection == nil
61
61
 
62
- @reconnect_device=MobyUtil::Parameter[ :reconnect_device ]
62
+ @reconnect_device= $parameters[ :reconnect_device ]
63
63
  Kernel::raise MobyBase::BehaviourError.new("error recovery", "reconnect device patameter not defined in tdriver_parameters.xml") if @reconnect_device == nil
64
64
 
65
- @reconnect_attempts=MobyUtil::Parameter[ :reconnect_attempts ]
65
+ @reconnect_attempts= $parameters[ :reconnect_attempts ]
66
66
  Kernel::raise MobyBase::BehaviourError.new("error recovery", "reconnect attempts patameter not defined in tdriver_parameters.xml") if @reconnect_attempts == nil
67
67
 
68
- str_parameter=MobyUtil::Parameter[ :error_recovery_monitored_sut_ids ]
68
+ str_parameter= $parameters[ :error_recovery_monitored_sut_ids ]
69
69
  Kernel::raise MobyBase::BehaviourError.new("error recovery", "error_recovery_monitored_sut_ids patameter not defined in tdriver_parameters.xml") if str_parameter == nil
70
70
  @monitored_suts=str_parameter.split('|')
71
71
 
72
72
 
73
73
  end
74
74
  def get_ats4_error_recovery_enabled
75
- MobyUtil::Parameter[ :ats4_error_recovery_enabled ]
75
+ $parameters[ :ats4_error_recovery_enabled ]
76
76
  end
77
77
  def get_wait_time_for_ats4_error_recovery
78
- MobyUtil::Parameter[ :wait_time_for_ats4_error_recovery ]
78
+ $parameters[ :wait_time_for_ats4_error_recovery ]
79
79
  end
80
80
  def get_error_recovery_enabled
81
- MobyUtil::Parameter[ :error_recovery_enabled ]
81
+ $parameters[ :error_recovery_enabled ]
82
82
  end
83
83
  def get_ping_connection
84
- MobyUtil::Parameter[ :ping_connection ]
84
+ $parameters[ :ping_connection ]
85
85
  end
86
86
  def get_reconnect_device
87
- MobyUtil::Parameter[ :reconnect_device ]
87
+ $parameters[ :reconnect_device ]
88
88
  end
89
89
  def get_reconnect_attempts
90
- MobyUtil::Parameter[ :reconnect_attempts ]
90
+ $parameters[ :reconnect_attempts ]
91
91
  end
92
92
  def get_monitored_sut
93
- str_parameter=MobyUtil::Parameter[ :error_recovery_monitored_sut_ids ]
93
+ str_parameter= $parameters[ :error_recovery_monitored_sut_ids ]
94
94
 
95
95
  if str_parameter.include?('|')
96
96
  @monitored_suts=str_parameter.split('|')
@@ -17,9 +17,9 @@
17
17
  ##
18
18
  ############################################################################
19
19
 
20
-
21
20
  require 'fileutils'
22
21
  require 'date'
22
+
23
23
  require File.expand_path( File.join( File.dirname( __FILE__ ), 'error_recovery/tdriver_error_recovery_settings' ) )
24
24
  require File.expand_path( File.join( File.dirname( __FILE__ ), 'error_recovery/tdriver_error_recovery' ) )
25
25
  require File.expand_path( File.join( File.dirname( __FILE__ ), 'error_recovery/tdriver_custom_error_recovery' ) )
@@ -51,14 +51,10 @@ require File.expand_path( File.join( File.dirname( __FILE__ ), 'report_grouping'
51
51
  require File.expand_path( File.join( File.dirname( __FILE__ ), 'report_execution_statistics' ) )
52
52
  require File.expand_path( File.join( File.dirname( __FILE__ ), 'report_data_presentation' ) )
53
53
 
54
+ unless $parameters[ :custom_error_recovery_module, nil ].nil?
54
55
 
55
- if MobyUtil::Parameter[ :custom_error_recovery_module, nil ]!=nil
56
-
57
- require MobyUtil::Parameter[ :custom_error_recovery_module ]
56
+ require $parameters[ :custom_error_recovery_module ]
58
57
 
59
58
  end
60
- include TDriverReportAPI
61
59
 
62
-
63
-
64
-
60
+ include TDriverReportAPI
@@ -38,6 +38,15 @@ module TDriverReportAPI
38
38
  return ret
39
39
  end
40
40
 
41
+ def tdriver_get_sequential_fails
42
+ return $tdriver_reporter.get_sequential_fails if $tdriver_reporter
43
+ end
44
+
45
+
46
+ def tdriver_update_sequential_fails( status )
47
+ $tdriver_reporter.update_sequential_fails( status ) if $tdriver_reporter
48
+ end
49
+
41
50
  def tdriver_log_data(data)
42
51
  Kernel::raise TypeError.new("Argument to method cannot be nil.") if data.nil?
43
52
  if $tdriver_reporter!=nil
@@ -40,10 +40,10 @@ class TDriverReportCrashFileCapture
40
40
  end
41
41
 
42
42
  def read_crash_monitor_settings()
43
- @crash_file_locations=return_settings_value_array(MobyUtil::Parameter[ :report_crash_file_locations, nil ])
44
- @crash_file_suts=return_settings_value_array(MobyUtil::Parameter[ :report_crash_file_monitored_sut_ids, nil ])
45
- @crash_file_names=return_settings_value_array(MobyUtil::Parameter[ :report_crash_file_names, nil ])
46
- @monitor_crash_files = MobyUtil::Parameter[ :report_crash_file_monitor, 'false' ]
43
+ @crash_file_locations=return_settings_value_array( $parameters[ :report_crash_file_locations, nil ])
44
+ @crash_file_suts=return_settings_value_array( $parameters[ :report_crash_file_monitored_sut_ids, nil ])
45
+ @crash_file_names=return_settings_value_array( $parameters[ :report_crash_file_names, nil ])
46
+ @monitor_crash_files = $parameters[ :report_crash_file_monitor, 'false' ]
47
47
  end
48
48
 
49
49
  def clean_crash_files_from_sut()
@@ -17,9 +17,6 @@
17
17
  ##
18
18
  ############################################################################
19
19
 
20
-
21
-
22
-
23
20
  module TDriverReportCreator
24
21
  include TDriverErrorRecovery
25
22
  include TDriverCustomErrorRecovery
@@ -61,21 +58,42 @@ module TDriverReportCreator
61
58
  end
62
59
  puts 'Generating report summary...'
63
60
  $tdriver_reporter.update_summary_page('finished')
61
+ puts 'Summary generated...'
62
+ puts 'Generating total run table...'
64
63
  $tdriver_reporter.update_test_case_summary_pages('all')
65
- $tdriver_reporter.update_test_case_summary_pages('passed')
64
+ puts 'Total run table generated...'
65
+ if $tdriver_reporter.report_exclude_passed_cases=='false'
66
+ puts 'Generating passed cases table...'
67
+ $tdriver_reporter.update_test_case_summary_pages('passed')
68
+ puts 'Passed table generated...'
69
+ end
70
+ puts 'Generating failed cases table...'
66
71
  $tdriver_reporter.update_test_case_summary_pages('failed')
72
+ puts 'Failed table generated...'
73
+ puts 'Generating not run cases table...'
67
74
  $tdriver_reporter.update_test_case_summary_pages('not run')
75
+ puts 'Not run table generated...'
76
+ puts 'Generating statistics table...'
68
77
  $tdriver_reporter.update_test_case_summary_pages('statistics')
78
+ puts 'Statistics generated...'
79
+ puts 'Grouping results by result and name...'
69
80
  $tdriver_reporter.group_results_by_test_case()
70
- $tdriver_reporter.create_csv if MobyUtil::Parameter[ :create_run_table_csv, false ]=='true'
81
+ puts 'Tests grouped by result and name...'
82
+ if $parameters[ :create_run_table_csv, false ]=='true'
83
+ puts 'Generating CSV...'
84
+ $tdriver_reporter.create_csv
85
+ puts 'CSV generated...'
86
+ end
87
+ puts 'Generating Junit xml...'
71
88
  $new_junit_xml_results.create_junit_xml()
89
+ puts 'Junit generated...'
72
90
  #$tdriver_reporter.delete_result_storage()
73
91
  $tdriver_reporter.disconnect_connected_devices()
74
92
  #tdriver_log_page $tdriver_reporter.update_tdriver_log_page()
75
93
  puts 'Report generated to:'
76
94
  puts $tdriver_reporter.report_folder()
77
95
  clean_video_files
78
- ending_test_set_run if MobyUtil::Parameter[ :custom_error_recovery_module, nil ]!=nil
96
+ ending_test_set_run if $parameters[ :custom_error_recovery_module, nil ]!=nil
79
97
  if $tdriver_reporter.total_failed.to_i > 0
80
98
  Kernel.exit(1)
81
99
  elsif $tdriver_reporter.total_run.to_i == 0
@@ -87,7 +105,7 @@ module TDriverReportCreator
87
105
  else
88
106
  initialize_error_recovery
89
107
  end
90
- starting_test_set_run if MobyUtil::Parameter[ :custom_error_recovery_module, nil ]!=nil
108
+ starting_test_set_run if $parameters[ :custom_error_recovery_module, nil ]!=nil
91
109
  end
92
110
  #This method registers a connection error
93
111
  #
@@ -97,9 +115,11 @@ module TDriverReportCreator
97
115
  # nil
98
116
  # === raises
99
117
  def error_in_connection_detected
100
- $tdriver_reporter.set_total_device_resets(1)
101
- $new_test_case.set_test_case_reboots(1) if $new_test_case!=nil
102
- error_in_connection
118
+ if start_error_recovery()==true
119
+ $tdriver_reporter.set_total_device_resets(1)
120
+ $new_test_case.set_test_case_reboots(1) if $new_test_case!=nil
121
+ end
122
+ error_in_connection if $parameters[ :custom_error_recovery_module, nil ]!=nil
103
123
  end
104
124
  #This method returns the group where the test case belongs
105
125
  #
@@ -110,7 +130,7 @@ module TDriverReportCreator
110
130
  # === raises
111
131
  def extract_group_from_test_case_name(test_case_name)
112
132
  found_in_group='not_in_any_user_defined_group'
113
- groups=MobyUtil::Parameter[ :report_groups, nil ]
133
+ groups=$parameters[ :report_groups, nil ]
114
134
  unless groups == nil
115
135
  groups_ar=groups.split('|')
116
136
  groups_ar.each do |group|
@@ -174,14 +194,14 @@ module TDriverReportCreator
174
194
  $tdriver_reporter.set_total_run(1)
175
195
  $tdriver_reporter.update_summary_page('inprogress')
176
196
  $tdriver_reporter.update_environment_page()
177
- if MobyUtil::Parameter[ :realtime_status_page_update, false ]=='true'
197
+ if $parameters[ :realtime_status_page_update, false ]=='true'
178
198
  if $run_status_thread_active == false
179
199
  $run_status_thread_active=true
180
200
  Thread.new do
181
201
  begin
182
202
  #Update test case summary pages
183
203
  $tdriver_reporter.update_test_case_summary_pages('all')
184
- $tdriver_reporter.update_test_case_summary_pages('passed')
204
+ $tdriver_reporter.update_test_case_summary_pages('passed') if $tdriver_reporter.report_exclude_passed_cases=='false'
185
205
  $tdriver_reporter.update_test_case_summary_pages('failed')
186
206
  $tdriver_reporter.update_test_case_summary_pages('not run')
187
207
  $tdriver_reporter.update_test_case_summary_pages('statistics')
@@ -257,7 +277,7 @@ module TDriverReportCreator
257
277
 
258
278
  $new_test_case.read_file_monitor_settings()
259
279
 
260
- $new_test_case.clean_crash_files_from_sut() if $test_case_run_index==1 && MobyUtil::Parameter[ :report_crash_file_monitor_crash_file_cleanup, false ]=='true'
280
+ $new_test_case.clean_crash_files_from_sut() if $test_case_run_index==1 && $parameters[ :report_crash_file_monitor_crash_file_cleanup, false ]=='true'
261
281
 
262
282
  amount_of_crash_files=$new_test_case.check_if_crash_files_exist()
263
283
 
@@ -276,7 +296,7 @@ module TDriverReportCreator
276
296
  $new_test_case.set_test_case_crash_files(amount_of_files.to_i)
277
297
  end
278
298
 
279
- if MobyUtil::Parameter[ :report_monitor_memory, 'false']=='true'
299
+ if $parameters[ :report_monitor_memory, 'false']=='true'
280
300
  begin
281
301
  MobyBase::SUTFactory.instance.connected_suts.each do |sut_id, sut_attributes|
282
302
  $new_test_case.set_tc_memory_amount_total($tdriver_reporter.get_sut_total_memory(sut_id,sut_attributes))
@@ -290,7 +310,7 @@ module TDriverReportCreator
290
310
  logging_enabled = MobyUtil::Logger.instance.enabled
291
311
  begin
292
312
 
293
- if MobyUtil::Parameter[:report_video, "false"] != "false"
313
+ if $parameters[:report_video, "false"] != "false"
294
314
  # copy previous recording
295
315
  MobyUtil::Logger.instance.enabled=false
296
316
 
@@ -313,7 +333,7 @@ module TDriverReportCreator
313
333
  MobyUtil::Logger.instance.enabled=logging_enabled
314
334
  end
315
335
  update_test_case_user_data()
316
- starting_test_case(test_case, MobyBase::SUTFactory.instance.connected_suts) if MobyUtil::Parameter[ :custom_error_recovery_module, nil ]!=nil
336
+ starting_test_case(test_case, MobyBase::SUTFactory.instance.connected_suts) if $parameters[ :custom_error_recovery_module, nil ]!=nil
317
337
  end
318
338
  #This method updates the current test case execution log
319
339
  #
@@ -330,13 +350,13 @@ module TDriverReportCreator
330
350
  @_stored_details.each do |detail|
331
351
  $new_test_case.set_test_case_execution_log(detail)
332
352
  end
333
- $new_test_case.set_test_case_execution_log(details)
353
+ $new_test_case.set_test_case_execution_log(details,true)
334
354
  @_stored_details=[]
335
355
  else
336
- $new_test_case.set_test_case_execution_log(details)
356
+ $new_test_case.set_test_case_execution_log(details,true)
337
357
  end
338
- updating_test_case_details(details) if MobyUtil::Parameter[ :custom_error_recovery_module, nil ]!=nil
339
- if MobyUtil::Parameter[ :report_monitor_memory, 'false']=='true'
358
+ updating_test_case_details(details) if $parameters[ :custom_error_recovery_module, nil ]!=nil
359
+ if $parameters[ :report_monitor_memory, 'false']=='true'
340
360
  begin
341
361
  start_memory=$new_test_case.tc_memory_amount_start()
342
362
  if start_memory=='-'
@@ -384,11 +404,11 @@ module TDriverReportCreator
384
404
  if $new_test_case.video_recording?
385
405
  $new_test_case.copy_video_capture()
386
406
  end
387
- error_in_test_case(MobyBase::SUTFactory.instance.connected_suts) if MobyUtil::Parameter[ :custom_error_recovery_module, nil ]!=nil
407
+ error_in_test_case(MobyBase::SUTFactory.instance.connected_suts) if $parameters[ :custom_error_recovery_module, nil ]!=nil
388
408
  begin
389
- if start_error_recovery()==true
409
+
390
410
  error_in_connection_detected
391
- end
411
+
392
412
  rescue Exception => e
393
413
  update_test_case("Error recovery failed Exception: #{e.message} Backtrace: #{e.backtrace}")
394
414
  end_test_case($new_test_case.test_case_name,'failed')
@@ -429,7 +449,7 @@ module TDriverReportCreator
429
449
  # === raises
430
450
  def update_test_case_behaviour_log()
431
451
  begin
432
- if MobyUtil::Parameter[:behaviour_logging] == 'true'
452
+ if $parameters[:behaviour_logging] == 'true'
433
453
  if $new_test_case.test_case_logging_level.to_i > 0
434
454
  $tdriver_report_log_output.string.each do |line|
435
455
  $new_test_case.set_test_case_behaviour_log(line,nil)
@@ -492,7 +512,7 @@ module TDriverReportCreator
492
512
  update_test_case_user_data()
493
513
  if $new_test_case != nil
494
514
  calculate_execution_footprint_data_for_test_case
495
- if MobyUtil::Parameter[:report_crash_file_monitor] == 'true'
515
+ if $parameters[:report_crash_file_monitor] == 'true'
496
516
  found_crash_files = $new_test_case.check_if_crash_files_exist()
497
517
  if found_crash_files.to_i > 0
498
518
  $tdriver_reporter.set_total_crash_files(found_crash_files.to_i)
@@ -500,12 +520,12 @@ module TDriverReportCreator
500
520
  status='failed'
501
521
  end
502
522
  end
503
- if MobyUtil::Parameter[:report_file_monitor] == 'true'
523
+ if $parameters[:report_file_monitor] == 'true'
504
524
  found_files = $new_test_case.check_if_files_exist()
505
525
  if found_files.to_i > 0
506
526
  $tdriver_reporter.set_total_crash_files(found_files.to_i)
507
527
  $new_test_case.set_test_case_crash_files(found_files.to_i)
508
- status='failed' if MobyUtil::Parameter[:report_fail_test_if_files_found]=='true'
528
+ status='failed' if $parameters[:report_fail_test_if_files_found]=='true'
509
529
  end
510
530
  end
511
531
 
@@ -528,7 +548,7 @@ module TDriverReportCreator
528
548
  if(status=='passed')
529
549
 
530
550
  no_activity_videos = ""
531
- if MobyUtil::Parameter[:report_check_device_active, 'false']=='true'
551
+ if $parameters[:report_check_device_active, 'false']=='true'
532
552
  if temp_rec
533
553
  no_activity_videos = $new_test_case.target_video_alive
534
554
  end
@@ -558,9 +578,9 @@ module TDriverReportCreator
558
578
  end
559
579
  $new_test_case.set_test_case_end_time(Time.now)
560
580
  update_test_case_behaviour_log()
561
- update_test_case_memory_usage() if MobyUtil::Parameter[ :report_monitor_memory, 'false']=='true'
581
+ update_test_case_memory_usage() if $parameters[ :report_monitor_memory, 'false']=='true'
562
582
  execution_log=$new_test_case.test_case_execution_log
563
- if MobyUtil::Parameter[:report_trace_capture_only_in_failed_case, 'true']!='true'
583
+ if $parameters[:report_trace_capture_only_in_failed_case, 'true']!='true'
564
584
  $new_test_case.capture_trace_files()
565
585
  else
566
586
  if status=='failed'
@@ -574,13 +594,15 @@ module TDriverReportCreator
574
594
  $new_test_case.clean_files_from_sut()
575
595
 
576
596
  update_run($new_test_case.test_case_name.to_s,status,$new_test_case.test_case_reboots,$new_test_case.test_case_crash_files,execution_log)
597
+
577
598
  $new_junit_xml_results.add_test_result(status, $new_test_case.test_case_start_time, $new_test_case.test_case_end_time)
578
-
599
+ tdriver_update_sequential_fails( status ) if $parameters[ :runner_sequence_skip, "false" ] == "true"
600
+
579
601
  $new_test_case=nil
580
602
  execution_log=nil
581
603
 
582
604
  end
583
- ending_test_case(status, MobyBase::SUTFactory.instance.connected_suts) if MobyUtil::Parameter[ :custom_error_recovery_module, nil ]!=nil
605
+ ending_test_case(status, MobyBase::SUTFactory.instance.connected_suts) if $parameters[ :custom_error_recovery_module, nil ]!=nil
584
606
  end
585
607
  def add_report_group(value)
586
608
  $tdriver_reporter.set_generic_reporting_groups(value)
@@ -608,10 +630,10 @@ module TDriverReportCreator
608
630
 
609
631
  def each_video_device
610
632
 
611
- if MobyUtil::Parameter[:report_video, nil] != nil
633
+ if $parameters[:report_video, nil] != nil
612
634
 
613
635
  device_index = 0
614
- MobyUtil::Parameter[:report_video].split("|").each do | video_device |
636
+ $parameters[:report_video].split("|").each do | video_device |
615
637
  if !video_device.strip.empty?
616
638
  yield video_device.strip, device_index.to_s
617
639
  device_index += 1
@@ -107,7 +107,7 @@ module TDriverReport
107
107
  # === params
108
108
  # === returns
109
109
  # === raises
110
- def visit_feature_element_name(keyword, name, file_colon_line, source_indent)
110
+ def visit_feature_element_name(keyword, name, file_colon_line, source_indent)
111
111
  line = %Q("#{name}")
112
112
  @current_feature_element=line if @current_feature_element.nil?
113
113
  unless line == @current_feature_element
@@ -40,6 +40,7 @@ module TDriverReport
40
40
  @current_feature = nil
41
41
  @tc_status=nil
42
42
  @current_feature_group=nil
43
+ @current_feature_element_file=''
43
44
  end
44
45
  def after_features(features)
45
46
  end_test_case(@current_feature_element,@tc_status)
@@ -95,8 +96,7 @@ module TDriverReport
95
96
  visit_feature_element_name(keyword, name, file_colon_line, source_indent)
96
97
  end
97
98
  def feature_name(name)
98
- @current_feature_group=name.gsub(/[:]/,'')
99
- add_report_group('Features:'+@current_feature_group+'|')
99
+ @current_feature_group=name.gsub(/[:]/,'')
100
100
  end
101
101
  #This method determines when new test case needs to be started
102
102
  #based on the scenario name info if scenario name is different then a new test case
@@ -106,6 +106,8 @@ module TDriverReport
106
106
  # === returns
107
107
  # === raises
108
108
  def visit_feature_element_name(keyword, name, file_colon_line, source_indent)
109
+ add_report_group(File.basename(file_colon_line)+':'+@current_feature_group+'|')
110
+ @current_feature_element_file=file_colon_line
109
111
  line = %Q("#{name}")
110
112
  @current_feature_element=line if @current_feature_element.nil?
111
113
  unless line == @current_feature_element
@@ -114,6 +116,7 @@ module TDriverReport
114
116
  end
115
117
  start_test_case(@current_feature_element)
116
118
  add_test_case_group(@current_feature_group)
119
+ update_test_case(file_colon_line)
117
120
  @tc_status=nil
118
121
  end
119
122
  #This method records the cucumber outline table results in to one test case
@@ -176,162 +179,6 @@ module TDriverReport
176
179
  end
177
180
  end
178
181
 
179
- module MattiReport
180
- #Class for formatting cucumber report
181
- class CucumberListener
182
- include TDriverReportCreator
183
- #This method initializes new test run
184
- #
185
- # === params
186
- # === returns
187
- # === raises
188
- def initialize(step_mother, io, options)
189
- file, line = caller.first.split(":")
190
- $stderr.puts "%s:%s warning: MattiReport deprecated, use TDriverReport instead" % [ file, line]
191
- #super(step_mother, io, options)
192
- start_run()
193
- @options = options
194
- @current_feature_element = nil
195
- @current_feature = nil
196
- @tc_status=nil
197
- @current_feature_group=nil
198
- end
199
- def after_features(features)
200
- end_test_case(@current_feature_element,@tc_status)
201
- end
202
- #This method visits the executed cucumber step and updates the results in to TDriver report
203
- #
204
- # === params
205
- # === returns
206
- # === raises
207
- def step_name(keyword, step_match, status, source_indent, background)
208
- if status == :passed
209
- step_name = step_match.format_args(lambda{|param| "*#{param}*"})
210
- update_test_case("#{step_name} PASSED")
211
- @tc_status='passed'
212
- end
213
- if status == :failed
214
- step_name = step_match.format_args(lambda{|param| "*#{param}*"})
215
- update_test_case("#{step_name} FAILED")
216
- @tc_status='failed'
217
- end
218
- if status == :skipped
219
- step_name = step_match.format_args(lambda{|param| "*#{param}*"})
220
- update_test_case("#{step_name} SKIPPED")
221
- end
222
- if status == :undefined
223
- step_name = step_match.format_args(lambda{|param| "*#{param}*"})
224
- update_test_case("#{step_name} NOT RUN")
225
- @tc_status='not run'
226
- end
227
- end
228
- #This method visits the exception caused by a failed step
229
- #and updates the result in to TDriver report
230
- #
231
- # === params
232
- # === returns
233
- # === raises
234
- def exception(exception, status)
235
- if status == :failed
236
- capture_screen_test_case()
237
- update_test_case(exception.message)
238
- update_test_case(exception.backtrace)
239
- end
240
- update_test_case('-') if status == :passed
241
- end
242
- #This method visits cucumber scenario name and starts a new test case when
243
- #new scenario is executed
244
- #and updates the result in to TDriver report
245
- #
246
- # === params
247
- # === returns
248
- # === raises
249
- def scenario_name(keyword, name, file_colon_line, source_indent)
250
- visit_feature_element_name(keyword, name, file_colon_line, source_indent)
251
- end
252
- def feature_name(name)
253
- @current_feature_group=name.gsub(/[:]/,'')
254
- add_report_group('Features:'+@current_feature_group+'|')
255
- end
256
- #This method determines when new test case needs to be started
257
- #based on the scenario name info if scenario name is different then a new test case
258
- #is started
259
- #
260
- # === params
261
- # === returns
262
- # === raises
263
- def visit_feature_element_name(keyword, name, file_colon_line, source_indent)
264
- line = %Q("#{name}")
265
- @current_feature_element=line if @current_feature_element.nil?
266
- unless line == @current_feature_element
267
- end_test_case(@current_feature_element,@tc_status)
268
- @current_feature_element=line
269
- end
270
- start_test_case(@current_feature_element)
271
- add_test_case_group(@current_feature_group)
272
- @tc_status=nil
273
- end
274
- #This method records the cucumber outline table results in to one test case
275
- #
276
- # === params
277
- # === returns
278
- # === raises
279
- def before_outline_table(outline_table)
280
- update_test_case("running outline: ")
281
- end
282
- #This method records the cucumber outline table results in to one test case
283
- #
284
- # === params
285
- # === returns
286
- # === raises
287
- def after_table_row(table_row)
288
- if table_row.exception
289
- @tc_status='failed'
290
- capture_screen_test_case()
291
- update_test_case("#{format_table_row(table_row)} FAILED")
292
- update_test_case(table_row.exception)
293
- else
294
- @tc_status='passed' if @tc_status==nil
295
- update_test_case("#{format_table_row(table_row)} PASSED")
296
- end
297
- end
298
- def format_table_row(row)
299
- begin
300
- [row.name, row.line]
301
- rescue Exception => e
302
- row
303
- end
304
- end
305
- def tag_name(tag_name)
306
- end
307
- def comment_line(comment_line)
308
- end
309
- def after_tags(tags)
310
- end
311
- def after_feature_element(feature_element)
312
- end
313
- def after_background(background)
314
- end
315
- def before_examples_array(examples_array)
316
- end
317
- def examples_name(keyword, name)
318
- end
319
- def py_string(string)
320
- end
321
- def print_feature_element_name(keyword, name, file_colon_line, source_indent)
322
- end
323
- def before_table_row(table_row)
324
- return unless @table
325
- @col_index = 0
326
- end
327
- def table_cell_value(value, status)
328
- return unless @table
329
- status ||= @status || :passed
330
- end
331
- end
332
- end
333
-
334
-
335
182
  rescue LoadError
336
183
 
337
184
  end