rwebspec 2.1.0 → 2.1.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
data/CHANGELOG CHANGED
@@ -1,5 +1,8 @@
1
1
  CHANGELOG
2
2
  =========
3
+ 2.1.1
4
+ [Change] use Global variable for retry settings (instead of class variables)
5
+
3
6
  2.1
4
7
  [Change] Move try_until, fail_safe from driver.rb to utils.rb
5
8
 
data/Rakefile CHANGED
@@ -71,7 +71,7 @@ end
71
71
  spec = Gem::Specification.new do |s|
72
72
  s.platform= Gem::Platform::RUBY
73
73
  s.name = "rwebspec"
74
- s.version = "2.1.0"
74
+ s.version = "2.1.1"
75
75
  s.summary = "Web application functional specification in Ruby"
76
76
  s.description = "Executable functional specification for web applications in RSpec syntax and Watir"
77
77
 
@@ -19,10 +19,6 @@ module RWebSpec
19
19
  module Driver
20
20
  include RWebSpec::TestWisePlugin
21
21
  include RWebSpec::Popup
22
- # include Watir::ScreenCapture if RUBY_PLATFORM.downcase.include?("mswin") or RUBY_PLATFORM.downcase.include?("mingw")
23
-
24
- @@default_polling_interval = 1 # second
25
- @@default_timeout = 30 # seconds
26
22
 
27
23
  # open a browser, and set base_url via hash, but does not acually
28
24
  #
@@ -624,7 +620,7 @@ module RWebSpec
624
620
  # wait_until {puts 'hello'}
625
621
  # wait_until { div(:id, :receipt_date).exists? }
626
622
  #
627
- def wait_until(timeout = @@default_timeout || 30, polling_interval = @@default_polling_interval || 1, & block)
623
+ def wait_until(timeout = $testwise_polling_timeout || 30, polling_interval = $testwise_polling_interval || 1, & block)
628
624
  waiter = Watir::Waiter.new(timeout, polling_interval)
629
625
  waiter.wait_until { yield }
630
626
  end
@@ -644,7 +640,7 @@ module RWebSpec
644
640
  #
645
641
  # Warning: this method has not been fully tested, if you are not using Rails, change your parameter accordingly.
646
642
  #
647
- def ajax_wait_for_element(element_id, seconds, status='show', check_interval = @@default_polling_interval)
643
+ def ajax_wait_for_element(element_id, seconds, status='show', check_interval = $testwise_polling_interval)
648
644
  count = 0
649
645
  check_interval = 1 if check_interval < 1 or check_interval > seconds
650
646
  while count < (seconds / check_interval) do
@@ -664,7 +660,7 @@ module RWebSpec
664
660
  #Wait the element with given id to be present in web page
665
661
  #
666
662
  # Warning: this not working in Firefox, try use wait_util or try instead
667
- def wait_for_element(element_id, timeout = @@default_timeout, interval = @@default_polling_interval)
663
+ def wait_for_element(element_id, timeout = $testwise_polling_timeout, interval = $testwise_polling_interval)
668
664
  start_time = Time.now
669
665
  #TODO might not work with Firefox
670
666
  until @web_browser.element_by_id(element_id) do
@@ -45,7 +45,7 @@ module RWebSpec
45
45
  # try { click_link('waiting')}
46
46
  # try(10, 2) { click_button('Search' } # try to click the 'Search' button upto 10 seconds, try every 2 seconds
47
47
  # try { click_button('Search' }
48
- def try(timeout = @@default_timeout, polling_interval = @@default_polling_interval || 1, &block)
48
+ def try(timeout = $testwise_polling_timeout, polling_interval = $testwise_polling_interval || 1, &block)
49
49
  start_time = Time.now
50
50
 
51
51
  last_error = nil
@@ -16,7 +16,7 @@ module RWebSpec
16
16
  # try_until { click_link('waiting')}
17
17
  # try_until(10, 2) { click_button('Search' } # try to click the 'Search' button upto 10 seconds, try every 2 seconds
18
18
  # try_until { click_button('Search' }
19
- def try_until(timeout = @@default_timeout, polling_interval = @@default_polling_interval || 1, &block)
19
+ def try_until(timeout = $testwise_polling_timeout, polling_interval = $testwise_polling_interval || 1, &block)
20
20
  start_time = Time.now
21
21
 
22
22
  last_error = nil
@@ -37,7 +37,7 @@ module RWebSpec
37
37
 
38
38
  alias try_upto try_until
39
39
 
40
- def try(timeout = @@default_timeout, polling_interval = @@default_polling_interval || 1, &block)
40
+ def try(timeout = $testwise_polling_timeout, polling_interval = $testwise_polling_interval || 1, &block)
41
41
  puts "Warning: method 'try' is deprecated (won't support in RWebSpec 3), use try_until instead."
42
42
  try_until(timeout, polling_interval) {
43
43
  yield
@@ -50,7 +50,7 @@ module RWebSpec
50
50
  # Example
51
51
  # repeat_try(3, 2) { click_button('Search' } # 3 times, 6 seconds in total
52
52
  # repeat_try { click_button('Search' } # using default 5 tries, 2 second interval
53
- def repeat_try(num_tries = @@default_timeout || 30, interval = @@default_polling_interval || 1, & block)
53
+ def repeat_try(num_tries = $testwise_polling_timeout || 30, interval = $testwise_polling_interval || 1, & block)
54
54
  num_tries ||= 1
55
55
  (num_tries - 1).times do |num|
56
56
  begin
data/lib/rwebspec.rb CHANGED
@@ -30,9 +30,14 @@ end
30
30
  require 'spec'
31
31
 
32
32
  unless defined? RWEBSPEC_VERSION
33
- RWEBSPEC_VERSION = RWEBUNIT_VERSION = "2.1.0"
33
+ RWEBSPEC_VERSION = RWEBUNIT_VERSION = "2.1.1"
34
34
  end
35
35
 
36
+ $testwise_polling_interval = 1 # seconds
37
+
38
+ $testwise_polling_timeout = 30 # seconds
39
+
40
+
36
41
  if RUBY_PLATFORM =~ /mswin/ or RUBY_PLATFORM =~ /mingw/
37
42
  $screenshot_supported = false
38
43
  begin
@@ -42,6 +47,7 @@ if RUBY_PLATFORM =~ /mswin/ or RUBY_PLATFORM =~ /mingw/
42
47
  end
43
48
  end
44
49
 
50
+
45
51
  # Extra full path to load libraries
46
52
  require File.dirname(__FILE__) + "/rwebspec/using_pages"
47
53
  require File.dirname(__FILE__) + "/rwebspec/test_utils"
metadata CHANGED
@@ -5,8 +5,8 @@ version: !ruby/object:Gem::Version
5
5
  segments:
6
6
  - 2
7
7
  - 1
8
- - 0
9
- version: 2.1.0
8
+ - 1
9
+ version: 2.1.1
10
10
  platform: ruby
11
11
  authors:
12
12
  - Zhimin Zhan