Module: Mohawk::Accessors
- Defined in:
- lib/mohawk/accessors.rb
Instance Method Summary collapse
-
#button(name, locator) ⇒ Object
Generates methods to click on a button as well as get the value of the button text.
-
#checkbox(name, locator) ⇒ Object
Generates methods to get/set the value of a checkbox as well as to get the text value of the control.
- #combo_box(name, locator) ⇒ Object (also: #combobox, #dropdown, #drop_down)
- #control(name, locator) ⇒ Object
-
#label(name, locator) ⇒ Object
Generates methods to get the value of a label control.
-
#link(name, locator) ⇒ Object
Generates methods to work with link controls.
-
#menu_item(name, locator) ⇒ Object
Generates methods to work with menu items.
-
#parent(locator) ⇒ Object
Defines a locator indicating a child container that is a descendant of the top-level window.
-
#radio(name, locator) ⇒ Object
Generates methods to set a radio button as well as see if one is selected.
- #required_controls(*controls) ⇒ Object
-
#select_list(name, locator) ⇒ Object
(also: #selectlist, #list_box)
Generates methods to get the value of a list box, set the selected item by both index and value as well as to see the available options.
-
#spinner(name, locator) ⇒ Object
Generates methods for working with spinner controls.
-
#table(name, locator) ⇒ Object
(also: #listview, #list_view)
Generates methods for working with table or list view controls.
-
#tabs(name, locator) ⇒ Object
Generates methods for working with tab controls.
-
#text(name, locator) ⇒ Object
Generates methods to enter text into a text field, get its value and clear the text field.
-
#tree_view(name, locator) ⇒ Object
(also: #treeview, #tree)
Generates methods for working with tree view controls.
-
#window(locator) ⇒ Object
Defines the locator indicating the top-level window that will be used to find controls in the page.
Instance Method Details
#button(name, locator) ⇒ Object
Generates methods to click on a button as well as get the value of the button text
87 88 89 90 91 92 93 94 95 96 97 |
# File 'lib/mohawk/accessors.rb', line 87 def (name, locator) define_method("#{name}") do |&block| adapter.(locator).click &block end define_method("#{name}_value") do adapter.(locator).value end define_method("#{name}_view") do adapter.(locator).view end end |
#checkbox(name, locator) ⇒ Object
Generates methods to get/set the value of a checkbox as well as to get the text value of the control
183 184 185 186 187 188 189 190 191 192 193 194 195 196 |
# File 'lib/mohawk/accessors.rb', line 183 def checkbox(name, locator) define_method("#{name}") do adapter.checkbox(locator).checked? end define_method("#{name}=") do |should_check| adapter.checkbox(locator).set_check should_check end define_method("#{name}_value") do adapter.checkbox(locator).value end define_method("#{name}_view") do adapter.checkbox(locator).view end end |
#combo_box(name, locator) ⇒ Object Also known as: combobox, dropdown, drop_down
115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 |
# File 'lib/mohawk/accessors.rb', line 115 def combo_box(name, locator) define_method("#{name}") do adapter.combo(locator).value end define_method("#{name}=") do |item| adapter.combo(locator).with(:combo_box).set item end alias_method "select_#{name}", "#{name}=" define_method("#{name}_options") do adapter.combo(locator). end define_method("#{name}_view") do adapter.combo(locator).view end end |
#control(name, locator) ⇒ Object
410 411 412 413 414 415 416 417 418 419 420 421 422 423 |
# File 'lib/mohawk/accessors.rb', line 410 def control(name, locator) define_method("#{name}_value") do adapter.value_control(locator).value end define_method("#{name}=") do |value| adapter.value_control(locator).set value end define_method("click_#{name}") do |&block| adapter.value_control(locator).click &block end define_method("#{name}_view") do adapter.value_control(locator).view end end |
#label(name, locator) ⇒ Object
Generates methods to get the value of a label control
231 232 233 234 235 236 237 238 |
# File 'lib/mohawk/accessors.rb', line 231 def label(name, locator) define_method("#{name}") do adapter.label(locator).value end define_method("#{name}_view") do adapter.label(locator).view end end |
#link(name, locator) ⇒ Object
Generates methods to work with link controls
250 251 252 253 254 255 256 257 258 259 260 |
# File 'lib/mohawk/accessors.rb', line 250 def link(name, locator) define_method("#{name}_text") do adapter.link(locator).value end define_method("click_#{name}") do adapter.link(locator).click end define_method("#{name}_view") do adapter.link(locator).view end end |
#menu_item(name, locator) ⇒ Object
Generates methods to work with menu items
271 272 273 274 275 276 |
# File 'lib/mohawk/accessors.rb', line 271 def (name, locator) define_method("click_#{name}") do adapter.(locator).click end alias_method "#{name}", "click_#{name}" end |
#parent(locator) ⇒ Object
Defines a locator indicating a child container that is a descendant of the top-level window
41 42 43 44 45 |
# File 'lib/mohawk/accessors.rb', line 41 def parent(locator) define_method(:parent_container) do locator end end |
#radio(name, locator) ⇒ Object
Generates methods to set a radio button as well as see if one is selected
209 210 211 212 213 214 215 216 217 218 219 |
# File 'lib/mohawk/accessors.rb', line 209 def radio(name, locator) define_method("#{name}") do adapter.radio(locator).set end define_method("#{name}?") do adapter.radio(locator).set? end define_method("#{name}_view") do adapter.radio(locator).view end end |
#required_controls(*controls) ⇒ Object
19 20 21 22 23 24 25 26 27 28 29 30 |
# File 'lib/mohawk/accessors.rb', line 19 def required_controls(*controls) define_method(:wait_until_present) do |context=nil| controls.each do |control| super() begin wait_until { send("#{control}_view").exist? } rescue Mohawk::Waiter::WaitTimeout raise "Control #{control} was not found on the #{self.class} screen" end end end end |
#select_list(name, locator) ⇒ Object Also known as: selectlist, list_box
Generates methods to get the value of a list box, set the selected item by both index and value as well as to see the available options
Aliases
-
selectlist
-
list_box
148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 |
# File 'lib/mohawk/accessors.rb', line 148 def select_list(name, locator) define_method("#{name}") do adapter.select_list(locator).value end define_method("clear_#{name}") do |item| adapter.select_list(locator).clear item end define_method("#{name}_selections") do adapter.select_list(locator).values end define_method("#{name}=") do |item| adapter.select_list(locator).set item end alias_method "select_#{name}", "#{name}=" define_method("#{name}_options") do adapter.select_list(locator). end define_method("#{name}_view") do adapter.select_list(locator).view end end |
#spinner(name, locator) ⇒ Object
Generates methods for working with spinner controls
spinner(:age, :id => “ageId”)
# will generate 'age', 'age=' methods to get the spinner value and
# set the spinner value.
366 367 368 369 370 371 372 373 374 375 376 377 378 379 380 381 382 |
# File 'lib/mohawk/accessors.rb', line 366 def spinner(name, locator) define_method(name) do adapter.spinner(locator).value end define_method("#{name}=") do |value| adapter.spinner(locator).value = value end define_method("increment_#{name}") do adapter.spinner(locator).increment end define_method("decrement_#{name}") do adapter.spinner(locator).decrement end define_method("#{name}_view") do adapter.spinner(locator).view end end |
#table(name, locator) ⇒ Object Also known as: listview, list_view
Generates methods for working with table or list view controls
Aliases
-
listview
-
list_view
293 294 295 296 297 298 299 300 301 302 303 304 305 306 307 308 309 310 311 312 313 314 315 316 317 318 |
# File 'lib/mohawk/accessors.rb', line 293 def table(name, locator) define_method("#{name}") do adapter.table(locator) end define_method("#{name}=") do |which_item| adapter.table(locator).select which_item end define_method("add_#{name}") do |hash_info| adapter.table(locator).add hash_info end define_method("select_#{name}") do |hash_info| adapter.table(locator).select hash_info end define_method("find_#{name}") do |hash_info| adapter.table(locator).find_row_with hash_info end define_method("clear_#{name}") do |hash_info| adapter.table(locator).clear hash_info end define_method("#{name}_headers") do adapter.table(locator).headers end define_method("#{name}_view") do adapter.table(locator).view end end |
#tabs(name, locator) ⇒ Object
Generates methods for working with tab controls
395 396 397 398 399 400 401 402 403 404 405 406 407 408 |
# File 'lib/mohawk/accessors.rb', line 395 def tabs(name, locator) define_method(name) do adapter.tab_control(locator).value end define_method("#{name}=") do |which| adapter.tab_control(locator).selected_tab = which end define_method("#{name}_items") do adapter.tab_control(locator).items end define_method("#{name}_view") do adapter.tab_control(locator) end end |
#text(name, locator) ⇒ Object
Generates methods to enter text into a text field, get its value and clear the text field
58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 |
# File 'lib/mohawk/accessors.rb', line 58 def text(name, locator) define_method("#{name}") do adapter.text(locator).value end define_method("#{name}=") do |text| adapter.text(locator).set text end define_method("clear_#{name}") do adapter.text(locator).clear end define_method("enter_#{name}") do |text| adapter.text(locator).enter text end define_method("#{name}_view") do adapter.text(locator).view end end |
#tree_view(name, locator) ⇒ Object Also known as: treeview, tree
Generates methods for working with tree view controls
Aliases
-
treeview
-
tree
335 336 337 338 339 340 341 342 343 344 345 346 347 348 349 350 351 352 353 354 |
# File 'lib/mohawk/accessors.rb', line 335 def tree_view(name, locator) define_method("#{name}") do adapter.tree_view(locator).value end define_method("#{name}=") do |which_item| adapter.tree_view(locator).select which_item end define_method("#{name}_items") do adapter.tree_view(locator).items end define_method("expand_#{name}_item") do |which_item| adapter.tree_view(locator). which_item end define_method("collapse_#{name}_item") do |which_item| adapter.tree_view(locator).collapse which_item end define_method("#{name}_view") do adapter.tree_view(locator).view end end |
#window(locator) ⇒ Object
Defines the locator indicating the top-level window that will be used to find controls in the page
13 14 15 16 17 |
# File 'lib/mohawk/accessors.rb', line 13 def window(locator) define_method(:which_window) do locator end end |