Class: TestCentricity::PageSection
- Inherits:
-
BasePageSectionObject
- Object
- BasePageSectionObject
- TestCentricity::PageSection
- Defined in:
- lib/testcentricity_web/web_core/page_section.rb
Constant Summary
Constants inherited from BasePageSectionObject
BasePageSectionObject::CSS_SELECTORS, BasePageSectionObject::XPATH_SELECTORS
Instance Attribute Summary collapse
-
#context ⇒ Object
readonly
Returns the value of attribute context.
-
#list_index ⇒ Object
Returns the value of attribute list_index.
-
#locator ⇒ Object
Returns the value of attribute locator.
-
#name ⇒ Object
readonly
Returns the value of attribute name.
-
#parent ⇒ Object
Returns the value of attribute parent.
-
#parent_list ⇒ Object
Returns the value of attribute parent_list.
Attributes inherited from BasePageSectionObject
Class Method Summary collapse
-
.audio(element_name, locator) ⇒ Object
Declare and instantiate a single HTML5 audio UI Element for this page section.
- .audios(element_hash) ⇒ Object
-
.button(element_name, locator) ⇒ Object
Declare and instantiate a single button UI Element for this page section.
-
.buttons(element_hash) ⇒ Object
Declare and instantiate a collection of buttons for this page section.
-
.checkbox(element_name, locator) ⇒ Object
Declare and instantiate a single checkbox UI Element for this page section.
-
.checkboxes(element_hash) ⇒ Object
Declare and instantiate a collection of checkboxes for this page section.
-
.element(element_name, locator) ⇒ Object
Declare and instantiate a single generic UI Element for this page section.
-
.elements(element_hash) ⇒ Object
Declare and instantiate a collection of generic UI Elements for this page section.
-
.filefield(element_name, locator) ⇒ Object
Declare and instantiate a single File Field UI Element for this page section.
- .filefields(element_hash) ⇒ Object
-
.image(element_name, locator) ⇒ Object
Declare and instantiate a single image UI Element for this page section.
- .images(element_hash) ⇒ Object
-
.label(element_name, locator) ⇒ Object
Declare and instantiate a single label UI Element for this page section.
- .labels(element_hash) ⇒ Object
-
.link(element_name, locator) ⇒ Object
Declare and instantiate a single link UI Element for this page section.
- .links(element_hash) ⇒ Object
-
.list(element_name, locator) ⇒ Object
Declare and instantiate a single list UI Element for this page section.
- .lists(element_hash) ⇒ Object
-
.radio(element_name, locator) ⇒ Object
Declare and instantiate a single radio button UI Element for this page section.
-
.radios(element_hash) ⇒ Object
Declare and instantiate a collection of radio buttons for this page section.
-
.range(element_name, locator) ⇒ Object
Declare and instantiate a single range input UI Element for this page section.
-
.ranges(element_hash) ⇒ Object
Declare and instantiate a collection of range inputs for this page section.
-
.section(section_name, obj, locator = nil) ⇒ Object
Instantiate a single PageSection object within this PageSection object.
- .sections(section_hash) ⇒ Object
-
.selectlist(element_name, locator) ⇒ Object
Declare and instantiate a single select list UI Element for this page section.
- .selectlists(element_hash) ⇒ Object
-
.table(element_name, locator) ⇒ Object
Declare and instantiate a single table UI Element for this page section.
- .tables(element_hash) ⇒ Object
-
.textfield(element_name, locator) ⇒ Object
Declare and instantiate a single text field UI Element for this page section.
-
.textfields(element_hash) ⇒ Object
Declare and instantiate a collection of text fields for this page section.
-
.video(element_name, locator) ⇒ Object
Declare and instantiate a single video UI Element for this page section.
- .videos(element_hash) ⇒ Object
Instance Method Summary collapse
-
#click ⇒ Object
Click on a Section object.
-
#click_at(x, y) ⇒ Object
Click at a specific location within a Section object.
-
#disabled? ⇒ Boolean
Is Section object disabled (not enabled)?.
-
#displayed? ⇒ Boolean
Is section object displayed in browser window?.
-
#double_click ⇒ Object
Double-click on a Section object.
-
#enabled? ⇒ Boolean
Is Section object enabled?.
-
#exists? ⇒ Boolean
Does Section object exists?.
- #get_all_items_count ⇒ Object
- #get_all_list_items ⇒ Object
- #get_attribute(attrib) ⇒ Object
- #get_item_count ⇒ Object
- #get_list_items ⇒ Object
- #get_locator ⇒ Object
- #get_locator_type ⇒ Object
- #get_name ⇒ Object
- #get_native_attribute(attrib) ⇒ Object
- #get_object_type ⇒ Object
- #get_parent_list ⇒ Object
-
#hidden? ⇒ Boolean
Is Section object hidden (not visible)?.
-
#hover ⇒ Object
Hover the cursor over a Section object.
-
#initialize(name, parent, locator, context) ⇒ PageSection
constructor
A new instance of PageSection.
-
#right_click ⇒ Object
Right-click on a Section object.
-
#send_keys(*keys) ⇒ Object
Send keystrokes to a Section object.
- #set_list_index(list, index = 1) ⇒ Object
- #set_parent(parent) ⇒ Object
- #verify_list_items(expected, enqueue = false) ⇒ Object
-
#visible? ⇒ Boolean
Is Section object visible?.
-
#wait_until_exists(seconds = nil, post_exception = true) ⇒ Object
Wait until the Section object exists, or until the specified wait time has expired.
-
#wait_until_gone(seconds = nil, post_exception = true) ⇒ Object
Wait until the Section object no longer exists, or until the specified wait time has expired.
-
#wait_until_hidden(seconds = nil, post_exception = true) ⇒ Object
Wait until the Section object is hidden, or until the specified wait time has expired.
-
#wait_until_visible(seconds = nil, post_exception = true) ⇒ Object
Wait until the Section object is visible, or until the specified wait time has expired.
Methods inherited from BasePageSectionObject
#populate_data_fields, #set_locator_type, trait, #verify_focus_order, #verify_ui_states
Constructor Details
#initialize(name, parent, locator, context) ⇒ PageSection
Returns a new instance of PageSection.
9 10 11 12 13 14 15 16 17 |
# File 'lib/testcentricity_web/web_core/page_section.rb', line 9 def initialize(name, parent, locator, context) @name = name @parent = parent @locator = locator @context = context @parent_list = nil @list_index = nil set_locator_type end |
Instance Attribute Details
#context ⇒ Object (readonly)
Returns the value of attribute context.
3 4 5 |
# File 'lib/testcentricity_web/web_core/page_section.rb', line 3 def context @context end |
#list_index ⇒ Object
Returns the value of attribute list_index.
7 8 9 |
# File 'lib/testcentricity_web/web_core/page_section.rb', line 7 def list_index @list_index end |
#locator ⇒ Object
Returns the value of attribute locator.
4 5 6 |
# File 'lib/testcentricity_web/web_core/page_section.rb', line 4 def locator @locator end |
#name ⇒ Object (readonly)
Returns the value of attribute name.
3 4 5 |
# File 'lib/testcentricity_web/web_core/page_section.rb', line 3 def name @name end |
#parent ⇒ Object
Returns the value of attribute parent.
5 6 7 |
# File 'lib/testcentricity_web/web_core/page_section.rb', line 5 def parent @parent end |
#parent_list ⇒ Object
Returns the value of attribute parent_list.
6 7 8 |
# File 'lib/testcentricity_web/web_core/page_section.rb', line 6 def parent_list @parent_list end |
Class Method Details
.audio(element_name, locator) ⇒ Object
Declare and instantiate a single HTML5 audio UI Element for this page section.
370 371 372 |
# File 'lib/testcentricity_web/web_core/page_section.rb', line 370 def self.audio(element_name, locator) define_element(element_name, TestCentricity::Audio, locator) end |
.audios(element_hash) ⇒ Object
374 375 376 |
# File 'lib/testcentricity_web/web_core/page_section.rb', line 374 def self.audios(element_hash) element_hash.each(&method(:audio)) end |
.button(element_name, locator) ⇒ Object
Declare and instantiate a single button UI Element for this page section.
139 140 141 |
# File 'lib/testcentricity_web/web_core/page_section.rb', line 139 def self.(element_name, locator) define_element(element_name, TestCentricity::Button, locator) end |
.buttons(element_hash) ⇒ Object
Declare and instantiate a collection of buttons for this page section.
151 152 153 |
# File 'lib/testcentricity_web/web_core/page_section.rb', line 151 def self.(element_hash) element_hash.each(&method(:button)) end |
.checkbox(element_name, locator) ⇒ Object
Declare and instantiate a single checkbox UI Element for this page section.
212 213 214 |
# File 'lib/testcentricity_web/web_core/page_section.rb', line 212 def self.checkbox(element_name, locator) define_element(element_name, TestCentricity::CheckBox, locator) end |
.checkboxes(element_hash) ⇒ Object
Declare and instantiate a collection of checkboxes for this page section.
225 226 227 |
# File 'lib/testcentricity_web/web_core/page_section.rb', line 225 def self.checkboxes(element_hash) element_hash.each(&method(:checkbox)) end |
.element(element_name, locator) ⇒ Object
Declare and instantiate a single generic UI Element for this page section.
115 116 117 |
# File 'lib/testcentricity_web/web_core/page_section.rb', line 115 def self.element(element_name, locator) define_element(element_name, TestCentricity::UIElement, locator) end |
.elements(element_hash) ⇒ Object
Declare and instantiate a collection of generic UI Elements for this page section.
127 128 129 |
# File 'lib/testcentricity_web/web_core/page_section.rb', line 127 def self.elements(element_hash) element_hash.each(&method(:element)) end |
.filefield(element_name, locator) ⇒ Object
Declare and instantiate a single File Field UI Element for this page section.
385 386 387 |
# File 'lib/testcentricity_web/web_core/page_section.rb', line 385 def self.filefield(element_name, locator) define_element(element_name, TestCentricity::FileField, locator) end |
.filefields(element_hash) ⇒ Object
389 390 391 |
# File 'lib/testcentricity_web/web_core/page_section.rb', line 389 def self.filefields(element_hash) element_hash.each(&method(:filefield)) end |
.image(element_name, locator) ⇒ Object
Declare and instantiate a single image UI Element for this page section.
340 341 342 |
# File 'lib/testcentricity_web/web_core/page_section.rb', line 340 def self.image(element_name, locator) define_element(element_name, TestCentricity::Image, locator) end |
.images(element_hash) ⇒ Object
344 345 346 |
# File 'lib/testcentricity_web/web_core/page_section.rb', line 344 def self.images(element_hash) element_hash.each(&method(:image)) end |
.label(element_name, locator) ⇒ Object
Declare and instantiate a single label UI Element for this page section.
262 263 264 |
# File 'lib/testcentricity_web/web_core/page_section.rb', line 262 def self.label(element_name, locator) define_element(element_name, TestCentricity::Label, locator) end |
.labels(element_hash) ⇒ Object
266 267 268 |
# File 'lib/testcentricity_web/web_core/page_section.rb', line 266 def self.labels(element_hash) element_hash.each(&method(:label)) end |
.link(element_name, locator) ⇒ Object
Declare and instantiate a single link UI Element for this page section.
278 279 280 |
# File 'lib/testcentricity_web/web_core/page_section.rb', line 278 def self.link(element_name, locator) define_element(element_name, TestCentricity::Link, locator) end |
.links(element_hash) ⇒ Object
282 283 284 |
# File 'lib/testcentricity_web/web_core/page_section.rb', line 282 def self.links(element_hash) element_hash.each(&method(:link)) end |
.list(element_name, locator) ⇒ Object
Declare and instantiate a single list UI Element for this page section.
324 325 326 |
# File 'lib/testcentricity_web/web_core/page_section.rb', line 324 def self.list(element_name, locator) define_element(element_name, TestCentricity::List, locator) end |
.lists(element_hash) ⇒ Object
328 329 330 |
# File 'lib/testcentricity_web/web_core/page_section.rb', line 328 def self.lists(element_hash) element_hash.each(&method(:list)) end |
.radio(element_name, locator) ⇒ Object
Declare and instantiate a single radio button UI Element for this page section.
237 238 239 |
# File 'lib/testcentricity_web/web_core/page_section.rb', line 237 def self.radio(element_name, locator) define_element(element_name, TestCentricity::Radio, locator) end |
.radios(element_hash) ⇒ Object
Declare and instantiate a collection of radio buttons for this page section.
250 251 252 |
# File 'lib/testcentricity_web/web_core/page_section.rb', line 250 def self.radios(element_hash) element_hash.each(&method(:radio)) end |
.range(element_name, locator) ⇒ Object
Declare and instantiate a single range input UI Element for this page section.
189 190 191 |
# File 'lib/testcentricity_web/web_core/page_section.rb', line 189 def self.range(element_name, locator) define_element(element_name, TestCentricity::Range, locator) end |
.ranges(element_hash) ⇒ Object
Declare and instantiate a collection of range inputs for this page section.
200 201 202 |
# File 'lib/testcentricity_web/web_core/page_section.rb', line 200 def self.ranges(element_hash) element_hash.each(&method(:range)) end |
.section(section_name, obj, locator = nil) ⇒ Object
Instantiate a single PageSection object within this PageSection object.
400 401 402 403 404 405 406 407 |
# File 'lib/testcentricity_web/web_core/page_section.rb', line 400 def self.section(section_name, obj, locator = nil) define_method(section_name) do ivar_name = "@#{section_name}" ivar = instance_variable_get(ivar_name) return ivar if ivar instance_variable_set(ivar_name, obj.new(section_name, self, "#{locator}", :section)) end end |
.sections(section_hash) ⇒ Object
409 410 411 412 413 |
# File 'lib/testcentricity_web/web_core/page_section.rb', line 409 def self.sections(section_hash) section_hash.each do |section_name, class_name| section(section_name, class_name) end end |
.selectlist(element_name, locator) ⇒ Object
Declare and instantiate a single select list UI Element for this page section.
309 310 311 |
# File 'lib/testcentricity_web/web_core/page_section.rb', line 309 def self.selectlist(element_name, locator) define_element(element_name, TestCentricity::SelectList, locator) end |
.selectlists(element_hash) ⇒ Object
313 314 315 |
# File 'lib/testcentricity_web/web_core/page_section.rb', line 313 def self.selectlists(element_hash) element_hash.each(&method(:selectlist)) end |
.table(element_name, locator) ⇒ Object
Declare and instantiate a single table UI Element for this page section.
293 294 295 |
# File 'lib/testcentricity_web/web_core/page_section.rb', line 293 def self.table(element_name, locator) define_element(element_name, TestCentricity::Table, locator) end |
.tables(element_hash) ⇒ Object
297 298 299 |
# File 'lib/testcentricity_web/web_core/page_section.rb', line 297 def self.tables(element_hash) element_hash.each(&method(:table)) end |
.textfield(element_name, locator) ⇒ Object
Declare and instantiate a single text field UI Element for this page section.
163 164 165 |
# File 'lib/testcentricity_web/web_core/page_section.rb', line 163 def self.textfield(element_name, locator) define_element(element_name, TestCentricity::TextField, locator) end |
.textfields(element_hash) ⇒ Object
Declare and instantiate a collection of text fields for this page section.
177 178 179 |
# File 'lib/testcentricity_web/web_core/page_section.rb', line 177 def self.textfields(element_hash) element_hash.each(&method(:textfield)) end |
.video(element_name, locator) ⇒ Object
Declare and instantiate a single video UI Element for this page section.
355 356 357 |
# File 'lib/testcentricity_web/web_core/page_section.rb', line 355 def self.video(element_name, locator) define_element(element_name, TestCentricity::Video, locator) end |
.videos(element_hash) ⇒ Object
359 360 361 |
# File 'lib/testcentricity_web/web_core/page_section.rb', line 359 def self.videos(element_hash) element_hash.each(&method(:video)) end |
Instance Method Details
#click ⇒ Object
Click on a Section object
566 567 568 569 570 571 572 573 574 |
# File 'lib/testcentricity_web/web_core/page_section.rb', line 566 def click section, = find_section section_not_found_exception(section) begin section.click rescue section.click_at(10, 10) unless Capybara.current_driver == :poltergeist end end |
#click_at(x, y) ⇒ Object
Click at a specific location within a Section object
605 606 607 608 609 |
# File 'lib/testcentricity_web/web_core/page_section.rb', line 605 def click_at(x, y) section, = find_section section_not_found_exception(section) section.click_at(x, y) end |
#disabled? ⇒ Boolean
Is Section object disabled (not enabled)?
442 443 444 445 446 |
# File 'lib/testcentricity_web/web_core/page_section.rb', line 442 def disabled? section, = find_section section_not_found_exception(section) section.disabled? end |
#displayed? ⇒ Boolean
Is section object displayed in browser window?
479 480 481 482 483 |
# File 'lib/testcentricity_web/web_core/page_section.rb', line 479 def displayed? section, = find_section section_not_found_exception(section) section.displayed? end |
#double_click ⇒ Object
Double-click on a Section object
581 582 583 584 585 |
# File 'lib/testcentricity_web/web_core/page_section.rb', line 581 def double_click section, = find_section section_not_found_exception(section) page.driver.browser.action.double_click(section.native).perform end |
#enabled? ⇒ Boolean
Is Section object enabled?
432 433 434 |
# File 'lib/testcentricity_web/web_core/page_section.rb', line 432 def enabled? !disabled? end |
#exists? ⇒ Boolean
Does Section object exists?
421 422 423 424 |
# File 'lib/testcentricity_web/web_core/page_section.rb', line 421 def exists? section, = find_section section != nil end |
#get_all_items_count ⇒ Object
74 75 76 77 |
# File 'lib/testcentricity_web/web_core/page_section.rb', line 74 def get_all_items_count raise 'No parent list defined' if @parent_list.nil? @parent_list.get_all_items_count end |
#get_all_list_items ⇒ Object
79 80 81 82 83 84 85 86 |
# File 'lib/testcentricity_web/web_core/page_section.rb', line 79 def get_all_list_items items = [] (1..get_all_items_count).each do |item| set_list_index(nil, item) items.push(get_value(:all)) end items end |
#get_attribute(attrib) ⇒ Object
634 635 636 637 638 |
# File 'lib/testcentricity_web/web_core/page_section.rb', line 634 def get_attribute(attrib) section, = find_section section_not_found_exception(section) section[attrib] end |
#get_item_count ⇒ Object
60 61 62 63 |
# File 'lib/testcentricity_web/web_core/page_section.rb', line 60 def get_item_count raise 'No parent list defined' if @parent_list.nil? @parent_list.get_item_count end |
#get_list_items ⇒ Object
65 66 67 68 69 70 71 72 |
# File 'lib/testcentricity_web/web_core/page_section.rb', line 65 def get_list_items items = [] (1..get_item_count).each do |item| set_list_index(nil, item) items.push(get_value) end items end |
#get_locator ⇒ Object
19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 |
# File 'lib/testcentricity_web/web_core/page_section.rb', line 19 def get_locator locator = if @locator.empty? && defined?(section_locator) section_locator else @locator end unless @parent_list.nil? locator = if @locator_type == @parent_list.get_locator_type "#{@parent_list.get_locator} #{locator}" else "#{@parent_list.get_locator}|#{locator}" end unless @list_index.nil? locator = if @locator_type == :xpath "#{locator}[#{@list_index}]" else "#{locator}:nth-of-type(#{@list_index})" end end end if @context == :section && !@parent.nil? && !@parent.get_locator.nil? "#{@parent.get_locator}|#{locator}" else locator end end |
#get_locator_type ⇒ Object
47 48 49 |
# File 'lib/testcentricity_web/web_core/page_section.rb', line 47 def get_locator_type @locator_type end |
#get_name ⇒ Object
99 100 101 |
# File 'lib/testcentricity_web/web_core/page_section.rb', line 99 def get_name @name end |
#get_native_attribute(attrib) ⇒ Object
640 641 642 643 644 |
# File 'lib/testcentricity_web/web_core/page_section.rb', line 640 def get_native_attribute(attrib) section, = find_section section_not_found_exception(section) section.native.attribute(attrib) end |
#get_object_type ⇒ Object
95 96 97 |
# File 'lib/testcentricity_web/web_core/page_section.rb', line 95 def get_object_type :section end |
#get_parent_list ⇒ Object
51 52 53 |
# File 'lib/testcentricity_web/web_core/page_section.rb', line 51 def get_parent_list @parent_list end |
#hidden? ⇒ Boolean
Is Section object hidden (not visible)?
469 470 471 |
# File 'lib/testcentricity_web/web_core/page_section.rb', line 469 def hidden? !visible? end |
#hover ⇒ Object
Hover the cursor over a Section object
628 629 630 631 632 |
# File 'lib/testcentricity_web/web_core/page_section.rb', line 628 def hover section, = find_section section_not_found_exception(section) section.hover end |
#right_click ⇒ Object
Right-click on a Section object
592 593 594 595 596 |
# File 'lib/testcentricity_web/web_core/page_section.rb', line 592 def right_click section, = find_section section_not_found_exception(section) page.driver.browser.action.context_click(section.native).perform end |
#send_keys(*keys) ⇒ Object
Send keystrokes to a Section object
617 618 619 620 621 |
# File 'lib/testcentricity_web/web_core/page_section.rb', line 617 def send_keys(*keys) section, = find_section section_not_found_exception(section) section.send_keys(*keys) end |
#set_list_index(list, index = 1) ⇒ Object
55 56 57 58 |
# File 'lib/testcentricity_web/web_core/page_section.rb', line 55 def set_list_index(list, index = 1) @parent_list = list unless list.nil? @list_index = index end |
#set_parent(parent) ⇒ Object
103 104 105 |
# File 'lib/testcentricity_web/web_core/page_section.rb', line 103 def set_parent(parent) @parent = parent end |
#verify_list_items(expected, enqueue = false) ⇒ Object
88 89 90 91 92 93 |
# File 'lib/testcentricity_web/web_core/page_section.rb', line 88 def verify_list_items(expected, enqueue = false) actual = get_list_items enqueue ? ExceptionQueue.enqueue_assert_equal(expected, actual, "Expected list '#{get_name}' (#{get_locator})") : assert_equal(expected, actual, "Expected list object '#{get_name}' (#{get_locator}) to be #{expected} but found #{actual}") end |
#visible? ⇒ Boolean
Is Section object visible?
454 455 456 457 458 459 460 461 |
# File 'lib/testcentricity_web/web_core/page_section.rb', line 454 def visible? section, = find_section exists = section visible = false visible = section.visible? if exists # the section is visible if it exists and it is not invisible exists && visible ? true : false end |
#wait_until_exists(seconds = nil, post_exception = true) ⇒ Object
Wait until the Section object exists, or until the specified wait time has expired. If the wait time is nil, then the wait time will be Capybara.default_max_wait_time.
492 493 494 495 496 497 498 499 500 501 502 |
# File 'lib/testcentricity_web/web_core/page_section.rb', line 492 def wait_until_exists(seconds = nil, post_exception = true) timeout = seconds.nil? ? Capybara.default_max_wait_time : seconds wait = Selenium::WebDriver::Wait.new(timeout: timeout) wait.until { exists? } rescue if post_exception raise "Could not find Section object '#{get_name}' (#{get_locator}) after #{timeout} seconds" unless exists? else exists? end end |
#wait_until_gone(seconds = nil, post_exception = true) ⇒ Object
Wait until the Section object no longer exists, or until the specified wait time has expired. If the wait time is nil, then the wait time will be Capybara.default_max_wait_time.
511 512 513 514 515 516 517 518 519 520 521 |
# File 'lib/testcentricity_web/web_core/page_section.rb', line 511 def wait_until_gone(seconds = nil, post_exception = true) timeout = seconds.nil? ? Capybara.default_max_wait_time : seconds wait = Selenium::WebDriver::Wait.new(timeout: timeout) wait.until { !exists? } rescue if post_exception raise "Section object '#{get_name}' (#{get_locator}) remained visible after #{timeout} seconds" if exists? else exists? end end |
#wait_until_hidden(seconds = nil, post_exception = true) ⇒ Object
Wait until the Section object is hidden, or until the specified wait time has expired. If the wait time is nil, then the wait time will be Capybara.default_max_wait_time.
549 550 551 552 553 554 555 556 557 558 559 |
# File 'lib/testcentricity_web/web_core/page_section.rb', line 549 def wait_until_hidden(seconds = nil, post_exception = true) timeout = seconds.nil? ? Capybara.default_max_wait_time : seconds wait = Selenium::WebDriver::Wait.new(timeout: timeout) wait.until { hidden? } rescue if post_exception raise "Section object '#{get_name}' (#{get_locator}) remained visible after #{timeout} seconds" if visible? else visible? end end |
#wait_until_visible(seconds = nil, post_exception = true) ⇒ Object
Wait until the Section object is visible, or until the specified wait time has expired. If the wait time is nil, then the wait time will be Capybara.default_max_wait_time.
530 531 532 533 534 535 536 537 538 539 540 |
# File 'lib/testcentricity_web/web_core/page_section.rb', line 530 def wait_until_visible(seconds = nil, post_exception = true) timeout = seconds.nil? ? Capybara.default_max_wait_time : seconds wait = Selenium::WebDriver::Wait.new(timeout: timeout) wait.until { visible? } rescue if post_exception raise "Could not find Section object '#{get_name}' (#{get_locator}) after #{timeout} seconds" unless visible? else visible? end end |