lib/briar/text_view.rb in briar-0.0.8 vs lib/briar/text_view.rb in briar-0.0.9
- old
+ new
@@ -1,21 +1,46 @@
require "calabash-cucumber"
module Briar
module TextView
- def text_view_exists? (name)
- !query("textView marked:'#{name}'").empty?
+ def text_view_exists? (view_id)
+ !query("textView marked:'#{view_id}'").empty?
end
- def should_see_text_view (name)
- unless text_view_exists? name
- screenshot_and_raise "i do not see text view with id #{name}"
+ def wait_for_text_view(view_id, timeout=BRIAR_WAIT_TIMEOUT)
+ msg = "waited for '#{timeout}' seconds but did not see '#{view_id}'"
+ wait_for(:timeout => timeout,
+ :retry_frequency => 0.2,
+ :post_timeout => 0.1,
+ :timeout_message => msg) do
+ text_view_exists? view_id
end
end
- def should_not_see_text_view (name)
- if text_view_exists? name
- screenshot_and_raise "i should not see text view with name #{name}"
+ def wait_for_text_view_to_disappear(view_id, timeout=BRIAR_WAIT_TIMEOUT)
+ msg = "waited for '#{timeout}' seconds for '#{view_id}' to disappear but it is still visible"
+ options = {:timeout => timeout,
+ :retry_frequency => 0.2,
+ :post_timeout => 0.1,
+ :timeout_message => msg}
+ wait_for(options) do
+ not text_view_exists? view_id
+ end
+ end
+
+ def should_see_text_view (view_id, timeout=BRIAR_WAIT_TIMEOUT)
+ wait_for_text_view(view_id, timeout)
+ end
+
+ def should_not_see_text_view (view_id, timeout=BRIAR_WAIT_TIMEOUT)
+ wait_for_text_view_to_disappear(view_id, timeout)
+ end
+
+ def should_see_text_view_with_text(view_id, text)
+ should_see_text_view view_id
+ actual = query("textView marked:'#{view_id}'", :text).first
+ unless @text_entered_by_keyboard.eql?(actual)
+ screenshot_and_raise "i expected to see '#{@text_entered_by_keyboard}' in text view '#{view_id}' but found '#{actual}'"
end
end
end
end