gruf-rspec 0.6.0 → 1.0.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: 183210380a3d9ee581da3cd15372d2c7ed2a3e75614dce61799a4ca53f413bc3
4
- data.tar.gz: 742b03b5cfba9551bb39e7ce005d2a68ff5bba073279ab86e4fc2604e838871b
3
+ metadata.gz: da5399faedb46136f39343dc5cb8209be2725511f3617d2db5e47a384851e416
4
+ data.tar.gz: 8ce277be009832d10fc9b008aaec9c21470ec1460faf40ee6bd393c27b058ac0
5
5
  SHA512:
6
- metadata.gz: 49c856a13070558d1141411d00985ae6a1eac96627fc5bdb1e26927ed1cfc4a0447f24d44c6014d678bb3e8f5bea4d0ac596f73c816e3c79ea5fd060f763db1f
7
- data.tar.gz: f733d50ca82902e5e64bdbf8f9c5207b8b4b1451206474d286af4d7a7d7d58de48aa2c40a2484b00c326b45196b1ea56cd7e83c96e90968bb40dd2e65ca03979
6
+ metadata.gz: d9d5fcfa3941a82dc417c39913f62de81860da536fad5456aac2ffea21b500b869edfd459c12139e40bde003b328e1e49f868c98920c3fcf2e416aaab6311749
7
+ data.tar.gz: 2510df3deac182765e53a54beb62fffce7600a1ed28604e879be154cb98abeaec7091544bb057897e49cb99189975057ea78b51f24bec1f69ac96b1aca02e249
data/CHANGELOG.md CHANGED
@@ -2,6 +2,15 @@ Changelog for the gruf-rspec gem.
2
2
 
3
3
  ### Pending release
4
4
 
5
+ ### 1.0.1
6
+
7
+ - [#23] Only depend on rspec-core/rspec-expectations
8
+
9
+ ### 1.0.0
10
+
11
+ - Add support for Ruby 3.2, 3.3
12
+ - Drop support for Ruby 2.7 (EOL March 2023)
13
+
5
14
  ### 0.6.0
6
15
 
7
16
  - Add better support for Gruf 2.15+ autoloading in a Rails test environment
data/README.md CHANGED
@@ -11,7 +11,7 @@ Assistance helpers and custom type for easy testing [Gruf](https://github.com/bi
11
11
  gem 'gruf-rspec'
12
12
  ```
13
13
 
14
- Note that this gem requires at least Ruby 2.7+, Gruf 2.5.1+, and RSpec 3.8+.
14
+ Note that this gem requires at least Ruby 3.0+, Gruf 2.5.1+, and RSpec 3.8+.
15
15
 
16
16
  ## Usage
17
17
 
@@ -86,7 +86,7 @@ describe 'testing an error' do
86
86
 
87
87
  subject { run_rpc(:GetThing, request_proto) }
88
88
 
89
- it 'should fail with the appropriate error' do
89
+ it 'fails with the appropriate error' do
90
90
  expect { subject }.to raise_rpc_error(GRPC::InvalidArgument)
91
91
  end
92
92
  end
@@ -95,7 +95,7 @@ end
95
95
  Or further, even check your serialized error that is passed in metadata:
96
96
 
97
97
  ```ruby
98
- it 'should fail with the appropriate error code' do
98
+ it 'fails with the appropriate error code' do
99
99
  expect { subject }.to raise_rpc_error(GRPC::InvalidArgument).with_serialized { |err|
100
100
  expect(err).to be_a(MyCustomErrorClass)
101
101
  expect(err.error_code).to eq 'invalid_request'
@@ -114,7 +114,7 @@ Note that when using `with_serialized`, you _must_ pass the block with `{ }`, no
114
114
  ### RSpec Controller Matcher Configuration
115
115
 
116
116
  By default, the type matcher for Gruf controllers matches in `/spec/rpc`. You can customize this by configuring it
117
- in the `Gruf::Rspec` confiugration block like so:
117
+ in the `Gruf::Rspec` configuration block like so:
118
118
 
119
119
  ```ruby
120
120
  Gruf::Rspec.configure do |c|
data/gruf-rspec.gemspec CHANGED
@@ -28,19 +28,15 @@ Gem::Specification.new do |spec|
28
28
  spec.description = 'RSpec assistance library for gruf, including testing helpers'
29
29
  spec.homepage = 'https://github.com/bigcommerce/gruf-rspec'
30
30
 
31
- spec.required_ruby_version = '>= 2.7'
31
+ spec.required_ruby_version = '>= 3.0', '< 4'
32
32
  spec.metadata['rubygems_mfa_required'] = 'true'
33
33
 
34
34
  spec.files = Dir['README.md', 'CHANGELOG.md', 'CODE_OF_CONDUCT.md', 'lib/**/*', 'gruf-rspec.gemspec']
35
35
  spec.require_paths = %w[lib]
36
36
 
37
- spec.add_development_dependency 'bundler-audit', '>= 0.6'
38
- spec.add_development_dependency 'pry', '>= 0.13'
39
- spec.add_development_dependency 'rspec_junit_formatter', '>= 0.4'
40
- spec.add_development_dependency 'rubocop', '>= 0.82'
41
- spec.add_development_dependency 'simplecov', '>= 0.15'
42
-
43
37
  spec.add_runtime_dependency 'gruf', '~> 2.5', '>= 2.5.1'
44
- spec.add_runtime_dependency 'rspec', '>= 3.8'
38
+ spec.add_runtime_dependency 'rake', '>= 12.3'
39
+ spec.add_runtime_dependency 'rspec-core', '>= 3.8'
40
+ spec.add_runtime_dependency 'rspec-expectations', '>= 3.8'
45
41
  spec.add_runtime_dependency 'zeitwerk', '>= 2'
46
42
  end
@@ -17,6 +17,6 @@
17
17
  #
18
18
  module Gruf
19
19
  module Rspec
20
- VERSION = '0.6.0'
20
+ VERSION = '1.0.1'
21
21
  end
22
22
  end
data/lib/gruf/rspec.rb CHANGED
@@ -15,16 +15,8 @@
15
15
  # COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR
16
16
  # OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
17
17
  #
18
- begin
19
- require 'rspec/core'
20
- require 'rspec/expectations'
21
- GRUF_RSPEC_NAMESPACE = RSpec
22
- GRUF_RSPEC_RUNNER = RSpec
23
- rescue LoadError # old rspec compat
24
- require 'spec'
25
- GRUF_RSPEC_NAMESPACE = Spec
26
- GRUF_RSPEC_RUNNER = Spec::Runner
27
- end
18
+ require 'rspec/core'
19
+ require 'rspec/expectations'
28
20
 
29
21
  # use Zeitwerk to lazily autoload all the files in the lib directory
30
22
  require 'zeitwerk'
@@ -58,7 +50,7 @@ rescue LoadError
58
50
  end
59
51
  require_relative 'rspec/railtie' if defined?(::Rails::Railtie)
60
52
 
61
- GRUF_RSPEC_RUNNER.configure do |config|
53
+ RSpec.configure do |config|
62
54
  config.include Gruf::Rspec::Helpers
63
55
 
64
56
  config.define_derived_metadata(file_path: Regexp.new(Gruf::Rspec.rpc_spec_path)) do |metadata|
@@ -89,7 +81,7 @@ GRUF_RSPEC_RUNNER.configure do |config|
89
81
  end
90
82
  end
91
83
 
92
- GRUF_RSPEC_NAMESPACE::Matchers.define :raise_rpc_error do |expected_error_class|
84
+ RSpec::Matchers.define :raise_rpc_error do |expected_error_class|
93
85
  supports_block_expectations
94
86
 
95
87
  def with_serialized(&block)
@@ -111,7 +103,7 @@ GRUF_RSPEC_NAMESPACE::Matchers.define :raise_rpc_error do |expected_error_class|
111
103
  end
112
104
  end
113
105
 
114
- GRUF_RSPEC_NAMESPACE::Matchers.define :be_a_successful_rpc do |_|
106
+ RSpec::Matchers.define :be_a_successful_rpc do |_|
115
107
  match do |actual|
116
108
  if !gruf_controller || actual.is_a?(GRPC::BadStatus) || actual.is_a?(GRPC::Core::CallError)
117
109
  false
metadata CHANGED
@@ -1,107 +1,65 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: gruf-rspec
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.6.0
4
+ version: 1.0.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - Shaun McCormick
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2022-07-09 00:00:00.000000000 Z
11
+ date: 2024-05-06 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
- name: bundler-audit
15
- requirement: !ruby/object:Gem::Requirement
16
- requirements:
17
- - - ">="
18
- - !ruby/object:Gem::Version
19
- version: '0.6'
20
- type: :development
21
- prerelease: false
22
- version_requirements: !ruby/object:Gem::Requirement
23
- requirements:
24
- - - ">="
25
- - !ruby/object:Gem::Version
26
- version: '0.6'
27
- - !ruby/object:Gem::Dependency
28
- name: pry
14
+ name: gruf
29
15
  requirement: !ruby/object:Gem::Requirement
30
16
  requirements:
31
- - - ">="
32
- - !ruby/object:Gem::Version
33
- version: '0.13'
34
- type: :development
35
- prerelease: false
36
- version_requirements: !ruby/object:Gem::Requirement
37
- requirements:
38
- - - ">="
17
+ - - "~>"
39
18
  - !ruby/object:Gem::Version
40
- version: '0.13'
41
- - !ruby/object:Gem::Dependency
42
- name: rspec_junit_formatter
43
- requirement: !ruby/object:Gem::Requirement
44
- requirements:
19
+ version: '2.5'
45
20
  - - ">="
46
21
  - !ruby/object:Gem::Version
47
- version: '0.4'
48
- type: :development
22
+ version: 2.5.1
23
+ type: :runtime
49
24
  prerelease: false
50
25
  version_requirements: !ruby/object:Gem::Requirement
51
26
  requirements:
52
- - - ">="
53
- - !ruby/object:Gem::Version
54
- version: '0.4'
55
- - !ruby/object:Gem::Dependency
56
- name: rubocop
57
- requirement: !ruby/object:Gem::Requirement
58
- requirements:
59
- - - ">="
27
+ - - "~>"
60
28
  - !ruby/object:Gem::Version
61
- version: '0.82'
62
- type: :development
63
- prerelease: false
64
- version_requirements: !ruby/object:Gem::Requirement
65
- requirements:
29
+ version: '2.5'
66
30
  - - ">="
67
31
  - !ruby/object:Gem::Version
68
- version: '0.82'
32
+ version: 2.5.1
69
33
  - !ruby/object:Gem::Dependency
70
- name: simplecov
34
+ name: rake
71
35
  requirement: !ruby/object:Gem::Requirement
72
36
  requirements:
73
37
  - - ">="
74
38
  - !ruby/object:Gem::Version
75
- version: '0.15'
76
- type: :development
39
+ version: '12.3'
40
+ type: :runtime
77
41
  prerelease: false
78
42
  version_requirements: !ruby/object:Gem::Requirement
79
43
  requirements:
80
44
  - - ">="
81
45
  - !ruby/object:Gem::Version
82
- version: '0.15'
46
+ version: '12.3'
83
47
  - !ruby/object:Gem::Dependency
84
- name: gruf
48
+ name: rspec-core
85
49
  requirement: !ruby/object:Gem::Requirement
86
50
  requirements:
87
- - - "~>"
88
- - !ruby/object:Gem::Version
89
- version: '2.5'
90
51
  - - ">="
91
52
  - !ruby/object:Gem::Version
92
- version: 2.5.1
53
+ version: '3.8'
93
54
  type: :runtime
94
55
  prerelease: false
95
56
  version_requirements: !ruby/object:Gem::Requirement
96
57
  requirements:
97
- - - "~>"
98
- - !ruby/object:Gem::Version
99
- version: '2.5'
100
58
  - - ">="
101
59
  - !ruby/object:Gem::Version
102
- version: 2.5.1
60
+ version: '3.8'
103
61
  - !ruby/object:Gem::Dependency
104
- name: rspec
62
+ name: rspec-expectations
105
63
  requirement: !ruby/object:Gem::Requirement
106
64
  requirements:
107
65
  - - ">="
@@ -161,14 +119,17 @@ required_ruby_version: !ruby/object:Gem::Requirement
161
119
  requirements:
162
120
  - - ">="
163
121
  - !ruby/object:Gem::Version
164
- version: '2.7'
122
+ version: '3.0'
123
+ - - "<"
124
+ - !ruby/object:Gem::Version
125
+ version: '4'
165
126
  required_rubygems_version: !ruby/object:Gem::Requirement
166
127
  requirements:
167
128
  - - ">="
168
129
  - !ruby/object:Gem::Version
169
130
  version: '0'
170
131
  requirements: []
171
- rubygems_version: 3.3.7
132
+ rubygems_version: 3.5.9
172
133
  signing_key:
173
134
  specification_version: 4
174
135
  summary: RSpec assistance library for gruf