gametel 0.5.9.3 → 0.6
Sign up to get free protection for your applications and to get access to all the features.
- data/features/list_item.feature +6 -0
- data/features/step_definitions/list_item_steps.rb +5 -2
- data/features/support/screens/custom_items_screen.rb +1 -0
- data/features/text.feature +11 -0
- data/lib/gametel/platforms/brazenhead/list_item.rb +2 -2
- data/lib/gametel/version.rb +1 -1
- data/lib/gametel/views/text.rb +4 -0
- data/lib/gametel/views/view.rb +7 -3
- data/spec/lib/gametel/accessors/text_spec.rb +11 -0
- metadata +4 -8
data/features/list_item.feature
CHANGED
@@ -22,6 +22,12 @@ Feature: Interacting with the list item control
|
|
22
22
|
Then I should know that it has the text "Tom"
|
23
23
|
And I should know that it has the text "This is Tom, he likes long walks in the park."
|
24
24
|
|
25
|
+
Scenario: Determining text inside a list item by index
|
26
|
+
Given I am on the custom list screen
|
27
|
+
When I ask for the first item by the first index
|
28
|
+
Then I should know that it has the text "Tom"
|
29
|
+
And I should know that it has the text "This is Tom, he likes long walks in the park."
|
30
|
+
|
25
31
|
Scenario: Determining if a list item has an image
|
26
32
|
Given I am on the efficient adapter screen
|
27
33
|
When I ask for the list item for "Abertam"
|
@@ -1,6 +1,5 @@
|
|
1
1
|
When /^I click the first list item by "(.+)"$/ do |type|
|
2
|
-
on(MainMenuScreen).send "first_list_item_#{type}"
|
3
|
-
end
|
2
|
+
on(MainMenuScreen).send "first_list_item_#{type}" end
|
4
3
|
|
5
4
|
When /^I click the list item "(.*?)" from the main menu$/ do |list_item|
|
6
5
|
on(MainMenuScreen).send "#{list_item.downcase}"
|
@@ -30,6 +29,10 @@ When /^I ask for the first item in the list$/ do
|
|
30
29
|
@list_item = on(CustomItemsScreen).tom_view
|
31
30
|
end
|
32
31
|
|
32
|
+
When(/^I ask for the first item by the first index$/) do
|
33
|
+
@list_item = on(CustomItemsScreen).first_index_view
|
34
|
+
end
|
35
|
+
|
33
36
|
Then /^I should know that it has the text "(.*?)"$/ do |expected_text|
|
34
37
|
@list_item.text.should include expected_text
|
35
38
|
@list_item.should have_text expected_text
|
data/features/text.feature
CHANGED
@@ -64,3 +64,14 @@ Feature: Interacting with the standard text field
|
|
64
64
|
| focused | true |
|
65
65
|
| selected | false |
|
66
66
|
| shown | true |
|
67
|
+
|
68
|
+
Scenario: Determining properties of a text view by index
|
69
|
+
When I'm on the controls screen
|
70
|
+
Then the "text" field identified by "index" can determine the following properties:
|
71
|
+
| property | value |
|
72
|
+
| clickable | true |
|
73
|
+
| enabled | true |
|
74
|
+
| focusable | true |
|
75
|
+
| focused | true |
|
76
|
+
| selected | false |
|
77
|
+
| shown | true |
|
@@ -28,8 +28,8 @@ module Gametel
|
|
28
28
|
|
29
29
|
def list_item(locator, &block)
|
30
30
|
chain_calls do |device|
|
31
|
-
device.list_item_by_text(locator[:text], :target => 'Brazenhead',
|
32
|
-
|
31
|
+
device.list_item_by_text(locator[:text], :target => 'Brazenhead', :variable => '@@the_view@@') if locator[:text]
|
32
|
+
device.list_item_by_index(locator[:index], :target => 'Brazenhead', :variable => '@@the_view@@') if locator[:index]
|
33
33
|
block.call device if block
|
34
34
|
end
|
35
35
|
end
|
data/lib/gametel/version.rb
CHANGED
data/lib/gametel/views/text.rb
CHANGED
data/lib/gametel/views/view.rb
CHANGED
@@ -9,6 +9,10 @@ module Gametel
|
|
9
9
|
build_property_methods
|
10
10
|
end
|
11
11
|
|
12
|
+
def view_class
|
13
|
+
'android.view.View'
|
14
|
+
end
|
15
|
+
|
12
16
|
protected
|
13
17
|
|
14
18
|
def properties
|
@@ -19,9 +23,9 @@ module Gametel
|
|
19
23
|
metaclass = class << self; self; end
|
20
24
|
properties.each do |property|
|
21
25
|
metaclass.send(:define_method, "#{property}?".to_sym) do
|
22
|
-
|
23
|
-
|
24
|
-
|
26
|
+
query_property = lambda {|device| device.send "is_#{property}" }
|
27
|
+
platform.get_view_by_id(locator[:id], &query_property) if locator[:id]
|
28
|
+
platform.get_view_by_index(view_class, locator[:index], &query_property) if locator[:index]
|
25
29
|
platform.last_response.body == "true"
|
26
30
|
end
|
27
31
|
end
|
@@ -0,0 +1,11 @@
|
|
1
|
+
require 'spec_helper'
|
2
|
+
|
3
|
+
describe Gametel::Views::Text do
|
4
|
+
let(:platform) { double('Gametel platform') }
|
5
|
+
let(:locator) { {:id => 'abc'} }
|
6
|
+
subject { Gametel::Views::Text.new(platform, locator) }
|
7
|
+
|
8
|
+
it 'should know what its type is' do
|
9
|
+
subject.view_class.should eq('android.widget.EditText')
|
10
|
+
end
|
11
|
+
end
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: gametel
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.
|
4
|
+
version: '0.6'
|
5
5
|
prerelease:
|
6
6
|
platform: ruby
|
7
7
|
authors:
|
@@ -10,7 +10,7 @@ authors:
|
|
10
10
|
autorequire:
|
11
11
|
bindir: bin
|
12
12
|
cert_chain: []
|
13
|
-
date: 2013-
|
13
|
+
date: 2013-05-03 00:00:00.000000000 Z
|
14
14
|
dependencies:
|
15
15
|
- !ruby/object:Gem::Dependency
|
16
16
|
name: brazenhead
|
@@ -187,6 +187,7 @@ files:
|
|
187
187
|
- lib/gametel/views/text.rb
|
188
188
|
- lib/gametel/views/view.rb
|
189
189
|
- lib/gametel/waiter.rb
|
190
|
+
- spec/lib/gametel/accessors/text_spec.rb
|
190
191
|
- spec/lib/gametel/accessors_spec.rb
|
191
192
|
- spec/lib/gametel/navigation_spec.rb
|
192
193
|
- spec/lib/gametel/waiter_spec.rb
|
@@ -204,18 +205,12 @@ required_ruby_version: !ruby/object:Gem::Requirement
|
|
204
205
|
- - ! '>='
|
205
206
|
- !ruby/object:Gem::Version
|
206
207
|
version: '0'
|
207
|
-
segments:
|
208
|
-
- 0
|
209
|
-
hash: 4520710427909593083
|
210
208
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
211
209
|
none: false
|
212
210
|
requirements:
|
213
211
|
- - ! '>='
|
214
212
|
- !ruby/object:Gem::Version
|
215
213
|
version: '0'
|
216
|
-
segments:
|
217
|
-
- 0
|
218
|
-
hash: 4520710427909593083
|
219
214
|
requirements: []
|
220
215
|
rubyforge_project:
|
221
216
|
rubygems_version: 1.8.25
|
@@ -270,6 +265,7 @@ test_files:
|
|
270
265
|
- features/support/screens/views_menu_screen.rb
|
271
266
|
- features/text.feature
|
272
267
|
- features/view.feature
|
268
|
+
- spec/lib/gametel/accessors/text_spec.rb
|
273
269
|
- spec/lib/gametel/accessors_spec.rb
|
274
270
|
- spec/lib/gametel/navigation_spec.rb
|
275
271
|
- spec/lib/gametel/waiter_spec.rb
|