testcentricity_web 2.3.14.1 → 2.3.15

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: 3902dc7da31c14b1da89fd63397c4db9a2107d2a
4
- data.tar.gz: 8b1dc1f8a0959b3cd0661194e2340e56805bd0a9
3
+ metadata.gz: ad902070839a921986bb1a9e697cf951bbbe8aff
4
+ data.tar.gz: 8a84f1f3d767ed03b5b4c6f87b17cfa9eb475ff9
5
5
  SHA512:
6
- metadata.gz: 9fd8cc56513e545181f80382553a7346f18ba5ca518a858687d224941a01edbf3be969a4647d89758b8053155d6da991742a58870c89b09b2ac8075c09cdd06e
7
- data.tar.gz: 2c5475856233c72a0f08bd54f4e396eebcf23d4d6f18d3a90356456c90a770fcb700d2fde62d33aeba9cca4a9a2bbd57d4478b87ad7f365ed9539357034e390e
6
+ metadata.gz: 4f426d1dd3e921fce5ecabd7420c6b8233ba18c7eb73dd652568015c6eb16517fa501b81dd4c24d71cf92584622d538fd9b4e1f7547cb9007c79f5833912385f
7
+ data.tar.gz: 0d0b218f11a9ac98b77d377fc163eee8e739ce263b80462dd6eb08727ad5afe155054c22e976178f161644919f366678979bdc4fe955181426425dd4cad687e9
data/README.md CHANGED
@@ -28,6 +28,10 @@ hosted instances of Chrome, Firefox, Safari, and IE web browsers.
28
28
 
29
29
 
30
30
  ## What's New
31
+ ###Version 2.3.15
32
+
33
+ * Added `PageObject.wait_until_exists` and `PageObject.wait_until_gone` methods.
34
+
31
35
  ###Version 2.3.14
32
36
 
33
37
  * Updated device profiles for iPhone 7 (iOS 10) with MS Edge browser.
@@ -132,6 +136,11 @@ use the [parallel_tests gem](https://rubygems.org/gems/parallel_tests) to decrea
132
136
 
133
137
 
134
138
  ## What's Fixed
139
+
140
+ ###Version 2.3.15
141
+
142
+ * Fixed bug in `UIElement.get_object_type` method that could result in a `NoMethodError obj not defined` error.
143
+
135
144
  ###Version 2.3.8
136
145
 
137
146
  * Fixed locator resolution for **Indexed PageSection Objects**.
@@ -77,7 +77,7 @@
77
77
  :css_width: 375
78
78
  :css_height: 667
79
79
  :default_orientation: portrait
80
- :user_agent: "Mozilla/5.0 (iPhone; CPU iPhone OS 10_3_3 like Mac OS X) AppleWebKit/603.3.8 (KHTML, like Gecko) Version/10.0 EdgiOS/41.10.1.0 Mobile/14G60 Safari/603.3.8"
80
+ :user_agent: "Mozilla/5.0 (iPhone; CPU iPhone OS 10_3_3 like Mac OS X) AppleWebKit/603.3.8 (KHTML, like Gecko) Version/10.0 EdgiOS/41.11.0.0 Mobile/14G60 Safari/603.3.8"
81
81
  :iphone8:
82
82
  :name: "iPhone 8"
83
83
  :os: ios
@@ -458,6 +458,36 @@ module TestCentricity
458
458
  Capybara.default_max_wait_time = saved_wait_time
459
459
  end
460
460
 
461
+ # Wait until the page object exists, or until the specified wait time has expired. If the wait time is nil, then the wait
462
+ # time will be Capybara.default_max_wait_time.
463
+ #
464
+ # @param seconds [Integer or Float] wait time in seconds
465
+ # @example
466
+ # home_page.wait_until_exists(15)
467
+ #
468
+ def wait_until_exists(seconds = nil)
469
+ timeout = seconds.nil? ? Capybara.default_max_wait_time : seconds
470
+ wait = Selenium::WebDriver::Wait.new(timeout: timeout)
471
+ wait.until { exists? }
472
+ rescue
473
+ raise "Page object #{self.class.name} not found after #{timeout} seconds" unless exists?
474
+ end
475
+
476
+ # Wait until the page object no longer exists, or until the specified wait time has expired. If the wait time is nil, then
477
+ # the wait time will be Capybara.default_max_wait_time.
478
+ #
479
+ # @param seconds [Integer or Float] wait time in seconds
480
+ # @example
481
+ # verifying_page.wait_until_gone(15)
482
+ #
483
+ def wait_until_gone(seconds = nil)
484
+ timeout = seconds.nil? ? Capybara.default_max_wait_time : seconds
485
+ wait = Selenium::WebDriver::Wait.new(timeout: timeout)
486
+ wait.until { !exists? }
487
+ rescue
488
+ raise "Page object #{self.class.name} remained visible after #{timeout} seconds" if exists?
489
+ end
490
+
461
491
  # Is current Page object URL secure?
462
492
  #
463
493
  # @return [Boolean]
@@ -1,3 +1,3 @@
1
1
  module TestCentricityWeb
2
- VERSION = '2.3.14.1'
2
+ VERSION = '2.3.15'
3
3
  end
@@ -68,10 +68,14 @@ module TestCentricity
68
68
  def get_object_type
69
69
  if @type
70
70
  @type
71
- elsif obj.tag_name
72
- obj.tag_name
73
- elsif obj.native.attribute('type')
74
- obj.native.attribute('type')
71
+ else
72
+ obj, type = find_element
73
+ object_not_found_exception(obj, type)
74
+ if obj.tag_name
75
+ obj.tag_name
76
+ elsif obj.native.attribute('type')
77
+ obj.native.attribute('type')
78
+ end
75
79
  end
76
80
  end
77
81
 
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: testcentricity_web
3
3
  version: !ruby/object:Gem::Version
4
- version: 2.3.14.1
4
+ version: 2.3.15
5
5
  platform: ruby
6
6
  authors:
7
7
  - A.J. Mrozinski
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2018-02-28 00:00:00.000000000 Z
11
+ date: 2018-03-02 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: bundler