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.
Files changed (73) hide show
  1. data/.gitmodules +3 -3
  2. data/Changelog +6 -1
  3. data/Rakefile +2 -3
  4. data/cucumber.yml +1 -1
  5. data/features/combo_box.feature +8 -0
  6. data/features/menu.feature +8 -0
  7. data/features/step_definitions/button_steps.rb +1 -1
  8. data/features/step_definitions/combo_box_steps.rb +13 -1
  9. data/features/step_definitions/control_steps.rb +1 -1
  10. data/features/step_definitions/menu_steps.rb +7 -2
  11. data/features/support/WindowsForms.exe +0 -0
  12. data/features/support/screens/main_screen.rb +3 -0
  13. data/features/table.feature +7 -7
  14. data/features/text.feature +4 -0
  15. data/lib/mohawk/accessors.rb +3 -0
  16. data/lib/mohawk/adapters/uia/button.rb +14 -0
  17. data/lib/mohawk/adapters/uia/checkbox.rb +22 -0
  18. data/lib/mohawk/adapters/uia/control.rb +83 -0
  19. data/lib/mohawk/adapters/uia/element_locator.rb +19 -0
  20. data/lib/mohawk/adapters/uia/menu_item.rb +48 -0
  21. data/lib/mohawk/adapters/uia/radio.rb +22 -0
  22. data/lib/mohawk/adapters/uia/select_list.rb +53 -0
  23. data/lib/mohawk/adapters/uia/spinner.rb +30 -0
  24. data/lib/mohawk/adapters/uia/tab_control.rb +26 -0
  25. data/lib/mohawk/adapters/uia/table.rb +62 -0
  26. data/lib/mohawk/adapters/uia/table_row.rb +73 -0
  27. data/lib/mohawk/adapters/uia/text_box.rb +47 -0
  28. data/lib/mohawk/adapters/uia/tree_view.rb +22 -0
  29. data/lib/mohawk/adapters/uia/value_control.rb +20 -0
  30. data/lib/mohawk/adapters/uia/window.rb +64 -0
  31. data/lib/mohawk/adapters/uia_adapter.rb +36 -50
  32. data/lib/mohawk/version.rb +1 -1
  33. data/lib/mohawk/waiter.rb +18 -0
  34. data/lib/mohawk/win_32.rb +12 -0
  35. data/lib/mohawk.rb +26 -14
  36. data/mohawk.gemspec +2 -2
  37. data/spec/lib/mohawk/adapters/uia/control_spec.rb +46 -0
  38. data/spec/lib/mohawk/adapters/uia/table_row_spec.rb +36 -0
  39. data/spec/lib/mohawk/waiter_spec.rb +39 -0
  40. data/spec/lib/mohawk_spec.rb +115 -92
  41. data/spec/lib/navigation_spec.rb +14 -20
  42. data/spec/spec_helper.rb +1 -1
  43. metadata +49 -67
  44. data/lib/mohawk/accessors/button.rb +0 -20
  45. data/lib/mohawk/accessors/checkbox.rb +0 -24
  46. data/lib/mohawk/accessors/combo.rb +0 -37
  47. data/lib/mohawk/accessors/control.rb +0 -24
  48. data/lib/mohawk/accessors/label.rb +0 -15
  49. data/lib/mohawk/accessors/link.rb +0 -9
  50. data/lib/mohawk/accessors/menu_item.rb +0 -21
  51. data/lib/mohawk/accessors/radio.rb +0 -19
  52. data/lib/mohawk/accessors/spinner.rb +0 -27
  53. data/lib/mohawk/accessors/table.rb +0 -69
  54. data/lib/mohawk/accessors/table_row.rb +0 -62
  55. data/lib/mohawk/accessors/tabs.rb +0 -30
  56. data/lib/mohawk/accessors/text.rb +0 -29
  57. data/lib/mohawk/accessors/tree_view.rb +0 -32
  58. data/spec/lib/mohawk/accessors/button_spec.rb +0 -45
  59. data/spec/lib/mohawk/accessors/checkbox_spec.rb +0 -46
  60. data/spec/lib/mohawk/accessors/combo_spec.rb +0 -119
  61. data/spec/lib/mohawk/accessors/control_spec.rb +0 -47
  62. data/spec/lib/mohawk/accessors/label_spec.rb +0 -29
  63. data/spec/lib/mohawk/accessors/link_spec.rb +0 -34
  64. data/spec/lib/mohawk/accessors/menu_spec.rb +0 -32
  65. data/spec/lib/mohawk/accessors/radio_spec.rb +0 -35
  66. data/spec/lib/mohawk/accessors/spinner_spec.rb +0 -43
  67. data/spec/lib/mohawk/accessors/table_row_spec.rb +0 -28
  68. data/spec/lib/mohawk/accessors/table_spec.rb +0 -262
  69. data/spec/lib/mohawk/accessors/tabs_spec.rb +0 -58
  70. data/spec/lib/mohawk/accessors/text_spec.rb +0 -51
  71. data/spec/lib/mohawk/accessors/tree_view_spec.rb +0 -98
  72. data/spec/lib/mohawk/adapters/uia_adapter_spec.rb +0 -55
  73. data/spec/table_stubber.rb +0 -55
@@ -9,130 +9,153 @@ end
9
9
 
10
10
  describe Mohawk do
11
11
  let(:screen) { TestScreen.new }
12
- let(:window) { double('RAutomation Window') }
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
- it "uses the uia adapter by default" do
20
- RAutomation::Window.should_receive(:new).with(:title => "Some Window Title", :adapter => :ms_uia).and_return(window)
21
- TestScreen.new
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
- it "can accept additional locator information" do
25
- RAutomation::Window.should_receive(:new).with(:title => "Some Window Title", :extra => 'test', :adapter => :ms_uia).and_return(window)
26
- TestScreen.new :extra => 'test'
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('ChildProcess::Process') }
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, :pid].each &process.method(:stub)
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
- it 'requires a path' do
44
- Mohawk.app_path = nil
45
- lambda { Mohawk.start }.should raise_error(Mohawk::InvalidApplicationPath, 'You must set the Mohawk.app_path to start an application')
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
- it 'waits on the application' do
54
- process.should_receive(:pid).and_return(123)
55
- RAutomation::Window.should_receive(:new).with(:pid => 123).and_return(window)
56
- window.should_receive(:present?).and_return(false, false, true)
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
- Mohawk.start
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
- it 'can stop an application' do
62
- process.should_receive(:stop)
63
- Mohawk.start
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
- Mohawk.stop
66
- end
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
- Mohawk.stop
78
- end
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
- it 'has a clean slate if the application has been stopped' do
81
- Mohawk.start
82
- Mohawk.stop
83
- Mohawk.app.should be_nil
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 "using the UI Automation adapter" do
88
- before(:each) do
89
- RAutomation::Window.stub(:new).and_return(window)
90
- RAutomation::WaitHelper.stub(:sleep)
91
- end
92
-
93
- it "knows if a window exists" do
94
- window.should_receive(:exist?)
95
- screen.exist?
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
+
@@ -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
- it "can create screen objects" do
17
- on(NavigationTestScreen).should eq screen
18
- end
13
+ Given(:screen) { double('Mohawk Screen').as_null_object }
14
+
15
+ Then { on(NavigationTestScreen) == screen }
19
16
 
20
- it "should give the screen to a block if desired" do
21
- screen.should_receive(:expected_method)
22
- on(NavigationTestScreen) do |screen|
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
- it "waits for the screen to be present before proceeding" do
28
- screen.should_receive(:wait_until_present)
29
- screen.should_receive(:was_used)
30
- on(NavigationTestScreen) do |screen|
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
- it "can pass additional locator information to the screen" do
36
- NavigationTestScreen.should_receive(:new).with(:extra => 'info').and_return(screen)
37
- on(NavigationTestScreen, :extra => 'info')
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
@@ -3,9 +3,9 @@ $LOAD_PATH.unshift(File.join(File.dirname(__FILE__), '..', 'lib'))
3
3
 
4
4
  require 'rspec'
5
5
  require 'rspec/mocks'
6
+ require 'rspec-given'
6
7
  require 'ffi_stub'
7
8
  require 'mohawk'
8
9
  require 'coveralls'
9
- require_rel 'table_stubber'
10
10
 
11
11
  Coveralls.wear!
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.1.4
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-02-05 00:00:00.000000000 Z
12
+ date: 2014-05-09 00:00:00.000000000 Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
- name: rautomation
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: '0.14'
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: '0.14'
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: ffi
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: 1.9.0
86
- type: :runtime
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: 1.9.0
93
+ version: '0'
94
94
  - !ruby/object:Gem::Dependency
95
- name: cucumber
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: '0'
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: '0'
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: 2.12.0
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: 2.12.0
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/accessors/button.rb
326
- - lib/mohawk/accessors/checkbox.rb
327
- - lib/mohawk/accessors/combo.rb
328
- - lib/mohawk/accessors/control.rb
329
- - lib/mohawk/accessors/label.rb
330
- - lib/mohawk/accessors/link.rb
331
- - lib/mohawk/accessors/menu_item.rb
332
- - lib/mohawk/accessors/radio.rb
333
- - lib/mohawk/accessors/spinner.rb
334
- - lib/mohawk/accessors/table.rb
335
- - lib/mohawk/accessors/table_row.rb
336
- - lib/mohawk/accessors/tabs.rb
337
- - lib/mohawk/accessors/text.rb
338
- - lib/mohawk/accessors/tree_view.rb
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/accessors/button_spec.rb
346
- - spec/lib/mohawk/accessors/checkbox_spec.rb
347
- - spec/lib/mohawk/accessors/combo_spec.rb
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.24
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/accessors/button_spec.rb
457
- - spec/lib/mohawk/accessors/checkbox_spec.rb
458
- - spec/lib/mohawk/accessors/combo_spec.rb
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
@@ -1,15 +0,0 @@
1
- module Mohawk
2
- module Accessors
3
- class Label
4
- attr_reader :view
5
-
6
- def initialize(adapter, locator)
7
- @view = adapter.window.label(locator)
8
- end
9
-
10
- def value
11
- @view.value
12
- end
13
- end
14
- end
15
- end
@@ -1,9 +0,0 @@
1
- module Mohawk
2
- module Accessors
3
- class Link < Label
4
- def click
5
- @view.click
6
- end
7
- end
8
- end
9
- end