cutedriver-driver 2.0.0.20210120164037

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 (226) hide show
  1. checksums.yaml +7 -0
  2. data/README.md +16 -0
  3. data/bin/start_app_perf +200 -0
  4. data/bin/tdriver-devtools +3 -0
  5. data/config/sut_parameters.rb +52 -0
  6. data/config/sut_setup.rb +32 -0
  7. data/config/sut_teardown.rb +32 -0
  8. data/config/tdriver_custom_error_recovery.rb +83 -0
  9. data/ext/extconf.rb +70 -0
  10. data/ext/native_extensions.c +315 -0
  11. data/lib/matti.rb +25 -0
  12. data/lib/tdriver-devtools/behaviour/old/xml/example/flick-example.rb +120 -0
  13. data/lib/tdriver-devtools/behaviour/old/xml/example/impl.rb_invalid +194 -0
  14. data/lib/tdriver-devtools/behaviour/old/xml/generate_behaviour_xml.rb +95 -0
  15. data/lib/tdriver-devtools/behaviour/old/xml/lib/tdriver_generator.rb +722 -0
  16. data/lib/tdriver-devtools/behaviour/old/xml/qdoc_generator.rb +321 -0
  17. data/lib/tdriver-devtools/behaviour/old/xml/templates/behaviour.method.template +43 -0
  18. data/lib/tdriver-devtools/behaviour/old/xml/templates/behaviour.module.template +54 -0
  19. data/lib/tdriver-devtools/behaviour/old/xml/templates/behaviour.xml.argument.template +7 -0
  20. data/lib/tdriver-devtools/behaviour/old/xml/templates/behaviour.xml.argument_type.template +7 -0
  21. data/lib/tdriver-devtools/behaviour/old/xml/templates/behaviour.xml.exception.template +5 -0
  22. data/lib/tdriver-devtools/behaviour/old/xml/templates/behaviour.xml.howto.line.template +2 -0
  23. data/lib/tdriver-devtools/behaviour/old/xml/templates/behaviour.xml.howto.template +5 -0
  24. data/lib/tdriver-devtools/behaviour/old/xml/templates/behaviour.xml.method.template +23 -0
  25. data/lib/tdriver-devtools/behaviour/old/xml/templates/behaviour.xml.template +14 -0
  26. data/lib/tdriver-devtools/behaviour/old/xml/update +3 -0
  27. data/lib/tdriver-devtools/behaviour/xml/generate.rb +88 -0
  28. data/lib/tdriver-devtools/behaviour/xml/rdoc_behaviour_xml_generator.rb +1945 -0
  29. data/lib/tdriver-devtools/behaviour/xml/templates/behaviour.xml.argument.default.template +1 -0
  30. data/lib/tdriver-devtools/behaviour/xml/templates/behaviour.xml.argument.template +3 -0
  31. data/lib/tdriver-devtools/behaviour/xml/templates/behaviour.xml.argument_type.template +4 -0
  32. data/lib/tdriver-devtools/behaviour/xml/templates/behaviour.xml.exception.template +4 -0
  33. data/lib/tdriver-devtools/behaviour/xml/templates/behaviour.xml.method.arguments.template +4 -0
  34. data/lib/tdriver-devtools/behaviour/xml/templates/behaviour.xml.method.deprecated.template +3 -0
  35. data/lib/tdriver-devtools/behaviour/xml/templates/behaviour.xml.method.exceptions.template +3 -0
  36. data/lib/tdriver-devtools/behaviour/xml/templates/behaviour.xml.method.info.template +1 -0
  37. data/lib/tdriver-devtools/behaviour/xml/templates/behaviour.xml.method.returns.template +3 -0
  38. data/lib/tdriver-devtools/behaviour/xml/templates/behaviour.xml.method.tables.template +3 -0
  39. data/lib/tdriver-devtools/behaviour/xml/templates/behaviour.xml.method.template +12 -0
  40. data/lib/tdriver-devtools/behaviour/xml/templates/behaviour.xml.returns.template +5 -0
  41. data/lib/tdriver-devtools/behaviour/xml/templates/behaviour.xml.table.item.template +1 -0
  42. data/lib/tdriver-devtools/behaviour/xml/templates/behaviour.xml.table.row.template +2 -0
  43. data/lib/tdriver-devtools/behaviour/xml/templates/behaviour.xml.table.template +8 -0
  44. data/lib/tdriver-devtools/behaviour/xml/templates/behaviour.xml.template +14 -0
  45. data/lib/tdriver-devtools/doc/behaviour_xml/QtExampleGestureBehaviour.xml +138 -0
  46. data/lib/tdriver-devtools/doc/behaviour_xml/created.rid +1 -0
  47. data/lib/tdriver-devtools/doc/behaviour_xml/tdriver.hash +1 -0
  48. data/lib/tdriver-devtools/doc/feature_xml/qt_widget_hold.feature.xml +9 -0
  49. data/lib/tdriver-devtools/doc/feature_xml/qt_widget_tap.feature.xml +9 -0
  50. data/lib/tdriver-devtools/doc/generate.rb +917 -0
  51. data/lib/tdriver-devtools/doc/update +1 -0
  52. data/lib/tdriver-devtools/doc/xslt/html.rb +7 -0
  53. data/lib/tdriver-devtools/doc/xslt/template.xsl +2170 -0
  54. data/lib/tdriver-devtools/doc/xslt/update +3 -0
  55. data/lib/tdriver-devtools/plugin/placeholder.txt +1 -0
  56. data/lib/tdriver-devtools/tdriver-devtools.rb +404 -0
  57. data/lib/tdriver-devtools/tests/feature_tests/example/behaviour_example.rb +100 -0
  58. data/lib/tdriver-devtools/tests/feature_tests/generate.rb +82 -0
  59. data/lib/tdriver-devtools/tests/feature_tests/lib/custom_rdoc_generator.rb +468 -0
  60. data/lib/tdriver-devtools/tests/feature_tests/templates/feature_attribute.template +5 -0
  61. data/lib/tdriver-devtools/tests/feature_tests/templates/feature_method.template +5 -0
  62. data/lib/tdriver-devtools/tests/feature_tests/templates/scenario_attribute.template +5 -0
  63. data/lib/tdriver-devtools/tests/feature_tests/templates/scenario_method.template +5 -0
  64. data/lib/tdriver-devtools/tests/feature_tests/update +3 -0
  65. data/lib/tdriver.rb +23 -0
  66. data/lib/tdriver/base/behaviour/abstract.rb +29 -0
  67. data/lib/tdriver/base/behaviour/behaviours/object_abstract.rb +107 -0
  68. data/lib/tdriver/base/behaviour/behaviours/object_behaviour_composition.rb +99 -0
  69. data/lib/tdriver/base/behaviour/behaviours/object_behaviour_description.rb +278 -0
  70. data/lib/tdriver/base/behaviour/behaviours/object_composition.rb +119 -0
  71. data/lib/tdriver/base/behaviour/factory.rb +495 -0
  72. data/lib/tdriver/base/behaviour/loader.rb +46 -0
  73. data/lib/tdriver/base/command_data/command_data.rb +51 -0
  74. data/lib/tdriver/base/command_data/loader.rb +29 -0
  75. data/lib/tdriver/base/controller/abstraction.rb +56 -0
  76. data/lib/tdriver/base/controller/loader.rb +21 -0
  77. data/lib/tdriver/base/errors.rb +134 -0
  78. data/lib/tdriver/base/loader.rb +47 -0
  79. data/lib/tdriver/base/state_object.rb +373 -0
  80. data/lib/tdriver/base/sut/adapter.rb +54 -0
  81. data/lib/tdriver/base/sut/controller.rb +151 -0
  82. data/lib/tdriver/base/sut/factory.rb +339 -0
  83. data/lib/tdriver/base/sut/generic/behaviours/agent.rb +77 -0
  84. data/lib/tdriver/base/sut/generic/behaviours/application.rb +427 -0
  85. data/lib/tdriver/base/sut/generic/behaviours/controller.rb +67 -0
  86. data/lib/tdriver/base/sut/generic/behaviours/find.rb +107 -0
  87. data/lib/tdriver/base/sut/generic/behaviours/flash_behaviour.rb +337 -0
  88. data/lib/tdriver/base/sut/generic/behaviours/sut.rb +1888 -0
  89. data/lib/tdriver/base/sut/generic/behaviours/switchbox_behaviour.rb +210 -0
  90. data/lib/tdriver/base/sut/generic/behaviours/verification.rb +222 -0
  91. data/lib/tdriver/base/sut/generic/commands/agent.rb +43 -0
  92. data/lib/tdriver/base/sut/generic/commands/application.rb +274 -0
  93. data/lib/tdriver/base/sut/generic/commands/fixture.rb +47 -0
  94. data/lib/tdriver/base/sut/generic/commands/key_sequence.rb +94 -0
  95. data/lib/tdriver/base/sut/generic/commands/screen_capture.rb +64 -0
  96. data/lib/tdriver/base/sut/generic/plugin.rb +97 -0
  97. data/lib/tdriver/base/sut/loader.rb +35 -0
  98. data/lib/tdriver/base/sut/sut.rb +98 -0
  99. data/lib/tdriver/base/test_object/abstract.rb +208 -0
  100. data/lib/tdriver/base/test_object/adapter.rb +740 -0
  101. data/lib/tdriver/base/test_object/behaviours/syncronization.rb +144 -0
  102. data/lib/tdriver/base/test_object/behaviours/test_object.rb +1047 -0
  103. data/lib/tdriver/base/test_object/cache.rb +134 -0
  104. data/lib/tdriver/base/test_object/factory.rb +684 -0
  105. data/lib/tdriver/base/test_object/loader.rb +51 -0
  106. data/lib/tdriver/base/test_object/verification.rb +178 -0
  107. data/lib/tdriver/base/test_object/xml/abstraction.rb +63 -0
  108. data/lib/tdriver/base/test_object/xml/adapter.rb +773 -0
  109. data/lib/tdriver/env.rb +21 -0
  110. data/lib/tdriver/loader.rb +57 -0
  111. data/lib/tdriver/matti.rb +35 -0
  112. data/lib/tdriver/report/error_recovery/tdriver_custom_error_recovery.rb +83 -0
  113. data/lib/tdriver/report/error_recovery/tdriver_error_recovery.rb +168 -0
  114. data/lib/tdriver/report/error_recovery/tdriver_error_recovery_settings.rb +106 -0
  115. data/lib/tdriver/report/report.rb +61 -0
  116. data/lib/tdriver/report/report_api.rb +348 -0
  117. data/lib/tdriver/report/report_combine.rb +86 -0
  118. data/lib/tdriver/report/report_crash_file_capture.rb +178 -0
  119. data/lib/tdriver/report/report_creator.rb +665 -0
  120. data/lib/tdriver/report/report_cucumber.rb +158 -0
  121. data/lib/tdriver/report/report_cucumber_listener.rb +184 -0
  122. data/lib/tdriver/report/report_cucumber_reporter.rb +181 -0
  123. data/lib/tdriver/report/report_data_presentation.rb +156 -0
  124. data/lib/tdriver/report/report_data_table.rb +64 -0
  125. data/lib/tdriver/report/report_execution_statistics.rb +400 -0
  126. data/lib/tdriver/report/report_file_capture.rb +159 -0
  127. data/lib/tdriver/report/report_graph_generator.rb +59 -0
  128. data/lib/tdriver/report/report_grouping.rb +541 -0
  129. data/lib/tdriver/report/report_javascript.rb +199 -0
  130. data/lib/tdriver/report/report_junit_xml.rb +147 -0
  131. data/lib/tdriver/report/report_rspec.rb +108 -0
  132. data/lib/tdriver/report/report_test_case_run.rb +725 -0
  133. data/lib/tdriver/report/report_test_run.rb +1476 -0
  134. data/lib/tdriver/report/report_test_unit.rb +223 -0
  135. data/lib/tdriver/report/report_writer.rb +1621 -0
  136. data/lib/tdriver/tdriver.rb +209 -0
  137. data/lib/tdriver/util/agent/loader.rb +22 -0
  138. data/lib/tdriver/util/agent/service.rb +107 -0
  139. data/lib/tdriver/util/common/array.rb +39 -0
  140. data/lib/tdriver/util/common/boolean.rb +48 -0
  141. data/lib/tdriver/util/common/crc16.rb +149 -0
  142. data/lib/tdriver/util/common/environment.rb +154 -0
  143. data/lib/tdriver/util/common/error.rb +40 -0
  144. data/lib/tdriver/util/common/exception.rb +53 -0
  145. data/lib/tdriver/util/common/exceptions.rb +12 -0
  146. data/lib/tdriver/util/common/file.rb +328 -0
  147. data/lib/tdriver/util/common/gem.rb +109 -0
  148. data/lib/tdriver/util/common/hash.rb +288 -0
  149. data/lib/tdriver/util/common/kernel.rb +253 -0
  150. data/lib/tdriver/util/common/loader.rb +47 -0
  151. data/lib/tdriver/util/common/numeric.rb +159 -0
  152. data/lib/tdriver/util/common/object.rb +159 -0
  153. data/lib/tdriver/util/common/retryable.rb +179 -0
  154. data/lib/tdriver/util/common/stackable.rb +185 -0
  155. data/lib/tdriver/util/common/string.rb +174 -0
  156. data/lib/tdriver/util/database/access.rb +240 -0
  157. data/lib/tdriver/util/database/connection.rb +44 -0
  158. data/lib/tdriver/util/database/error.rb +34 -0
  159. data/lib/tdriver/util/database/loader.rb +28 -0
  160. data/lib/tdriver/util/filters/attribute_filter.rb +121 -0
  161. data/lib/tdriver/util/filters/loader.rb +29 -0
  162. data/lib/tdriver/util/fixture/loader.rb +22 -0
  163. data/lib/tdriver/util/fixture/service.rb +211 -0
  164. data/lib/tdriver/util/hooking/hooking.rb +477 -0
  165. data/lib/tdriver/util/keymap/keymap.rb +81 -0
  166. data/lib/tdriver/util/loader.rb +80 -0
  167. data/lib/tdriver/util/localisation/error.rb +31 -0
  168. data/lib/tdriver/util/localisation/loader.rb +25 -0
  169. data/lib/tdriver/util/localisation/localisation.rb +762 -0
  170. data/lib/tdriver/util/logger/loader.rb +22 -0
  171. data/lib/tdriver/util/logger/logger.rb +591 -0
  172. data/lib/tdriver/util/operator_data/error.rb +29 -0
  173. data/lib/tdriver/util/operator_data/loader.rb +27 -0
  174. data/lib/tdriver/util/operator_data/operator_data.rb +93 -0
  175. data/lib/tdriver/util/other/config.rb +221 -0
  176. data/lib/tdriver/util/parameter/error.rb +48 -0
  177. data/lib/tdriver/util/parameter/loader.rb +25 -0
  178. data/lib/tdriver/util/parameter/parameter.rb +1161 -0
  179. data/lib/tdriver/util/plugin/abstract.rb +61 -0
  180. data/lib/tdriver/util/plugin/error.rb +0 -0
  181. data/lib/tdriver/util/plugin/loader.rb +28 -0
  182. data/lib/tdriver/util/plugin/service.rb +319 -0
  183. data/lib/tdriver/util/recorder/loader.rb +25 -0
  184. data/lib/tdriver/util/recorder/recorder.rb +72 -0
  185. data/lib/tdriver/util/recorder/scripter.rb +294 -0
  186. data/lib/tdriver/util/statistics/statistics.rb +89 -0
  187. data/lib/tdriver/util/user_data/error.rb +28 -0
  188. data/lib/tdriver/util/user_data/loader.rb +25 -0
  189. data/lib/tdriver/util/user_data/user_data.rb +104 -0
  190. data/lib/tdriver/util/video/camera.rb +67 -0
  191. data/lib/tdriver/util/video/camera_linux.rb +153 -0
  192. data/lib/tdriver/util/video/camera_windows.rb +174 -0
  193. data/lib/tdriver/util/video/loader.rb +31 -0
  194. data/lib/tdriver/util/video/video_utils.rb +139 -0
  195. data/lib/tdriver/util/xml/abstraction.rb +117 -0
  196. data/lib/tdriver/util/xml/attribute.rb +32 -0
  197. data/lib/tdriver/util/xml/builder.rb +53 -0
  198. data/lib/tdriver/util/xml/comment.rb +32 -0
  199. data/lib/tdriver/util/xml/document.rb +32 -0
  200. data/lib/tdriver/util/xml/element.rb +32 -0
  201. data/lib/tdriver/util/xml/error.rb +46 -0
  202. data/lib/tdriver/util/xml/loader.rb +62 -0
  203. data/lib/tdriver/util/xml/nil_node.rb +95 -0
  204. data/lib/tdriver/util/xml/nodeset.rb +32 -0
  205. data/lib/tdriver/util/xml/parsers/libxml/libxml.rb +140 -0
  206. data/lib/tdriver/util/xml/parsers/loader.rb +21 -0
  207. data/lib/tdriver/util/xml/parsers/nokogiri/abstraction.rb +167 -0
  208. data/lib/tdriver/util/xml/parsers/nokogiri/attribute.rb +66 -0
  209. data/lib/tdriver/util/xml/parsers/nokogiri/builder.rb +64 -0
  210. data/lib/tdriver/util/xml/parsers/nokogiri/comment.rb +39 -0
  211. data/lib/tdriver/util/xml/parsers/nokogiri/document.rb +66 -0
  212. data/lib/tdriver/util/xml/parsers/nokogiri/element.rb +39 -0
  213. data/lib/tdriver/util/xml/parsers/nokogiri/loader.rb +58 -0
  214. data/lib/tdriver/util/xml/parsers/nokogiri/node.rb +212 -0
  215. data/lib/tdriver/util/xml/parsers/nokogiri/nodeset.rb +237 -0
  216. data/lib/tdriver/util/xml/parsers/nokogiri/text.rb +39 -0
  217. data/lib/tdriver/util/xml/text.rb +32 -0
  218. data/lib/tdriver/util/xml/xml.rb +332 -0
  219. data/lib/tdriver/verify/verify.rb +2398 -0
  220. data/lib/tdriver/version.rb +21 -0
  221. data/xml/behaviours/generic.xml +530 -0
  222. data/xml/defaults/generic.xml +11 -0
  223. data/xml/defaults/sut_generic.xml +8 -0
  224. data/xml/parameters/tdriver_parameters.xml +23 -0
  225. data/xml/templates/generic.xml +292 -0
  226. metadata +324 -0
@@ -0,0 +1,3 @@
1
+ ruby html.rb > output.html
2
+ cat output.html
3
+
@@ -0,0 +1 @@
1
+ placeholder
@@ -0,0 +1,404 @@
1
+ #!/usr/bin/env ruby
2
+ ############################################################################
3
+ ##
4
+ ## Copyright (C) 2010 Nokia Corporation and/or its subsidiary(-ies).
5
+ ## All rights reserved.
6
+ ## Contact: Nokia Corporation (testabilitydriver@nokia.com)
7
+ ##
8
+ ## This file is part of Testability Driver.
9
+ ##
10
+ ## If you have questions regarding the use of this file, please contact
11
+ ## Nokia at testabilitydriver@nokia.com .
12
+ ##
13
+ ## This library is free software; you can redistribute it and/or
14
+ ## modify it under the terms of the GNU Lesser General Public
15
+ ## License version 2.1 as published by the Free Software Foundation
16
+ ## and appearing in the file LICENSE.LGPL included in the packaging
17
+ ## of this file.
18
+ ##
19
+ ############################################################################
20
+
21
+ $tdriver_devtools_initialized = true
22
+
23
+ def safe_require( *paths )
24
+
25
+ found = false
26
+
27
+ paths.each{ | path |
28
+
29
+ begin
30
+
31
+ require path
32
+
33
+ found = true
34
+
35
+ break
36
+
37
+ rescue LoadError
38
+
39
+ #puts "path #{ path } not found"
40
+
41
+ end
42
+
43
+ }
44
+
45
+ abort("Unable to load one of files: %s" % paths.inspect ) unless found
46
+
47
+ end
48
+
49
+ require 'rubygems'
50
+ require 'rdoc/rdoc'
51
+ require 'optparse'
52
+ require 'nokogiri'
53
+
54
+ safe_require('tdriver/version.rb', File.expand_path( File.join( File.dirname( __FILE__ ), '../tdriver/version.rb' ) ) )
55
+ safe_require('tdriver/util/common/loader.rb', File.expand_path( File.join( File.dirname( __FILE__ ), '../tdriver/util/common/loader.rb' ) ) )
56
+
57
+ require 'tmpdir'
58
+ require "fileutils" unless defined?( ::FileUtils )
59
+
60
+ # default options
61
+ @options = {
62
+
63
+ :verbose => false,
64
+ :tests => '.',
65
+ :delete => false
66
+
67
+ }
68
+
69
+ @optparse = OptionParser.new do | opts |
70
+
71
+ # Set a banner, displayed at the top of the help screen.
72
+ opts.banner = "Usage: #{ $0 } [options] [source] [destination]"
73
+
74
+ opts.separator( "" )
75
+
76
+ opts.separator "Specific options:"
77
+
78
+ opts.on(
79
+
80
+ '-g',
81
+ '--generate TYPE',
82
+ 'Available types:',
83
+ ' doc : Generate documentation from source files.',
84
+ ' Feature test result files and images are optional',
85
+ ' ',
86
+ ' Default source folder is "behaviours/"',
87
+ ' Default destination file is "doc/document.xml"',
88
+ ' ',
89
+ ' behaviours : Generate behaviour XML files from implementation.',
90
+ ' All behaviour implementation files with .rb extension in',
91
+ ' source folder and its subfolders will be processed.',
92
+ ' ',
93
+ ' Default source folder is current folder.',
94
+ ' Default destination folder is "behaviours/"',
95
+ ' ',
96
+ ' both : Generate behaviour XML files and documentation',
97
+ ' Behaviour XML files are saved to temp. folder and deleted',
98
+ ' after documentation XML is saved. Copies also all XSLT ',
99
+ ' templates to destination folder. See -r flag also.',
100
+ ' ',
101
+ ' Default source folder (implementation) is current folder.',
102
+ ' Default destination folder is "doc/document.xml"',
103
+ ' '
104
+
105
+ ) do | mode |
106
+
107
+ case mode.downcase.to_s
108
+
109
+ when 'doc'
110
+ @options[ :generate ] = mode.to_sym
111
+ @options[ :source ] ||= 'behaviours/'
112
+ @options[ :destination ] ||= 'doc/document.xml'
113
+
114
+ when 'behaviours'
115
+ @options[ :generate ] = mode.to_sym
116
+ @options[ :source ] ||= '.'
117
+ @options[ :destination ] ||= 'behaviours/'
118
+
119
+ when 'both'
120
+ @options[ :generate ] = mode.to_sym
121
+ @options[ :source ] ||= '.'
122
+ @options[ :destination_behaviours ] = File.expand_path( File.join( Dir.tmpdir, "tdriver-devtools-behaviours" ) )
123
+ @options[ :destination ] ||= 'doc/document.xml'
124
+
125
+ else
126
+
127
+ puts "Invalid value for generate option: #{ mode }", ""
128
+ puts opts, ""
129
+ exit
130
+
131
+ end
132
+
133
+ end
134
+
135
+ =begin
136
+ opts.on(
137
+ '-b',
138
+ '--behaviours [FOLDER]',
139
+ 'Source folder for behaviour XML files (DOC)'
140
+ ) do | folder |
141
+
142
+ end
143
+ =end
144
+
145
+ opts.on(
146
+ '-i',
147
+ '--images [FOLDER]',
148
+ 'Source folder for all images used in documentation'
149
+ ) do | folder |
150
+
151
+ end
152
+
153
+ opts.on(
154
+ '-t',
155
+ '--tests [FOLDER]',
156
+ 'Source folder for feature test result files', ' '
157
+ ) do | folder |
158
+
159
+ @options[ :tests ] = folder
160
+
161
+ end
162
+
163
+ =begin
164
+ opts.on(
165
+ '-o',
166
+ '--output FOLDER',
167
+ 'User defined destionation folder for documentation and',
168
+ 'behaviours XML files. Default output folder is either',
169
+ '"doc" or "behaviours"', ' '
170
+
171
+ ) do | folder |
172
+
173
+ end
174
+ =end
175
+
176
+ opts.on(
177
+ '-r',
178
+ '--render',
179
+ 'Render also HTML output when generating documentation' ) do
180
+
181
+ @options[:render] = true
182
+
183
+ end
184
+
185
+ opts.on(
186
+ '-d',
187
+ '--delete',
188
+ 'Delete all existing behaviour XML files from output folder before generating new.',
189
+ 'Warning! Please option use this option with caution' ) do
190
+
191
+ @options[:delete] = true
192
+
193
+ end
194
+
195
+ opts.separator ""
196
+ opts.separator "Common options:"
197
+
198
+ opts.on( '-v', '--version', 'Testability Driver version information' ) do
199
+
200
+ puts ENV['TDRIVER_VERSION']
201
+ exit
202
+
203
+ end
204
+
205
+ opts.on( '-V', '--verbose', 'Output more information' ) do
206
+
207
+ @options[ :verbose ] = true
208
+
209
+ end
210
+
211
+ # This displays the help screen, all programs are
212
+ # assumed to have this option.
213
+ opts.on_tail("-h", "--help", "Display this message") do
214
+
215
+ puts '', opts, ''
216
+ exit
217
+
218
+ end
219
+
220
+ # show help if no command line arguments given
221
+ if ARGV.empty?
222
+
223
+ puts '', opts, ''
224
+ exit
225
+
226
+ end
227
+
228
+ end
229
+
230
+ def execute_tdriver_devtools
231
+
232
+ @optparse.parse!
233
+
234
+ case @options[ :generate ]
235
+
236
+ when :behaviours
237
+
238
+ $source = File.expand_path( ARGV[ 0 ] || @options[ :source ] )
239
+ $destination = File.expand_path( ARGV[ 1 ] || @options[ :destination ] )
240
+
241
+ destination_folder = File.expand_path( $destination )
242
+
243
+ if MobyUtil::FileHelper.folder_exist?( destination_folder )
244
+
245
+ if @options[ :delete ] == true
246
+
247
+ Dir.glob( File.join( destination_folder, '**', '**', '*.xml' ) ) do |entry|
248
+
249
+ begin
250
+
251
+ File.delete( entry )
252
+
253
+ rescue Exception => exception
254
+
255
+ warn("Unable to delete file %s (%s: %s)" % [ entry, exception.class, exception.message ] )
256
+
257
+ end
258
+
259
+ end
260
+
261
+ end
262
+
263
+ else
264
+
265
+ begin
266
+
267
+ MobyUtil::FileHelper.mkdir_path( destination_folder )
268
+
269
+ rescue Exception => exception
270
+
271
+ raise RuntimeError.new("Unable to create destination folder %s (%s: %s)" % [ destination_folder, exception.class, exception.message ])
272
+
273
+ end
274
+
275
+ end
276
+
277
+ # run behaviour xml generator
278
+ require File.expand_path( File.join( File.dirname( __FILE__ ), 'behaviour/xml/generate.rb' ) )
279
+
280
+ puts ''
281
+
282
+ when :doc
283
+
284
+ $source = File.expand_path( ARGV[0] || @options[ :source ] )
285
+ $tests = File.expand_path( @options[ :tests ] )
286
+ $destination = File.expand_path( ARGV[1] || @options[ :destination ] )
287
+
288
+ destination_folder = File.dirname( $destination )
289
+
290
+ begin
291
+
292
+ unless MobyUtil::FileHelper.folder_exist?( destination_folder )
293
+
294
+ MobyUtil::FileHelper.mkdir_path( destination_folder )
295
+
296
+ end
297
+
298
+ rescue Exception => exception
299
+
300
+ raise RuntimeError.new("Unable to create destination folder %s (%s: %s)" % [ destination_folder, exception.class, exception.message ])
301
+
302
+ end
303
+
304
+ require File.expand_path( File.join( File.dirname( __FILE__ ), 'doc/generate.rb' ) ) #'lib/tdriver-devtools/behaviour/xml/generate.rb'
305
+
306
+ when :both
307
+
308
+ destination_folder = @options[ :destination_behaviours ]
309
+
310
+ begin
311
+ unless MobyUtil::FileHelper.folder_exist?( destination_folder )
312
+ MobyUtil::FileHelper.mkdir_path( destination_folder )
313
+ else
314
+ if @options[ :delete ] == true
315
+ Dir.glob( File.join( destination_folder, '*.xml' ) ) do |entry|
316
+ begin
317
+ #puts "Delete #{ entry }"
318
+ File.delete( entry )
319
+ rescue Exception => exception
320
+ warn("Unable to delete file %s (%s: %s)" % [ entry, exception.class, exception.message ] )
321
+ end
322
+ end
323
+ end
324
+ end
325
+ rescue Exception => exception
326
+ raise RuntimeError.new("Unable to create destination folder %s (%s: %s)" % [ destination_folder, exception.class, exception.message ])
327
+ end
328
+
329
+ $source = File.expand_path( ARGV[ 0 ] || @options[ :source ] )
330
+ $destination = destination_folder
331
+
332
+ # run 'implementation to behaviour xml' generator
333
+ require File.expand_path( File.join( File.dirname( __FILE__ ), 'behaviour/xml/generate.rb' ) )
334
+
335
+ # documentation
336
+ $source = destination_folder
337
+ $tests = File.expand_path( @options[ :tests ] )
338
+ $destination = File.expand_path( ARGV[1] || @options[ :destination ] )
339
+ destination_folder = File.dirname( $destination )
340
+
341
+ begin
342
+ unless MobyUtil::FileHelper.folder_exist?( destination_folder )
343
+ MobyUtil::FileHelper.mkdir_path( destination_folder )
344
+ end
345
+ rescue Exception => exception
346
+ raise RuntimeError.new("Unable to create destination folder %s (%s: %s)" % [ destination_folder, exception.class, exception.message ])
347
+ end
348
+
349
+ require File.expand_path( File.join( File.dirname( __FILE__ ), 'doc/generate.rb' ) )
350
+
351
+ begin
352
+
353
+ FileUtils.cp( Dir.glob( File.expand_path( File.join( File.dirname( __FILE__ ), 'doc/xslt/*.xsl' ) ) ), destination_folder )
354
+
355
+ puts "Template XSLT file(s) copied to destination folder succesfully\n\n"
356
+
357
+ rescue Exception => exception
358
+
359
+ warn("Error while copying template xslt files to destination due to %s (%s)" % [ exception.message, exception.class ] )
360
+
361
+ end
362
+
363
+ if @options[:render] == true
364
+
365
+ begin
366
+
367
+ doc = Nokogiri::XML( open( $destination , 'r' ).read )
368
+
369
+ puts "Generating HTML output file(s) of documentation"
370
+
371
+ Dir.glob( File.expand_path( File.join( destination_folder, '*.xsl' ) ) ) do | template |
372
+
373
+ File.open(
374
+ File.join(
375
+ destination_folder,
376
+ "#{ File.basename( $destination ).gsub( File.extname( $destination ), '' ) }_#{ File.basename( template ).gsub( File.extname( template ), '' ) }.html"
377
+ ),
378
+ 'w'
379
+ ){ | file |
380
+
381
+ file << Nokogiri::XSLT( open( template, 'r' ).read ).transform( doc )
382
+
383
+ }
384
+
385
+ end
386
+
387
+ rescue Exception => exception
388
+
389
+ warn("Error while geneating HTML files from template(s) due to %s (%s)" % [ exception.message, exception.class ] )
390
+
391
+ end
392
+
393
+ end
394
+
395
+ else
396
+
397
+ puts '', @optparse, ''
398
+
399
+ end
400
+
401
+ end
402
+
403
+ execute_tdriver_devtools
404
+
@@ -0,0 +1,100 @@
1
+ ############################################################################
2
+ ##
3
+ ## Copyright (C) 2010 Nokia Corporation and/or its subsidiary(-ies).
4
+ ## All rights reserved.
5
+ ## Contact: Nokia Corporation (testabilitydriver@nokia.com)
6
+ ##
7
+ ## This file is part of TDriver.
8
+ ##
9
+ ## If you have questions regarding the use of this file, please contact
10
+ ## Nokia at testabilitydriver@nokia.com .
11
+ ##
12
+ ## This library is free software; you can redistribute it and/or
13
+ ## modify it under the terms of the GNU Lesser General Public
14
+ ## License version 2.1 as published by the Free Software Foundation
15
+ ## and appearing in the file LICENSE.LGPL included in the packaging
16
+ ## of this file.
17
+ ##
18
+ ############################################################################
19
+
20
+ module MobyBehaviour
21
+
22
+ # == description
23
+ # Example description
24
+ #
25
+ # == behaviour
26
+ # ExampleBehaviour
27
+ #
28
+ # == requires
29
+ # *
30
+ #
31
+ # == input_type
32
+ # *
33
+ #
34
+ # == sut_type
35
+ # *
36
+ #
37
+ # == sut_version
38
+ # *
39
+ #
40
+ # == objects
41
+ # *;sut
42
+ #
43
+ module Gesture
44
+
45
+ attr_accessor :attribute_accessor_example
46
+
47
+ attr_reader :attribute_reader_example
48
+
49
+ attr_writer :attribute_writer_example
50
+
51
+ # overwrite attribute_reader_example
52
+ def overwrite attribute_reader_example
53
+ end
54
+
55
+ # overwrite attribute_accessor_example writer
56
+ def attribute_accessor_example=(value)
57
+ end
58
+
59
+ # == description
60
+ # Cause a example_method operation on the screen.
61
+ #
62
+ # == arguments
63
+ # argument1
64
+ # Integer
65
+ # description: Example argument1
66
+ # example: 10
67
+ # default:
68
+ # Hash
69
+ # description: Example argument 1 type 2
70
+ # example: { :optional_1 => "value_1", :optional_2 => "value_2" }
71
+ # default:
72
+ #
73
+ # argument2
74
+ # String
75
+ # description: Example argument2
76
+ # example: "Hello"
77
+ # default:
78
+ #
79
+ # == returns
80
+ # String
81
+ # description: Return value type
82
+ # example: "World"
83
+ #
84
+ # == exceptions
85
+ # RuntimeError
86
+ # description: example exception
87
+ #
88
+ # ArgumentError
89
+ # description: example exception
90
+ #
91
+ # == example
92
+ # example_method( :Down, :Value, { :optional_1 => "value_1", :optional_2 => "value_2" } )
93
+ #
94
+ # == info
95
+ # See method X, table at Y
96
+ #
97
+ def example_method( direction, value = :Value, z = ',', optional_params = {}, y = ',' )
98
+ end
99
+
100
+ end