site_prism 3.7 → 3.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
  SHA256:
3
- metadata.gz: adf8cf393fc3ad828528159a54048e54c3c396f3743c79b10a75ea313ddd135c
4
- data.tar.gz: f2fb2ecb2f8942e3e59228994da32262a65b14a2c49f573468100f1aca799061
3
+ metadata.gz: c5deda0d9df9e83e2a66663a217cf5c434fd3ed25abae0d14778d99cd5db1c0f
4
+ data.tar.gz: 6c86aff27c00c5e91b01667f7da1f9ee6e2d33d4f95d18fbb0cfdd9fd44779c5
5
5
  SHA512:
6
- metadata.gz: aecf017750d915a617052242d8959af91ec1b154e5d394f2fa7df096649cf198052ecdf25cef22476f88682c45d71ff6c49c39262726d7d75ea33d07b751f47b
7
- data.tar.gz: e2ed8f07246c08e910fd870ecc9140f813619109b107ae6448d59f98176b84b6f50c58cc8609615e68f5ddd0e09076b3b30f906fe0647994d78ec4df7b2d1941
6
+ metadata.gz: 254398e151d390326bf085d0746391aedd247d1ed8bf47909d8fb87752b6cedd056ff32c14f324d5b33f4b922734ed01ec2467f64be59a8d97a07cf8aa002eea
7
+ data.tar.gz: 652781ebe825ed5f943ca0f8480a9b5fbd511e81e6c12d9ce95de7c3239073d4499f4165044c8c58888aeabf0cf2d9bc76e4ca6f2ae6baa6996093117577005a
data/LICENSE.md CHANGED
@@ -1,4 +1,4 @@
1
- Copyright (c) 2011-2019, The SitePrism team
1
+ Copyright (c) 2011-2021, The SitePrism team
2
2
 
3
3
  All rights reserved.
4
4
 
data/README.md CHANGED
@@ -11,17 +11,28 @@ Find the pretty documentation here: https://rdoc.info/gems/site_prism/frames
11
11
 
12
12
  Make sure to add your project/company to https://github.com/site-prism/site_prism/wiki/Who-is-using-SitePrism
13
13
 
14
+ ## Support
15
+
16
+ Support us with a monthly donation and help us continue our activities by supporting us as a [backer](https://opencollective.com/site-prism#backer)
17
+
18
+ Become a sponsor and get your logo on our README on Github with a link to your site. [How to Sponsor SitePrism?](https://opencollective.com/site-prism#sponsor)
19
+
20
+ Free Open Source software can only be maintained with the support of you. If you and/or your company find
21
+ value in SitePrism and would like to contribute financially to its ongoing maintenance and development,
22
+ then please do so. Visit the OpenCollective links above for more details.
23
+
14
24
  ## Developing / Contributing to SitePrism
15
25
 
16
26
  We love it when people want to get involved with our Open Source Project.
17
27
 
18
- We have a brief set of setup docs [HERE](https://github.com/site-prism/site_prism/blob/master/HACKING.md)
28
+ We have a brief set of setup docs [HERE](https://github.com/site-prism/site_prism/blob/main/HACKING.md)
19
29
 
20
30
  ## Supported Rubies / Browsers
21
31
 
22
- SitePrism is built and tested to work on Ruby 2.4 - 2.6. Ruby 2.3 (Now EOL), is supported but not tested against.
23
- If you are using SitePrism with Ruby 2.3 it is highly advisable to upgrade to a more modern Ruby
24
- such as 2.6 or 2.7, if for any other reason, to get a noticeable speed boost!
32
+ SitePrism is built and tested to work on Ruby 2.4 - 2.7. Ruby 2.4 (Now EOL), is supported but
33
+ this version will be removed from the Support Matrix in the coming months.
34
+ If you are using SitePrism with Ruby 2.4 it is highly advisable to upgrade to a more modern Ruby
35
+ such as 2.7, if for any other reason, to get a noticeable speed boost!
25
36
 
26
37
  SitePrism should run on all major browsers. The gem's integration tests are run on Chrome and Firefox.
27
38
 
@@ -1504,7 +1515,7 @@ the validations will be performed in the following order:
1504
1515
  **NB:** `SitePrism::Page` **used to** include a default load validation on
1505
1516
  `page.displayed?` however for v3 this has been removed. It is therefore
1506
1517
  necessary to re-define this if you want to retain the behaviour
1507
- from site_prism v2. See [UPGRADING.md](https://github.com/site-prism/site_prism/blob/master/UPGRADING.md#default-load-validations)
1518
+ from site_prism v2. See [UPGRADING.md](https://github.com/site-prism/site_prism/blob/main/UPGRADING.md#default-load-validations)
1508
1519
  for more info on this.
1509
1520
 
1510
1521
  ## Using Capybara Query Options
data/lib/site_prism.rb CHANGED
@@ -3,6 +3,8 @@
3
3
  require 'site_prism/error'
4
4
  require 'addressable/template'
5
5
 
6
+ # [SitePrism] namespace
7
+ # We autoload our files underneath here to provide a slightly more optimal load solution
6
8
  module SitePrism
7
9
  autoload :AddressableUrlMatcher, 'site_prism/addressable_url_matcher'
8
10
  autoload :DSL, 'site_prism/dsl'
@@ -4,6 +4,10 @@ require 'digest'
4
4
  require 'base64'
5
5
 
6
6
  module SitePrism
7
+ # [SitePrism::AddressableUrlMatcher]
8
+ # Used in a couple of places to allow users to ...
9
+ # Specify patterns for loading webpages
10
+ # Pass in hashable args or query parameters for loading dynamic pages
7
11
  class AddressableUrlMatcher
8
12
  attr_reader :pattern
9
13
 
@@ -43,12 +47,10 @@ module SitePrism
43
47
  def all_expected_mappings_match?(expected_mappings, actual_mappings)
44
48
  expected_mappings.all? do |key, expected_value|
45
49
  actual_value = actual_mappings[key.to_s]
46
- if expected_value.is_a?(Numeric)
47
- actual_value == expected_value.to_s
48
- elsif expected_value.is_a?(Regexp)
49
- actual_value.match(expected_value)
50
- else
51
- expected_value == actual_value
50
+ case expected_value
51
+ when Numeric; then actual_value == expected_value.to_s
52
+ when Regexp; then actual_value.match(expected_value)
53
+ else expected_value == actual_value
52
54
  end
53
55
  end
54
56
  end
@@ -1,8 +1,12 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module SitePrism
4
+ # [SitePrism::Deprecator]
4
5
  class Deprecator
5
6
  class << self
7
+ # @return SitePrism.logger.warn(msg)
8
+ # Tells the user that they are using old functionality, which needs removing in the
9
+ # next major version
6
10
  def deprecate(old, new = nil)
7
11
  if new
8
12
  warn("#{old} is being deprecated and should no longer be used. Use #{new} instead.")
@@ -13,6 +17,13 @@ module SitePrism
13
17
  warn("#{old} will be removed in SitePrism v4. You have been warned!")
14
18
  end
15
19
 
20
+ # @return SitePrism.logger.debug(msg)
21
+ # Tells the user that they are using functionality which is non-optimal
22
+ # The functionality should usually provide a reason for it being poor, as well as an
23
+ # optional way of upgrading to something different
24
+ #
25
+ # NB: As this is bubbled up at debug level, often users will not see this. So it will
26
+ # never be a candidate for removal directly
16
27
  def soft_deprecate(old, reason, new = nil)
17
28
  debug("The #{old} method is changing, as is SitePrism, and is now configurable.")
18
29
  debug("REASON: #{reason}.")
@@ -1,6 +1,13 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module SitePrism
4
+ # [SitePrism::DSL]
5
+ #
6
+ # This is the core Module Namespace for all of the public-facing DSL methods
7
+ # such as `element`. The code here is designed to be used through the defining
8
+ # of said items, and not to be instantiated directly.
9
+ #
10
+ # The whole package here can be thought of as [@api private]
4
11
  module DSL
5
12
  def self.included(klass)
6
13
  klass.extend ClassMethods
@@ -32,11 +39,6 @@ module SitePrism
32
39
  page.has_no_selector?(*find_args, **kwargs)
33
40
  end
34
41
 
35
- # The default waiting time set by Capybara's configuration settings.
36
- def wait_time
37
- Capybara.default_max_wait_time
38
- end
39
-
40
42
  # Prevent users from calling methods with blocks when they shouldn't be.
41
43
  #
42
44
  # Example (Triggering error):
@@ -92,21 +94,29 @@ module SitePrism
92
94
  #
93
95
  # If the hash is empty, then the hash is omitted from the payload sent
94
96
  # to Capybara, and the find / runtime arguments are sent alone.
97
+ #
98
+ # NB: If the +wait+ key is present in the options hash, even as false or 0, It will
99
+ # be set as the user-supplied value (So user error can be the cause for issues).
95
100
  def recombine_args(find_args, runtime_args, options)
96
101
  options.merge!(find_args.pop) if find_args.last.is_a? Hash
97
102
  options.merge!(runtime_args.pop) if runtime_args.last.is_a? Hash
98
- options[:wait] = wait_time unless wait_key_present?(options)
99
- end
100
-
101
- # Detect if the +wait+ key is present in the options hash.
102
- # Note that setting it to to false or 0, still will return true here.
103
- def wait_key_present?(options)
104
- options.key?(:wait)
103
+ options[:wait] = Capybara.default_max_wait_time unless options.key?(:wait)
105
104
  end
106
105
 
106
+ # SitePrism::DSL::ClassMethods
107
+ # This exposes all of the DSL definitions users will use when generating
108
+ # their POM classes.
109
+ #
110
+ # Many of these methods will be used in-line to allow users to generate a multitude of
111
+ # methods and locators for finding elements / sections on a page or section of a page
107
112
  module ClassMethods
108
113
  attr_reader :expected_items
109
114
 
115
+ # Creates an instance of a SitePrism Element - This will create several methods designed to
116
+ # Locate the element -> @return [Capybara::Node::Element]
117
+ # Check the elements presence or non-presence -> @return [Boolean]
118
+ # Wait for the elements to be present or not -> @return [TrueClass, SitePrism::Error]
119
+ # Validate certain properties about the element
110
120
  def element(name, *find_args)
111
121
  SitePrism::Deprecator.deprecate('Passing a block to :element') if block_given?
112
122
  build(:element, name, *find_args) do
@@ -118,6 +128,11 @@ module SitePrism
118
128
  end
119
129
  end
120
130
 
131
+ # Creates a enumerable instance of a SitePrism Element - This will create several methods designed to
132
+ # Locate the enumerable element -> @return [Capybara::Result]
133
+ # Check the elements presence or non-presence -> @return [Boolean]
134
+ # Wait for the elements to be present or not -> @return [TrueClass, SitePrism::Error]
135
+ # Validate certain properties about the elements
121
136
  def elements(name, *find_args)
122
137
  SitePrism::Deprecator.deprecate('Passing a block to :elements') if block_given?
123
138
  build(:elements, name, *find_args) do
@@ -129,10 +144,18 @@ module SitePrism
129
144
  end
130
145
  end
131
146
 
147
+ # Sets the `expected_items` iVar on a class. This property is used in conjunction with
148
+ # `all_there?` to provide a way of granularising the check made to only interrogate a sub-set
149
+ # of DSL defined items
132
150
  def expected_elements(*elements)
133
151
  @expected_items = elements
134
152
  end
135
153
 
154
+ # Creates an instance of a SitePrism Section - This will create several methods designed to
155
+ # Locate the section -> @return [SitePrism::Section]
156
+ # Check the section presence or non-presence -> @return [Boolean]
157
+ # Wait for the section to be present or not -> @return [TrueClass, SitePrism::Error]
158
+ # Validate certain properties about the section
136
159
  def section(name, *args, &block)
137
160
  section_class, find_args = extract_section_options(args, &block)
138
161
  build(:section, name, *find_args) do
@@ -144,6 +167,11 @@ module SitePrism
144
167
  end
145
168
  end
146
169
 
170
+ # Creates an enumerable instance of a SitePrism Section - This will create several methods designed to
171
+ # Locate the sections -> @return [Array]
172
+ # Check the sections presence or non-presence -> @return [Boolean]
173
+ # Wait for the sections to be present or not -> @return [TrueClass, SitePrism::Error]
174
+ # Validate certain properties about the section
147
175
  def sections(name, *args, &block)
148
176
  section_class, find_args = extract_section_options(args, &block)
149
177
  build(:sections, name, *find_args) do
@@ -170,11 +198,9 @@ module SitePrism
170
198
  end
171
199
 
172
200
  def mapped_items(legacy: true)
173
- if legacy
174
- old_mapped_items
175
- else
176
- new_mapped_items
177
- end
201
+ return old_mapped_items if legacy
202
+
203
+ new_mapped_items
178
204
  end
179
205
 
180
206
  private
@@ -189,13 +215,7 @@ module SitePrism
189
215
  end
190
216
 
191
217
  def new_mapped_items
192
- @new_mapped_items ||= {
193
- element: [],
194
- elements: [],
195
- section: [],
196
- sections: [],
197
- iframe: []
198
- }
218
+ @new_mapped_items ||= { element: [], elements: [], section: [], sections: [], iframe: [] }
199
219
  end
200
220
 
201
221
  def build(type, name, *find_args)
@@ -222,11 +242,9 @@ module SitePrism
222
242
  end
223
243
 
224
244
  def create_helper_method(proposed_method_name, *find_args)
225
- if find_args.empty?
226
- create_error_method(proposed_method_name)
227
- else
228
- yield
229
- end
245
+ return create_error_method(proposed_method_name) if find_args.empty?
246
+
247
+ yield
230
248
  end
231
249
 
232
250
  def create_existence_checker(element_name, *find_args)
@@ -275,6 +293,10 @@ module SitePrism
275
293
 
276
294
  def create_error_method(name)
277
295
  SitePrism.logger.error("#{name} has come from an item with no locators.")
296
+ SitePrism::Deprecator.soft_deprecate(
297
+ 'DSL definition with no find_args',
298
+ 'All DSL elements should have find_args'
299
+ )
278
300
  define_method(name) { raise SitePrism::InvalidElementError }
279
301
  end
280
302
 
@@ -310,7 +332,7 @@ module SitePrism
310
332
  def extract_section_options(args, &block)
311
333
  if args.first.is_a?(Class)
312
334
  klass = args.shift
313
- section_class = klass if klass.ancestors.include?(SitePrism::Section)
335
+ section_class = klass if klass <= SitePrism::Section
314
336
  end
315
337
 
316
338
  section_class = deduce_section_class(section_class, &block)
@@ -323,20 +345,23 @@ module SitePrism
323
345
  klass = Class.new(klass || SitePrism::Section, &block) if block_given?
324
346
  return klass if klass
325
347
 
326
- raise ArgumentError, "You should provide descendant of \
327
- SitePrism::Section class or/and a block as the second argument."
348
+ raise ArgumentError, 'You should provide descendant of SitePrism::Section class or/and a block as the second argument.'
328
349
  end
329
350
 
330
351
  def deduce_search_arguments(section_class, args)
331
352
  extract_search_arguments(args) ||
332
353
  extract_search_arguments(section_class.default_search_arguments) ||
333
- raise(ArgumentError, "You should provide search arguments \
334
- in section creation or set_default_search_arguments within section class")
354
+ invalidate_search_arguments!
335
355
  end
336
356
 
337
357
  def extract_search_arguments(args)
338
358
  args if args && !args.empty?
339
359
  end
360
+
361
+ def invalidate_search_arguments!
362
+ SitePrism.logger.error('Could not deduce search_arguments')
363
+ raise(ArgumentError, 'search arguments are needed in `section` definition or alternatively use `set_default_search_arguments`')
364
+ end
340
365
  end
341
366
  end
342
367
  end
@@ -1,6 +1,11 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module SitePrism
4
+ # [SitePrism::ElementChecker]
5
+ #
6
+ # This allows users to run `#all_there?` checks on an instance.
7
+ #
8
+ # NB: This functionality is being removed in v4 in favour of the all_there gem
4
9
  module ElementChecker
5
10
  # Runnable in the scope of any SitePrism::Page or Section.
6
11
  # Returns +true+ when "every item" that is being checked is
@@ -21,10 +26,9 @@ module SitePrism
21
26
  # Override: 'one' => Perform one recursive dive into all section/sections
22
27
  # items and call #all_there? on all of those items too.
23
28
  def all_there?(recursion: :none)
24
- if recursion == :none
25
- elements_to_check.all? { |name| there?(name) }
26
- elsif recursion == :one
27
- all_there_with_recursion
29
+ case recursion
30
+ when :none; then elements_to_check.all? { |name| there?(name) }
31
+ when :one; then all_there_with_recursion
28
32
  else
29
33
  SitePrism.logger.debug("Input value '#{recursion}'. Valid values are :none or :one.")
30
34
  SitePrism.logger.error('Invalid recursion setting, Will not run #all_there?.')
@@ -1,6 +1,13 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module SitePrism
4
+ # [SitePrism::Loadable]
5
+ #
6
+ # SitePrism Loadable's are defined as checks or waiters which "must" pass before
7
+ # the rest of the loading logic can be performed on a class or section.
8
+ #
9
+ # Loadable's are primarily used with the `#load` method which will auto-execute them all
10
+ # in their defined order. But they can be used dynamically wherever desired.
4
11
  module Loadable
5
12
  module ClassMethods
6
13
  # The list of load_validations.
@@ -66,11 +66,11 @@ module SitePrism
66
66
  raise SitePrism::NoUrlMatcherForPageError unless url_matcher
67
67
 
68
68
  expected_mappings = args.last.is_a?(::Hash) ? args.pop : {}
69
- seconds = args&.first || wait_time
69
+ seconds = args&.first || Capybara.default_max_wait_time
70
70
  Waiter.wait_until_true(seconds) { url_matches?(expected_mappings) }
71
71
  end
72
72
 
73
- def url_matches(seconds = wait_time)
73
+ def url_matches(seconds = Capybara.default_max_wait_time)
74
74
  return unless displayed?(seconds)
75
75
  return regexp_backed_matches if url_matcher.is_a?(Regexp)
76
76
 
@@ -19,9 +19,7 @@ module SitePrism
19
19
  RSpec::Matchers.define(matcher) do |*args|
20
20
  match { |actual| actual.public_send(object_method, *args) }
21
21
  match_when_negated do |actual|
22
- if actual.respond_to?(negated_object_method)
23
- return actual.public_send(negated_object_method, *args)
24
- end
22
+ return actual.public_send(negated_object_method, *args) if actual.respond_to?(negated_object_method)
25
23
 
26
24
  SitePrism.logger.debug(warning)
27
25
  !actual.public_send(object_method, *args)
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module SitePrism
4
- VERSION = '3.7'
4
+ VERSION = '3.7.1'
5
5
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: site_prism
3
3
  version: !ruby/object:Gem::Version
4
- version: '3.7'
4
+ version: 3.7.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - Luke Hill
@@ -9,7 +9,7 @@ authors:
9
9
  autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
- date: 2020-10-15 00:00:00.000000000 Z
12
+ date: 2021-02-19 00:00:00.000000000 Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: addressable
@@ -65,14 +65,14 @@ dependencies:
65
65
  requirements:
66
66
  - - "~>"
67
67
  - !ruby/object:Gem::Version
68
- version: '3.1'
68
+ version: '4.0'
69
69
  type: :development
70
70
  prerelease: false
71
71
  version_requirements: !ruby/object:Gem::Requirement
72
72
  requirements:
73
73
  - - "~>"
74
74
  - !ruby/object:Gem::Version
75
- version: '3.1'
75
+ version: '4.0'
76
76
  - !ruby/object:Gem::Dependency
77
77
  name: pry-byebug
78
78
  requirement: !ruby/object:Gem::Requirement
@@ -91,72 +91,72 @@ dependencies:
91
91
  name: rake
92
92
  requirement: !ruby/object:Gem::Requirement
93
93
  requirements:
94
- - - ">="
94
+ - - "~>"
95
95
  - !ruby/object:Gem::Version
96
- version: '12.3'
96
+ version: '13.0'
97
97
  type: :development
98
98
  prerelease: false
99
99
  version_requirements: !ruby/object:Gem::Requirement
100
100
  requirements:
101
- - - ">="
101
+ - - "~>"
102
102
  - !ruby/object:Gem::Version
103
- version: '12.3'
103
+ version: '13.0'
104
104
  - !ruby/object:Gem::Dependency
105
105
  name: rspec
106
106
  requirement: !ruby/object:Gem::Requirement
107
107
  requirements:
108
108
  - - "~>"
109
109
  - !ruby/object:Gem::Version
110
- version: '3.8'
110
+ version: '3.9'
111
111
  type: :development
112
112
  prerelease: false
113
113
  version_requirements: !ruby/object:Gem::Requirement
114
114
  requirements:
115
115
  - - "~>"
116
116
  - !ruby/object:Gem::Version
117
- version: '3.8'
117
+ version: '3.9'
118
118
  - !ruby/object:Gem::Dependency
119
119
  name: rubocop
120
120
  requirement: !ruby/object:Gem::Requirement
121
121
  requirements:
122
122
  - - "~>"
123
123
  - !ruby/object:Gem::Version
124
- version: 0.83.0
124
+ version: 0.90.0
125
125
  type: :development
126
126
  prerelease: false
127
127
  version_requirements: !ruby/object:Gem::Requirement
128
128
  requirements:
129
129
  - - "~>"
130
130
  - !ruby/object:Gem::Version
131
- version: 0.83.0
131
+ version: 0.90.0
132
132
  - !ruby/object:Gem::Dependency
133
133
  name: rubocop-performance
134
134
  requirement: !ruby/object:Gem::Requirement
135
135
  requirements:
136
136
  - - "~>"
137
137
  - !ruby/object:Gem::Version
138
- version: 1.5.1
138
+ version: 1.8.1
139
139
  type: :development
140
140
  prerelease: false
141
141
  version_requirements: !ruby/object:Gem::Requirement
142
142
  requirements:
143
143
  - - "~>"
144
144
  - !ruby/object:Gem::Version
145
- version: 1.5.1
145
+ version: 1.8.1
146
146
  - !ruby/object:Gem::Dependency
147
147
  name: rubocop-rspec
148
148
  requirement: !ruby/object:Gem::Requirement
149
149
  requirements:
150
150
  - - "~>"
151
151
  - !ruby/object:Gem::Version
152
- version: 1.33.0
152
+ version: 1.38.0
153
153
  type: :development
154
154
  prerelease: false
155
155
  version_requirements: !ruby/object:Gem::Requirement
156
156
  requirements:
157
157
  - - "~>"
158
158
  - !ruby/object:Gem::Version
159
- version: 1.33.0
159
+ version: 1.38.0
160
160
  - !ruby/object:Gem::Dependency
161
161
  name: selenium-webdriver
162
162
  requirement: !ruby/object:Gem::Requirement
@@ -197,14 +197,14 @@ dependencies:
197
197
  requirements:
198
198
  - - "~>"
199
199
  - !ruby/object:Gem::Version
200
- version: '4.1'
200
+ version: '4.3'
201
201
  type: :development
202
202
  prerelease: false
203
203
  version_requirements: !ruby/object:Gem::Requirement
204
204
  requirements:
205
205
  - - "~>"
206
206
  - !ruby/object:Gem::Version
207
- version: '4.1'
207
+ version: '4.3'
208
208
  description: SitePrism gives you a simple, clean and semantic DSL for describing your
209
209
  site. SitePrism implements the Page Object Model pattern on top of Capybara.
210
210
  email:
@@ -236,7 +236,7 @@ licenses:
236
236
  - BSD-3-Clause
237
237
  metadata:
238
238
  bug_tracker_uri: https://github.com/site-prism/site_prism/issues
239
- changelog_uri: https://github.com/site-prism/site_prism/blob/master/CHANGELOG.md
239
+ changelog_uri: https://github.com/site-prism/site_prism/blob/main/CHANGELOG.md
240
240
  source_code_uri: https://github.com/site-prism/site_prism
241
241
  post_install_message:
242
242
  rdoc_options: []
@@ -253,7 +253,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
253
253
  - !ruby/object:Gem::Version
254
254
  version: '0'
255
255
  requirements: []
256
- rubygems_version: 3.0.6
256
+ rubygems_version: 3.0.8
257
257
  signing_key:
258
258
  specification_version: 4
259
259
  summary: A Page Object Model DSL for Capybara