testcentricity_web 2.0.19 → 2.0.20
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/README.md +15 -8
- data/lib/testcentricity_web.rb +1 -0
- data/lib/testcentricity_web/elements/cell_element.rb +10 -4
- data/lib/testcentricity_web/elements/cell_image.rb +8 -0
- data/lib/testcentricity_web/page_objects_helper.rb +14 -0
- data/lib/testcentricity_web/page_sections_helper.rb +14 -0
- data/lib/testcentricity_web/utility_helpers.rb +4 -0
- data/lib/testcentricity_web/version.rb +1 -1
- metadata +3 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 887763ca2d95c5b88e249c01f30d871f038a4a12
|
4
|
+
data.tar.gz: 8114ca1034dcd7cfb8c4ccb7e4c4611ba67cbbd2
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: db065227ba65aa2575f25ce037106d4afc261b7d255043b02d39a0e5189c724312e17621850afd52785ac00509c7c70dbafbe6d1fb8705f15ccc562a957571a3
|
7
|
+
data.tar.gz: eb304279080c4f738bf039bfe000bbd01b4a983d202710d419270d7656b4fd33487377b15103c9d9518170d7f8bf6d82c816a1e749cf9fdefc11c34b528a51f4
|
data/README.md
CHANGED
@@ -1070,8 +1070,6 @@ service(s) that you intend to connect with.
|
|
1070
1070
|
|
1071
1071
|
# BrowserStack iOS mobile browser profiles
|
1072
1072
|
bs_iphone: --profile bs_mobile BS_PLATFORM=MAC BS_BROWSER=iPhone
|
1073
|
-
bs_iphone7_plus: --profile bs_mobile BS_REAL_MOBILE="true" BS_DEVICE="iPhone 7 Plus"
|
1074
|
-
bs_iphone7: --profile bs_mobile BS_REAL_MOBILE="true" BS_DEVICE="iPhone 7"
|
1075
1073
|
bs_iphone6s_plus: --profile bs_iphone BS_DEVICE="iPhone 6S Plus"
|
1076
1074
|
bs_iphone6s: --profile bs_iphone BS_DEVICE="iPhone 6S"
|
1077
1075
|
bs_iphone6_plus: --profile bs_iphone BS_DEVICE="iPhone 6 Plus"
|
@@ -1084,22 +1082,31 @@ service(s) that you intend to connect with.
|
|
1084
1082
|
bs_ipad_air: --profile bs_ipad BS_DEVICE="iPad Air"
|
1085
1083
|
bs_ipad_mini: --profile bs_ipad BS_DEVICE="iPad Mini 4"
|
1086
1084
|
|
1085
|
+
# BrowserStack iOS real device mobile browser profiles
|
1086
|
+
bs_iphone_device: --profile bs_mobile BS_BROWSER=iPhone BS_REAL_MOBILE="true"
|
1087
|
+
bs_iphone7_plus: --profile bs_iphone_device BS_DEVICE="iPhone 7 Plus"
|
1088
|
+
bs_iphone7: --profile bs_iphone_device BS_DEVICE="iPhone 7"
|
1089
|
+
|
1087
1090
|
# BrowserStack Android mobile browser profiles
|
1088
1091
|
bs_android: --profile bs_mobile BS_PLATFORM=ANDROID BS_BROWSER=android
|
1089
|
-
bs_google_pixel: --profile bs_mobile BS_REAL_MOBILE="true" BS_DEVICE="Google Pixel"
|
1090
|
-
bs_nexus9: --profile bs_mobile BS_REAL_MOBILE="true" BS_DEVICE="Google Nexus 9"
|
1091
|
-
bs_nexus6: --profile bs_mobile BS_REAL_MOBILE="true" BS_DEVICE="Google Nexus 6"
|
1092
|
-
bs_galaxy_s7: --profile bs_mobile BS_REAL_MOBILE="true" BS_DEVICE="Samsung Galaxy S7"
|
1093
|
-
bs_galaxy_s6: --profile bs_mobile BS_REAL_MOBILE="true" BS_DEVICE="Samsung Galaxy S6"
|
1094
|
-
bs_galaxy_note4: --profile bs_mobile BS_REAL_MOBILE="true" BS_DEVICE="Samsung Galaxy Note 4"
|
1095
1092
|
bs_galaxy_s5: --profile bs_android BS_DEVICE="Samsung Galaxy S5"
|
1096
1093
|
bs_kindle_fire_hd89: --profile bs_android BS_DEVICE="Amazon Kindle Fire HD 8.9"
|
1097
1094
|
bs_kindle_fire_hdx7: --profile bs_android BS_DEVICE="Amazon Kindle Fire HDX 7"
|
1098
1095
|
bs_kindle_fire2: --profile bs_android BS_DEVICE="Amazon Kindle Fire 2"
|
1096
|
+
bs_nexus7: --profile bs_android BS_DEVICE="Google Nexus 7"
|
1099
1097
|
bs_nexus5: --profile bs_android BS_DEVICE="Google Nexus 5"
|
1100
1098
|
bs_moto_razr: --profile bs_android BS_DEVICE="Motorola Razr"
|
1101
1099
|
bs_sony_xperia: --profile bs_android BS_DEVICE="Sony Xperia Tipo"
|
1102
1100
|
|
1101
|
+
# BrowserStack Android real device mobile browser profiles
|
1102
|
+
bs_android_device: --profile bs_mobile BS_BROWSER=android BS_REAL_MOBILE="true"
|
1103
|
+
bs_google_pixel: --profile bs_android_device BS_DEVICE="Google Pixel"
|
1104
|
+
bs_nexus9: --profile bs_android_device BS_DEVICE="Google Nexus 9"
|
1105
|
+
bs_nexus6: --profile bs_android_device BS_DEVICE="Google Nexus 6"
|
1106
|
+
bs_galaxy_s7: --profile bs_android_device BS_DEVICE="Samsung Galaxy S7"
|
1107
|
+
bs_galaxy_s6: --profile bs_android_device BS_DEVICE="Samsung Galaxy S6"
|
1108
|
+
bs_galaxy_note4: --profile bs_android_device BS_DEVICE="Samsung Galaxy Note 4"
|
1109
|
+
|
1103
1110
|
|
1104
1111
|
#==============
|
1105
1112
|
# profiles for remotely hosted web browsers on the CrossBrowserTesting service
|
data/lib/testcentricity_web.rb
CHANGED
@@ -32,6 +32,7 @@ require 'testcentricity_web/elements/cell_element'
|
|
32
32
|
require 'testcentricity_web/elements/cell_button'
|
33
33
|
require 'testcentricity_web/elements/cell_checkbox'
|
34
34
|
require 'testcentricity_web/elements/cell_radio'
|
35
|
+
require 'testcentricity_web/elements/cell_image'
|
35
36
|
require 'testcentricity_web/elements/list_element'
|
36
37
|
require 'testcentricity_web/elements/list_button'
|
37
38
|
require 'testcentricity_web/elements/list_checkbox'
|
@@ -31,14 +31,20 @@ module TestCentricity
|
|
31
31
|
obj.click
|
32
32
|
end
|
33
33
|
|
34
|
+
def get_native_attribute(row, attrib)
|
35
|
+
obj, = find_cell_element(row)
|
36
|
+
cell_object_not_found_exception(obj, @type, row)
|
37
|
+
obj.get_native_attribute(attrib)
|
38
|
+
end
|
39
|
+
|
34
40
|
def get_value(row, visible = true)
|
35
41
|
obj, = find_cell_element(row, visible)
|
36
42
|
cell_object_not_found_exception(obj, @type, row)
|
37
43
|
case obj.tag_name.downcase
|
38
|
-
|
39
|
-
|
40
|
-
|
41
|
-
|
44
|
+
when 'input', 'select', 'textarea'
|
45
|
+
obj.value
|
46
|
+
else
|
47
|
+
obj.text
|
42
48
|
end
|
43
49
|
end
|
44
50
|
|
@@ -318,6 +318,20 @@ module TestCentricity
|
|
318
318
|
class_eval(%(def #{element_name};@#{element_name} ||= TestCentricity::CellRadio.new("#{element_name}", self, "#{locator}", :page, #{table}, #{column}, #{proxy});end))
|
319
319
|
end
|
320
320
|
|
321
|
+
# Declare and instantiate a cell image in a table column on this page object.
|
322
|
+
#
|
323
|
+
# @param element_name [Symbol] name of cell image object (as a symbol)
|
324
|
+
# @param locator [String] XPath expression that uniquely identifies cell image within row and column of parent table object
|
325
|
+
# @param table [Symbol] Name (as a symbol) of parent table object
|
326
|
+
# @param column [Integer] 1-based index of table column that contains the cell image object
|
327
|
+
# @example
|
328
|
+
# cell_image :ready_icon, "img[@class='ready']", :data_table, 3
|
329
|
+
# cell_image :send_icon, "img[@class='send']", :data_table, 3
|
330
|
+
#
|
331
|
+
def self.cell_image(element_name, locator, table, column)
|
332
|
+
class_eval(%(def #{element_name};@#{element_name} ||= TestCentricity::CellImage.new("#{element_name}", self, "#{locator}", :page, #{table}, #{column});end))
|
333
|
+
end
|
334
|
+
|
321
335
|
# Declare and instantiate a list button in a row of a list object on this page object.
|
322
336
|
#
|
323
337
|
# @param element_name [Symbol] name of list button object (as a symbol)
|
@@ -389,6 +389,20 @@ module TestCentricity
|
|
389
389
|
class_eval(%(def #{element_name};@#{element_name} ||= TestCentricity::CellRadio.new("#{element_name}", self, "#{locator}", :section, #{table}, #{column}, #{proxy});end))
|
390
390
|
end
|
391
391
|
|
392
|
+
# Declare and instantiate a cell image in a table column on this page object.
|
393
|
+
#
|
394
|
+
# @param element_name [Symbol] name of cell image object (as a symbol)
|
395
|
+
# @param locator [String] XPath expression that uniquely identifies cell image within row and column of parent table object
|
396
|
+
# @param table [Symbol] Name (as a symbol) of parent table object
|
397
|
+
# @param column [Integer] 1-based index of table column that contains the cell image object
|
398
|
+
# @example
|
399
|
+
# cell_image :ready_icon, "img[@class='ready']", :data_table, 3
|
400
|
+
# cell_image :send_icon, "img[@class='send']", :data_table, 3
|
401
|
+
#
|
402
|
+
def self.cell_image(element_name, locator, table, column)
|
403
|
+
class_eval(%(def #{element_name};@#{element_name} ||= TestCentricity::CellImage.new("#{element_name}", self, "#{locator}", :section, #{table}, #{column});end))
|
404
|
+
end
|
405
|
+
|
392
406
|
# Declare and instantiate a list button in a row of a list object on this section object.
|
393
407
|
#
|
394
408
|
# @param element_name [Symbol] name of list button object (as a symbol)
|
@@ -16,6 +16,10 @@ class String
|
|
16
16
|
raise ArgumentError.new("invalid value for Boolean: \"#{self}\"")
|
17
17
|
end
|
18
18
|
|
19
|
+
def string_between(marker1, marker2)
|
20
|
+
self[/#{Regexp.escape(marker1)}(.*?)#{Regexp.escape(marker2)}/m, 1]
|
21
|
+
end
|
22
|
+
|
19
23
|
def format_date_time(date_time_format)
|
20
24
|
return if self.blank?
|
21
25
|
new_date = DateTime.parse(self)
|
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.0.
|
4
|
+
version: 2.0.20
|
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: 2017-07-
|
11
|
+
date: 2017-07-13 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: bundler
|
@@ -211,6 +211,7 @@ files:
|
|
211
211
|
- lib/testcentricity_web/elements/cell_button.rb
|
212
212
|
- lib/testcentricity_web/elements/cell_checkbox.rb
|
213
213
|
- lib/testcentricity_web/elements/cell_element.rb
|
214
|
+
- lib/testcentricity_web/elements/cell_image.rb
|
214
215
|
- lib/testcentricity_web/elements/cell_radio.rb
|
215
216
|
- lib/testcentricity_web/elements/checkbox.rb
|
216
217
|
- lib/testcentricity_web/elements/file_field.rb
|