watir_drops 0.7.0 → 0.7.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.
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