watir_drops 0.7.0 → 0.7.1

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 280730b6901eb01a5744bc02c17e50c0d14fce76
4
- data.tar.gz: deb0cd398b6c840f35346c37d110a70eff7de0f3
3
+ metadata.gz: 171e38eba96f09a57de7f7f73916693ad11cb93e
4
+ data.tar.gz: 0f6423ac9a41c06557839fe334e796f3ffd0e532
5
5
  SHA512:
6
- metadata.gz: b5f878a47b275c0bd4c4865045cd30f7b0d32464105af3a11914f5c010d79b91211e5cc402f538e3d443c2068359249e03e0d1248ac4dc561b73f181a9a4e14a
7
- data.tar.gz: d5e0bfd51542d40f8d6befc46e944a5ef762e5651d0f3134d2e3cc3d0e25ac8fe39ac6e0de09e55c3c17330c56fd7e032f80cc5bca76a0d712d8575f594f31f4
6
+ metadata.gz: 8b277848895d85656e8e400ae1e3edce263f55e028acc46d837cc5a9a538816aa8e4427403061fb31ec9387cd322a27691cd7b9cceb71aa9599571b218b2e9f8
7
+ data.tar.gz: cc7bf3e2b873a2a74a87c53ca5342c8917235401fd79e21651ee75c4c056fda9d124a2898914913f7510f2eb0d61e660c9004275b2d704d7bf70ca8975b5e23a
data/CHANGES.md CHANGED
@@ -1,3 +1,7 @@
1
+ ### 0.7.1 (2017-05-19)
2
+
3
+ * `#on_page?` evaluates immediately
4
+
1
5
  ### 0.7.0 (2017-02-02)
2
6
 
3
7
  * implement #on_page? verification by url, title or element(s) (thanks Lu Cui)
@@ -15,13 +15,8 @@ module WatirDrops
15
15
  define_method("page_url") do |*args|
16
16
  yield(*args)
17
17
  end
18
-
19
- define_method("goto") do |*args|
20
- browser.goto page_url(*args)
21
- end
22
18
  end
23
19
 
24
-
25
20
  def page_title
26
21
  define_method("page_title") do |*args|
27
22
  yield(*args)
@@ -80,11 +75,16 @@ module WatirDrops
80
75
  page.goto(*args)
81
76
  exception = Selenium::WebDriver::Error::WebDriverError
82
77
  message = "Expected to be on #{page.class}, but conditions not met"
83
- raise exception, message if page.page_verifiable? && !page.on_page?
78
+ if page.page_verifiable?
79
+ begin
80
+ page.wait_until(&:on_page?)
81
+ rescue Watir::Wait::TimeoutError
82
+ raise exception, message
83
+ end
84
+ end
84
85
  end
85
86
  end
86
87
 
87
-
88
88
  def browser=(browser_input)
89
89
  @@browser = browser_input
90
90
  end
@@ -127,25 +127,27 @@ module WatirDrops
127
127
  message = "Can not verify page without any requirements set"
128
128
  raise exception, message unless page_verifiable?
129
129
 
130
- @browser.wait_until do |browser|
131
- !self.class.require_url || page_url.gsub("#{URI.parse(page_url).scheme}://", '') == browser.url.gsub("#{URI.parse(browser.url).scheme}://", '')
130
+ if self.class.require_url && page_url.gsub("#{URI.parse(page_url).scheme}://", '') != browser.url.gsub("#{URI.parse(browser.url).scheme}://", '')
131
+ return false
132
132
  end
133
133
 
134
- @browser.wait_until do |browser|
135
- !self.respond_to?(:page_title) || browser.title == page_title
134
+ if self.respond_to?(:page_title) && browser.title != page_title
135
+ return false
136
136
  end
137
137
 
138
- @browser.wait_until do |_browser|
139
- !self.class.required_element_list.any? || self.class.required_element_list.all? { |e| send(e).present? }
138
+ if !self.class.required_element_list.empty? && self.class.required_element_list.any? { |e| !send(e).present? }
139
+ return false
140
140
  end
141
141
 
142
142
  true
143
- rescue Watir::Wait::TimeoutError
144
- false
143
+ end
144
+
145
+ def goto(*args)
146
+ browser.goto page_url(*args)
145
147
  end
146
148
 
147
149
  def method_missing(method, *args, &block)
148
- if @browser.respond_to?(method)
150
+ if @browser.respond_to?(method) && method != :page_url
149
151
  @browser.send(method, *args, &block)
150
152
  else
151
153
  super
data/watir_drops.gemspec CHANGED
@@ -2,7 +2,7 @@
2
2
 
3
3
  Gem::Specification.new do |spec|
4
4
  spec.name = 'watir_drops'
5
- spec.version = '0.7.0'
5
+ spec.version = '0.7.1'
6
6
  spec.authors = ['Titus Fortner']
7
7
  spec.email = ['titusfortner@gmail.com']
8
8
 
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: watir_drops
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.7.0
4
+ version: 0.7.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - Titus Fortner
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2017-02-02 00:00:00.000000000 Z
11
+ date: 2017-05-20 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: watir