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.
- checksums.yaml +7 -0
- data/README.md +16 -0
- data/bin/start_app_perf +200 -0
- data/bin/tdriver-devtools +3 -0
- data/config/sut_parameters.rb +52 -0
- data/config/sut_setup.rb +32 -0
- data/config/sut_teardown.rb +32 -0
- data/config/tdriver_custom_error_recovery.rb +83 -0
- data/ext/extconf.rb +70 -0
- data/ext/native_extensions.c +315 -0
- data/lib/matti.rb +25 -0
- data/lib/tdriver-devtools/behaviour/old/xml/example/flick-example.rb +120 -0
- data/lib/tdriver-devtools/behaviour/old/xml/example/impl.rb_invalid +194 -0
- data/lib/tdriver-devtools/behaviour/old/xml/generate_behaviour_xml.rb +95 -0
- data/lib/tdriver-devtools/behaviour/old/xml/lib/tdriver_generator.rb +722 -0
- data/lib/tdriver-devtools/behaviour/old/xml/qdoc_generator.rb +321 -0
- data/lib/tdriver-devtools/behaviour/old/xml/templates/behaviour.method.template +43 -0
- data/lib/tdriver-devtools/behaviour/old/xml/templates/behaviour.module.template +54 -0
- data/lib/tdriver-devtools/behaviour/old/xml/templates/behaviour.xml.argument.template +7 -0
- data/lib/tdriver-devtools/behaviour/old/xml/templates/behaviour.xml.argument_type.template +7 -0
- data/lib/tdriver-devtools/behaviour/old/xml/templates/behaviour.xml.exception.template +5 -0
- data/lib/tdriver-devtools/behaviour/old/xml/templates/behaviour.xml.howto.line.template +2 -0
- data/lib/tdriver-devtools/behaviour/old/xml/templates/behaviour.xml.howto.template +5 -0
- data/lib/tdriver-devtools/behaviour/old/xml/templates/behaviour.xml.method.template +23 -0
- data/lib/tdriver-devtools/behaviour/old/xml/templates/behaviour.xml.template +14 -0
- data/lib/tdriver-devtools/behaviour/old/xml/update +3 -0
- data/lib/tdriver-devtools/behaviour/xml/generate.rb +88 -0
- data/lib/tdriver-devtools/behaviour/xml/rdoc_behaviour_xml_generator.rb +1945 -0
- data/lib/tdriver-devtools/behaviour/xml/templates/behaviour.xml.argument.default.template +1 -0
- data/lib/tdriver-devtools/behaviour/xml/templates/behaviour.xml.argument.template +3 -0
- data/lib/tdriver-devtools/behaviour/xml/templates/behaviour.xml.argument_type.template +4 -0
- data/lib/tdriver-devtools/behaviour/xml/templates/behaviour.xml.exception.template +4 -0
- data/lib/tdriver-devtools/behaviour/xml/templates/behaviour.xml.method.arguments.template +4 -0
- data/lib/tdriver-devtools/behaviour/xml/templates/behaviour.xml.method.deprecated.template +3 -0
- data/lib/tdriver-devtools/behaviour/xml/templates/behaviour.xml.method.exceptions.template +3 -0
- data/lib/tdriver-devtools/behaviour/xml/templates/behaviour.xml.method.info.template +1 -0
- data/lib/tdriver-devtools/behaviour/xml/templates/behaviour.xml.method.returns.template +3 -0
- data/lib/tdriver-devtools/behaviour/xml/templates/behaviour.xml.method.tables.template +3 -0
- data/lib/tdriver-devtools/behaviour/xml/templates/behaviour.xml.method.template +12 -0
- data/lib/tdriver-devtools/behaviour/xml/templates/behaviour.xml.returns.template +5 -0
- data/lib/tdriver-devtools/behaviour/xml/templates/behaviour.xml.table.item.template +1 -0
- data/lib/tdriver-devtools/behaviour/xml/templates/behaviour.xml.table.row.template +2 -0
- data/lib/tdriver-devtools/behaviour/xml/templates/behaviour.xml.table.template +8 -0
- data/lib/tdriver-devtools/behaviour/xml/templates/behaviour.xml.template +14 -0
- data/lib/tdriver-devtools/doc/behaviour_xml/QtExampleGestureBehaviour.xml +138 -0
- data/lib/tdriver-devtools/doc/behaviour_xml/created.rid +1 -0
- data/lib/tdriver-devtools/doc/behaviour_xml/tdriver.hash +1 -0
- data/lib/tdriver-devtools/doc/feature_xml/qt_widget_hold.feature.xml +9 -0
- data/lib/tdriver-devtools/doc/feature_xml/qt_widget_tap.feature.xml +9 -0
- data/lib/tdriver-devtools/doc/generate.rb +917 -0
- data/lib/tdriver-devtools/doc/update +1 -0
- data/lib/tdriver-devtools/doc/xslt/html.rb +7 -0
- data/lib/tdriver-devtools/doc/xslt/template.xsl +2170 -0
- data/lib/tdriver-devtools/doc/xslt/update +3 -0
- data/lib/tdriver-devtools/plugin/placeholder.txt +1 -0
- data/lib/tdriver-devtools/tdriver-devtools.rb +404 -0
- data/lib/tdriver-devtools/tests/feature_tests/example/behaviour_example.rb +100 -0
- data/lib/tdriver-devtools/tests/feature_tests/generate.rb +82 -0
- data/lib/tdriver-devtools/tests/feature_tests/lib/custom_rdoc_generator.rb +468 -0
- data/lib/tdriver-devtools/tests/feature_tests/templates/feature_attribute.template +5 -0
- data/lib/tdriver-devtools/tests/feature_tests/templates/feature_method.template +5 -0
- data/lib/tdriver-devtools/tests/feature_tests/templates/scenario_attribute.template +5 -0
- data/lib/tdriver-devtools/tests/feature_tests/templates/scenario_method.template +5 -0
- data/lib/tdriver-devtools/tests/feature_tests/update +3 -0
- data/lib/tdriver.rb +23 -0
- data/lib/tdriver/base/behaviour/abstract.rb +29 -0
- data/lib/tdriver/base/behaviour/behaviours/object_abstract.rb +107 -0
- data/lib/tdriver/base/behaviour/behaviours/object_behaviour_composition.rb +99 -0
- data/lib/tdriver/base/behaviour/behaviours/object_behaviour_description.rb +278 -0
- data/lib/tdriver/base/behaviour/behaviours/object_composition.rb +119 -0
- data/lib/tdriver/base/behaviour/factory.rb +495 -0
- data/lib/tdriver/base/behaviour/loader.rb +46 -0
- data/lib/tdriver/base/command_data/command_data.rb +51 -0
- data/lib/tdriver/base/command_data/loader.rb +29 -0
- data/lib/tdriver/base/controller/abstraction.rb +56 -0
- data/lib/tdriver/base/controller/loader.rb +21 -0
- data/lib/tdriver/base/errors.rb +134 -0
- data/lib/tdriver/base/loader.rb +47 -0
- data/lib/tdriver/base/state_object.rb +373 -0
- data/lib/tdriver/base/sut/adapter.rb +54 -0
- data/lib/tdriver/base/sut/controller.rb +151 -0
- data/lib/tdriver/base/sut/factory.rb +339 -0
- data/lib/tdriver/base/sut/generic/behaviours/agent.rb +77 -0
- data/lib/tdriver/base/sut/generic/behaviours/application.rb +427 -0
- data/lib/tdriver/base/sut/generic/behaviours/controller.rb +67 -0
- data/lib/tdriver/base/sut/generic/behaviours/find.rb +107 -0
- data/lib/tdriver/base/sut/generic/behaviours/flash_behaviour.rb +337 -0
- data/lib/tdriver/base/sut/generic/behaviours/sut.rb +1888 -0
- data/lib/tdriver/base/sut/generic/behaviours/switchbox_behaviour.rb +210 -0
- data/lib/tdriver/base/sut/generic/behaviours/verification.rb +222 -0
- data/lib/tdriver/base/sut/generic/commands/agent.rb +43 -0
- data/lib/tdriver/base/sut/generic/commands/application.rb +274 -0
- data/lib/tdriver/base/sut/generic/commands/fixture.rb +47 -0
- data/lib/tdriver/base/sut/generic/commands/key_sequence.rb +94 -0
- data/lib/tdriver/base/sut/generic/commands/screen_capture.rb +64 -0
- data/lib/tdriver/base/sut/generic/plugin.rb +97 -0
- data/lib/tdriver/base/sut/loader.rb +35 -0
- data/lib/tdriver/base/sut/sut.rb +98 -0
- data/lib/tdriver/base/test_object/abstract.rb +208 -0
- data/lib/tdriver/base/test_object/adapter.rb +740 -0
- data/lib/tdriver/base/test_object/behaviours/syncronization.rb +144 -0
- data/lib/tdriver/base/test_object/behaviours/test_object.rb +1047 -0
- data/lib/tdriver/base/test_object/cache.rb +134 -0
- data/lib/tdriver/base/test_object/factory.rb +684 -0
- data/lib/tdriver/base/test_object/loader.rb +51 -0
- data/lib/tdriver/base/test_object/verification.rb +178 -0
- data/lib/tdriver/base/test_object/xml/abstraction.rb +63 -0
- data/lib/tdriver/base/test_object/xml/adapter.rb +773 -0
- data/lib/tdriver/env.rb +21 -0
- data/lib/tdriver/loader.rb +57 -0
- data/lib/tdriver/matti.rb +35 -0
- data/lib/tdriver/report/error_recovery/tdriver_custom_error_recovery.rb +83 -0
- data/lib/tdriver/report/error_recovery/tdriver_error_recovery.rb +168 -0
- data/lib/tdriver/report/error_recovery/tdriver_error_recovery_settings.rb +106 -0
- data/lib/tdriver/report/report.rb +61 -0
- data/lib/tdriver/report/report_api.rb +348 -0
- data/lib/tdriver/report/report_combine.rb +86 -0
- data/lib/tdriver/report/report_crash_file_capture.rb +178 -0
- data/lib/tdriver/report/report_creator.rb +665 -0
- data/lib/tdriver/report/report_cucumber.rb +158 -0
- data/lib/tdriver/report/report_cucumber_listener.rb +184 -0
- data/lib/tdriver/report/report_cucumber_reporter.rb +181 -0
- data/lib/tdriver/report/report_data_presentation.rb +156 -0
- data/lib/tdriver/report/report_data_table.rb +64 -0
- data/lib/tdriver/report/report_execution_statistics.rb +400 -0
- data/lib/tdriver/report/report_file_capture.rb +159 -0
- data/lib/tdriver/report/report_graph_generator.rb +59 -0
- data/lib/tdriver/report/report_grouping.rb +541 -0
- data/lib/tdriver/report/report_javascript.rb +199 -0
- data/lib/tdriver/report/report_junit_xml.rb +147 -0
- data/lib/tdriver/report/report_rspec.rb +108 -0
- data/lib/tdriver/report/report_test_case_run.rb +725 -0
- data/lib/tdriver/report/report_test_run.rb +1476 -0
- data/lib/tdriver/report/report_test_unit.rb +223 -0
- data/lib/tdriver/report/report_writer.rb +1621 -0
- data/lib/tdriver/tdriver.rb +209 -0
- data/lib/tdriver/util/agent/loader.rb +22 -0
- data/lib/tdriver/util/agent/service.rb +107 -0
- data/lib/tdriver/util/common/array.rb +39 -0
- data/lib/tdriver/util/common/boolean.rb +48 -0
- data/lib/tdriver/util/common/crc16.rb +149 -0
- data/lib/tdriver/util/common/environment.rb +154 -0
- data/lib/tdriver/util/common/error.rb +40 -0
- data/lib/tdriver/util/common/exception.rb +53 -0
- data/lib/tdriver/util/common/exceptions.rb +12 -0
- data/lib/tdriver/util/common/file.rb +328 -0
- data/lib/tdriver/util/common/gem.rb +109 -0
- data/lib/tdriver/util/common/hash.rb +288 -0
- data/lib/tdriver/util/common/kernel.rb +253 -0
- data/lib/tdriver/util/common/loader.rb +47 -0
- data/lib/tdriver/util/common/numeric.rb +159 -0
- data/lib/tdriver/util/common/object.rb +159 -0
- data/lib/tdriver/util/common/retryable.rb +179 -0
- data/lib/tdriver/util/common/stackable.rb +185 -0
- data/lib/tdriver/util/common/string.rb +174 -0
- data/lib/tdriver/util/database/access.rb +240 -0
- data/lib/tdriver/util/database/connection.rb +44 -0
- data/lib/tdriver/util/database/error.rb +34 -0
- data/lib/tdriver/util/database/loader.rb +28 -0
- data/lib/tdriver/util/filters/attribute_filter.rb +121 -0
- data/lib/tdriver/util/filters/loader.rb +29 -0
- data/lib/tdriver/util/fixture/loader.rb +22 -0
- data/lib/tdriver/util/fixture/service.rb +211 -0
- data/lib/tdriver/util/hooking/hooking.rb +477 -0
- data/lib/tdriver/util/keymap/keymap.rb +81 -0
- data/lib/tdriver/util/loader.rb +80 -0
- data/lib/tdriver/util/localisation/error.rb +31 -0
- data/lib/tdriver/util/localisation/loader.rb +25 -0
- data/lib/tdriver/util/localisation/localisation.rb +762 -0
- data/lib/tdriver/util/logger/loader.rb +22 -0
- data/lib/tdriver/util/logger/logger.rb +591 -0
- data/lib/tdriver/util/operator_data/error.rb +29 -0
- data/lib/tdriver/util/operator_data/loader.rb +27 -0
- data/lib/tdriver/util/operator_data/operator_data.rb +93 -0
- data/lib/tdriver/util/other/config.rb +221 -0
- data/lib/tdriver/util/parameter/error.rb +48 -0
- data/lib/tdriver/util/parameter/loader.rb +25 -0
- data/lib/tdriver/util/parameter/parameter.rb +1161 -0
- data/lib/tdriver/util/plugin/abstract.rb +61 -0
- data/lib/tdriver/util/plugin/error.rb +0 -0
- data/lib/tdriver/util/plugin/loader.rb +28 -0
- data/lib/tdriver/util/plugin/service.rb +319 -0
- data/lib/tdriver/util/recorder/loader.rb +25 -0
- data/lib/tdriver/util/recorder/recorder.rb +72 -0
- data/lib/tdriver/util/recorder/scripter.rb +294 -0
- data/lib/tdriver/util/statistics/statistics.rb +89 -0
- data/lib/tdriver/util/user_data/error.rb +28 -0
- data/lib/tdriver/util/user_data/loader.rb +25 -0
- data/lib/tdriver/util/user_data/user_data.rb +104 -0
- data/lib/tdriver/util/video/camera.rb +67 -0
- data/lib/tdriver/util/video/camera_linux.rb +153 -0
- data/lib/tdriver/util/video/camera_windows.rb +174 -0
- data/lib/tdriver/util/video/loader.rb +31 -0
- data/lib/tdriver/util/video/video_utils.rb +139 -0
- data/lib/tdriver/util/xml/abstraction.rb +117 -0
- data/lib/tdriver/util/xml/attribute.rb +32 -0
- data/lib/tdriver/util/xml/builder.rb +53 -0
- data/lib/tdriver/util/xml/comment.rb +32 -0
- data/lib/tdriver/util/xml/document.rb +32 -0
- data/lib/tdriver/util/xml/element.rb +32 -0
- data/lib/tdriver/util/xml/error.rb +46 -0
- data/lib/tdriver/util/xml/loader.rb +62 -0
- data/lib/tdriver/util/xml/nil_node.rb +95 -0
- data/lib/tdriver/util/xml/nodeset.rb +32 -0
- data/lib/tdriver/util/xml/parsers/libxml/libxml.rb +140 -0
- data/lib/tdriver/util/xml/parsers/loader.rb +21 -0
- data/lib/tdriver/util/xml/parsers/nokogiri/abstraction.rb +167 -0
- data/lib/tdriver/util/xml/parsers/nokogiri/attribute.rb +66 -0
- data/lib/tdriver/util/xml/parsers/nokogiri/builder.rb +64 -0
- data/lib/tdriver/util/xml/parsers/nokogiri/comment.rb +39 -0
- data/lib/tdriver/util/xml/parsers/nokogiri/document.rb +66 -0
- data/lib/tdriver/util/xml/parsers/nokogiri/element.rb +39 -0
- data/lib/tdriver/util/xml/parsers/nokogiri/loader.rb +58 -0
- data/lib/tdriver/util/xml/parsers/nokogiri/node.rb +212 -0
- data/lib/tdriver/util/xml/parsers/nokogiri/nodeset.rb +237 -0
- data/lib/tdriver/util/xml/parsers/nokogiri/text.rb +39 -0
- data/lib/tdriver/util/xml/text.rb +32 -0
- data/lib/tdriver/util/xml/xml.rb +332 -0
- data/lib/tdriver/verify/verify.rb +2398 -0
- data/lib/tdriver/version.rb +21 -0
- data/xml/behaviours/generic.xml +530 -0
- data/xml/defaults/generic.xml +11 -0
- data/xml/defaults/sut_generic.xml +8 -0
- data/xml/parameters/tdriver_parameters.xml +23 -0
- data/xml/templates/generic.xml +292 -0
- metadata +324 -0
@@ -0,0 +1,29 @@
|
|
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 Testability Driver.
|
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
|
+
|
21
|
+
module MobyUtil
|
22
|
+
|
23
|
+
# This error should be raised when information about operator data is not found
|
24
|
+
class OperatorDataNotFoundError < StandardError; def initialize ( msg = nil ); super( msg ); end; end # class
|
25
|
+
|
26
|
+
# This error should be raised when the search column is not found
|
27
|
+
class OperatorDataColumnNotFoundError < StandardError; def initialize ( msg = nil ); super( msg ); end; end # class
|
28
|
+
|
29
|
+
end
|
@@ -0,0 +1,27 @@
|
|
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 Testability Driver.
|
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
|
+
# user data inputs related errors
|
21
|
+
require File.expand_path( File.join( File.dirname( __FILE__ ), 'error.rb' ) )
|
22
|
+
#
|
23
|
+
# user data inputs module implementation
|
24
|
+
require File.expand_path( File.join( File.dirname( __FILE__ ), 'operator_data.rb' ) )
|
25
|
+
#
|
26
|
+
|
27
|
+
|
@@ -0,0 +1,93 @@
|
|
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 Testability Driver.
|
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
|
+
# Utility for handling operator data inputs database
|
21
|
+
|
22
|
+
module MobyUtil
|
23
|
+
|
24
|
+
class OperatorData
|
25
|
+
|
26
|
+
# == description
|
27
|
+
# Function to fetch a translation for a given logical name from the localisation DB
|
28
|
+
#
|
29
|
+
# == arguments
|
30
|
+
# operator_data_lname
|
31
|
+
# String
|
32
|
+
# description: operator data identifier
|
33
|
+
# example: "op_welcome_message""
|
34
|
+
#
|
35
|
+
# operator
|
36
|
+
# String
|
37
|
+
# description: Operator column name to be used when fetching operator data
|
38
|
+
# example: "Orange"
|
39
|
+
#
|
40
|
+
# table_name
|
41
|
+
# String
|
42
|
+
# description: Name of the operator data table to use from the operator table DB
|
43
|
+
# example: "operator_data_week201042"
|
44
|
+
#
|
45
|
+
# == returns
|
46
|
+
# String
|
47
|
+
# description: Operator data string
|
48
|
+
#
|
49
|
+
# == throws
|
50
|
+
# OperatorDataColumnNotFoundError
|
51
|
+
# description: If the desired operator data is not found
|
52
|
+
#
|
53
|
+
# OperatorDataColumnNotFoundError
|
54
|
+
# description: If the desired data column name to be used for the output is not found
|
55
|
+
#
|
56
|
+
# SqlError
|
57
|
+
# description: if there is and sql error while executing the query
|
58
|
+
#
|
59
|
+
def self.retrieve( operator_data_lname, operator, table_name )
|
60
|
+
|
61
|
+
raise OperatorDataNotFoundError.new( "Search string parameter cannot be nil" ) if operator_data_lname == nil
|
62
|
+
|
63
|
+
# Get Localization parameters for DB Connection
|
64
|
+
db_type = $parameters[ :operator_data_db_type, nil ].to_s.downcase
|
65
|
+
host = $parameters[ :operator_data_server_ip ]
|
66
|
+
username = $parameters[ :operator_data_server_username ]
|
67
|
+
password = $parameters[ :operator_data_server_password ]
|
68
|
+
database_name = $parameters[ :operator_data_server_database_name ]
|
69
|
+
|
70
|
+
db_connection = DBConnection.new( db_type, host, database_name, username, password )
|
71
|
+
|
72
|
+
search_string = "#{ operator_data_lname }' AND `Operator` = '#{ operator }"
|
73
|
+
query_string = "select `Value` from `#{ table_name }` where `LogicalName` = '#{ search_string }' and `LogicalName` <> '#MISSING'"
|
74
|
+
|
75
|
+
begin
|
76
|
+
result = MobyUtil::DBAccess.query( db_connection, query_string )
|
77
|
+
rescue
|
78
|
+
# if data column to be searched is not found then raise error for search column not found
|
79
|
+
raise OperatorDataColumnNotFoundError.new( "Search column 'Value' not found in database" ) unless $!.message.index( "Unknown column" ) == nil
|
80
|
+
raise SqlError.new( $!.message )
|
81
|
+
end
|
82
|
+
|
83
|
+
# Return always the first column of the row
|
84
|
+
raise OperatorDataNotFoundError.new("No matches found for search string '#{ operator_data_lname }' in search column 'LogicalName' for opreator #{ operator }" ) if ( result.empty?)
|
85
|
+
# Result is an Array of rows (Array<String>)! We want the first column of the first row.
|
86
|
+
return result[0][0]
|
87
|
+
|
88
|
+
end
|
89
|
+
|
90
|
+
end # class
|
91
|
+
|
92
|
+
end # module
|
93
|
+
|
@@ -0,0 +1,221 @@
|
|
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 Testability Driver.
|
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
|
+
|
21
|
+
#!/usr/bin/ruby
|
22
|
+
|
23
|
+
require 'tdriver'
|
24
|
+
|
25
|
+
#require File.expand_path( File.join( File.dirname( __FILE__ ), 'xml/xml' ) )
|
26
|
+
#require File.expand_path( File.join( File.dirname( __FILE__ ), 'common' ) )
|
27
|
+
|
28
|
+
def find_xml_element( document, name )
|
29
|
+
|
30
|
+
document.root.xpath( "/parameters/*[@name='#{ name }']" )
|
31
|
+
|
32
|
+
end
|
33
|
+
|
34
|
+
def change_attr_value( node, attribute_name, value )
|
35
|
+
|
36
|
+
node.xml.attr( attribute_name, value.to_s )
|
37
|
+
|
38
|
+
end
|
39
|
+
|
40
|
+
def change_value( path, attribute, value )
|
41
|
+
|
42
|
+
filename = MobyUtil::FileHelper.fix_path( "#{ MobyUtil::FileHelper.tdriver_home }/tdriver_parameters.xml" )
|
43
|
+
|
44
|
+
xml_document = MobyUtil::XML::parse_file( filename )
|
45
|
+
|
46
|
+
node = find_xml_element( xml_document, path )
|
47
|
+
#p node
|
48
|
+
|
49
|
+
change_attr_value( node, attribute, value)
|
50
|
+
#p node
|
51
|
+
|
52
|
+
File.open( filename, "w" ){ | file_object | file_object << xml_document.xml }
|
53
|
+
|
54
|
+
end
|
55
|
+
|
56
|
+
#xml_document = MobyUtil::XML::parse_file( MobyUtil::FileHelper.fix_path( "#{ MobyUtil::FileHelper.tdriver_home }/tdriver_parameters.xml" ) )
|
57
|
+
|
58
|
+
#root_element = xml_document.root.xpath("/parameters/*[@id='sut_qt']")
|
59
|
+
|
60
|
+
=begin
|
61
|
+
root_element = xml_document.root.xpath("/parameters/parameter[@name='app_path']")
|
62
|
+
|
63
|
+
p root_element.xml
|
64
|
+
|
65
|
+
root_element.xml.attr("value", "10")
|
66
|
+
|
67
|
+
p root_element.xml
|
68
|
+
|
69
|
+
p xml_document
|
70
|
+
|
71
|
+
=end
|
72
|
+
|
73
|
+
#p root_element.xml.class
|
74
|
+
|
75
|
+
=begin
|
76
|
+
|
77
|
+
nimi = 'sut_qt'
|
78
|
+
|
79
|
+
root_element = xml_document.root.xpath("/parameters/*[@id='#{ nimi }' or @name='#{ nimi }']/fixtures") #*[@id='#{ nimi }' or @name='#{ nimi }']")
|
80
|
+
|
81
|
+
p root_element
|
82
|
+
|
83
|
+
root_element = xml_document.root.xpath("/parameters/*[@id='#{ nimi }' or @name='#{ nimi }']")
|
84
|
+
|
85
|
+
|
86
|
+
p root_element
|
87
|
+
|
88
|
+
=end
|
89
|
+
|
90
|
+
|
91
|
+
#p root_element.xml.keys
|
92
|
+
|
93
|
+
#node = Nokogiri::XML::Node.new("<nimi>l</nimi>", xml_document.xml)
|
94
|
+
|
95
|
+
#root_element.xml.push( node )
|
96
|
+
|
97
|
+
#xml_document.root.xml.add_child( node )
|
98
|
+
|
99
|
+
|
100
|
+
#p root_element.xml.to_xml
|
101
|
+
|
102
|
+
#p xml_document.xml.to_xml
|
103
|
+
|
104
|
+
|
105
|
+
#p root_element.class
|
106
|
+
|
107
|
+
#p xml_document.xml
|
108
|
+
|
109
|
+
#exit
|
110
|
+
|
111
|
+
def help
|
112
|
+
|
113
|
+
=begin
|
114
|
+
|
115
|
+
Usage:
|
116
|
+
Products:
|
117
|
+
Options:
|
118
|
+
-a arch architecture [all] (arm, x86, all)
|
119
|
+
-c path custom scratchbox path [/scratchbox]
|
120
|
+
-d display debug messages
|
121
|
+
WARNING: may contain sensitive information such as password
|
122
|
+
-e create targets that use files.maemo.org as the repository
|
123
|
+
-f overwrite previously existing target if one exists
|
124
|
+
-h display help
|
125
|
+
-p pass password for the repository/rootstrap download
|
126
|
+
-r name release name [pre-release] (current, pre-release, previous)
|
127
|
+
you can use build number instead of release name
|
128
|
+
-s select the created target
|
129
|
+
-t prefix custom prefix for target names [maemoX]
|
130
|
+
target name will be \$prefix-\$arch
|
131
|
+
-u user username for the repository/rootstrap download
|
132
|
+
-A save authentication data into .netrc in your scratchbox home
|
133
|
+
WARNING: your username and password will be written
|
134
|
+
in cleartext into your scratchbox home .netrc
|
135
|
+
-C config use custom configuration as rootstrap [minimaldev]
|
136
|
+
configuration used will be \$arch-\$config
|
137
|
+
-D don't install debug links
|
138
|
+
-I don't install files to rootstrap
|
139
|
+
-P don't allow unauthenticated packages
|
140
|
+
-R don't install rootstrap
|
141
|
+
-S keep sources.list provided by rootstrap
|
142
|
+
-U save authentication data in sources.list
|
143
|
+
WARNING: your username and password will be written
|
144
|
+
in cleartext into your target's sources.list
|
145
|
+
|
146
|
+
|
147
|
+
=end
|
148
|
+
|
149
|
+
puts <<HELP
|
150
|
+
|
151
|
+
Usage:
|
152
|
+
tdriver-config read [path]
|
153
|
+
|
154
|
+
Example:
|
155
|
+
tdriver-config read - List keys from root level
|
156
|
+
tdriver-config read sut_qt - List keys from "sut_qt" hash
|
157
|
+
tdriver-config read sut_qt/keymap/kApp - Retrieve value of kApp
|
158
|
+
|
159
|
+
HELP
|
160
|
+
|
161
|
+
exit
|
162
|
+
|
163
|
+
end
|
164
|
+
|
165
|
+
def print_key( key, value )
|
166
|
+
puts "%s %s" % [ "#{key} ".ljust(65, '.'), value.kind_of?( Hash ) ? "<Multiple values>" : "\"#{ value.to_s }\"" ]
|
167
|
+
end
|
168
|
+
|
169
|
+
def dump_hash_values( hash, path = "" )
|
170
|
+
hash.keys.sort{ |a,b| a.to_s <=> b.to_s }.each{ | key | print_key( key, hash[ key ] ) }
|
171
|
+
end
|
172
|
+
|
173
|
+
def resolve_hash_path( hash, path_string )
|
174
|
+
return [ "", hash ] if path_string.nil? or ( path_string.kind_of?( String) and path_string.empty? )
|
175
|
+
path = hash; path_array = path_string.split( "/" ); current_path = []
|
176
|
+
[ path_array[ -1 ], ( path_array.collect{ | key |
|
177
|
+
current_path = current_path + [ key ]
|
178
|
+
if !path.has_key?( key.to_sym ); puts "No such key/hash found (%s)\n\n" % [ current_path.join( "::" ) ]; exit; end
|
179
|
+
path = path[ key.to_sym ]
|
180
|
+
}.compact)[ -1 ] ]
|
181
|
+
end
|
182
|
+
|
183
|
+
if ARGV.count < 1;
|
184
|
+
|
185
|
+
help;
|
186
|
+
|
187
|
+
else
|
188
|
+
|
189
|
+
if ![ 'read', 'write' ].include?( ARGV[ 0 ].downcase ) #!= 'read'
|
190
|
+
puts "Currently only read and write is supported"; help; exit
|
191
|
+
end
|
192
|
+
|
193
|
+
mode = ARGV[ 0 ].downcase == 'read' ? :read : :write
|
194
|
+
|
195
|
+
puts "\n"
|
196
|
+
|
197
|
+
case mode
|
198
|
+
|
199
|
+
when :write
|
200
|
+
|
201
|
+
change_value( ARGV[ 1 ], "value", ARGV[ 2 ])
|
202
|
+
print_key ARGV[ 1 ], ARGV[ 2 ]
|
203
|
+
|
204
|
+
# reload new settings
|
205
|
+
#Singleton.__init__( MobyUtil::Parameter )
|
206
|
+
|
207
|
+
when :read
|
208
|
+
|
209
|
+
require 'tdriver'
|
210
|
+
|
211
|
+
result = resolve_hash_path( MobyUtil::Parameter.parameters, ARGV[ 1 ])
|
212
|
+
|
213
|
+
result[ 1 ].kind_of?( Hash ) ? ( dump_hash_values result[ 1 ] ) : ( print_key result[ 0 ], result[ 1 ] )
|
214
|
+
|
215
|
+
end
|
216
|
+
|
217
|
+
puts "\n"
|
218
|
+
|
219
|
+
|
220
|
+
end
|
221
|
+
|
@@ -0,0 +1,48 @@
|
|
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 Testability Driver.
|
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 MobyUtil
|
21
|
+
|
22
|
+
# This is template for tdriver custom errors
|
23
|
+
class CustomError < StandardError;
|
24
|
+
|
25
|
+
def initialize( msg = nil )
|
26
|
+
|
27
|
+
super( msg )
|
28
|
+
|
29
|
+
end
|
30
|
+
|
31
|
+
end
|
32
|
+
|
33
|
+
# This error should be raised when referred parameter is not found
|
34
|
+
class ParameterNotFoundError < CustomError; end
|
35
|
+
|
36
|
+
# This error should be raised when parameter file parsing fails
|
37
|
+
class ParameterFileParseError < CustomError; end
|
38
|
+
|
39
|
+
# This error should be raised when parameter file parsing fails
|
40
|
+
class ParameterXmlParseError < CustomError; end
|
41
|
+
|
42
|
+
# This error should be raised when desired template was not found
|
43
|
+
class TemplateNotFoundError < CustomError; end
|
44
|
+
|
45
|
+
# This error should be raised when desired template was not found
|
46
|
+
class TemplatesFileNotLoaded < CustomError; end
|
47
|
+
|
48
|
+
end # MobyUtil
|
@@ -0,0 +1,25 @@
|
|
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 Testability Driver.
|
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
|
+
# Parameter related errors
|
21
|
+
require File.expand_path( File.join( File.dirname( __FILE__ ), 'error.rb' ) )
|
22
|
+
|
23
|
+
# parameters related classes
|
24
|
+
require File.expand_path( File.join( File.dirname( __FILE__ ), 'parameter.rb' ) )
|
25
|
+
|