rspec-core 3.13.5 → 4.0.0.beta1
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 +4 -4
- checksums.yaml.gz.sig +0 -0
- data/Changelog.md +56 -1
- data/LICENSE.md +2 -2
- data/README.md +33 -44
- data/lib/rspec/core/bisect/example_minimizer.rb +3 -3
- data/lib/rspec/core/bisect/fork_runner.rb +0 -6
- data/lib/rspec/core/bisect/shell_command.rb +2 -0
- data/lib/rspec/core/bisect/shell_runner.rb +2 -25
- data/lib/rspec/core/bisect/utilities.rb +3 -7
- data/lib/rspec/core/configuration.rb +128 -330
- data/lib/rspec/core/configuration_options.rb +4 -16
- data/lib/rspec/core/drb.rb +0 -5
- data/lib/rspec/core/dsl.rb +3 -48
- data/lib/rspec/core/example.rb +5 -41
- data/lib/rspec/core/example_group.rb +36 -75
- data/lib/rspec/core/filter_manager.rb +2 -11
- data/lib/rspec/core/formatters/deprecation_formatter.rb +4 -4
- data/lib/rspec/core/formatters/exception_presenter.rb +30 -60
- data/lib/rspec/core/formatters/helpers.rb +1 -1
- data/lib/rspec/core/formatters/html_printer.rb +8 -7
- data/lib/rspec/core/formatters/html_snippet_extractor.rb +0 -4
- data/lib/rspec/core/formatters/profile_formatter.rb +2 -2
- data/lib/rspec/core/formatters/snippet_extractor.rb +3 -1
- data/lib/rspec/core/formatters/syntax_highlighter.rb +2 -0
- data/lib/rspec/core/formatters.rb +4 -8
- data/lib/rspec/core/hooks.rb +24 -45
- data/lib/rspec/core/memoized_helpers.rb +30 -120
- data/lib/rspec/core/metadata.rb +8 -216
- data/lib/rspec/core/metadata_filter.rb +15 -69
- data/lib/rspec/core/minitest_assertions_adapter.rb +2 -2
- data/lib/rspec/core/mocking_adapters/mocha.rb +2 -31
- data/lib/rspec/core/notifications.rb +4 -16
- data/lib/rspec/core/option_parser.rb +6 -14
- data/lib/rspec/core/ordering.rb +5 -6
- data/lib/rspec/core/output_wrapper.rb +2 -2
- data/lib/rspec/core/pending.rb +1 -9
- data/lib/rspec/core/project_initializer/spec/spec_helper.rb +14 -31
- data/lib/rspec/core/rake_task.rb +6 -7
- data/lib/rspec/core/shared_example_group.rb +7 -82
- data/lib/rspec/core/shell_escape.rb +2 -0
- data/lib/rspec/core/test_unit_assertions_adapter.rb +4 -17
- data/lib/rspec/core/version.rb +1 -1
- data/lib/rspec/core/world.rb +8 -23
- data/lib/rspec/core.rb +1 -22
- data.tar.gz.sig +0 -0
- metadata +24 -25
- metadata.gz.sig +0 -0
- data/lib/rspec/core/flat_map.rb +0 -20
|
@@ -15,38 +15,31 @@
|
|
|
15
15
|
# See https://rubydoc.info/gems/rspec-core/RSpec/Core/Configuration
|
|
16
16
|
RSpec.configure do |config|
|
|
17
17
|
# rspec-expectations config goes here. You can use an alternate
|
|
18
|
-
# assertion/expectation library such as wrong or
|
|
18
|
+
# assertion/expectation library such as wrong or minitest
|
|
19
19
|
# assertions if you prefer.
|
|
20
20
|
config.expect_with :rspec do |expectations|
|
|
21
|
-
#
|
|
22
|
-
#
|
|
23
|
-
|
|
24
|
-
# be_bigger_than(2).and_smaller_than(4).description
|
|
25
|
-
# # => "be bigger than 2 and smaller than 4"
|
|
26
|
-
# ...rather than:
|
|
27
|
-
# # => "be bigger than 2"
|
|
28
|
-
expectations.include_chain_clauses_in_custom_matcher_descriptions = true
|
|
21
|
+
# The default output length is 200, you can increase it to make the
|
|
22
|
+
# output more verbose, or decrease it to make it more concise.
|
|
23
|
+
expectations.max_formatted_output_length = 200
|
|
29
24
|
end
|
|
30
25
|
|
|
31
26
|
# rspec-mocks config goes here. You can use an alternate test double
|
|
32
27
|
# library (such as bogus or mocha) by changing the `mock_with` option here.
|
|
33
28
|
config.mock_with :rspec do |mocks|
|
|
34
29
|
# Prevents you from mocking or stubbing a method that does not exist on
|
|
35
|
-
# a real object. This is generally recommended, and
|
|
36
|
-
#
|
|
30
|
+
# a real object. This is generally recommended, and is the default since
|
|
31
|
+
# RSpec 4.
|
|
37
32
|
mocks.verify_partial_doubles = true
|
|
38
33
|
end
|
|
39
34
|
|
|
40
|
-
# This option will default to `:apply_to_host_groups` in RSpec 4 (and will
|
|
41
|
-
# have no way to turn it off -- the option exists only for backwards
|
|
42
|
-
# compatibility in RSpec 3). It causes shared context metadata to be
|
|
43
|
-
# inherited by the metadata hash of host groups and examples, rather than
|
|
44
|
-
# triggering implicit auto-inclusion in groups with matching metadata.
|
|
45
|
-
config.shared_context_metadata_behavior = :apply_to_host_groups
|
|
46
|
-
|
|
47
35
|
# The settings below are suggested to provide a good initial experience
|
|
48
36
|
# with RSpec, but feel free to customize to your heart's content.
|
|
49
37
|
=begin
|
|
38
|
+
# This setting turns on all Ruby warnings. It's recommended, but in some cases may
|
|
39
|
+
# be too noisy due to issues in dependencies. The default is set to `:deprecations_only`
|
|
40
|
+
# but it can also be set to `:none` to suppress them.
|
|
41
|
+
config.warnings = :all
|
|
42
|
+
|
|
50
43
|
# This allows you to limit a spec run to individual examples or groups
|
|
51
44
|
# you care about by tagging them with `:focus` metadata. When nothing
|
|
52
45
|
# is tagged with `:focus`, all examples get run. RSpec also provides
|
|
@@ -59,15 +52,6 @@ RSpec.configure do |config|
|
|
|
59
52
|
# you configure your source control system to ignore this file.
|
|
60
53
|
config.example_status_persistence_file_path = "spec/examples.txt"
|
|
61
54
|
|
|
62
|
-
# Limits the available syntax to the non-monkey patched syntax that is
|
|
63
|
-
# recommended. For more details, see:
|
|
64
|
-
# https://rspec.info/features/3-12/rspec-core/configuration/zero-monkey-patching-mode/
|
|
65
|
-
config.disable_monkey_patching!
|
|
66
|
-
|
|
67
|
-
# This setting enables warnings. It's recommended, but in some cases may
|
|
68
|
-
# be too noisy due to issues in dependencies.
|
|
69
|
-
config.warnings = true
|
|
70
|
-
|
|
71
55
|
# Many RSpec users commonly either run the entire suite or an individual
|
|
72
56
|
# file, and it's useful to allow more verbose output when running an
|
|
73
57
|
# individual spec file.
|
|
@@ -83,10 +67,9 @@ RSpec.configure do |config|
|
|
|
83
67
|
# particularly slow.
|
|
84
68
|
config.profile_examples = 10
|
|
85
69
|
|
|
86
|
-
#
|
|
87
|
-
#
|
|
88
|
-
# the
|
|
89
|
-
# --seed 1234
|
|
70
|
+
# RSpec runs specs in a random order by default to surface order dependencies.
|
|
71
|
+
# We recommend this setting but it can be changed to others, such as `:defined`
|
|
72
|
+
# to run specs in the defined order. See the documentation for more details.
|
|
90
73
|
config.order = :random
|
|
91
74
|
|
|
92
75
|
# Seed global randomization in this process using the `--seed` CLI option.
|
data/lib/rspec/core/rake_task.rb
CHANGED
|
@@ -24,14 +24,11 @@ module RSpec
|
|
|
24
24
|
# Default path to the RSpec executable.
|
|
25
25
|
DEFAULT_RSPEC_PATH = File.expand_path('../../../../exe/rspec', __FILE__)
|
|
26
26
|
|
|
27
|
-
# Default pattern for spec files.
|
|
28
|
-
DEFAULT_PATTERN = 'spec/**{,/*/**}/*_spec.rb'
|
|
29
|
-
|
|
30
27
|
# Name of task. Defaults to `:spec`.
|
|
31
28
|
attr_accessor :name
|
|
32
29
|
|
|
33
30
|
# Files matching this pattern will be loaded.
|
|
34
|
-
# Defaults to `
|
|
31
|
+
# Defaults to `nil`.
|
|
35
32
|
attr_accessor :pattern
|
|
36
33
|
|
|
37
34
|
# Files matching this pattern will be excluded.
|
|
@@ -45,11 +42,11 @@ module RSpec
|
|
|
45
42
|
# A message to print to stderr when there are failures.
|
|
46
43
|
attr_accessor :failure_message
|
|
47
44
|
|
|
48
|
-
if
|
|
45
|
+
if Support::Ruby.jruby?
|
|
49
46
|
# Run RSpec with a clean (empty) environment is not supported
|
|
50
47
|
# :nocov:
|
|
51
48
|
def with_clean_environment=(_value)
|
|
52
|
-
raise ArgumentError, "Running in a clean environment is not supported on
|
|
49
|
+
raise ArgumentError, "Running in a clean environment is not supported on JRuby"
|
|
53
50
|
end
|
|
54
51
|
|
|
55
52
|
# Run RSpec with a clean (empty) environment is not supported
|
|
@@ -83,7 +80,7 @@ module RSpec
|
|
|
83
80
|
@verbose = true
|
|
84
81
|
@fail_on_error = true
|
|
85
82
|
@rspec_path = DEFAULT_RSPEC_PATH
|
|
86
|
-
@pattern =
|
|
83
|
+
@pattern = nil
|
|
87
84
|
|
|
88
85
|
define(args, &task_block)
|
|
89
86
|
end
|
|
@@ -126,6 +123,8 @@ module RSpec
|
|
|
126
123
|
elsif String === pattern && !File.exist?(pattern)
|
|
127
124
|
return if [*rspec_opts].any? { |opt| opt =~ /--pattern/ }
|
|
128
125
|
"--pattern #{escape pattern}"
|
|
126
|
+
elsif pattern.nil?
|
|
127
|
+
""
|
|
129
128
|
else
|
|
130
129
|
# Before RSpec 3.1, we used `FileList` to get the list of matched
|
|
131
130
|
# files, and then pass that along to the `rspec` command. Starting
|
|
@@ -45,9 +45,8 @@ module RSpec
|
|
|
45
45
|
# examples that you wish to use in multiple example groups.
|
|
46
46
|
#
|
|
47
47
|
# When defined, the shared group block is stored for later evaluation.
|
|
48
|
-
# It can later be included in an example group
|
|
49
|
-
#
|
|
50
|
-
# or implicitly (via matching metadata).
|
|
48
|
+
# It can later be included in an example group explicitly using
|
|
49
|
+
# `include_examples`, `include_context` or `it_behaves_like`.
|
|
51
50
|
#
|
|
52
51
|
# Named shared example groups are scoped based on where they are
|
|
53
52
|
# defined. Shared groups defined in an example group are available
|
|
@@ -62,9 +61,7 @@ module RSpec
|
|
|
62
61
|
# @overload shared_examples(name, metadata, &block)
|
|
63
62
|
# @param name [String, Symbol, Module] identifer to use when looking up
|
|
64
63
|
# this shared group
|
|
65
|
-
# @param metadata [Array<Symbol>, Hash] metadata to attach to this
|
|
66
|
-
# group; any example group or example with matching metadata will
|
|
67
|
-
# automatically include this shared example group.
|
|
64
|
+
# @param metadata [Array<Symbol>, Hash] metadata to attach to this group
|
|
68
65
|
# @param block The block to be eval'd
|
|
69
66
|
#
|
|
70
67
|
# Stores the block for later use. The block will be evaluated
|
|
@@ -114,56 +111,22 @@ module RSpec
|
|
|
114
111
|
alias shared_examples_for shared_examples
|
|
115
112
|
end
|
|
116
113
|
end
|
|
117
|
-
|
|
118
|
-
# @private
|
|
119
|
-
def self.exposed_globally?
|
|
120
|
-
@exposed_globally ||= false
|
|
121
|
-
end
|
|
122
|
-
|
|
123
|
-
# @api private
|
|
124
|
-
#
|
|
125
|
-
# Adds the top level DSL methods to Module and the top level binding.
|
|
126
|
-
def self.expose_globally!
|
|
127
|
-
return if exposed_globally?
|
|
128
|
-
Core::DSL.change_global_dsl(&definitions)
|
|
129
|
-
@exposed_globally = true
|
|
130
|
-
end
|
|
131
|
-
|
|
132
|
-
# @api private
|
|
133
|
-
#
|
|
134
|
-
# Removes the top level DSL methods to Module and the top level binding.
|
|
135
|
-
def self.remove_globally!
|
|
136
|
-
return unless exposed_globally?
|
|
137
|
-
|
|
138
|
-
Core::DSL.change_global_dsl do
|
|
139
|
-
undef shared_examples
|
|
140
|
-
undef shared_context
|
|
141
|
-
undef shared_examples_for
|
|
142
|
-
end
|
|
143
|
-
|
|
144
|
-
@exposed_globally = false
|
|
145
|
-
end
|
|
146
114
|
end
|
|
147
115
|
|
|
148
116
|
# @private
|
|
149
117
|
class Registry
|
|
150
118
|
def add(context, name, *metadata_args, &block)
|
|
151
119
|
unless block
|
|
152
|
-
RSpec.warning "Shared example group #{name} was defined without a "\
|
|
153
|
-
"block and will have no effect. Please define a "\
|
|
120
|
+
RSpec.warning "Shared example group #{name} was defined without a " \
|
|
121
|
+
"block and will have no effect. Please define a " \
|
|
154
122
|
"block or remove the definition."
|
|
155
123
|
end
|
|
156
124
|
|
|
157
|
-
if RSpec.configuration.shared_context_metadata_behavior == :trigger_inclusion
|
|
158
|
-
return legacy_add(context, name, *metadata_args, &block)
|
|
159
|
-
end
|
|
160
|
-
|
|
161
125
|
unless valid_name?(name)
|
|
162
126
|
raise ArgumentError, "Shared example group names can only be a string, " \
|
|
163
127
|
"symbol or module but got: #{name.inspect}"
|
|
164
128
|
end
|
|
165
129
|
|
|
166
|
-
ensure_block_has_source_location(block) { CallerFilter.first_non_rspec_line }
|
|
167
130
|
warn_if_key_taken context, name, block
|
|
168
131
|
|
|
169
132
|
metadata = Metadata.build_hash_from(metadata_args)
|
|
@@ -182,25 +145,6 @@ module RSpec
|
|
|
182
145
|
|
|
183
146
|
private
|
|
184
147
|
|
|
185
|
-
# TODO: remove this in RSpec 4. This exists only to support
|
|
186
|
-
# `config.shared_context_metadata_behavior == :trigger_inclusion`,
|
|
187
|
-
# the legacy behavior of shared context metadata, which we do
|
|
188
|
-
# not want to support in RSpec 4.
|
|
189
|
-
def legacy_add(context, name, *metadata_args, &block)
|
|
190
|
-
ensure_block_has_source_location(block) { CallerFilter.first_non_rspec_line }
|
|
191
|
-
shared_module = SharedExampleGroupModule.new(name, block, {})
|
|
192
|
-
|
|
193
|
-
if valid_name?(name)
|
|
194
|
-
warn_if_key_taken context, name, block
|
|
195
|
-
shared_example_groups[context][name] = shared_module
|
|
196
|
-
else
|
|
197
|
-
metadata_args.unshift name
|
|
198
|
-
end
|
|
199
|
-
|
|
200
|
-
return if metadata_args.empty?
|
|
201
|
-
RSpec.configuration.include shared_module, *metadata_args
|
|
202
|
-
end
|
|
203
|
-
|
|
204
148
|
def shared_example_groups
|
|
205
149
|
@shared_example_groups ||= Hash.new { |hash, context| hash[context] = {} }
|
|
206
150
|
end
|
|
@@ -241,27 +185,8 @@ module RSpec
|
|
|
241
185
|
end
|
|
242
186
|
end
|
|
243
187
|
|
|
244
|
-
|
|
245
|
-
|
|
246
|
-
block.source_location.join(":")
|
|
247
|
-
end
|
|
248
|
-
else # 1.8.7
|
|
249
|
-
# :nocov:
|
|
250
|
-
def formatted_location(block)
|
|
251
|
-
block.source_location.join(":").gsub(/:in.*$/, '')
|
|
252
|
-
end
|
|
253
|
-
# :nocov:
|
|
254
|
-
end
|
|
255
|
-
|
|
256
|
-
if Proc.method_defined?(:source_location)
|
|
257
|
-
def ensure_block_has_source_location(_block); end
|
|
258
|
-
else # for 1.8.7
|
|
259
|
-
# :nocov:
|
|
260
|
-
def ensure_block_has_source_location(block)
|
|
261
|
-
source_location = yield.split(':')
|
|
262
|
-
block.extend(Module.new { define_method(:source_location) { source_location } })
|
|
263
|
-
end
|
|
264
|
-
# :nocov:
|
|
188
|
+
def formatted_location(block)
|
|
189
|
+
block.source_location.take(2).join(":")
|
|
265
190
|
end
|
|
266
191
|
end
|
|
267
192
|
end
|
|
@@ -6,24 +6,11 @@ module RSpec
|
|
|
6
6
|
module TestUnitAssertionsAdapter
|
|
7
7
|
include ::Test::Unit::Assertions
|
|
8
8
|
|
|
9
|
-
# If using test/unit from Ruby core with Ruby 1.9+, it includes
|
|
10
|
-
# MiniTest::Assertions by default. Note the upcasing of 'Test'.
|
|
11
|
-
#
|
|
12
|
-
# If the test/unit gem is being loaded, it will not include any minitest
|
|
13
|
-
# assertions.
|
|
14
|
-
#
|
|
15
9
|
# Only if Minitest 5.x is included / loaded do we need to worry about
|
|
16
|
-
# adding a shim
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
# Minitest is 5.x.
|
|
21
|
-
if ancestors.include?(::Minitest::Assertions)
|
|
22
|
-
require 'rspec/core/minitest_assertions_adapter'
|
|
23
|
-
include ::RSpec::Core::MinitestAssertionsAdapter
|
|
24
|
-
end
|
|
25
|
-
rescue NameError
|
|
26
|
-
# No-op. Minitest 5.x was not loaded.
|
|
10
|
+
# adding a shim, older versions automatically included their assertion module.
|
|
11
|
+
if defined?(::Minitest::Assertions) && ancestors.include?(::Minitest::Assertions)
|
|
12
|
+
require 'rspec/core/minitest_assertions_adapter'
|
|
13
|
+
include ::RSpec::Core::MinitestAssertionsAdapter
|
|
27
14
|
end
|
|
28
15
|
end
|
|
29
16
|
end
|
data/lib/rspec/core/version.rb
CHANGED
data/lib/rspec/core/world.rb
CHANGED
|
@@ -107,18 +107,18 @@ module RSpec
|
|
|
107
107
|
#
|
|
108
108
|
# Get count of examples to be run.
|
|
109
109
|
def example_count(groups=example_groups)
|
|
110
|
-
|
|
110
|
+
groups.flat_map { |g| g.descendants }.
|
|
111
111
|
inject(0) { |a, e| a + e.filtered_examples.size }
|
|
112
112
|
end
|
|
113
113
|
|
|
114
114
|
# @private
|
|
115
115
|
def all_example_groups
|
|
116
|
-
|
|
116
|
+
example_groups.flat_map { |g| g.descendants }
|
|
117
117
|
end
|
|
118
118
|
|
|
119
119
|
# @private
|
|
120
120
|
def all_examples
|
|
121
|
-
|
|
121
|
+
all_example_groups.flat_map { |g| g.examples }
|
|
122
122
|
end
|
|
123
123
|
|
|
124
124
|
# @private
|
|
@@ -183,12 +183,6 @@ module RSpec
|
|
|
183
183
|
end
|
|
184
184
|
end
|
|
185
185
|
|
|
186
|
-
if @configuration.run_all_when_everything_filtered? && example_count.zero? && !@configuration.only_failures?
|
|
187
|
-
report_filter_message("#{everything_filtered_message}; ignoring #{inclusion_filter.description}")
|
|
188
|
-
filtered_examples.clear
|
|
189
|
-
inclusion_filter.clear
|
|
190
|
-
end
|
|
191
|
-
|
|
192
186
|
return unless example_count.zero?
|
|
193
187
|
|
|
194
188
|
example_groups.clear
|
|
@@ -233,19 +227,10 @@ module RSpec
|
|
|
233
227
|
|
|
234
228
|
def descending_declaration_line_numbers_by_file
|
|
235
229
|
@descending_declaration_line_numbers_by_file ||= begin
|
|
236
|
-
|
|
237
|
-
|
|
238
|
-
|
|
239
|
-
|
|
240
|
-
line_nums_by_file = declaration_locations.inject(hash_of_arrays) do |hash, (file_name, line_number)|
|
|
241
|
-
hash[file_name] << line_number
|
|
242
|
-
hash
|
|
243
|
-
end
|
|
244
|
-
|
|
245
|
-
line_nums_by_file.each_value do |list|
|
|
246
|
-
list.sort!
|
|
247
|
-
list.reverse!
|
|
248
|
-
end
|
|
230
|
+
example_groups.
|
|
231
|
+
flat_map(&:declaration_locations).
|
|
232
|
+
group_by(&:first). # by file name
|
|
233
|
+
transform_values { |lines| lines.map(&:last).sort.reverse }
|
|
249
234
|
end
|
|
250
235
|
end
|
|
251
236
|
|
|
@@ -269,7 +254,7 @@ module RSpec
|
|
|
269
254
|
[]
|
|
270
255
|
end
|
|
271
256
|
|
|
272
|
-
def self.traverse_example_group_trees_until
|
|
257
|
+
def self.traverse_example_group_trees_until(&_block)
|
|
273
258
|
end
|
|
274
259
|
|
|
275
260
|
# :nocov:
|
data/lib/rspec/core.rb
CHANGED
|
@@ -12,7 +12,6 @@ RSpec::Support.define_optimized_require_for_rspec(:core) { |f| require_relative
|
|
|
12
12
|
warnings
|
|
13
13
|
|
|
14
14
|
set
|
|
15
|
-
flat_map
|
|
16
15
|
filter_manager
|
|
17
16
|
dsl
|
|
18
17
|
notifications
|
|
@@ -101,24 +100,7 @@ module RSpec
|
|
|
101
100
|
# The example being executed.
|
|
102
101
|
#
|
|
103
102
|
# The primary audience for this method is library authors who need access
|
|
104
|
-
# to the example currently being executed
|
|
105
|
-
# versions of RSpec 2 and 3.
|
|
106
|
-
#
|
|
107
|
-
# @example
|
|
108
|
-
#
|
|
109
|
-
# RSpec.configure do |c|
|
|
110
|
-
# # context.example is deprecated, but RSpec.current_example is not
|
|
111
|
-
# # available until RSpec 3.0.
|
|
112
|
-
# fetch_current_example = RSpec.respond_to?(:current_example) ?
|
|
113
|
-
# proc { RSpec.current_example } : proc { |context| context.example }
|
|
114
|
-
#
|
|
115
|
-
# c.before(:example) do
|
|
116
|
-
# example = fetch_current_example.call(self)
|
|
117
|
-
#
|
|
118
|
-
# # ...
|
|
119
|
-
# end
|
|
120
|
-
# end
|
|
121
|
-
#
|
|
103
|
+
# to the example currently being executed.
|
|
122
104
|
def self.current_example
|
|
123
105
|
RSpec::Support.thread_local_data[:current_example]
|
|
124
106
|
end
|
|
@@ -206,7 +188,4 @@ module RSpec
|
|
|
206
188
|
require MODULES_TO_AUTOLOAD.fetch(name) { return super }
|
|
207
189
|
::RSpec.const_get(name)
|
|
208
190
|
end
|
|
209
|
-
|
|
210
|
-
Core::DSL.expose_globally!
|
|
211
|
-
Core::SharedExampleGroup::TopLevelDSL.expose_globally!
|
|
212
191
|
end
|
data.tar.gz.sig
CHANGED
|
Binary file
|
metadata
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
|
2
2
|
name: rspec-core
|
|
3
3
|
version: !ruby/object:Gem::Version
|
|
4
|
-
version:
|
|
4
|
+
version: 4.0.0.beta1
|
|
5
5
|
platform: ruby
|
|
6
6
|
authors:
|
|
7
7
|
- Steven Baker
|
|
@@ -12,11 +12,11 @@ bindir: exe
|
|
|
12
12
|
cert_chain:
|
|
13
13
|
- |
|
|
14
14
|
-----BEGIN CERTIFICATE-----
|
|
15
|
-
|
|
15
|
+
MIIFvjCCA6agAwIBAgIJAPXjfUbCjdXWMA0GCSqGSIb3DQEBCwUAMIGAMQswCQYD
|
|
16
16
|
VQQGEwJVUzETMBEGA1UECAwKV2FzaGluZ3RvbjEQMA4GA1UEBwwHU2VhdHRsZTEO
|
|
17
17
|
MAwGA1UECgwFUlNwZWMxEzARBgNVBAMMCnJzcGVjLmluZm8xJTAjBgkqhkiG9w0B
|
|
18
|
-
|
|
19
|
-
|
|
18
|
+
CQEWFnJzcGVjQGdvb2dsZWdyb3Vwcy5jb20wHhcNMjYwMjE3MTE0ODM0WhcNMjcw
|
|
19
|
+
MjE3MTE0ODM0WjCBgDELMAkGA1UEBhMCVVMxEzARBgNVBAgMCldhc2hpbmd0b24x
|
|
20
20
|
EDAOBgNVBAcMB1NlYXR0bGUxDjAMBgNVBAoMBVJTcGVjMRMwEQYDVQQDDApyc3Bl
|
|
21
21
|
Yy5pbmZvMSUwIwYJKoZIhvcNAQkBFhZyc3BlY0Bnb29nbGVncm91cHMuY29tMIIC
|
|
22
22
|
IjANBgkqhkiG9w0BAQEFAAOCAg8AMIICCgKCAgEAsSmjgcHaKlD0jizRJowi2bGI
|
|
@@ -32,17 +32,17 @@ cert_chain:
|
|
|
32
32
|
gpEMqf80lEmhX59VUsm0Pv6OEo+ZPHBvXPiJA6DShQh9t3YtpwyA8uVDMbT/i32u
|
|
33
33
|
2FUsqZbbJcCmkBrGposCAwEAAaM5MDcwCQYDVR0TBAIwADALBgNVHQ8EBAMCBLAw
|
|
34
34
|
HQYDVR0OBBYEFPPvQ5XT0Nvuhi6k+hrWVv35J+TeMA0GCSqGSIb3DQEBCwUAA4IC
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
35
|
+
AQBaeeGIZtBFDP33D1/4sXldSgwntVcL5qC5pcjamLWM4HK4/a6ePMy1uoX+dEnJ
|
|
36
|
+
J+BjZWURsUfFOob+xnUe8AMSbv9gupckfVehZoBzOvJDaWcALo8GKjJlmVtzEIqZ
|
|
37
|
+
TvBLO5zQwR4cWIrg0NWjkDOSQOrNNQ2Degv/aOFrR8dFPJSgxZG/IC0/t6s72cEt
|
|
38
|
+
V4SIe/NLIU4RyBzfgn/RBsalDEF1yIVlDWspMa78clS3bPmntkNyfLwIUwINDHhn
|
|
39
|
+
swFA8bEKMQWqRlupuRmEiy3nGe6az46YlPXzK5UWfXJ6Lb1wIE8W80TRx0HpSC7j
|
|
40
|
+
JfXPfQ0PLgiU4nnQqain2bIn96Ooco8kspeqp8rSJ8sbaMPTNmcFuwD3gzWsRnJ3
|
|
41
|
+
rIaJbmrUcq6DlJ7jfv3u5TPt4JWzDP7oDPf3nXNiF2Cn48Ne598G5lHH6Heyxe39
|
|
42
|
+
pYZdhEptKJWPHxbJWHXD02omKprkNuQKHpnXrW+mmbiO4IcqAMggiud+DaEQg20x
|
|
43
|
+
Dae4cNbvK5p3D+5xqvcEO2G4uCMDmJjrSd61kvTLBnm1qroHqrpi9GauEVWZZmD0
|
|
44
|
+
n0ph8oFAXOsKQWxZ+4uh6yGISk+WhngCZEVPZUjq7SIGAuVhQy2ZgwdjnLEz//lD
|
|
45
|
+
x0Qexp5yGeoxAL9qKM/RXYKtuRZBJV1z+L9A1YOtwaXXNg==
|
|
46
46
|
-----END CERTIFICATE-----
|
|
47
47
|
date: 1980-01-02 00:00:00.000000000 Z
|
|
48
48
|
dependencies:
|
|
@@ -50,16 +50,16 @@ dependencies:
|
|
|
50
50
|
name: rspec-support
|
|
51
51
|
requirement: !ruby/object:Gem::Requirement
|
|
52
52
|
requirements:
|
|
53
|
-
- -
|
|
53
|
+
- - '='
|
|
54
54
|
- !ruby/object:Gem::Version
|
|
55
|
-
version:
|
|
55
|
+
version: 4.0.0.beta1
|
|
56
56
|
type: :runtime
|
|
57
57
|
prerelease: false
|
|
58
58
|
version_requirements: !ruby/object:Gem::Requirement
|
|
59
59
|
requirements:
|
|
60
|
-
- -
|
|
60
|
+
- - '='
|
|
61
61
|
- !ruby/object:Gem::Version
|
|
62
|
-
version:
|
|
62
|
+
version: 4.0.0.beta1
|
|
63
63
|
description: BDD for Ruby. RSpec runner and example groups.
|
|
64
64
|
email: rspec@googlegroups.com
|
|
65
65
|
executables:
|
|
@@ -92,7 +92,6 @@ files:
|
|
|
92
92
|
- lib/rspec/core/example_group.rb
|
|
93
93
|
- lib/rspec/core/example_status_persister.rb
|
|
94
94
|
- lib/rspec/core/filter_manager.rb
|
|
95
|
-
- lib/rspec/core/flat_map.rb
|
|
96
95
|
- lib/rspec/core/formatters.rb
|
|
97
96
|
- lib/rspec/core/formatters/base_bisect_formatter.rb
|
|
98
97
|
- lib/rspec/core/formatters/base_formatter.rb
|
|
@@ -153,11 +152,11 @@ licenses:
|
|
|
153
152
|
- MIT
|
|
154
153
|
metadata:
|
|
155
154
|
bug_tracker_uri: https://github.com/rspec/rspec/issues
|
|
156
|
-
changelog_uri: https://github.com/rspec/rspec/
|
|
155
|
+
changelog_uri: https://github.com/rspec/rspec/tree/rspec-core-v4.0.0.beta1/rspec-core/Changelog.md
|
|
157
156
|
documentation_uri: https://rspec.info/documentation/
|
|
158
157
|
mailing_list_uri: https://groups.google.com/forum/#!forum/rspec
|
|
158
|
+
source_code_uri: https://github.com/rspec/rspec/tree/rspec-core-v4.0.0.beta1/rspec-core
|
|
159
159
|
rubygems_mfa_required: 'true'
|
|
160
|
-
source_code_uri: https://github.com/rspec/rspec/blob/rspec-core-v3.13.5/rspec-core
|
|
161
160
|
rdoc_options:
|
|
162
161
|
- "--charset=UTF-8"
|
|
163
162
|
require_paths:
|
|
@@ -166,14 +165,14 @@ required_ruby_version: !ruby/object:Gem::Requirement
|
|
|
166
165
|
requirements:
|
|
167
166
|
- - ">="
|
|
168
167
|
- !ruby/object:Gem::Version
|
|
169
|
-
version:
|
|
168
|
+
version: 3.0.0
|
|
170
169
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
|
171
170
|
requirements:
|
|
172
171
|
- - ">="
|
|
173
172
|
- !ruby/object:Gem::Version
|
|
174
173
|
version: '0'
|
|
175
174
|
requirements: []
|
|
176
|
-
rubygems_version:
|
|
175
|
+
rubygems_version: 4.0.3
|
|
177
176
|
specification_version: 4
|
|
178
|
-
summary: rspec-core-
|
|
177
|
+
summary: rspec-core-4.0.0.beta1
|
|
179
178
|
test_files: []
|
metadata.gz.sig
CHANGED
|
Binary file
|
data/lib/rspec/core/flat_map.rb
DELETED
|
@@ -1,20 +0,0 @@
|
|
|
1
|
-
module RSpec
|
|
2
|
-
module Core
|
|
3
|
-
# @private
|
|
4
|
-
module FlatMap
|
|
5
|
-
if [].respond_to?(:flat_map)
|
|
6
|
-
def flat_map(array, &block)
|
|
7
|
-
array.flat_map(&block)
|
|
8
|
-
end
|
|
9
|
-
else # for 1.8.7
|
|
10
|
-
# :nocov:
|
|
11
|
-
def flat_map(array, &block)
|
|
12
|
-
array.map(&block).flatten(1)
|
|
13
|
-
end
|
|
14
|
-
# :nocov:
|
|
15
|
-
end
|
|
16
|
-
|
|
17
|
-
module_function :flat_map
|
|
18
|
-
end
|
|
19
|
-
end
|
|
20
|
-
end
|