mohawk 0.1.4 → 0.2
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.
- data/.gitmodules +3 -3
- data/Changelog +6 -1
- data/Rakefile +2 -3
- data/cucumber.yml +1 -1
- data/features/combo_box.feature +8 -0
- data/features/menu.feature +8 -0
- data/features/step_definitions/button_steps.rb +1 -1
- data/features/step_definitions/combo_box_steps.rb +13 -1
- data/features/step_definitions/control_steps.rb +1 -1
- data/features/step_definitions/menu_steps.rb +7 -2
- data/features/support/WindowsForms.exe +0 -0
- data/features/support/screens/main_screen.rb +3 -0
- data/features/table.feature +7 -7
- data/features/text.feature +4 -0
- data/lib/mohawk/accessors.rb +3 -0
- data/lib/mohawk/adapters/uia/button.rb +14 -0
- data/lib/mohawk/adapters/uia/checkbox.rb +22 -0
- data/lib/mohawk/adapters/uia/control.rb +83 -0
- data/lib/mohawk/adapters/uia/element_locator.rb +19 -0
- data/lib/mohawk/adapters/uia/menu_item.rb +48 -0
- data/lib/mohawk/adapters/uia/radio.rb +22 -0
- data/lib/mohawk/adapters/uia/select_list.rb +53 -0
- data/lib/mohawk/adapters/uia/spinner.rb +30 -0
- data/lib/mohawk/adapters/uia/tab_control.rb +26 -0
- data/lib/mohawk/adapters/uia/table.rb +62 -0
- data/lib/mohawk/adapters/uia/table_row.rb +73 -0
- data/lib/mohawk/adapters/uia/text_box.rb +47 -0
- data/lib/mohawk/adapters/uia/tree_view.rb +22 -0
- data/lib/mohawk/adapters/uia/value_control.rb +20 -0
- data/lib/mohawk/adapters/uia/window.rb +64 -0
- data/lib/mohawk/adapters/uia_adapter.rb +36 -50
- data/lib/mohawk/version.rb +1 -1
- data/lib/mohawk/waiter.rb +18 -0
- data/lib/mohawk/win_32.rb +12 -0
- data/lib/mohawk.rb +26 -14
- data/mohawk.gemspec +2 -2
- data/spec/lib/mohawk/adapters/uia/control_spec.rb +46 -0
- data/spec/lib/mohawk/adapters/uia/table_row_spec.rb +36 -0
- data/spec/lib/mohawk/waiter_spec.rb +39 -0
- data/spec/lib/mohawk_spec.rb +115 -92
- data/spec/lib/navigation_spec.rb +14 -20
- data/spec/spec_helper.rb +1 -1
- metadata +49 -67
- data/lib/mohawk/accessors/button.rb +0 -20
- data/lib/mohawk/accessors/checkbox.rb +0 -24
- data/lib/mohawk/accessors/combo.rb +0 -37
- data/lib/mohawk/accessors/control.rb +0 -24
- data/lib/mohawk/accessors/label.rb +0 -15
- data/lib/mohawk/accessors/link.rb +0 -9
- data/lib/mohawk/accessors/menu_item.rb +0 -21
- data/lib/mohawk/accessors/radio.rb +0 -19
- data/lib/mohawk/accessors/spinner.rb +0 -27
- data/lib/mohawk/accessors/table.rb +0 -69
- data/lib/mohawk/accessors/table_row.rb +0 -62
- data/lib/mohawk/accessors/tabs.rb +0 -30
- data/lib/mohawk/accessors/text.rb +0 -29
- data/lib/mohawk/accessors/tree_view.rb +0 -32
- data/spec/lib/mohawk/accessors/button_spec.rb +0 -45
- data/spec/lib/mohawk/accessors/checkbox_spec.rb +0 -46
- data/spec/lib/mohawk/accessors/combo_spec.rb +0 -119
- data/spec/lib/mohawk/accessors/control_spec.rb +0 -47
- data/spec/lib/mohawk/accessors/label_spec.rb +0 -29
- data/spec/lib/mohawk/accessors/link_spec.rb +0 -34
- data/spec/lib/mohawk/accessors/menu_spec.rb +0 -32
- data/spec/lib/mohawk/accessors/radio_spec.rb +0 -35
- data/spec/lib/mohawk/accessors/spinner_spec.rb +0 -43
- data/spec/lib/mohawk/accessors/table_row_spec.rb +0 -28
- data/spec/lib/mohawk/accessors/table_spec.rb +0 -262
- data/spec/lib/mohawk/accessors/tabs_spec.rb +0 -58
- data/spec/lib/mohawk/accessors/text_spec.rb +0 -51
- data/spec/lib/mohawk/accessors/tree_view_spec.rb +0 -98
- data/spec/lib/mohawk/adapters/uia_adapter_spec.rb +0 -55
- data/spec/table_stubber.rb +0 -55
data/spec/lib/mohawk_spec.rb
CHANGED
@@ -9,130 +9,153 @@ end
|
|
9
9
|
|
10
10
|
describe Mohawk do
|
11
11
|
let(:screen) { TestScreen.new }
|
12
|
-
let(:window) { double
|
12
|
+
let(:window) { double 'window' }
|
13
13
|
|
14
14
|
before(:each) do
|
15
15
|
Mohawk.app_path = nil
|
16
16
|
Mohawk.instance_variable_set(:@app, nil)
|
17
17
|
end
|
18
18
|
|
19
|
-
|
20
|
-
|
21
|
-
|
19
|
+
def expected_window(*args)
|
20
|
+
w = double 'window'
|
21
|
+
expect(Mohawk::Adapters::UIA::Window).to receive(:new).with(*args).and_return w
|
22
|
+
w
|
22
23
|
end
|
23
24
|
|
24
|
-
|
25
|
-
|
26
|
-
|
25
|
+
context 'default adapter' do
|
26
|
+
Then { TestScreen.new.adapter.class == Mohawk::Adapters::UiaAdapter }
|
27
|
+
end
|
28
|
+
|
29
|
+
context 'additional locator information' do
|
30
|
+
Then do
|
31
|
+
expect(Mohawk.default_adapter).to receive(:new).with title: 'Some Window Title', extra: 'test'
|
32
|
+
TestScreen.new extra: 'test'
|
33
|
+
end
|
34
|
+
end
|
35
|
+
|
36
|
+
context '#default_timeout' do
|
37
|
+
Given!(:default_timeout) { Mohawk.timeout }
|
38
|
+
|
39
|
+
Then { default_timeout == 60 }
|
40
|
+
|
41
|
+
When { Mohawk.timeout = 123 }
|
42
|
+
Then { Mohawk.timeout == 123 }
|
27
43
|
end
|
28
44
|
|
29
45
|
context 'launching an application' do
|
30
|
-
let(:process) { double
|
46
|
+
let(:process) { double 'child process', pid: 123 }
|
31
47
|
|
32
48
|
before(:each) do
|
49
|
+
Uia.stub(:find_element).and_return double
|
33
50
|
process.stub(:start).and_return(process)
|
34
|
-
[:exited?, :stop
|
51
|
+
[:exited?, :stop].each &process.method(:stub)
|
35
52
|
ChildProcess.stub(:build).with('./the/app/path.exe').and_return(process)
|
36
53
|
|
37
|
-
RAutomation::Window.stub(:new).and_return(window)
|
38
54
|
window.stub(:present?).and_return(true)
|
39
55
|
|
40
56
|
Mohawk.app_path = './the/app/path.exe'
|
41
57
|
end
|
42
58
|
|
43
|
-
|
44
|
-
Mohawk.app_path = nil
|
45
|
-
|
46
|
-
end
|
47
|
-
|
48
|
-
it 'can start an application' do
|
49
|
-
process.should_receive(:start)
|
50
|
-
Mohawk.start
|
59
|
+
context 'requires app_path' do
|
60
|
+
When { Mohawk.app_path = nil }
|
61
|
+
Then { expect { Mohawk.start }.to raise_error(Mohawk::InvalidApplicationPath, 'You must set the Mohawk.app_path to start an application') }
|
51
62
|
end
|
52
63
|
|
53
|
-
|
54
|
-
|
55
|
-
|
56
|
-
|
64
|
+
context 'starting' do
|
65
|
+
context 'fast starters' do
|
66
|
+
Given { expect(Uia).to receive(:find_element).and_return double }
|
67
|
+
Then do
|
68
|
+
expect(process).to receive(:start)
|
69
|
+
Mohawk.start
|
70
|
+
end
|
71
|
+
end
|
57
72
|
|
58
|
-
|
73
|
+
context 'slow starters' do
|
74
|
+
Then { process.pid == 123}
|
75
|
+
Then do
|
76
|
+
expect(Uia).to receive(:find_element).with(pid: 123).and_return(nil, nil, double)
|
77
|
+
Mohawk.start
|
78
|
+
end
|
79
|
+
end
|
59
80
|
end
|
60
81
|
|
61
|
-
|
62
|
-
|
63
|
-
|
82
|
+
context 'stopping' do
|
83
|
+
context '#stop' do
|
84
|
+
Given { Mohawk.start }
|
85
|
+
When { Mohawk.stop }
|
86
|
+
Then { expect(process).to have_received(:stop) }
|
87
|
+
end
|
64
88
|
|
65
|
-
|
66
|
-
|
67
|
-
|
68
|
-
it 'knows if a process was never started' do
|
69
|
-
lambda { Mohawk.stop }.should raise_error('An application was never started')
|
70
|
-
end
|
71
|
-
|
72
|
-
it 'does nothing if the process has exited' do
|
73
|
-
process.should_receive(:exited?).and_return(true)
|
74
|
-
process.should_not_receive(:stop)
|
75
|
-
Mohawk.start
|
89
|
+
context 'never started' do
|
90
|
+
Then { expect { Mohawk.stop }.to raise_error 'An application was never started'}
|
91
|
+
end
|
76
92
|
|
77
|
-
|
78
|
-
|
93
|
+
context 'already stopped' do
|
94
|
+
Given { expect(process).to receive(:exited?).and_return true }
|
95
|
+
When { Mohawk.start; Mohawk.stop }
|
96
|
+
Then { expect(process).not_to have_received :stop }
|
97
|
+
end
|
79
98
|
|
80
|
-
|
81
|
-
|
82
|
-
|
83
|
-
|
99
|
+
context 'cleans up state' do
|
100
|
+
When { Mohawk.start; Mohawk.stop }
|
101
|
+
Then { Mohawk.app == nil }
|
102
|
+
end
|
84
103
|
end
|
85
104
|
end
|
86
105
|
|
87
|
-
context
|
88
|
-
|
89
|
-
|
90
|
-
|
91
|
-
|
92
|
-
|
93
|
-
|
94
|
-
|
95
|
-
|
106
|
+
context Mohawk::Adapters do
|
107
|
+
Given(:screen) { TestScreen.new }
|
108
|
+
Given(:window) { double('window').as_null_object }
|
109
|
+
Given { screen.adapter.stub(:window).and_return window }
|
110
|
+
|
111
|
+
context 'window' do
|
112
|
+
context '#exist?' do
|
113
|
+
When { screen.exist? }
|
114
|
+
Then { expect(window).to have_received(:exist?) }
|
115
|
+
end
|
116
|
+
|
117
|
+
context '#active?' do
|
118
|
+
When { screen.active? }
|
119
|
+
Then { expect(window).to have_received(:active?) }
|
120
|
+
end
|
121
|
+
|
122
|
+
context '#present?' do
|
123
|
+
When { screen.present? }
|
124
|
+
Then { expect(window).to have_received(:present?) }
|
125
|
+
end
|
126
|
+
|
127
|
+
context 'has_text?' do
|
128
|
+
Given { expect(window).to receive(:text).and_return 'lots of text, but blardy blar is in it' }
|
129
|
+
Then { expect(screen).to have_text 'blardy blar' }
|
130
|
+
end
|
131
|
+
end
|
132
|
+
|
133
|
+
context 'waiting' do
|
134
|
+
context '#wait_until_present' do
|
135
|
+
When { screen.wait_until_present }
|
136
|
+
Then { expect(window).to have_received(:wait_until_present) }
|
137
|
+
end
|
138
|
+
|
139
|
+
context '#wait_until' do
|
140
|
+
Then { screen.respond_to?(:wait_until) }
|
141
|
+
end
|
142
|
+
|
143
|
+
context '#wait_for_control' do
|
144
|
+
Given do
|
145
|
+
control = double 'control', exist?: true
|
146
|
+
expect(screen.adapter).to receive(:control).with(id: 'whatever').and_return control
|
147
|
+
control
|
148
|
+
end
|
149
|
+
|
150
|
+
Then { screen.wait_for_control id: 'whatever' }
|
151
|
+
|
152
|
+
context 'not there' do
|
153
|
+
Given { expect(screen).to receive(:wait_until).and_raise }
|
154
|
+
Then { expect { screen.wait_for_control(id: 'whatever') }.to raise_error "A control with #{{id: 'whatever'}} was not found" }
|
155
|
+
end
|
156
|
+
end
|
96
157
|
end
|
97
|
-
|
98
|
-
it "knows if a window is active or not" do
|
99
|
-
window.should_receive(:active?)
|
100
|
-
screen.active?
|
101
|
-
end
|
102
|
-
|
103
|
-
it "knows if the window is present" do
|
104
|
-
window.should_receive(:present?)
|
105
|
-
screen.present?
|
106
|
-
end
|
107
|
-
|
108
|
-
it "can hold off until the window is present" do
|
109
|
-
window.should_receive(:wait_until_present)
|
110
|
-
screen.wait_until_present
|
111
|
-
end
|
112
|
-
|
113
|
-
it "can hold off until I say so" do
|
114
|
-
window.should_receive(:present?).twice.and_return(false, true)
|
115
|
-
screen.wait_until {screen.present?}
|
116
|
-
end
|
117
|
-
|
118
|
-
it "can wait for a control" do
|
119
|
-
found_control = double("control to wait for")
|
120
|
-
found_control.should_receive(:exist?).and_return(true)
|
121
|
-
window.should_receive(:control).with(:id => "whatever", :index => 0).and_return(found_control)
|
122
|
-
screen.wait_for_control(:id => "whatever", :index => 0)
|
123
|
-
end
|
124
|
-
|
125
|
-
it "tells you what you were waiting for if it fails" do
|
126
|
-
screen.should_receive(:wait_until).and_raise("you should have caught me")
|
127
|
-
locator = {:id => "whatever", :index => 0}
|
128
|
-
window.should_receive(:control).with(locator)
|
129
|
-
lambda { screen.wait_for_control(:id => "whatever", :index => 0) }.should raise_error(Exception, "A control with #{locator} was not found")
|
130
|
-
end
|
131
|
-
|
132
|
-
it "knows if a window has text" do
|
133
|
-
window.should_receive(:text).and_return("lots of text but I wanted to find blardy blar blar")
|
134
|
-
screen.should have_text "blardy blar"
|
135
|
-
end
|
136
|
-
|
137
158
|
end
|
159
|
+
|
138
160
|
end
|
161
|
+
|
data/spec/lib/navigation_spec.rb
CHANGED
@@ -6,34 +6,28 @@ end
|
|
6
6
|
include Mohawk::Navigation
|
7
7
|
|
8
8
|
describe Mohawk::Navigation do
|
9
|
-
let(:screen) { double("Mohawk Screen").as_null_object }
|
10
|
-
|
11
9
|
before(:each) do
|
12
10
|
NavigationTestScreen.stub(:new).and_return(screen)
|
13
|
-
RAutomation::WaitHelper.stub(:sleep)
|
14
11
|
end
|
15
12
|
|
16
|
-
|
17
|
-
|
18
|
-
|
13
|
+
Given(:screen) { double('Mohawk Screen').as_null_object }
|
14
|
+
|
15
|
+
Then { on(NavigationTestScreen) == screen }
|
19
16
|
|
20
|
-
|
21
|
-
|
22
|
-
|
23
|
-
screen.expected_method
|
24
|
-
end
|
17
|
+
context 'blocks' do
|
18
|
+
When { on(NavigationTestScreen) {|s| s.expected_method } }
|
19
|
+
Then { expect(screen).to have_received(:expected_method) }
|
25
20
|
end
|
26
21
|
|
27
|
-
|
28
|
-
|
29
|
-
screen.
|
30
|
-
|
31
|
-
screen.was_used
|
32
|
-
end
|
22
|
+
context 'waiting until it exists' do
|
23
|
+
When { on(NavigationTestScreen).was_used }
|
24
|
+
Then { expect(screen).to have_received :wait_until_present }
|
25
|
+
And { expect(screen).to have_received :was_used }
|
33
26
|
end
|
34
27
|
|
35
|
-
|
36
|
-
NavigationTestScreen.
|
37
|
-
on(NavigationTestScreen, :
|
28
|
+
context 'additional information' do
|
29
|
+
Given { expect(NavigationTestScreen).to receive(:new).with(extra: :info).and_return(screen) }
|
30
|
+
When(:result) { on(NavigationTestScreen, extra: :info) }
|
31
|
+
Then { result == screen }
|
38
32
|
end
|
39
33
|
end
|
data/spec/spec_helper.rb
CHANGED
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: mohawk
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.
|
4
|
+
version: '0.2'
|
5
5
|
prerelease:
|
6
6
|
platform: ruby
|
7
7
|
authors:
|
@@ -9,24 +9,24 @@ authors:
|
|
9
9
|
autorequire:
|
10
10
|
bindir: bin
|
11
11
|
cert_chain: []
|
12
|
-
date: 2014-
|
12
|
+
date: 2014-05-09 00:00:00.000000000 Z
|
13
13
|
dependencies:
|
14
14
|
- !ruby/object:Gem::Dependency
|
15
|
-
name:
|
15
|
+
name: uia
|
16
16
|
requirement: !ruby/object:Gem::Requirement
|
17
17
|
none: false
|
18
18
|
requirements:
|
19
|
-
- -
|
19
|
+
- - ! '>='
|
20
20
|
- !ruby/object:Gem::Version
|
21
|
-
version:
|
21
|
+
version: 0.3.1
|
22
22
|
type: :runtime
|
23
23
|
prerelease: false
|
24
24
|
version_requirements: !ruby/object:Gem::Requirement
|
25
25
|
none: false
|
26
26
|
requirements:
|
27
|
-
- -
|
27
|
+
- - ! '>='
|
28
28
|
- !ruby/object:Gem::Version
|
29
|
-
version:
|
29
|
+
version: 0.3.1
|
30
30
|
- !ruby/object:Gem::Dependency
|
31
31
|
name: require_all
|
32
32
|
requirement: !ruby/object:Gem::Requirement
|
@@ -76,29 +76,29 @@ dependencies:
|
|
76
76
|
- !ruby/object:Gem::Version
|
77
77
|
version: 0.3.9
|
78
78
|
- !ruby/object:Gem::Dependency
|
79
|
-
name:
|
79
|
+
name: cucumber
|
80
80
|
requirement: !ruby/object:Gem::Requirement
|
81
81
|
none: false
|
82
82
|
requirements:
|
83
|
-
- - '
|
83
|
+
- - ! '>='
|
84
84
|
- !ruby/object:Gem::Version
|
85
|
-
version:
|
86
|
-
type: :
|
85
|
+
version: '0'
|
86
|
+
type: :development
|
87
87
|
prerelease: false
|
88
88
|
version_requirements: !ruby/object:Gem::Requirement
|
89
89
|
none: false
|
90
90
|
requirements:
|
91
|
-
- - '
|
91
|
+
- - ! '>='
|
92
92
|
- !ruby/object:Gem::Version
|
93
|
-
version:
|
93
|
+
version: '0'
|
94
94
|
- !ruby/object:Gem::Dependency
|
95
|
-
name:
|
95
|
+
name: rspec
|
96
96
|
requirement: !ruby/object:Gem::Requirement
|
97
97
|
none: false
|
98
98
|
requirements:
|
99
99
|
- - ! '>='
|
100
100
|
- !ruby/object:Gem::Version
|
101
|
-
version:
|
101
|
+
version: 2.12.0
|
102
102
|
type: :development
|
103
103
|
prerelease: false
|
104
104
|
version_requirements: !ruby/object:Gem::Requirement
|
@@ -106,15 +106,15 @@ dependencies:
|
|
106
106
|
requirements:
|
107
107
|
- - ! '>='
|
108
108
|
- !ruby/object:Gem::Version
|
109
|
-
version:
|
109
|
+
version: 2.12.0
|
110
110
|
- !ruby/object:Gem::Dependency
|
111
|
-
name: rspec
|
111
|
+
name: rspec-given
|
112
112
|
requirement: !ruby/object:Gem::Requirement
|
113
113
|
none: false
|
114
114
|
requirements:
|
115
115
|
- - ! '>='
|
116
116
|
- !ruby/object:Gem::Version
|
117
|
-
version:
|
117
|
+
version: '0'
|
118
118
|
type: :development
|
119
119
|
prerelease: false
|
120
120
|
version_requirements: !ruby/object:Gem::Requirement
|
@@ -122,7 +122,7 @@ dependencies:
|
|
122
122
|
requirements:
|
123
123
|
- - ! '>='
|
124
124
|
- !ruby/object:Gem::Version
|
125
|
-
version:
|
125
|
+
version: '0'
|
126
126
|
- !ruby/object:Gem::Dependency
|
127
127
|
name: rake
|
128
128
|
requirement: !ruby/object:Gem::Requirement
|
@@ -322,45 +322,35 @@ files:
|
|
322
322
|
- features/tree_view.feature
|
323
323
|
- lib/mohawk.rb
|
324
324
|
- lib/mohawk/accessors.rb
|
325
|
-
- lib/mohawk/
|
326
|
-
- lib/mohawk/
|
327
|
-
- lib/mohawk/
|
328
|
-
- lib/mohawk/
|
329
|
-
- lib/mohawk/
|
330
|
-
- lib/mohawk/
|
331
|
-
- lib/mohawk/
|
332
|
-
- lib/mohawk/
|
333
|
-
- lib/mohawk/
|
334
|
-
- lib/mohawk/
|
335
|
-
- lib/mohawk/
|
336
|
-
- lib/mohawk/
|
337
|
-
- lib/mohawk/
|
338
|
-
- lib/mohawk/
|
325
|
+
- lib/mohawk/adapters/uia/button.rb
|
326
|
+
- lib/mohawk/adapters/uia/checkbox.rb
|
327
|
+
- lib/mohawk/adapters/uia/control.rb
|
328
|
+
- lib/mohawk/adapters/uia/element_locator.rb
|
329
|
+
- lib/mohawk/adapters/uia/menu_item.rb
|
330
|
+
- lib/mohawk/adapters/uia/radio.rb
|
331
|
+
- lib/mohawk/adapters/uia/select_list.rb
|
332
|
+
- lib/mohawk/adapters/uia/spinner.rb
|
333
|
+
- lib/mohawk/adapters/uia/tab_control.rb
|
334
|
+
- lib/mohawk/adapters/uia/table.rb
|
335
|
+
- lib/mohawk/adapters/uia/table_row.rb
|
336
|
+
- lib/mohawk/adapters/uia/text_box.rb
|
337
|
+
- lib/mohawk/adapters/uia/tree_view.rb
|
338
|
+
- lib/mohawk/adapters/uia/value_control.rb
|
339
|
+
- lib/mohawk/adapters/uia/window.rb
|
339
340
|
- lib/mohawk/adapters/uia_adapter.rb
|
340
341
|
- lib/mohawk/core_ext/string.rb
|
341
342
|
- lib/mohawk/navigation.rb
|
342
343
|
- lib/mohawk/version.rb
|
344
|
+
- lib/mohawk/waiter.rb
|
345
|
+
- lib/mohawk/win_32.rb
|
343
346
|
- mohawk.gemspec
|
344
347
|
- spec/ffi_stub.rb
|
345
|
-
- spec/lib/mohawk/
|
346
|
-
- spec/lib/mohawk/
|
347
|
-
- spec/lib/mohawk/
|
348
|
-
- spec/lib/mohawk/accessors/control_spec.rb
|
349
|
-
- spec/lib/mohawk/accessors/label_spec.rb
|
350
|
-
- spec/lib/mohawk/accessors/link_spec.rb
|
351
|
-
- spec/lib/mohawk/accessors/menu_spec.rb
|
352
|
-
- spec/lib/mohawk/accessors/radio_spec.rb
|
353
|
-
- spec/lib/mohawk/accessors/spinner_spec.rb
|
354
|
-
- spec/lib/mohawk/accessors/table_row_spec.rb
|
355
|
-
- spec/lib/mohawk/accessors/table_spec.rb
|
356
|
-
- spec/lib/mohawk/accessors/tabs_spec.rb
|
357
|
-
- spec/lib/mohawk/accessors/text_spec.rb
|
358
|
-
- spec/lib/mohawk/accessors/tree_view_spec.rb
|
359
|
-
- spec/lib/mohawk/adapters/uia_adapter_spec.rb
|
348
|
+
- spec/lib/mohawk/adapters/uia/control_spec.rb
|
349
|
+
- spec/lib/mohawk/adapters/uia/table_row_spec.rb
|
350
|
+
- spec/lib/mohawk/waiter_spec.rb
|
360
351
|
- spec/lib/mohawk_spec.rb
|
361
352
|
- spec/lib/navigation_spec.rb
|
362
353
|
- spec/spec_helper.rb
|
363
|
-
- spec/table_stubber.rb
|
364
354
|
homepage: http://github.com/leviwilson/mohawk
|
365
355
|
licenses:
|
366
356
|
- MIT
|
@@ -374,15 +364,21 @@ required_ruby_version: !ruby/object:Gem::Requirement
|
|
374
364
|
- - ! '>='
|
375
365
|
- !ruby/object:Gem::Version
|
376
366
|
version: '0'
|
367
|
+
segments:
|
368
|
+
- 0
|
369
|
+
hash: 1001197409
|
377
370
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
378
371
|
none: false
|
379
372
|
requirements:
|
380
373
|
- - ! '>='
|
381
374
|
- !ruby/object:Gem::Version
|
382
375
|
version: '0'
|
376
|
+
segments:
|
377
|
+
- 0
|
378
|
+
hash: 1001197409
|
383
379
|
requirements: []
|
384
380
|
rubyforge_project:
|
385
|
-
rubygems_version: 1.8.
|
381
|
+
rubygems_version: 1.8.28
|
386
382
|
signing_key:
|
387
383
|
specification_version: 3
|
388
384
|
summary: Provides a page-object style driver for automating Windows applications
|
@@ -453,23 +449,9 @@ test_files:
|
|
453
449
|
- features/text.feature
|
454
450
|
- features/tree_view.feature
|
455
451
|
- spec/ffi_stub.rb
|
456
|
-
- spec/lib/mohawk/
|
457
|
-
- spec/lib/mohawk/
|
458
|
-
- spec/lib/mohawk/
|
459
|
-
- spec/lib/mohawk/accessors/control_spec.rb
|
460
|
-
- spec/lib/mohawk/accessors/label_spec.rb
|
461
|
-
- spec/lib/mohawk/accessors/link_spec.rb
|
462
|
-
- spec/lib/mohawk/accessors/menu_spec.rb
|
463
|
-
- spec/lib/mohawk/accessors/radio_spec.rb
|
464
|
-
- spec/lib/mohawk/accessors/spinner_spec.rb
|
465
|
-
- spec/lib/mohawk/accessors/table_row_spec.rb
|
466
|
-
- spec/lib/mohawk/accessors/table_spec.rb
|
467
|
-
- spec/lib/mohawk/accessors/tabs_spec.rb
|
468
|
-
- spec/lib/mohawk/accessors/text_spec.rb
|
469
|
-
- spec/lib/mohawk/accessors/tree_view_spec.rb
|
470
|
-
- spec/lib/mohawk/adapters/uia_adapter_spec.rb
|
452
|
+
- spec/lib/mohawk/adapters/uia/control_spec.rb
|
453
|
+
- spec/lib/mohawk/adapters/uia/table_row_spec.rb
|
454
|
+
- spec/lib/mohawk/waiter_spec.rb
|
471
455
|
- spec/lib/mohawk_spec.rb
|
472
456
|
- spec/lib/navigation_spec.rb
|
473
457
|
- spec/spec_helper.rb
|
474
|
-
- spec/table_stubber.rb
|
475
|
-
has_rdoc:
|
@@ -1,20 +0,0 @@
|
|
1
|
-
module Mohawk
|
2
|
-
module Accessors
|
3
|
-
class Button
|
4
|
-
attr_reader :view
|
5
|
-
|
6
|
-
def initialize(adapter, locator)
|
7
|
-
@view = adapter.window.button(locator)
|
8
|
-
end
|
9
|
-
|
10
|
-
def click(&block)
|
11
|
-
@view.click &block if block
|
12
|
-
@view.click {true} unless block
|
13
|
-
end
|
14
|
-
|
15
|
-
def value
|
16
|
-
@view.value
|
17
|
-
end
|
18
|
-
end
|
19
|
-
end
|
20
|
-
end
|
@@ -1,24 +0,0 @@
|
|
1
|
-
module Mohawk
|
2
|
-
module Accessors
|
3
|
-
class CheckBox
|
4
|
-
attr_reader :view
|
5
|
-
|
6
|
-
def initialize(adapter, locator)
|
7
|
-
@view = adapter.window.checkbox(locator)
|
8
|
-
end
|
9
|
-
|
10
|
-
def checked?
|
11
|
-
@view.set?
|
12
|
-
end
|
13
|
-
|
14
|
-
def set_check(should_check)
|
15
|
-
@view.set if should_check
|
16
|
-
@view.clear unless should_check
|
17
|
-
end
|
18
|
-
|
19
|
-
def value
|
20
|
-
@view.value
|
21
|
-
end
|
22
|
-
end
|
23
|
-
end
|
24
|
-
end
|
@@ -1,37 +0,0 @@
|
|
1
|
-
module Mohawk
|
2
|
-
module Accessors
|
3
|
-
class Combo
|
4
|
-
attr_reader :view
|
5
|
-
|
6
|
-
def initialize(adapter, locator)
|
7
|
-
@view = adapter.window.select_list(locator)
|
8
|
-
end
|
9
|
-
|
10
|
-
def set(value)
|
11
|
-
find(value).select
|
12
|
-
end
|
13
|
-
|
14
|
-
def clear(value)
|
15
|
-
find(value).clear
|
16
|
-
end
|
17
|
-
|
18
|
-
def method_missing(meth, *args, &block)
|
19
|
-
return super unless @view.respond_to?(meth)
|
20
|
-
@view.send(meth, *args, &block)
|
21
|
-
end
|
22
|
-
|
23
|
-
def options
|
24
|
-
@view.options.map &:text
|
25
|
-
end
|
26
|
-
|
27
|
-
def find(what)
|
28
|
-
case what
|
29
|
-
when Fixnum
|
30
|
-
@view.options[what]
|
31
|
-
when String
|
32
|
-
@view.option(text: what)
|
33
|
-
end
|
34
|
-
end
|
35
|
-
end
|
36
|
-
end
|
37
|
-
end
|
@@ -1,24 +0,0 @@
|
|
1
|
-
module Mohawk
|
2
|
-
module Accessors
|
3
|
-
class Control
|
4
|
-
attr_reader :view
|
5
|
-
def initialize(adapter, locator)
|
6
|
-
@adapter = adapter
|
7
|
-
@view = adapter.window.value_control(locator)
|
8
|
-
end
|
9
|
-
|
10
|
-
def value
|
11
|
-
@view.value
|
12
|
-
end
|
13
|
-
|
14
|
-
def set(value)
|
15
|
-
@view.set value
|
16
|
-
end
|
17
|
-
|
18
|
-
def click(&block)
|
19
|
-
@view.click &block if block
|
20
|
-
@view.click { true } unless block
|
21
|
-
end
|
22
|
-
end
|
23
|
-
end
|
24
|
-
end
|