Class: TestCentricity::List

Inherits:
UIElement show all
Defined in:
lib/testcentricity_web/elements/list.rb

Instance Attribute Summary collapse

Attributes inherited from UIElement

#alt_locator, #context, #locator, #parent, #type

Instance Method Summary collapse

Methods inherited from UIElement

#clear_alt_locator, #click, #click_at, #disabled?, #double_click, #drag_and_drop, #drag_by, #enabled?, #exists?, #get_attribute, #get_locator, #get_native_attribute, #get_object_type, #get_siebel_object_type, #get_value, #hidden?, #hover, #invoke_siebel_dialog, #right_click, #send_keys, #set, #set_alt_locator, #verify_value, #visible?, #wait_until_exists, #wait_until_gone, #wait_until_value_changes, #wait_until_value_is, #wait_until_visible

Constructor Details

#initialize(parent, locator, context) ⇒ List

Returns a new instance of List.



5
6
7
8
9
10
11
12
13
# File 'lib/testcentricity_web/elements/list.rb', line 5

def initialize(parent, locator, context)
  @parent  = parent
  @locator = locator
  @context = context
  @type    = :list
  @alt_locator = nil
  list_spec = { :list_item => 'li' }
  define_list_elements(list_spec)
end

Instance Attribute Details

#list_itemObject

Returns the value of attribute list_item.



3
4
5
# File 'lib/testcentricity_web/elements/list.rb', line 3

def list_item
  @list_item
end

Instance Method Details

#define_list_elements(element_spec) ⇒ Object



15
16
17
18
19
20
21
22
# File 'lib/testcentricity_web/elements/list.rb', line 15

def define_list_elements(element_spec)
  element_spec.each do | element, value |
    case element
      when :list_item
        @list_item = value
    end
  end
end

#get_item_countObject



31
32
33
34
35
# File 'lib/testcentricity_web/elements/list.rb', line 31

def get_item_count
  obj, _ = find_element
  object_not_found_exception(obj, nil)
  obj.all(@list_item).count
end

#get_list_items(element_spec = nil) ⇒ Object



24
25
26
27
28
29
# File 'lib/testcentricity_web/elements/list.rb', line 24

def get_list_items(element_spec = nil)
  define_list_elements(element_spec) unless element_spec.nil?
  obj, _ = find_element
  object_not_found_exception(obj, nil)
  obj.all(@list_item).collect(&:text)
end

#verify_list_items(expected, enqueue = false) ⇒ Object



37
38
39
40
41
42
# File 'lib/testcentricity_web/elements/list.rb', line 37

def verify_list_items(expected, enqueue = false)
  actual = get_list_items
  enqueue ?
      ExceptionQueue.enqueue_assert_equal(expected, actual, "Expected list  #{@locator}") :
      assert_equal(expected, actual, "Expected list #{@locator} to be #{expected} but found #{actual}")
end