Module: RWebSpec::RSpecHelper
- Includes:
- Assert, Driver, Utils
- Defined in:
- lib/rwebspec-mechanize/rspec_helper.rb
Instance Method Summary collapse
-
#be_odd_number ⇒ Object
RSpec Matchers.
- #button_by_id(button_id) ⇒ Object
- #buttons_by_caption(text) ⇒ Object (also: #buttons_by_text)
-
#debugging? ⇒ Boolean
When running.
-
#element_source(elem_id) ⇒ Object
TODO: is it working?.
- #element_text(elem_id) ⇒ Object (also: #element_text_by_id)
- #link_by_id(link_id) ⇒ Object
-
#links_by_text(link_text, options = {}) ⇒ Object
(also: #links_with_text)
default options: exact => true.
- #save_content_to_file(content, file_name = nil) ⇒ Object
- #save_page(file_name = nil) ⇒ Object
-
#table_source(table_id) ⇒ Object
(also: #table_source_by_id)
– Content –.
Instance Method Details
#be_odd_number ⇒ Object
RSpec Matchers
Example,
a_number.should be_odd_number
90 91 92 |
# File 'lib/rwebspec-mechanize/rspec_helper.rb', line 90 def be_odd_number simple_matcher("must be odd number") { |actual| actual && actual.to_id % 2 == 1} end |
#button_by_id(button_id) ⇒ Object
47 48 49 |
# File 'lib/rwebspec-mechanize/rspec_helper.rb', line 47 def () (:id, ) end |
#buttons_by_caption(text) ⇒ Object Also known as:
51 52 53 |
# File 'lib/rwebspec-mechanize/rspec_helper.rb', line 51 def (text) (:text, text) end |
#debugging? ⇒ Boolean
When running
82 83 84 |
# File 'lib/rwebspec-mechanize/rspec_helper.rb', line 82 def debugging? ($TESTWISE_DEBUGGING && $TESTWISE_RUNNING_AS == "test_case") end |
#element_source(elem_id) ⇒ Object
TODO: is it working?
42 43 44 |
# File 'lib/rwebspec-mechanize/rspec_helper.rb', line 42 def element_source(elem_id) @web_browser.get_html_in_element(elem_id) end |
#element_text(elem_id) ⇒ Object Also known as: element_text_by_id
36 37 38 |
# File 'lib/rwebspec-mechanize/rspec_helper.rb', line 36 def element_text(elem_id) @web_browser.element_value(elem_id) end |
#link_by_id(link_id) ⇒ Object
56 57 58 |
# File 'lib/rwebspec-mechanize/rspec_helper.rb', line 56 def link_by_id(link_id) link(:id, link_id) end |
#links_by_text(link_text, options = {}) ⇒ Object Also known as: links_with_text
default options: exact => true
61 62 63 64 65 66 67 68 |
# File 'lib/rwebspec-mechanize/rspec_helper.rb', line 61 def links_by_text(link_text, = {}) .merge!({:exact=> true}) matching_links = [] links.each { |link| matching_links << link if ([:exact] ? link.text == link_text : link.text.include?(link_text)) } return matching_links end |
#save_content_to_file(content, file_name = nil) ⇒ Object
75 76 77 78 79 |
# File 'lib/rwebspec-mechanize/rspec_helper.rb', line 75 def save_content_to_file(content, file_name = nil) file_name ||= Time.now.strftime("%Y%m%d%H%M%S") + ".html" puts "about to save page: #{File.(file_name)}" File.open(file_name, "w").puts content end |
#save_page(file_name = nil) ⇒ Object
71 72 73 |
# File 'lib/rwebspec-mechanize/rspec_helper.rb', line 71 def save_page(file_name = nil) @web_browser.save_page(file_name) end |
#table_source(table_id) ⇒ Object Also known as: table_source_by_id
–
Content
–
28 29 30 31 32 33 |
# File 'lib/rwebspec-mechanize/rspec_helper.rb', line 28 def table_source(table_id) table(:id, table_id).innerHTML # elem = @web_browser.document.getElementById(table_id) # raise "The element '#{table_id}' is not a table or there are multple elements with same id" unless elem.name.uppercase == "TABLE" # elem.innerHTML end |