testcentricity 3.0.3 → 3.0.6
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/CHANGELOG.md +27 -0
- data/README.md +1 -0
- data/lib/testcentricity/app_core/appium_connect_helper.rb +1 -0
- data/lib/testcentricity/app_core/screen_section.rb +0 -1
- data/lib/testcentricity/app_elements/app_element_helper.rb +69 -16
- data/lib/testcentricity/version.rb +1 -1
- metadata +5 -143
- data/.gitignore +0 -40
- data/.rspec +0 -4
- data/.rubocop.yml +0 -38
- data/.ruby-version +0 -1
- data/.simplecov +0 -9
- data/CODE_OF_CONDUCT.md +0 -13
- data/Gemfile +0 -6
- data/Rakefile +0 -63
- data/config/cucumber.yml +0 -146
- data/config/locales/en-US.yml +0 -56
- data/config/test_data/LOCAL_data.yml +0 -15
- data/config/test_data/data.yml +0 -9
- data/features/deep_links.feature +0 -26
- data/features/login.feature +0 -30
- data/features/navigation.feature +0 -43
- data/features/step_definitions/generic_steps.rb +0 -62
- data/features/support/android/screens/about_screen.rb +0 -11
- data/features/support/android/screens/base_app_screen.rb +0 -31
- data/features/support/android/screens/biometrics_screen.rb +0 -17
- data/features/support/android/screens/checkout_address_screen.rb +0 -17
- data/features/support/android/screens/checkout_payment_screen.rb +0 -22
- data/features/support/android/screens/geo_location_screen.rb +0 -28
- data/features/support/android/screens/login_screen.rb +0 -18
- data/features/support/android/screens/products_screen.rb +0 -13
- data/features/support/android/screens/qr_code_scanner_screen.rb +0 -15
- data/features/support/android/screens/saucebot_screen.rb +0 -16
- data/features/support/android/screens/webview_screen.rb +0 -13
- data/features/support/android/sections/nav_widgets/nav_menu.rb +0 -39
- data/features/support/data/user_data.rb +0 -17
- data/features/support/env.rb +0 -62
- data/features/support/hooks.rb +0 -135
- data/features/support/ios/screens/about_screen.rb +0 -11
- data/features/support/ios/screens/base_app_screen.rb +0 -20
- data/features/support/ios/screens/biometrics_screen.rb +0 -17
- data/features/support/ios/screens/checkout_address_screen.rb +0 -17
- data/features/support/ios/screens/checkout_payment_screen.rb +0 -22
- data/features/support/ios/screens/geo_location_screen.rb +0 -32
- data/features/support/ios/screens/login_screen.rb +0 -18
- data/features/support/ios/screens/products_screen.rb +0 -13
- data/features/support/ios/screens/qr_code_scanner_screen.rb +0 -11
- data/features/support/ios/screens/saucebot_screen.rb +0 -16
- data/features/support/ios/screens/webview_screen.rb +0 -13
- data/features/support/ios/sections/list_items/product_cell_item.rb +0 -13
- data/features/support/ios/sections/nav_widgets/nav_bar.rb +0 -31
- data/features/support/ios/sections/nav_widgets/nav_menu.rb +0 -41
- data/features/support/shared_components/screens/base_app_screen.rb +0 -35
- data/features/support/shared_components/screens/checkout_address_screen.rb +0 -17
- data/features/support/shared_components/screens/checkout_payment_screen.rb +0 -22
- data/features/support/shared_components/screens/login_screen.rb +0 -39
- data/features/support/shared_components/screens/saucebot_screen.rb +0 -17
- data/features/support/shared_components/screens/webview_screen.rb +0 -12
- data/features/support/shared_components/sections/nav_menu.rb +0 -58
- data/features/support/world_data.rb +0 -12
- data/features/support/world_pages.rb +0 -29
- data/reports/.keep +0 -1
- data/spec/fixtures/page_object.rb +0 -22
- data/spec/fixtures/page_section_object.rb +0 -21
- data/spec/fixtures/screen_object.rb +0 -16
- data/spec/fixtures/screen_section_object.rb +0 -16
- data/spec/spec_helper.rb +0 -33
- data/spec/testcentricity/elements/button_spec.rb +0 -18
- data/spec/testcentricity/elements/checkbox_spec.rb +0 -28
- data/spec/testcentricity/elements/image_spec.rb +0 -13
- data/spec/testcentricity/elements/label_spec.rb +0 -18
- data/spec/testcentricity/elements/list_spec.rb +0 -13
- data/spec/testcentricity/elements/ui_element_spec.rb +0 -72
- data/spec/testcentricity/mobile/appium_connect_spec.rb +0 -117
- data/spec/testcentricity/mobile/screen_object_spec.rb +0 -63
- data/spec/testcentricity/mobile/screen_section_object_spec.rb +0 -56
- data/spec/testcentricity/version_spec.rb +0 -7
- data/spec/testcentricity/web/browser_spec.rb +0 -41
- data/spec/testcentricity/web/local_webdriver_spec.rb +0 -86
- data/spec/testcentricity/web/mobile_webdriver_spec.rb +0 -123
- data/spec/testcentricity/web/page_object_spec.rb +0 -85
- data/spec/testcentricity/web/page_section_object_spec.rb +0 -72
- data/testcentricity.gemspec +0 -48
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 0ce51326d5b5bd311a446fb293120d23429fff0bb4b67a637c4e05377bcd4335
|
4
|
+
data.tar.gz: a225e713a5734b898db54d693708964f609cbcf660b3e63832e2ce638222d14d
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 8a1961921ea74234539f9b236472529c4682cb161f85cb139daea60a6b1ca1318e490a1795c56da6252bc83ee03c544abc6b499f09b94bb697e660f31dfc54c0
|
7
|
+
data.tar.gz: b24b5dfc275b53ba69774ba74f4d580615a759d3302f128d47485ea4498d16dcca14e75a041528c7292a7cfe4c677bf273db89db5ba835a08d0113fd00161b04
|
data/CHANGELOG.md
CHANGED
@@ -2,6 +2,33 @@
|
|
2
2
|
All notable changes to this project will be documented in this file.
|
3
3
|
|
4
4
|
|
5
|
+
## [3.0.6] - 21-JUNE-2022
|
6
|
+
|
7
|
+
### Fixed
|
8
|
+
* `AppButton.get_caption` correctly returns captions of React Native buttons on Android platform where button caption object
|
9
|
+
hierarchy is `//android.widget.Button/android.widget.ViewGroup/android.widget.TextView`.
|
10
|
+
|
11
|
+
|
12
|
+
## [3.0.5] - 12-JUNE-2022
|
13
|
+
|
14
|
+
### Fixed
|
15
|
+
* Fix `gemspec` to no longer include specs and cuke tests as part of deployment package for gem.
|
16
|
+
|
17
|
+
### Updated
|
18
|
+
* Incorporated all changes from the [TestCentricity™ Web gem](https://rubygems.org/gems/testcentricity_web) version 4.2.6, which is
|
19
|
+
bundled with this gem.
|
20
|
+
|
21
|
+
|
22
|
+
## [3.0.4] - 02-JUNE-2022
|
23
|
+
|
24
|
+
### Added
|
25
|
+
* Added `AppUIElement.wait_until_enabled` method.
|
26
|
+
|
27
|
+
### Updated
|
28
|
+
* Incorporated all changes from the [TestCentricity™ Web gem](https://rubygems.org/gems/testcentricity_web) version 4.2.4, which is
|
29
|
+
bundled with this gem.
|
30
|
+
|
31
|
+
|
5
32
|
## [3.0.3] - 30-MAY-2022
|
6
33
|
|
7
34
|
### Added
|
data/README.md
CHANGED
@@ -536,6 +536,7 @@ With TestCentricity, all native app UI elements are based on the `AppUIElement`
|
|
536
536
|
element.wait_until_gone(seconds)
|
537
537
|
element.wait_until_visible(seconds)
|
538
538
|
element.wait_until_hidden(seconds)
|
539
|
+
element.wait_until_enabled(seconds)
|
539
540
|
element.wait_until_value_is(value, seconds)
|
540
541
|
element.wait_until_value_changes(seconds)
|
541
542
|
|
@@ -271,6 +271,7 @@ module TestCentricity
|
|
271
271
|
caps[:newCommandTimeout] = ENV['NEW_COMMAND_TIMEOUT'] if ENV['NEW_COMMAND_TIMEOUT']
|
272
272
|
caps[:noReset] = ENV['APP_NO_RESET'] if ENV['APP_NO_RESET']
|
273
273
|
caps[:fullReset] = ENV['APP_FULL_RESET'] if ENV['APP_FULL_RESET']
|
274
|
+
caps[:autoLaunch] = ENV['AUTO_LAUNCH'] if ENV['AUTO_LAUNCH']
|
274
275
|
caps[:webkitDebugProxyPort] = ENV['WEBKIT_DEBUG_PROXY_PORT'] if ENV['WEBKIT_DEBUG_PROXY_PORT']
|
275
276
|
caps[:webDriverAgentUrl] = ENV['WEBDRIVER_AGENT_URL'] if ENV['WEBDRIVER_AGENT_URL']
|
276
277
|
caps[:wdaLocalPort] = ENV['WDA_LOCAL_PORT'] if ENV['WDA_LOCAL_PORT']
|
@@ -109,9 +109,19 @@ module TestCentricity
|
|
109
109
|
end
|
110
110
|
else
|
111
111
|
caption = obj.text
|
112
|
-
if caption.blank?
|
113
|
-
|
114
|
-
|
112
|
+
if caption.blank?
|
113
|
+
case obj.attribute(:class)
|
114
|
+
when 'android.view.ViewGroup'
|
115
|
+
caption_obj = obj.find_element(:xpath, '//android.widget.TextView')
|
116
|
+
caption = caption_obj.text
|
117
|
+
when 'android.widget.Button'
|
118
|
+
caption_obj = obj.find_element(:xpath, '//android.widget.TextView')
|
119
|
+
caption = caption_obj.text
|
120
|
+
if caption.blank?
|
121
|
+
caption_obj = obj.find_element(:xpath, '//android.widget.ViewGroup/android.widget.TextView')
|
122
|
+
caption = caption_obj.text
|
123
|
+
end
|
124
|
+
end
|
115
125
|
end
|
116
126
|
caption
|
117
127
|
end
|
@@ -174,12 +184,16 @@ module TestCentricity
|
|
174
184
|
# @example
|
175
185
|
# run_button.wait_until_exists(0.5)
|
176
186
|
#
|
177
|
-
def wait_until_exists(seconds = nil)
|
187
|
+
def wait_until_exists(seconds = nil, post_exception = true)
|
178
188
|
timeout = seconds.nil? ? Environ.default_max_wait_time : seconds
|
179
189
|
wait = Selenium::WebDriver::Wait.new(timeout: timeout)
|
180
190
|
wait.until { exists? }
|
181
191
|
rescue
|
182
|
-
|
192
|
+
if post_exception
|
193
|
+
raise "Could not find UI #{object_ref_message} after #{timeout} seconds" unless exists?
|
194
|
+
else
|
195
|
+
exists?
|
196
|
+
end
|
183
197
|
end
|
184
198
|
|
185
199
|
# Wait until the object no longer exists, or until the specified wait time has expired. If the wait time is nil, then
|
@@ -189,12 +203,16 @@ module TestCentricity
|
|
189
203
|
# @example
|
190
204
|
# logout_button.wait_until_gone(5)
|
191
205
|
#
|
192
|
-
def wait_until_gone(seconds = nil)
|
206
|
+
def wait_until_gone(seconds = nil, post_exception = true)
|
193
207
|
timeout = seconds.nil? ? Environ.default_max_wait_time : seconds
|
194
208
|
wait = Selenium::WebDriver::Wait.new(timeout: timeout)
|
195
209
|
wait.until { !exists? }
|
196
210
|
rescue
|
197
|
-
|
211
|
+
if post_exception
|
212
|
+
raise "UI #{object_ref_message} remained visible after #{timeout} seconds" if exists?
|
213
|
+
else
|
214
|
+
exists?
|
215
|
+
end
|
198
216
|
end
|
199
217
|
|
200
218
|
# Wait until the object is visible, or until the specified wait time has expired. If the wait time is nil, then the
|
@@ -204,12 +222,16 @@ module TestCentricity
|
|
204
222
|
# @example
|
205
223
|
# run_button.wait_until_visible(0.5)
|
206
224
|
#
|
207
|
-
def wait_until_visible(seconds = nil)
|
225
|
+
def wait_until_visible(seconds = nil, post_exception = true)
|
208
226
|
timeout = seconds.nil? ? Environ.default_max_wait_time : seconds
|
209
227
|
wait = Selenium::WebDriver::Wait.new(timeout: timeout)
|
210
228
|
wait.until { visible? }
|
211
229
|
rescue
|
212
|
-
|
230
|
+
if post_exception
|
231
|
+
raise "Could not find UI #{object_ref_message} after #{timeout} seconds" unless visible?
|
232
|
+
else
|
233
|
+
visible?
|
234
|
+
end
|
213
235
|
end
|
214
236
|
|
215
237
|
# Wait until the object is hidden, or until the specified wait time has expired. If the wait time is nil, then the
|
@@ -219,12 +241,35 @@ module TestCentricity
|
|
219
241
|
# @example
|
220
242
|
# run_button.wait_until_hidden(10)
|
221
243
|
#
|
222
|
-
def wait_until_hidden(seconds = nil)
|
244
|
+
def wait_until_hidden(seconds = nil, post_exception = true)
|
223
245
|
timeout = seconds.nil? ? Environ.default_max_wait_time : seconds
|
224
246
|
wait = Selenium::WebDriver::Wait.new(timeout: timeout)
|
225
247
|
wait.until { hidden? }
|
226
248
|
rescue
|
227
|
-
|
249
|
+
if post_exception
|
250
|
+
raise "UI #{object_ref_message} remained visible after #{timeout} seconds" if visible?
|
251
|
+
else
|
252
|
+
hidden?
|
253
|
+
end
|
254
|
+
end
|
255
|
+
|
256
|
+
# Wait until the object is enabled, or until the specified wait time has expired. If the wait time is nil, then the
|
257
|
+
# wait time will be Environ.default_max_wait_time.
|
258
|
+
#
|
259
|
+
# @param seconds [Integer or Float] wait time in seconds
|
260
|
+
# @example
|
261
|
+
# run_button.wait_until_enabled(10)
|
262
|
+
#
|
263
|
+
def wait_until_enabled(seconds = nil, post_exception = true)
|
264
|
+
timeout = seconds.nil? ? Environ.default_max_wait_time : seconds
|
265
|
+
wait = Selenium::WebDriver::Wait.new(timeout: timeout)
|
266
|
+
wait.until { enabled? }
|
267
|
+
rescue
|
268
|
+
if post_exception
|
269
|
+
raise "UI #{object_ref_message} remained disabled after #{timeout} seconds" unless enabled?
|
270
|
+
else
|
271
|
+
enabled?
|
272
|
+
end
|
228
273
|
end
|
229
274
|
|
230
275
|
# Wait until the object's value equals the specified value, or until the specified wait time has expired. If the wait
|
@@ -237,12 +282,16 @@ module TestCentricity
|
|
237
282
|
# or
|
238
283
|
# total_weight_field.wait_until_value_is({ :greater_than => '250' }, 5)
|
239
284
|
#
|
240
|
-
def wait_until_value_is(value, seconds = nil)
|
285
|
+
def wait_until_value_is(value, seconds = nil, post_exception = true)
|
241
286
|
timeout = seconds.nil? ? Environ.default_max_wait_time : seconds
|
242
287
|
wait = Selenium::WebDriver::Wait.new(timeout: timeout)
|
243
288
|
wait.until { compare(value, get_value) }
|
244
289
|
rescue
|
245
|
-
|
290
|
+
if post_exception
|
291
|
+
raise "Value of UI #{object_ref_message} failed to equal '#{value}' after #{timeout} seconds" unless get_value == value
|
292
|
+
else
|
293
|
+
get_value == value
|
294
|
+
end
|
246
295
|
end
|
247
296
|
|
248
297
|
# Wait until the object's value changes to a different value, or until the specified wait time has expired. If the
|
@@ -252,13 +301,17 @@ module TestCentricity
|
|
252
301
|
# @example
|
253
302
|
# basket_grand_total_label.wait_until_value_changes(5)
|
254
303
|
#
|
255
|
-
def wait_until_value_changes(seconds = nil)
|
304
|
+
def wait_until_value_changes(seconds = nil, post_exception = true)
|
256
305
|
value = get_value
|
257
306
|
timeout = seconds.nil? ? Environ.default_max_wait_time : seconds
|
258
307
|
wait = Selenium::WebDriver::Wait.new(timeout: timeout)
|
259
308
|
wait.until { get_value != value }
|
260
309
|
rescue
|
261
|
-
|
310
|
+
if post_exception
|
311
|
+
raise "Value of UI #{object_ref_message} failed to change from '#{value}' after #{timeout} seconds" if get_value == value
|
312
|
+
else
|
313
|
+
get_value == value
|
314
|
+
end
|
262
315
|
end
|
263
316
|
|
264
317
|
def width
|
@@ -307,7 +360,7 @@ module TestCentricity
|
|
307
360
|
obj = element
|
308
361
|
object_not_found_exception(obj)
|
309
362
|
if Environ.is_ios?
|
310
|
-
$driver.execute_script('mobile: scroll', direction: direction
|
363
|
+
$driver.execute_script('mobile: scroll', { direction: direction })
|
311
364
|
else
|
312
365
|
case direction
|
313
366
|
when :down
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: testcentricity
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 3.0.
|
4
|
+
version: 3.0.6
|
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: 2022-
|
11
|
+
date: 2022-06-21 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: bundler
|
@@ -184,14 +184,14 @@ dependencies:
|
|
184
184
|
requirements:
|
185
185
|
- - ">="
|
186
186
|
- !ruby/object:Gem::Version
|
187
|
-
version: 4.2.
|
187
|
+
version: 4.2.6
|
188
188
|
type: :runtime
|
189
189
|
prerelease: false
|
190
190
|
version_requirements: !ruby/object:Gem::Requirement
|
191
191
|
requirements:
|
192
192
|
- - ">="
|
193
193
|
- !ruby/object:Gem::Version
|
194
|
-
version: 4.2.
|
194
|
+
version: 4.2.6
|
195
195
|
- !ruby/object:Gem::Dependency
|
196
196
|
name: test-unit
|
197
197
|
requirement: !ruby/object:Gem::Requirement
|
@@ -219,64 +219,10 @@ executables: []
|
|
219
219
|
extensions: []
|
220
220
|
extra_rdoc_files: []
|
221
221
|
files:
|
222
|
-
- ".gitignore"
|
223
|
-
- ".rspec"
|
224
|
-
- ".rubocop.yml"
|
225
|
-
- ".ruby-version"
|
226
|
-
- ".simplecov"
|
227
222
|
- ".yardopts"
|
228
223
|
- CHANGELOG.md
|
229
|
-
- CODE_OF_CONDUCT.md
|
230
|
-
- Gemfile
|
231
224
|
- LICENSE.md
|
232
225
|
- README.md
|
233
|
-
- Rakefile
|
234
|
-
- config/cucumber.yml
|
235
|
-
- config/locales/en-US.yml
|
236
|
-
- config/test_data/LOCAL_data.yml
|
237
|
-
- config/test_data/data.yml
|
238
|
-
- features/deep_links.feature
|
239
|
-
- features/login.feature
|
240
|
-
- features/navigation.feature
|
241
|
-
- features/step_definitions/generic_steps.rb
|
242
|
-
- features/support/android/screens/about_screen.rb
|
243
|
-
- features/support/android/screens/base_app_screen.rb
|
244
|
-
- features/support/android/screens/biometrics_screen.rb
|
245
|
-
- features/support/android/screens/checkout_address_screen.rb
|
246
|
-
- features/support/android/screens/checkout_payment_screen.rb
|
247
|
-
- features/support/android/screens/geo_location_screen.rb
|
248
|
-
- features/support/android/screens/login_screen.rb
|
249
|
-
- features/support/android/screens/products_screen.rb
|
250
|
-
- features/support/android/screens/qr_code_scanner_screen.rb
|
251
|
-
- features/support/android/screens/saucebot_screen.rb
|
252
|
-
- features/support/android/screens/webview_screen.rb
|
253
|
-
- features/support/android/sections/nav_widgets/nav_menu.rb
|
254
|
-
- features/support/data/user_data.rb
|
255
|
-
- features/support/env.rb
|
256
|
-
- features/support/hooks.rb
|
257
|
-
- features/support/ios/screens/about_screen.rb
|
258
|
-
- features/support/ios/screens/base_app_screen.rb
|
259
|
-
- features/support/ios/screens/biometrics_screen.rb
|
260
|
-
- features/support/ios/screens/checkout_address_screen.rb
|
261
|
-
- features/support/ios/screens/checkout_payment_screen.rb
|
262
|
-
- features/support/ios/screens/geo_location_screen.rb
|
263
|
-
- features/support/ios/screens/login_screen.rb
|
264
|
-
- features/support/ios/screens/products_screen.rb
|
265
|
-
- features/support/ios/screens/qr_code_scanner_screen.rb
|
266
|
-
- features/support/ios/screens/saucebot_screen.rb
|
267
|
-
- features/support/ios/screens/webview_screen.rb
|
268
|
-
- features/support/ios/sections/list_items/product_cell_item.rb
|
269
|
-
- features/support/ios/sections/nav_widgets/nav_bar.rb
|
270
|
-
- features/support/ios/sections/nav_widgets/nav_menu.rb
|
271
|
-
- features/support/shared_components/screens/base_app_screen.rb
|
272
|
-
- features/support/shared_components/screens/checkout_address_screen.rb
|
273
|
-
- features/support/shared_components/screens/checkout_payment_screen.rb
|
274
|
-
- features/support/shared_components/screens/login_screen.rb
|
275
|
-
- features/support/shared_components/screens/saucebot_screen.rb
|
276
|
-
- features/support/shared_components/screens/webview_screen.rb
|
277
|
-
- features/support/shared_components/sections/nav_menu.rb
|
278
|
-
- features/support/world_data.rb
|
279
|
-
- features/support/world_pages.rb
|
280
226
|
- lib/testcentricity.rb
|
281
227
|
- lib/testcentricity/app_core/appium_connect_helper.rb
|
282
228
|
- lib/testcentricity/app_core/screen_object.rb
|
@@ -294,28 +240,6 @@ files:
|
|
294
240
|
- lib/testcentricity/app_elements/textfield.rb
|
295
241
|
- lib/testcentricity/data_objects/environment.rb
|
296
242
|
- lib/testcentricity/version.rb
|
297
|
-
- reports/.keep
|
298
|
-
- spec/fixtures/page_object.rb
|
299
|
-
- spec/fixtures/page_section_object.rb
|
300
|
-
- spec/fixtures/screen_object.rb
|
301
|
-
- spec/fixtures/screen_section_object.rb
|
302
|
-
- spec/spec_helper.rb
|
303
|
-
- spec/testcentricity/elements/button_spec.rb
|
304
|
-
- spec/testcentricity/elements/checkbox_spec.rb
|
305
|
-
- spec/testcentricity/elements/image_spec.rb
|
306
|
-
- spec/testcentricity/elements/label_spec.rb
|
307
|
-
- spec/testcentricity/elements/list_spec.rb
|
308
|
-
- spec/testcentricity/elements/ui_element_spec.rb
|
309
|
-
- spec/testcentricity/mobile/appium_connect_spec.rb
|
310
|
-
- spec/testcentricity/mobile/screen_object_spec.rb
|
311
|
-
- spec/testcentricity/mobile/screen_section_object_spec.rb
|
312
|
-
- spec/testcentricity/version_spec.rb
|
313
|
-
- spec/testcentricity/web/browser_spec.rb
|
314
|
-
- spec/testcentricity/web/local_webdriver_spec.rb
|
315
|
-
- spec/testcentricity/web/mobile_webdriver_spec.rb
|
316
|
-
- spec/testcentricity/web/page_object_spec.rb
|
317
|
-
- spec/testcentricity/web/page_section_object_spec.rb
|
318
|
-
- testcentricity.gemspec
|
319
243
|
homepage: https://github.com/TestCentricity/testcentricity
|
320
244
|
licenses:
|
321
245
|
- BSD-3-Clause
|
@@ -343,66 +267,4 @@ signing_key:
|
|
343
267
|
specification_version: 4
|
344
268
|
summary: A Page Object Model Framework for native mobile app and desktop/mobile web
|
345
269
|
portal testing
|
346
|
-
test_files:
|
347
|
-
- features/deep_links.feature
|
348
|
-
- features/login.feature
|
349
|
-
- features/navigation.feature
|
350
|
-
- features/step_definitions/generic_steps.rb
|
351
|
-
- features/support/android/screens/about_screen.rb
|
352
|
-
- features/support/android/screens/base_app_screen.rb
|
353
|
-
- features/support/android/screens/biometrics_screen.rb
|
354
|
-
- features/support/android/screens/checkout_address_screen.rb
|
355
|
-
- features/support/android/screens/checkout_payment_screen.rb
|
356
|
-
- features/support/android/screens/geo_location_screen.rb
|
357
|
-
- features/support/android/screens/login_screen.rb
|
358
|
-
- features/support/android/screens/products_screen.rb
|
359
|
-
- features/support/android/screens/qr_code_scanner_screen.rb
|
360
|
-
- features/support/android/screens/saucebot_screen.rb
|
361
|
-
- features/support/android/screens/webview_screen.rb
|
362
|
-
- features/support/android/sections/nav_widgets/nav_menu.rb
|
363
|
-
- features/support/data/user_data.rb
|
364
|
-
- features/support/env.rb
|
365
|
-
- features/support/hooks.rb
|
366
|
-
- features/support/ios/screens/about_screen.rb
|
367
|
-
- features/support/ios/screens/base_app_screen.rb
|
368
|
-
- features/support/ios/screens/biometrics_screen.rb
|
369
|
-
- features/support/ios/screens/checkout_address_screen.rb
|
370
|
-
- features/support/ios/screens/checkout_payment_screen.rb
|
371
|
-
- features/support/ios/screens/geo_location_screen.rb
|
372
|
-
- features/support/ios/screens/login_screen.rb
|
373
|
-
- features/support/ios/screens/products_screen.rb
|
374
|
-
- features/support/ios/screens/qr_code_scanner_screen.rb
|
375
|
-
- features/support/ios/screens/saucebot_screen.rb
|
376
|
-
- features/support/ios/screens/webview_screen.rb
|
377
|
-
- features/support/ios/sections/list_items/product_cell_item.rb
|
378
|
-
- features/support/ios/sections/nav_widgets/nav_bar.rb
|
379
|
-
- features/support/ios/sections/nav_widgets/nav_menu.rb
|
380
|
-
- features/support/shared_components/screens/base_app_screen.rb
|
381
|
-
- features/support/shared_components/screens/checkout_address_screen.rb
|
382
|
-
- features/support/shared_components/screens/checkout_payment_screen.rb
|
383
|
-
- features/support/shared_components/screens/login_screen.rb
|
384
|
-
- features/support/shared_components/screens/saucebot_screen.rb
|
385
|
-
- features/support/shared_components/screens/webview_screen.rb
|
386
|
-
- features/support/shared_components/sections/nav_menu.rb
|
387
|
-
- features/support/world_data.rb
|
388
|
-
- features/support/world_pages.rb
|
389
|
-
- spec/fixtures/page_object.rb
|
390
|
-
- spec/fixtures/page_section_object.rb
|
391
|
-
- spec/fixtures/screen_object.rb
|
392
|
-
- spec/fixtures/screen_section_object.rb
|
393
|
-
- spec/spec_helper.rb
|
394
|
-
- spec/testcentricity/elements/button_spec.rb
|
395
|
-
- spec/testcentricity/elements/checkbox_spec.rb
|
396
|
-
- spec/testcentricity/elements/image_spec.rb
|
397
|
-
- spec/testcentricity/elements/label_spec.rb
|
398
|
-
- spec/testcentricity/elements/list_spec.rb
|
399
|
-
- spec/testcentricity/elements/ui_element_spec.rb
|
400
|
-
- spec/testcentricity/mobile/appium_connect_spec.rb
|
401
|
-
- spec/testcentricity/mobile/screen_object_spec.rb
|
402
|
-
- spec/testcentricity/mobile/screen_section_object_spec.rb
|
403
|
-
- spec/testcentricity/version_spec.rb
|
404
|
-
- spec/testcentricity/web/browser_spec.rb
|
405
|
-
- spec/testcentricity/web/local_webdriver_spec.rb
|
406
|
-
- spec/testcentricity/web/mobile_webdriver_spec.rb
|
407
|
-
- spec/testcentricity/web/page_object_spec.rb
|
408
|
-
- spec/testcentricity/web/page_section_object_spec.rb
|
270
|
+
test_files: []
|
data/.gitignore
DELETED
@@ -1,40 +0,0 @@
|
|
1
|
-
# OSX folder stuff
|
2
|
-
.DS_Store
|
3
|
-
Thumbs.db
|
4
|
-
|
5
|
-
#IDE project files
|
6
|
-
.idea/
|
7
|
-
.settings
|
8
|
-
.project
|
9
|
-
|
10
|
-
/.bundle/
|
11
|
-
/.yardoc
|
12
|
-
/_yardoc/
|
13
|
-
/coverage/
|
14
|
-
/doc/
|
15
|
-
/pkg/
|
16
|
-
/spec/reports/
|
17
|
-
/tmp/
|
18
|
-
Gemfile*.lock
|
19
|
-
*gem
|
20
|
-
|
21
|
-
# rspec failure tracking
|
22
|
-
.rspec_status
|
23
|
-
|
24
|
-
# Ignore test-reports
|
25
|
-
reports/*.html
|
26
|
-
reports/*.xml
|
27
|
-
reports/*.json
|
28
|
-
reports/screenshots/
|
29
|
-
test-reports
|
30
|
-
capybara-*.html
|
31
|
-
debug.log
|
32
|
-
|
33
|
-
BrowserStackLocal
|
34
|
-
cbttunnel.jar
|
35
|
-
|
36
|
-
/.yardoc/
|
37
|
-
/local.log
|
38
|
-
.run/*.xml
|
39
|
-
|
40
|
-
echo coverage >> .gitignore
|
data/.rspec
DELETED
data/.rubocop.yml
DELETED
@@ -1,38 +0,0 @@
|
|
1
|
-
# See full list of defaults here: https://github.com/bbatsov/rubocop/blob/master/config/default.yml
|
2
|
-
# To see all cops used see here: https://github.com/bbatsov/rubocop/blob/master/config/enabled.yml
|
3
|
-
|
4
|
-
Documentation:
|
5
|
-
Enabled: false
|
6
|
-
|
7
|
-
AccessorMethodName:
|
8
|
-
Enabled: false
|
9
|
-
|
10
|
-
TrivialAccessors:
|
11
|
-
Enabled: false
|
12
|
-
|
13
|
-
RedundantReturn:
|
14
|
-
Enabled: false
|
15
|
-
|
16
|
-
Metrics/ModuleLength:
|
17
|
-
Enabled: false
|
18
|
-
|
19
|
-
Metrics/ClassLength:
|
20
|
-
Enabled: false
|
21
|
-
|
22
|
-
Metrics/LineLength:
|
23
|
-
Enabled: false
|
24
|
-
|
25
|
-
Metrics/MethodLength:
|
26
|
-
Enabled: false
|
27
|
-
|
28
|
-
Style/RegexpLiteral:
|
29
|
-
Enabled: false
|
30
|
-
|
31
|
-
Style/HashSyntax:
|
32
|
-
Enabled: false
|
33
|
-
|
34
|
-
Metrics/CyclomaticComplexity:
|
35
|
-
Enabled: false
|
36
|
-
|
37
|
-
Layout/EmptyLines:
|
38
|
-
Enabled: false
|
data/.ruby-version
DELETED
@@ -1 +0,0 @@
|
|
1
|
-
ruby-2.7.5
|
data/.simplecov
DELETED
data/CODE_OF_CONDUCT.md
DELETED
@@ -1,13 +0,0 @@
|
|
1
|
-
# Contributor Code of Conduct
|
2
|
-
|
3
|
-
As contributors and maintainers of this project, we pledge to respect all people who contribute through reporting issues, posting feature requests, updating documentation, submitting pull requests or patches, and other activities.
|
4
|
-
|
5
|
-
We are committed to making participation in this project a harassment-free experience for everyone, regardless of level of experience, gender, gender identity and expression, sexual orientation, disability, personal appearance, body size, race, ethnicity, age, or religion.
|
6
|
-
|
7
|
-
Examples of unacceptable behavior by participants include the use of sexual language or imagery, derogatory comments or personal attacks, trolling, public or private harassment, insults, or other unprofessional conduct.
|
8
|
-
|
9
|
-
Project maintainers have the right and responsibility to remove, edit, or reject comments, commits, code, wiki edits, issues, and other contributions that are not aligned to this Code of Conduct. Project maintainers who do not follow the Code of Conduct may be removed from the project team.
|
10
|
-
|
11
|
-
Instances of abusive, harassing, or otherwise unacceptable behavior may be reported by opening an issue or contacting one or more of the project maintainers.
|
12
|
-
|
13
|
-
This Code of Conduct is adapted from the [Contributor Covenant](http://contributor-covenant.org), version 1.0.0, available at [http://contributor-covenant.org/version/1/0/0/](http://contributor-covenant.org/version/1/0/0/)
|
data/Gemfile
DELETED
data/Rakefile
DELETED
@@ -1,63 +0,0 @@
|
|
1
|
-
require 'rubygems'
|
2
|
-
require 'cucumber'
|
3
|
-
require 'cucumber/rake/task'
|
4
|
-
require 'rake'
|
5
|
-
require 'rspec/core/rake_task'
|
6
|
-
require 'simplecov'
|
7
|
-
require 'yard'
|
8
|
-
|
9
|
-
|
10
|
-
desc 'Run required specs'
|
11
|
-
RSpec::Core::RakeTask.new(:required_specs) do |t|
|
12
|
-
t.rspec_opts = '--tag required'
|
13
|
-
end
|
14
|
-
|
15
|
-
|
16
|
-
desc 'Run web specs'
|
17
|
-
RSpec::Core::RakeTask.new(:web_specs) do |t|
|
18
|
-
t.rspec_opts = '--tag web'
|
19
|
-
end
|
20
|
-
|
21
|
-
|
22
|
-
desc 'Run Cucumber features on iOS simulator'
|
23
|
-
Cucumber::Rake::Task.new(:ios_sim) do |t|
|
24
|
-
t.profile = 'ios_sim'
|
25
|
-
end
|
26
|
-
|
27
|
-
|
28
|
-
desc 'Run Cucumber features on Android simulator'
|
29
|
-
Cucumber::Rake::Task.new(:android_sim) do |t|
|
30
|
-
t.profile = 'android_sim'
|
31
|
-
end
|
32
|
-
|
33
|
-
|
34
|
-
desc 'Run required specs and Cucumber features'
|
35
|
-
task required: [:required_specs, :android_sim, :ios_sim]
|
36
|
-
|
37
|
-
|
38
|
-
desc 'Run all specs and Cucumber features'
|
39
|
-
task all_specs: [:required_specs, :web_specs]
|
40
|
-
|
41
|
-
|
42
|
-
desc 'Run all specs and Cucumber features'
|
43
|
-
task all: [:required_specs, :web_specs, :android_sim, :ios_sim]
|
44
|
-
|
45
|
-
|
46
|
-
desc 'Update HTML docs'
|
47
|
-
YARD::Rake::YardocTask.new(:docs) do |t|
|
48
|
-
t.files = ['lib/**/*.rb']
|
49
|
-
end
|
50
|
-
|
51
|
-
|
52
|
-
desc 'Build and release new version'
|
53
|
-
task :release do
|
54
|
-
version = TestCentricity::VERSION
|
55
|
-
puts "Releasing #{version}, y/n?"
|
56
|
-
exit(1) unless $stdin.gets.chomp == 'y'
|
57
|
-
sh 'gem build testcentricity.gemspec && ' \
|
58
|
-
"gem push testcentricity-#{version}.gem"
|
59
|
-
end
|
60
|
-
|
61
|
-
|
62
|
-
desc 'Update docs, build gem, and push to RubyGems'
|
63
|
-
task ship_it: [:docs, :release]
|