testability-driver 0.9.2 → 1.0.0
Sign up to get free protection for your applications and to get access to all the features.
- data/lib/tdriver/base/behaviour/behaviours/object_behaviour_composition.rb +1 -1
- data/lib/tdriver/base/behaviour/behaviours/object_behaviour_description.rb +11 -7
- data/lib/tdriver/base/behaviour/behaviours/object_composition.rb +8 -0
- data/lib/tdriver/base/behaviour/factory.rb +229 -209
- data/lib/tdriver/base/errors.rb +3 -0
- data/lib/tdriver/base/state_object.rb +11 -20
- data/lib/tdriver/base/sut/controller.rb +4 -4
- data/lib/tdriver/base/sut/factory.rb +205 -170
- data/lib/tdriver/base/sut/generic/behaviours/application.rb +256 -174
- data/lib/tdriver/base/sut/generic/behaviours/find.rb +17 -11
- data/lib/tdriver/base/sut/generic/behaviours/flash_behaviour.rb +57 -66
- data/lib/tdriver/base/sut/generic/behaviours/sut.rb +578 -497
- data/lib/tdriver/base/sut/generic/behaviours/switchbox_behaviour.rb +41 -15
- data/lib/tdriver/base/sut/generic/behaviours/verification.rb +48 -19
- data/lib/tdriver/base/sut/generic/commands/fixture.rb +47 -0
- data/lib/tdriver/base/sut/generic/commands/key_sequence.rb +25 -13
- data/lib/tdriver/base/sut/generic/commands/screen_capture.rb +16 -10
- data/lib/tdriver/base/sut/generic/plugin.rb +9 -3
- data/lib/tdriver/base/sut/sut.rb +41 -33
- data/lib/tdriver/base/test_object/abstract.rb +26 -3
- data/lib/tdriver/base/test_object/adapter.rb +399 -0
- data/lib/tdriver/base/test_object/behaviours/syncronization.rb +56 -14
- data/lib/tdriver/base/test_object/behaviours/test_object.rb +663 -197
- data/lib/tdriver/base/test_object/cache.rb +132 -0
- data/lib/tdriver/base/test_object/factory.rb +677 -426
- data/lib/tdriver/base/test_object/factory_new.rb +202 -0
- data/lib/tdriver/base/test_object/identificator.rb +24 -17
- data/lib/tdriver/base/test_object/loader.rb +9 -3
- data/lib/tdriver/base/test_object/verification.rb +181 -0
- data/lib/tdriver/loader.rb +1 -1
- data/lib/tdriver/report/report.rb +2 -0
- data/lib/tdriver/report/report_api.rb +4 -4
- data/lib/tdriver/report/report_creator.rb +29 -3
- data/lib/tdriver/report/report_data_presentation.rb +7 -3
- data/lib/tdriver/report/report_execution_statistics.rb +80 -21
- data/lib/tdriver/report/report_javascript.rb +192 -0
- data/lib/tdriver/report/report_test_case_run.rb +22 -0
- data/lib/tdriver/report/report_test_run.rb +62 -55
- data/lib/tdriver/report/report_writer.rb +57 -56
- data/lib/tdriver/tdriver.rb +14 -41
- data/lib/tdriver/util/common/error.rb +1 -0
- data/lib/tdriver/util/common/exceptions.rb +12 -0
- data/lib/tdriver/util/common/file.rb +12 -6
- data/lib/tdriver/util/common/gem.rb +2 -1
- data/lib/tdriver/util/common/hash.rb +152 -0
- data/lib/tdriver/util/common/kernel.rb +49 -34
- data/lib/tdriver/util/common/loader.rb +21 -17
- data/lib/tdriver/util/common/numeric.rb +39 -0
- data/lib/tdriver/util/common/object.rb +115 -0
- data/lib/tdriver/util/common/string.rb +55 -2
- data/lib/tdriver/util/dbaccess/dbaccess.rb +194 -161
- data/lib/tdriver/util/dynamic_attribute_filter.rb +6 -0
- data/lib/tdriver/util/hooking.rb +2 -2
- data/lib/tdriver/util/loader.rb +2 -2
- data/lib/tdriver/util/localisation/localisation.rb +277 -18
- data/lib/tdriver/util/logger.rb +142 -13
- data/lib/tdriver/util/parameter/parameter_hash.rb +8 -5
- data/lib/tdriver/util/parameter/parameter_xml.rb +18 -2
- data/lib/tdriver/util/recorder.rb +17 -12
- data/lib/tdriver/util/user_data/user_data.rb +3 -2
- data/lib/tdriver/util/{video_rec.rb → video_utils.rb} +136 -16
- data/lib/tdriver/util/xml/abstraction.rb +7 -0
- data/lib/tdriver/util/xml/attribute.rb +32 -0
- data/lib/tdriver/util/xml/loader.rb +8 -2
- data/lib/tdriver/util/xml/nil_node.rb +95 -0
- data/lib/tdriver/util/xml/parsers/nokogiri/abstraction.rb +46 -7
- data/lib/tdriver/util/xml/parsers/nokogiri/attribute.rb +19 -9
- data/lib/tdriver/util/xml/parsers/nokogiri/document.rb +1 -1
- data/lib/tdriver/util/xml/parsers/nokogiri/element.rb +13 -1
- data/lib/tdriver/util/xml/parsers/nokogiri/loader.rb +6 -0
- data/lib/tdriver/util/xml/parsers/nokogiri/nodeset.rb +27 -15
- data/lib/tdriver/util/xml/parsers/nokogiri/text.rb +57 -0
- data/lib/tdriver/util/xml/text.rb +32 -0
- data/lib/tdriver/util/xml/xml.rb +35 -22
- data/lib/tdriver/version.rb +1 -1
- data/lib/tdriver-devtools/behaviour/xml/rdoc_behaviour_xml_generator.rb +41 -34
- data/lib/tdriver-devtools/doc/generate.rb +31 -6
- data/lib/tdriver-devtools/doc/xslt/template.xsl +46 -25
- data/lib/tdriver-devtools/tests/feature_tests/example/behaviour_example.rb +100 -0
- data/lib/tdriver-devtools/tests/feature_tests/update +1 -1
- data/lib/tdriver.rb +0 -3
- data/xml/behaviours/generic.xml +1 -1
- data/xml/defaults/generic.xml +4 -90
- data/xml/templates/generic.xml +33 -25
- metadata +21 -29
- data/lib/tdriver-devtools/behaviour/xml_generator/example/flick-example.rb +0 -245
- data/lib/tdriver-devtools/behaviour/xml_generator/example/sut.rb +0 -964
- data/lib/tdriver-devtools/behaviour/xml_generator/generate.rb +0 -68
- data/lib/tdriver-devtools/behaviour/xml_generator/lib/custom_rdoc_generator.rb +0 -1865
- data/lib/tdriver-devtools/behaviour/xml_generator/templates/behaviour.xml.argument.default.template +0 -1
- data/lib/tdriver-devtools/behaviour/xml_generator/templates/behaviour.xml.argument.template +0 -3
- data/lib/tdriver-devtools/behaviour/xml_generator/templates/behaviour.xml.argument_type.template +0 -4
- data/lib/tdriver-devtools/behaviour/xml_generator/templates/behaviour.xml.exception.template +0 -4
- data/lib/tdriver-devtools/behaviour/xml_generator/templates/behaviour.xml.method.arguments.template +0 -4
- data/lib/tdriver-devtools/behaviour/xml_generator/templates/behaviour.xml.method.deprecated.template +0 -3
- data/lib/tdriver-devtools/behaviour/xml_generator/templates/behaviour.xml.method.exceptions.template +0 -3
- data/lib/tdriver-devtools/behaviour/xml_generator/templates/behaviour.xml.method.info.template +0 -1
- data/lib/tdriver-devtools/behaviour/xml_generator/templates/behaviour.xml.method.returns.template +0 -3
- data/lib/tdriver-devtools/behaviour/xml_generator/templates/behaviour.xml.method.tables.template +0 -3
- data/lib/tdriver-devtools/behaviour/xml_generator/templates/behaviour.xml.method.template +0 -12
- data/lib/tdriver-devtools/behaviour/xml_generator/templates/behaviour.xml.returns.template +0 -5
- data/lib/tdriver-devtools/behaviour/xml_generator/templates/behaviour.xml.table.item.template +0 -1
- data/lib/tdriver-devtools/behaviour/xml_generator/templates/behaviour.xml.table.row.template +0 -2
- data/lib/tdriver-devtools/behaviour/xml_generator/templates/behaviour.xml.table.template +0 -7
- data/lib/tdriver-devtools/behaviour/xml_generator/templates/behaviour.xml.template +0 -14
- data/lib/tdriver-devtools/behaviour/xml_generator/update +0 -3
- data/lib/tdriver-devtools/tests/feature_tests/example/flick-example.rb +0 -233
- data/lib/tdriver-devtools/tests/feature_tests/example/impl.rb +0 -194
data/lib/tdriver/version.rb
CHANGED
@@ -419,9 +419,6 @@ EXAMPLE
|
|
419
419
|
|
420
420
|
}
|
421
421
|
|
422
|
-
# TODO: some other format for writing the hash to file...
|
423
|
-
#open("#{ $output_results_name }.hash", "w" ){ | file | file << @found_modules_and_methods.inspect }
|
424
|
-
|
425
422
|
end
|
426
423
|
|
427
424
|
def process_file( file )
|
@@ -719,11 +716,11 @@ EXAMPLE
|
|
719
716
|
# new table
|
720
717
|
if nesting == 0
|
721
718
|
|
722
|
-
# break if for some reason first character is "="
|
723
|
-
return result if line[0].chr == "="
|
724
|
-
|
725
719
|
unless line.empty?
|
726
720
|
|
721
|
+
# break if for some reason first character is "="
|
722
|
+
return result if line[0].chr == "="
|
723
|
+
|
727
724
|
line =~ /^(\w+)/i
|
728
725
|
|
729
726
|
result << { "name" => $1, "content" => [] }
|
@@ -1069,9 +1066,6 @@ EXAMPLE
|
|
1069
1066
|
|
1070
1067
|
method_header = process_comment( method.comment )
|
1071
1068
|
|
1072
|
-
## TODO: remember to verify that there are documentation for each argument!
|
1073
|
-
## TODO: verify that there is a tag for visualizer example
|
1074
|
-
|
1075
1069
|
arguments_found = 0
|
1076
1070
|
|
1077
1071
|
method_header = Hash[ method_header.collect{ | key, value |
|
@@ -1590,41 +1584,57 @@ EXAMPLE
|
|
1590
1584
|
#return "" if features.last[:tables]["content"] == []
|
1591
1585
|
|
1592
1586
|
tables = features.last[:tables].collect{ | table |
|
1587
|
+
|
1588
|
+
if table["content"] == []
|
1589
|
+
|
1590
|
+
raise_error("Warning: Table format incorrect in '#{ features.first }' ($MODULE)", 'table_format')
|
1593
1591
|
|
1594
|
-
|
1595
|
-
|
1596
|
-
"
|
1592
|
+
apply_macros!( @templates["behaviour.xml.table"].clone, {
|
1593
|
+
"TABLE_NAME" => encode_string( '[!!] ERROR' ),
|
1594
|
+
"TABLE_TITLE" => encode_string( '[!!] ERROR' || "" ),
|
1595
|
+
"TABLE_DESCRIPTION" => encode_string( '[!!] ERROR' || "" )
|
1597
1596
|
}
|
1598
1597
|
)
|
1599
|
-
}
|
1600
1598
|
|
1601
|
-
|
1599
|
+
else
|
1602
1600
|
|
1603
|
-
|
1604
|
-
|
1601
|
+
header = table[ "content" ].first.collect{ | header_item |
|
1605
1602
|
apply_macros!( @templates["behaviour.xml.table.item"].clone, {
|
1606
|
-
"ITEM" => encode_string(
|
1603
|
+
"ITEM" => encode_string( header_item )
|
1607
1604
|
}
|
1608
1605
|
)
|
1609
1606
|
}
|
1610
1607
|
|
1611
|
-
|
1608
|
+
rows = table[ "content" ][ 1 .. -1 ].collect{ | row |
|
1612
1609
|
|
1613
|
-
|
1614
|
-
|
1610
|
+
row_items = row.collect{ | row_item |
|
1611
|
+
|
1612
|
+
apply_macros!( @templates["behaviour.xml.table.item"].clone, {
|
1613
|
+
"ITEM" => encode_string( row_item )
|
1614
|
+
}
|
1615
|
+
)
|
1615
1616
|
}
|
1616
|
-
)
|
1617
|
-
|
1618
|
-
}
|
1619
1617
|
|
1620
|
-
|
1621
|
-
|
1622
|
-
|
1623
|
-
|
1624
|
-
|
1625
|
-
|
1618
|
+
apply_macros!( @templates["behaviour.xml.table.row"].clone, {
|
1619
|
+
|
1620
|
+
"TABLE_ROW_ITEMS" => row_items.join("")
|
1621
|
+
|
1622
|
+
}
|
1623
|
+
)
|
1624
|
+
|
1626
1625
|
}
|
1627
|
-
|
1626
|
+
|
1627
|
+
apply_macros!( @templates["behaviour.xml.table"].clone, {
|
1628
|
+
"TABLE_NAME" => encode_string( table[ "name" ] ),
|
1629
|
+
"TABLE_TITLE" => encode_string( table[ "title" ] || "" ),
|
1630
|
+
"TABLE_DESCRIPTION" => encode_string( table[ "description" ] || "" ),
|
1631
|
+
"TABLE_HEADER_ITEMS" => header.join(""),
|
1632
|
+
"TABLE_ROWS" => rows.join("")
|
1633
|
+
}
|
1634
|
+
)
|
1635
|
+
|
1636
|
+
end
|
1637
|
+
|
1628
1638
|
}
|
1629
1639
|
|
1630
1640
|
end
|
@@ -1690,10 +1700,7 @@ EXAMPLE
|
|
1690
1700
|
feature_set.collect{ | feature |
|
1691
1701
|
|
1692
1702
|
@processing = feature.last[:__type]
|
1693
|
-
|
1694
|
-
# TODO: tarkista lähdekoodista että onko argument optional vai ei
|
1695
|
-
# TODO: tarkista että onko kaikki argumentit dokumentoitu
|
1696
|
-
|
1703
|
+
|
1697
1704
|
arguments = generate_arguments_element( header, feature )
|
1698
1705
|
|
1699
1706
|
returns = generate_return_values_element( header, feature )
|
@@ -15,7 +15,7 @@ def process_result_file( content )
|
|
15
15
|
result = { "__file" => @current_file }
|
16
16
|
|
17
17
|
# convert linefeeds to whitespace
|
18
|
-
content.gsub!( "\n", ' ' )
|
18
|
+
#content.gsub!( "\n", ' ' )
|
19
19
|
|
20
20
|
# convert double whitespaces to one whitespace
|
21
21
|
content.gsub!( ' ', ' ' )
|
@@ -87,9 +87,17 @@ def process_behaviour_file( content )
|
|
87
87
|
|
88
88
|
# TODO: recursive method to parse documentation?
|
89
89
|
|
90
|
-
|
90
|
+
begin
|
91
|
+
|
92
|
+
doc = Nokogiri::XML::parse( content )
|
93
|
+
|
94
|
+
behaviour_config = Hash[ doc.root.attributes.collect{ | attribute | [ attribute.first, attribute.last.value ] } ] # ] = attribute.last.value.split(";") }
|
95
|
+
|
96
|
+
rescue Exception => exception
|
91
97
|
|
92
|
-
|
98
|
+
abort("Error while parsing behaviour:\n#{ content }")
|
99
|
+
|
100
|
+
end
|
93
101
|
|
94
102
|
result = { "behaviours" => [], "__config" => behaviour_config }
|
95
103
|
|
@@ -342,6 +350,8 @@ def read_test_result_files( folder )
|
|
342
350
|
|
343
351
|
@current_file = file
|
344
352
|
|
353
|
+
|
354
|
+
|
345
355
|
@feature_tests << process_result_file( open( file, 'r' ).read )
|
346
356
|
|
347
357
|
}
|
@@ -459,6 +469,9 @@ def collect_feature_tests
|
|
459
469
|
# collect step status
|
460
470
|
step_results = ( scenario[ "step" ] || [] ).collect{ | step |
|
461
471
|
|
472
|
+
# do not process commented lines
|
473
|
+
next if /^#/.match( step )
|
474
|
+
|
462
475
|
#p scenario
|
463
476
|
|
464
477
|
if /^.*\s{1}(\w+)$/.match( step )
|
@@ -474,14 +487,24 @@ def collect_feature_tests
|
|
474
487
|
#( /^.*\s{1}(\w+)$/.match( step ).captures || [] ).first
|
475
488
|
|
476
489
|
}
|
490
|
+
|
491
|
+
# remove nils (skipped lines comment lines)
|
492
|
+
step_results.compact! unless step_results.nil?
|
477
493
|
|
494
|
+
unless scenario["example_step"].nil?
|
495
|
+
|
496
|
+
scenario["example_step"] = [ scenario["example_step"].join( "\n" ) ]
|
497
|
+
|
498
|
+
end
|
499
|
+
|
478
500
|
( scenario["example_step"] || [] ).collect{ | example |
|
479
501
|
|
480
502
|
begin
|
481
503
|
|
482
|
-
code =
|
504
|
+
code = /"([^\"]*)"\s/m.match( example ).captures.first
|
505
|
+
#code = /\"(.*)\"\s/m.match( example ).captures.first
|
483
506
|
|
484
|
-
status = /^.*\s{1}(\w+)$/m.match( example ).captures.
|
507
|
+
status = /^.*\s{1}(\w+)$/m.match( example ).captures.to_a
|
485
508
|
|
486
509
|
if status.first.to_s.downcase == 'passed'
|
487
510
|
|
@@ -505,7 +528,9 @@ def collect_feature_tests
|
|
505
528
|
|
506
529
|
end
|
507
530
|
|
508
|
-
rescue
|
531
|
+
rescue Exception => exception
|
532
|
+
|
533
|
+
warn("Ambiguous 'example_step': %s (%s: %s)" % [ example.inspect, exception.class, exception.message ])
|
509
534
|
|
510
535
|
code = "Error while extracting the code from test"
|
511
536
|
status_literal = "unknown"
|
@@ -1,5 +1,4 @@
|
|
1
1
|
<?xml version="1.0" encoding="ISO-8859-1"?>
|
2
|
-
|
3
2
|
<xsl:stylesheet version="1.0"
|
4
3
|
xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
|
5
4
|
xmlns:str="http://exslt.org/strings"
|
@@ -14,8 +13,8 @@
|
|
14
13
|
<head>
|
15
14
|
<style TYPE="text/css">
|
16
15
|
|
17
|
-
|
18
|
-
|
16
|
+
body
|
17
|
+
{
|
19
18
|
padding: 10px;
|
20
19
|
border: #e7e7e7 1px solid;
|
21
20
|
background: #ffffff;
|
@@ -23,40 +22,39 @@
|
|
23
22
|
font-size: 13px;
|
24
23
|
cursor: default;
|
25
24
|
text-shadow: #909090 1px 1px 4px;
|
26
|
-
|
25
|
+
}
|
27
26
|
|
28
27
|
div.feature_title
|
29
28
|
{
|
30
29
|
|
31
|
-
|
30
|
+
padding: 8px;
|
32
31
|
|
33
|
-
|
34
|
-
border-left: 1px solid #c9c9c9;
|
32
|
+
background: #404040;
|
35
33
|
|
36
|
-
border-
|
37
|
-
border-
|
34
|
+
border-top: 1px solid #484848;
|
35
|
+
border-left: 1px solid #484848;
|
38
36
|
|
39
|
-
|
37
|
+
border-bottom: 1px solid #2a2a2a;
|
38
|
+
border-right: 1px solid #2a2a2a;
|
40
39
|
|
41
|
-
-moz-box-shadow: 1px 1px 4px #
|
42
|
-
-webkit-box-shadow: 1px 1px 4px #
|
40
|
+
-moz-box-shadow: 1px 1px 4px #010101;
|
41
|
+
-webkit-box-shadow: 1px 1px 4px #010101;
|
43
42
|
|
44
43
|
}
|
45
44
|
|
46
45
|
span.feature_title_text, a.feature_name_link
|
47
46
|
{
|
48
47
|
text-decoration: none;
|
49
|
-
font-size:
|
50
|
-
color: #
|
51
|
-
|
52
|
-
text-shadow: gray 2px 2px 3px;
|
48
|
+
font-size: 20px;
|
49
|
+
color: #FFFFFF;
|
50
|
+
text-shadow: #101010 2px 2px 3px;
|
53
51
|
font-weight: bold;
|
54
52
|
}
|
55
53
|
|
56
54
|
span.feature_title_text:hover
|
57
55
|
{
|
58
56
|
|
59
|
-
|
57
|
+
|
60
58
|
|
61
59
|
}
|
62
60
|
|
@@ -134,6 +132,14 @@
|
|
134
132
|
|
135
133
|
background: #f0a646;
|
136
134
|
|
135
|
+
border-top: 1px solid #707070;
|
136
|
+
border-left: 1px solid #707070;
|
137
|
+
|
138
|
+
background: #606260;
|
139
|
+
|
140
|
+
border-bottom: 1px solid #595959;
|
141
|
+
border-right: 1px solid #595959;
|
142
|
+
|
137
143
|
}
|
138
144
|
|
139
145
|
<!-- table-style: cellpadding -->
|
@@ -149,14 +155,15 @@
|
|
149
155
|
td.header
|
150
156
|
{
|
151
157
|
|
152
|
-
background: #96E066;
|
153
|
-
|
154
158
|
font-size: 11px;
|
155
|
-
border-top: 1px solid #
|
156
|
-
border-left: 1px solid #
|
159
|
+
border-top: 1px solid #a0a0a0;
|
160
|
+
border-left: 1px solid #a0a0a0;
|
161
|
+
|
162
|
+
background: #909290;
|
163
|
+
|
164
|
+
border-bottom: 1px solid #797979;
|
165
|
+
border-right: 1px solid #797979;
|
157
166
|
|
158
|
-
border-bottom: 1px solid #7fc94f;
|
159
|
-
border-right: 1px solid #7fc94f;
|
160
167
|
|
161
168
|
}
|
162
169
|
|
@@ -200,7 +207,11 @@
|
|
200
207
|
|
201
208
|
td.tablebg_disabled
|
202
209
|
{
|
203
|
-
|
210
|
+
|
211
|
+
background: #d5d5d5;
|
212
|
+
|
213
|
+
background-image:url('images/bg_disabled.png');
|
214
|
+
background-repeat: repeat;
|
204
215
|
|
205
216
|
border-top: 1px solid #cdcdcd;
|
206
217
|
border-left: 1px solid #cdcdcd;
|
@@ -230,6 +241,10 @@
|
|
230
241
|
|
231
242
|
font-family: monospace;
|
232
243
|
font-size: 11px;
|
244
|
+
|
245
|
+
white-space: pre-wrap;
|
246
|
+
word-wrap: break-word;
|
247
|
+
break-word: break-all;
|
233
248
|
|
234
249
|
}
|
235
250
|
|
@@ -338,8 +353,13 @@
|
|
338
353
|
text-decoration: none;
|
339
354
|
|
340
355
|
color: #d15131;
|
356
|
+
|
357
|
+
color: #a06060;
|
358
|
+
|
341
359
|
text-shadow: #ff8f6f 1px 1px 4px;
|
342
360
|
|
361
|
+
text-shadow: #b0a0a0 1px 1px 4px;
|
362
|
+
|
343
363
|
border-bottom: 1px dotted #515151;
|
344
364
|
font-weight: bold;
|
345
365
|
|
@@ -1064,7 +1084,8 @@
|
|
1064
1084
|
</xsl:when>
|
1065
1085
|
|
1066
1086
|
<xsl:when test="string(example/text())='-'">
|
1067
|
-
<td class="tablebg_disabled" rowspan="{ $argument_types }"><xsl:value-of select="$default"/></td>
|
1087
|
+
<!-- <td class="tablebg_disabled" rowspan="{ $argument_types }"><xsl:value-of select="$default"/></td> -->
|
1088
|
+
<td class="tablebg_disabled"><xsl:value-of select="example/text()"/></td>
|
1068
1089
|
</xsl:when>
|
1069
1090
|
|
1070
1091
|
<xsl:when test="string-length(example/text())>0">
|
@@ -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
|