minitest-utils 0.4.4 → 0.4.5

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: a99a19ba55c65932adf23dbac70bb1c4dd9c5d6ac2873ac68ee4a16587a33a7b
4
- data.tar.gz: d8c351c71b8322a6aad1402495e74f5820a613f32982b9830f3d79fa398af51f
3
+ metadata.gz: cafac996d26a83dd52cab2251f1c2e2d7cae70ef30d382a72061945ab343f29f
4
+ data.tar.gz: ec09d038b0d0e95729038894f549fb81f440f86c21da502a05aca821f4924315
5
5
  SHA512:
6
- metadata.gz: a3dc2f9ba2a9fab1d7c631210d02a43f521ba6634d9d4cdc53f6e4f24ff9754cef17379eb7b6e9ca77627d249bf2b02436a32319a9f7086c4690bf427d5f78fd
7
- data.tar.gz: e6b70cdd8e30e1cf2019e3c439c0eaf258ec16578e27f1053bae3086ed3a0d7cba8d661aa7a453508cc406415703632cc463b7f72d832aedcc4ba2faa5e035a4
6
+ metadata.gz: eef226b50750e7ebc85861059679783dfbfce05a74909b8f15d0680ea59e930e4f580f976653d9759c3b6c3b66d0feb369f00e0688290754e61d0732be1fe080
7
+ data.tar.gz: 7ec28ba64bbf01f8bce06bbcb8c6010eb96070440f170c98de21454f61ffe45af620fec8a610a7a24b3e039ecfa7639e3068618f75aef81a93d8f6e9b392f091
data/.rubocop.yml ADDED
@@ -0,0 +1,17 @@
1
+ ---
2
+ inherit_gem:
3
+ rubocop-fnando: .rubocop.yml
4
+
5
+ AllCops:
6
+ TargetRubyVersion: 2.6
7
+
8
+ Metrics/LineLength:
9
+ Exclude:
10
+ - test/**/*
11
+
12
+ Metrics/AbcSize:
13
+ Enabled: false
14
+
15
+ Style/GlobalVars:
16
+ Exclude:
17
+ - test/minitest/utils/let_test.rb
data/Gemfile CHANGED
@@ -1,4 +1,6 @@
1
- source 'https://rubygems.org'
1
+ # frozen_string_literal: true
2
+
3
+ source "https://rubygems.org"
2
4
 
3
5
  # Specify your gem's dependencies in minitest-utils.gemspec
4
6
  gemspec
data/Rakefile CHANGED
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true
2
+
1
3
  require "bundler/gem_tasks"
2
4
  require "rake/testtask"
3
5
 
@@ -8,4 +10,4 @@ Rake::TestTask.new(:test) do |t|
8
10
  t.warning = false
9
11
  end
10
12
 
11
- task :default => :test
13
+ task default: :test
data/bin/console CHANGED
@@ -1,4 +1,5 @@
1
1
  #!/usr/bin/env ruby
2
+ # frozen_string_literal: true
2
3
 
3
4
  require "bundler/setup"
4
5
  require "minitest/utils"
data/bin/rake CHANGED
@@ -1,4 +1,6 @@
1
1
  #!/usr/bin/env ruby
2
+ # frozen_string_literal: true
3
+
2
4
  #
3
5
  # This file was generated by Bundler.
4
6
  #
@@ -6,11 +8,11 @@
6
8
  # this file is here to facilitate running it.
7
9
  #
8
10
 
9
- require 'pathname'
10
- ENV['BUNDLE_GEMFILE'] ||= File.expand_path("../../Gemfile",
11
- Pathname.new(__FILE__).realpath)
11
+ require "pathname"
12
+ ENV["BUNDLE_GEMFILE"] ||= File.expand_path("../../Gemfile",
13
+ Pathname.new(__FILE__).realpath)
12
14
 
13
- require 'rubygems'
14
- require 'bundler/setup'
15
+ require "rubygems"
16
+ require "bundler/setup"
15
17
 
16
- load Gem.bin_path('rake', 'rake')
18
+ load Gem.bin_path("rake", "rake")
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true
2
+
1
3
  module Minitest
2
4
  module Utils
3
5
  require "minitest"
@@ -7,18 +9,14 @@ module Minitest
7
9
  require "minitest/utils/test_notifier_reporter"
8
10
 
9
11
  load_lib = lambda do |path, &block|
10
- begin
11
- require path
12
- block.call if block
13
- true
14
- rescue LoadError
15
- false
16
- end
12
+ require path
13
+ block&.call
14
+ true
15
+ rescue LoadError
16
+ false
17
17
  end
18
18
 
19
- unless load_lib.call "mocha/minitest"
20
- load_lib.call "mocha/mini_test"
21
- end
19
+ load_lib.call "mocha/mini_test" unless load_lib.call "mocha/minitest"
22
20
 
23
21
  load_lib.call "capybara"
24
22
 
@@ -1,9 +1,14 @@
1
+ # frozen_string_literal: true
2
+
1
3
  gem "selenium-webdriver"
2
4
  gem "chromedriver-helper"
3
5
 
4
6
  Capybara.register_driver :chrome do |app|
5
- Capybara::Selenium::Driver.new app, browser: :chrome,
6
- options: Selenium::WebDriver::Chrome::Options.new(args: %w[headless disable-gpu])
7
+ options = Selenium::WebDriver::Chrome::Options.new(
8
+ args: %w[headless disable-gpu]
9
+ )
10
+
11
+ Capybara::Selenium::Driver.new app, browser: :chrome, options: options
7
12
  end
8
13
 
9
14
  Capybara.javascript_driver = :chrome
@@ -1,10 +1,15 @@
1
+ # frozen_string_literal: true
2
+
1
3
  gem "launchy"
2
4
 
3
5
  module Minitest
4
6
  class Test
5
7
  teardown do
6
8
  next unless Capybara.current_driver == Capybara.javascript_driver
7
- save_and_open_screenshot if failures.any?
9
+
10
+ return unless failures.any?
11
+
12
+ save_and_open_screenshot # rubocop:disable Lint/Debugger
8
13
  end
9
14
  end
10
15
  end
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true
2
+
1
3
  module Minitest
2
4
  module Utils
3
5
  module Assertions
@@ -17,7 +19,7 @@ module Minitest
17
19
  include ::Minitest::Utils::Assertions
18
20
 
19
21
  def self.test(name, &block)
20
- test_name = "test_#{name.gsub(/\s+/,'_')}".to_sym
22
+ test_name = "test_#{name.gsub(/\s+/, '_')}".to_sym
21
23
  defined = method_defined? test_name
22
24
 
23
25
  raise "#{test_name} is already defined in #{self}" if defined
@@ -55,12 +57,23 @@ module Minitest
55
57
  include mod
56
58
  end
57
59
 
58
- def self.let(name, &block)
59
- target = instance_method(name) rescue nil
60
+ def self.let(name, &block) # rubocop:disable Metrics/MethodLength
61
+ target = begin
62
+ instance_method(name)
63
+ rescue StandardError
64
+ nil
65
+ end
66
+
60
67
  message = "Cannot define let(:#{name});"
61
68
 
62
- raise ArgumentError, "#{message} method cannot begin with 'test'." if name.to_s.start_with?("test")
63
- raise ArgumentError, "#{message} method already defined by #{target.owner}." if target
69
+ if name.to_s.start_with?("test")
70
+ raise ArgumentError, "#{message} method cannot begin with 'test'."
71
+ end
72
+
73
+ if target
74
+ raise ArgumentError,
75
+ "#{message} method already defined by #{target.owner}."
76
+ end
64
77
 
65
78
  define_method(name) do
66
79
  @_memoized ||= {}
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true
2
+
1
3
  module Minitest
2
4
  module Utils
3
5
  module UrlHelpers
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true
2
+
1
3
  require "capybara/rails"
2
4
 
3
5
  module ActionDispatch
@@ -9,7 +11,7 @@ module ActionDispatch
9
11
  Capybara.use_default_driver
10
12
  end
11
13
 
12
- def self.use_javascript!(raise_on_javascript_errors: true)
14
+ def self.use_javascript!(raise_on_javascript_errors: true) # rubocop:disable Metrics/MethodLength
13
15
  setup do
14
16
  Capybara.current_driver = Capybara.javascript_driver
15
17
  end
@@ -18,13 +20,17 @@ module ActionDispatch
18
20
  next if failures.any?
19
21
  next unless raise_on_javascript_errors
20
22
 
21
- errors = page.driver.browser.manage.logs.get(:browser).select {|log| log.level == "SEVERE" }
23
+ errors = page.driver.browser.manage.logs.get(:browser).select do |log|
24
+ log.level == "SEVERE"
25
+ end
26
+
22
27
  next unless errors.any?
23
28
 
24
29
  messages = errors
25
- .map(&:message)
26
- .map {|message| message[/(\d+:\d+ .*?)$/, 1] }
27
- .join("\n")
30
+ .map(&:message)
31
+ .map {|message| message[/(\d+:\d+ .*?)$/, 1] }
32
+ .join("\n")
33
+
28
34
  raise "JavaScript Errors\n#{messages}"
29
35
  end
30
36
  end
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true
2
+
1
3
  module Minitest
2
4
  module Utils
3
5
  module Locale
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true
2
+
1
3
  require "rails/railtie"
2
4
 
3
5
  module Minitest
@@ -1,19 +1,21 @@
1
+ # frozen_string_literal: true
2
+
1
3
  module Minitest
2
4
  module Utils
3
- class Reporter < Minitest::StatisticsReporter
5
+ class Reporter < Minitest::StatisticsReporter # rubocop:disable Metrics/ClassLength
4
6
  COLOR_FOR_RESULT_CODE = {
5
7
  "." => :green,
6
8
  "E" => :red,
7
9
  "F" => :red,
8
10
  "S" => :yellow
9
- }
11
+ }.freeze
10
12
 
11
13
  COLOR = {
12
14
  red: 31,
13
15
  green: 32,
14
16
  yellow: 33,
15
17
  blue: 34
16
- }
18
+ }.freeze
17
19
 
18
20
  def initialize(*)
19
21
  super
@@ -33,7 +35,7 @@ module Minitest
33
35
  io.puts
34
36
  end
35
37
 
36
- def report
38
+ def report # rubocop:disable Metrics/MethodLength
37
39
  super
38
40
  io.sync = true
39
41
 
@@ -45,29 +47,38 @@ module Minitest
45
47
  color = :red if failing_results.any?
46
48
 
47
49
  if failing_results.any? || skipped_results.any?
48
- failing_results.each.with_index(1) {|result, index| display_failing(result, index) }
49
- skipped_results.each.with_index(failing_results.size + 1) {|result, index| display_skipped(result, index) }
50
+ failing_results.each.with_index(1) do |result, index|
51
+ display_failing(result, index)
52
+ end
53
+
54
+ skipped_results
55
+ .each
56
+ .with_index(failing_results.size + 1) do |result, index|
57
+ display_skipped(result, index)
58
+ end
50
59
  end
51
60
 
52
61
  io.print "\n\n"
53
62
  io.puts statistics
54
63
  io.puts color(summary, color)
55
64
 
56
- if failing_results.any?
57
- io.puts "\nFailed Tests:\n"
58
- failing_results.each {|result| display_replay_command(result) }
59
- io.puts "\n\n"
60
- end
61
- end
65
+ return unless failing_results.any?
62
66
 
63
- private
67
+ io.puts "\nFailed Tests:\n"
68
+ failing_results.each {|result| display_replay_command(result) }
69
+ io.puts "\n\n"
70
+ end
64
71
 
65
- def statistics
66
- "Finished in %.6fs, %.4f runs/s, %.4f assertions/s." %
67
- [total_time, count / total_time, assertions / total_time]
72
+ private def statistics
73
+ format(
74
+ "Finished in %.6fs, %.4f runs/s, %.4f assertions/s.",
75
+ total_time,
76
+ count / total_time,
77
+ assertions / total_time
78
+ )
68
79
  end
69
80
 
70
- def summary # :nodoc:
81
+ private def summary # :nodoc:
71
82
  [
72
83
  pluralize("run", count),
73
84
  pluralize("assertion", assertions),
@@ -77,40 +88,37 @@ module Minitest
77
88
  ].join(", ")
78
89
  end
79
90
 
80
- def indent(text)
91
+ private def indent(text)
81
92
  text.gsub(/^/, " ")
82
93
  end
83
94
 
84
- def display_failing(result, index)
95
+ private def display_failing(result, index)
85
96
  backtrace = backtrace(result.failure.backtrace)
86
97
  message = result.failure.message
87
98
  message = message.lines.tap(&:pop).join.chomp if result.error?
88
99
 
89
- str = "\n\n"
90
- str << color("%4d) %s" % [index, result_name(result.name)])
91
- str << "\n" << color(indent(message), :red)
92
- str << "\n" << color(backtrace, :blue)
93
- io.print str
100
+ output = ["\n\n"]
101
+ output << color(format("%4d) %s", index, result_name(result.name)))
102
+ output << "\n" << color(indent(message), :red)
103
+ output << "\n" << color(backtrace, :blue)
104
+ io.print output.join
94
105
  end
95
106
 
96
- def display_skipped(result, index)
107
+ private def display_skipped(result, index)
97
108
  location = location(result.failure.location)
98
109
  str = "\n\n"
99
- str << color("%4d) %s [SKIPPED]" % [index, result_name(result.name)], :yellow)
110
+ str << color(
111
+ format("%4d) %s [SKIPPED]", index, result_name(result.name)), :yellow
112
+ )
100
113
  str << "\n" << indent(color(location, :yellow))
101
114
  io.print str
102
115
  end
103
116
 
104
- def display_replay_command(result)
117
+ private def display_replay_command(result)
105
118
  location, line = find_test_file(result)
106
119
  return if location.empty?
107
120
 
108
- command = if defined?(Rails) && Rails.version >= "5.0.0"
109
- %[bin/rails test #{location}:#{line}]
110
- else
111
- bundle = "bundle exec " if defined?(Bundler)
112
- %[#{bundle}rake TEST=#{location} TESTOPTS="--name=#{result.name}"]
113
- end
121
+ command = build_test_command(location, line, result)
114
122
 
115
123
  str = "\n"
116
124
  str << color(command, :red)
@@ -118,49 +126,53 @@ module Minitest
118
126
  io.print str
119
127
  end
120
128
 
121
- def find_test_file(result)
129
+ private def find_test_file(result)
122
130
  location, line = if result.respond_to?(:source_location)
123
131
  result.source_location
124
132
  else
125
133
  result.method(result.name).source_location
126
134
  end
127
135
 
128
- location = location.gsub(%r[^.*?/((?:test|spec)/.*?)$], "\\1")
136
+ location = location.gsub(%r{^.*?/((?:test|spec)/.*?)$}, "\\1")
129
137
 
130
138
  [location, line]
131
139
  end
132
140
 
133
- def backtrace(backtrace)
134
- backtrace = filter_backtrace(backtrace).map {|line| location(line, true) }
141
+ private def backtrace(backtrace)
142
+ backtrace = filter_backtrace(backtrace).map do |line|
143
+ location(line, true)
144
+ end
145
+
135
146
  return if backtrace.empty?
147
+
136
148
  indent(backtrace.join("\n")).gsub(/^(\s+)/, "\\1# ")
137
149
  end
138
150
 
139
- def location(location, include_line_number = false)
151
+ private def location(location, include_line_number = false)
140
152
  regex = include_line_number ? /^([^:]+:\d+)/ : /^([^:]+)/
141
153
  location = File.expand_path(location[regex, 1])
142
154
 
143
155
  return location unless location.start_with?(Dir.pwd)
144
156
 
145
- location.gsub(%r[^#{Regexp.escape(Dir.pwd)}/], "")
157
+ location.gsub(%r{^#{Regexp.escape(Dir.pwd)}/}, "")
146
158
  end
147
159
 
148
- def filter_backtrace(backtrace)
160
+ private def filter_backtrace(backtrace)
149
161
  Minitest.backtrace_filter.filter(backtrace)
150
162
  end
151
163
 
152
- def result_name(name)
164
+ private def result_name(name)
153
165
  name
154
166
  .gsub(/^test(_\d+)?_/, "")
155
167
  .gsub(/_/, " ")
156
168
  end
157
169
 
158
- def print_result_code(result_code)
170
+ private def print_result_code(result_code)
159
171
  result_code = color(result_code, COLOR_FOR_RESULT_CODE[result_code])
160
172
  io.print result_code
161
173
  end
162
174
 
163
- def color(string, color = :default)
175
+ private def color(string, color = :default)
164
176
  if color_enabled?
165
177
  color = COLOR.fetch(color, 0)
166
178
  "\e[#{color}m#{string}\e[0m"
@@ -169,11 +181,11 @@ module Minitest
169
181
  end
170
182
  end
171
183
 
172
- def color_enabled?
184
+ private def color_enabled?
173
185
  @color_enabled
174
186
  end
175
187
 
176
- def pluralize(word, count)
188
+ private def pluralize(word, count)
177
189
  case count
178
190
  when 0
179
191
  "no #{word}s"
@@ -183,6 +195,21 @@ module Minitest
183
195
  "#{count} #{word}s"
184
196
  end
185
197
  end
198
+
199
+ private def running_rails?
200
+ defined?(Rails) &&
201
+ Rails.respond_to?(:version) &&
202
+ Rails.version >= "5.0.0"
203
+ end
204
+
205
+ private def build_test_command(location, line, result)
206
+ if running_rails?
207
+ %[bin/rails test #{location}:#{line}]
208
+ else
209
+ bundle = "bundle exec " if defined?(Bundler)
210
+ %[#{bundle}rake TEST=#{location} TESTOPTS="--name=#{result.name}"]
211
+ end
212
+ end
186
213
  end
187
214
  end
188
215
  end
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true
2
+
1
3
  DatabaseCleaner[:active_record].strategy = :truncation
2
4
 
3
5
  module Minitest
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true
2
+
1
3
  module Minitest
2
4
  class Test
3
5
  include FactoryBot::Syntax::Methods
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true
2
+
1
3
  module Minitest
2
4
  class Test
3
5
  include FactoryGirl::Syntax::Methods
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true
2
+
1
3
  require "webmock/minitest"
2
4
 
3
5
  WebMock.disable_net_connect!
@@ -1,15 +1,16 @@
1
+ # frozen_string_literal: true
2
+
1
3
  module Minitest
2
4
  module Utils
3
5
  class TestNotifierReporter < Minitest::StatisticsReporter
4
6
  def report
5
7
  super
6
8
 
7
- stats = TestNotifier::Stats.new(:minitest, {
8
- count: count,
9
- assertions: assertions,
10
- failures: failures,
11
- errors: errors
12
- })
9
+ stats = TestNotifier::Stats.new(:minitest,
10
+ count: count,
11
+ assertions: assertions,
12
+ failures: failures,
13
+ errors: errors)
13
14
 
14
15
  TestNotifier.notify(status: stats.status, message: stats.message)
15
16
  end
@@ -1,5 +1,7 @@
1
+ # frozen_string_literal: true
2
+
1
3
  module Minitest
2
4
  module Utils
3
- VERSION = "0.4.4".freeze
5
+ VERSION = "0.4.5"
4
6
  end
5
7
  end
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true
2
+
1
3
  require "minitest/utils/reporter"
2
4
  require "minitest/utils/test_notifier_reporter"
3
5
 
@@ -6,6 +8,9 @@ module Minitest
6
8
  reporters = Minitest.reporter.reporters
7
9
  reporters.clear
8
10
  reporters << Minitest::Utils::Reporter.new(options[:io], options)
9
- reporters << Minitest::Utils::TestNotifierReporter.new(options[:io], options) if defined?(TestNotifier)
11
+
12
+ return unless defined?(TestNotifier)
13
+
14
+ reporters << TestNotifierReporter.new(options[:io], options)
10
15
  end
11
16
  end
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true
2
+
1
3
  require "./lib/minitest/utils/version"
2
4
 
3
5
  Gem::Specification.new do |spec|
@@ -9,13 +11,17 @@ Gem::Specification.new do |spec|
9
11
  spec.description = spec.summary
10
12
  spec.homepage = "http://github.com/fnando/minitest-utils"
11
13
 
12
- spec.files = `git ls-files -z`.split("\x0").reject { |f| f.match(%r{^(test|spec|features)/}) }
14
+ spec.files = `git ls-files -z`
15
+ .split("\x0")
16
+ .reject {|f| f.match(%r{^(test|spec|features)/}) }
13
17
  spec.bindir = "exe"
14
- spec.executables = spec.files.grep(%r{^exe/}) { |f| File.basename(f) }
18
+ spec.executables = spec.files.grep(%r{^exe/}) {|f| File.basename(f) }
15
19
  spec.require_paths = ["lib"]
16
20
 
17
21
  spec.add_dependency "minitest"
18
22
  spec.add_development_dependency "bundler"
19
- spec.add_development_dependency "rake"
20
23
  spec.add_development_dependency "pry-meta"
24
+ spec.add_development_dependency "rake"
25
+ spec.add_development_dependency "rubocop"
26
+ spec.add_development_dependency "rubocop-fnando"
21
27
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: minitest-utils
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.4.4
4
+ version: 0.4.5
5
5
  platform: ruby
6
6
  authors:
7
7
  - Nando Vieira
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2018-10-03 00:00:00.000000000 Z
11
+ date: 2019-12-15 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: minitest
@@ -38,6 +38,20 @@ dependencies:
38
38
  - - ">="
39
39
  - !ruby/object:Gem::Version
40
40
  version: '0'
41
+ - !ruby/object:Gem::Dependency
42
+ name: pry-meta
43
+ requirement: !ruby/object:Gem::Requirement
44
+ requirements:
45
+ - - ">="
46
+ - !ruby/object:Gem::Version
47
+ version: '0'
48
+ type: :development
49
+ prerelease: false
50
+ version_requirements: !ruby/object:Gem::Requirement
51
+ requirements:
52
+ - - ">="
53
+ - !ruby/object:Gem::Version
54
+ version: '0'
41
55
  - !ruby/object:Gem::Dependency
42
56
  name: rake
43
57
  requirement: !ruby/object:Gem::Requirement
@@ -53,7 +67,21 @@ dependencies:
53
67
  - !ruby/object:Gem::Version
54
68
  version: '0'
55
69
  - !ruby/object:Gem::Dependency
56
- name: pry-meta
70
+ name: rubocop
71
+ requirement: !ruby/object:Gem::Requirement
72
+ requirements:
73
+ - - ">="
74
+ - !ruby/object:Gem::Version
75
+ version: '0'
76
+ type: :development
77
+ prerelease: false
78
+ version_requirements: !ruby/object:Gem::Requirement
79
+ requirements:
80
+ - - ">="
81
+ - !ruby/object:Gem::Version
82
+ version: '0'
83
+ - !ruby/object:Gem::Dependency
84
+ name: rubocop-fnando
57
85
  requirement: !ruby/object:Gem::Requirement
58
86
  requirements:
59
87
  - - ">="
@@ -74,6 +102,7 @@ extensions: []
74
102
  extra_rdoc_files: []
75
103
  files:
76
104
  - ".gitignore"
105
+ - ".rubocop.yml"
77
106
  - Gemfile
78
107
  - LICENSE.txt
79
108
  - README.md
@@ -120,8 +149,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
120
149
  - !ruby/object:Gem::Version
121
150
  version: '0'
122
151
  requirements: []
123
- rubyforge_project:
124
- rubygems_version: 2.7.6
152
+ rubygems_version: 3.0.3
125
153
  signing_key:
126
154
  specification_version: 4
127
155
  summary: Some utilities for your Minitest day-to-day usage.