rspec-stubbed_env 1.0.3 → 1.0.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 +4 -4
- checksums.yaml.gz.sig +0 -0
- data/CHANGELOG.md +101 -17
- data/CITATION.cff +20 -0
- data/CODE_OF_CONDUCT.md +3 -4
- data/CONTRIBUTING.md +202 -62
- data/FUNDING.md +70 -0
- data/LICENSE.md +11 -0
- data/README.md +379 -218
- data/RUBOCOP.md +71 -0
- data/SECURITY.md +1 -1
- data/certs/pboling.pem +27 -0
- data/lib/rspec/stubbed_env/hide_helpers.rb +1 -0
- data/lib/rspec/stubbed_env/stub_helpers.rb +35 -2
- data/lib/rspec/stubbed_env/version.rb +4 -1
- data/lib/rspec/stubbed_env.rb +2 -0
- data/sig/rspec/stubbed_env/version.rbs +8 -0
- data.tar.gz.sig +0 -0
- metadata +179 -35
- metadata.gz.sig +0 -0
- data/LICENSE.txt +0 -8
data/RUBOCOP.md
ADDED
|
@@ -0,0 +1,71 @@
|
|
|
1
|
+
# RuboCop Usage Guide
|
|
2
|
+
|
|
3
|
+
## Overview
|
|
4
|
+
|
|
5
|
+
A tale of two RuboCop plugin gems.
|
|
6
|
+
|
|
7
|
+
### RuboCop Gradual
|
|
8
|
+
|
|
9
|
+
This project uses `rubocop_gradual` instead of vanilla RuboCop for code style checking. The `rubocop_gradual` tool allows for gradual adoption of RuboCop rules by tracking violations in a lock file.
|
|
10
|
+
|
|
11
|
+
### RuboCop LTS
|
|
12
|
+
|
|
13
|
+
This project uses `rubocop-lts` to ensure, on a best-effort basis, compatibility with Ruby >= 1.9.2.
|
|
14
|
+
RuboCop rules are meticulously configured by the `rubocop-lts` family of gems to ensure that a project is compatible with a specific version of Ruby. See: https://rubocop-lts.gitlab.io for more.
|
|
15
|
+
|
|
16
|
+
## Checking RuboCop Violations
|
|
17
|
+
|
|
18
|
+
To check for RuboCop violations in this project, always use:
|
|
19
|
+
|
|
20
|
+
```bash
|
|
21
|
+
bundle exec rake rubocop_gradual:check
|
|
22
|
+
```
|
|
23
|
+
|
|
24
|
+
**Do not use** the standard RuboCop commands like:
|
|
25
|
+
- `bundle exec rubocop`
|
|
26
|
+
- `rubocop`
|
|
27
|
+
|
|
28
|
+
## Understanding the Lock File
|
|
29
|
+
|
|
30
|
+
The `.rubocop_gradual.lock` file tracks all current RuboCop violations in the project. This allows the team to:
|
|
31
|
+
|
|
32
|
+
1. Prevent new violations while gradually fixing existing ones
|
|
33
|
+
2. Track progress on code style improvements
|
|
34
|
+
3. Ensure CI builds don't fail due to pre-existing violations
|
|
35
|
+
|
|
36
|
+
## Common Commands
|
|
37
|
+
|
|
38
|
+
- **Check violations**
|
|
39
|
+
- `bundle exec rake rubocop_gradual`
|
|
40
|
+
- `bundle exec rake rubocop_gradual:check`
|
|
41
|
+
- **(Safe) Autocorrect violations, and update lockfile if no new violations**
|
|
42
|
+
- `bundle exec rake rubocop_gradual:autocorrect`
|
|
43
|
+
- **Force update the lock file (w/o autocorrect) to match violations present in code**
|
|
44
|
+
- `bundle exec rake rubocop_gradual:force_update`
|
|
45
|
+
|
|
46
|
+
## Workflow
|
|
47
|
+
|
|
48
|
+
1. Before submitting a PR, run `bundle exec rake rubocop_gradual:autocorrect`
|
|
49
|
+
a. or just the default `bundle exec rake`, as autocorrection is a pre-requisite of the default task.
|
|
50
|
+
2. If there are new violations, either:
|
|
51
|
+
- Fix them in your code
|
|
52
|
+
- Run `bundle exec rake rubocop_gradual:force_update` to update the lock file (only for violations you can't fix immediately)
|
|
53
|
+
3. Commit the updated `.rubocop_gradual.lock` file along with your changes
|
|
54
|
+
|
|
55
|
+
## Never add inline RuboCop disables
|
|
56
|
+
|
|
57
|
+
Do not add inline `rubocop:disable` / `rubocop:enable` comments anywhere in the codebase (including specs, except when following the few existing `rubocop:disable` patterns for a rule already being disabled elsewhere in the code). We handle exceptions in two supported ways:
|
|
58
|
+
|
|
59
|
+
- Permanent/structural exceptions: prefer adjusting the RuboCop configuration (e.g., in `.rubocop.yml`) to exclude a rule for a path or file pattern when it makes sense project-wide.
|
|
60
|
+
- Temporary exceptions while improving code: record the current violations in `.rubocop_gradual.lock` via the gradual workflow:
|
|
61
|
+
- `bundle exec rake rubocop_gradual:autocorrect` (preferred; will autocorrect what it can and update the lock only if no new violations were introduced)
|
|
62
|
+
- If needed, `bundle exec rake rubocop_gradual:force_update` (as a last resort when you cannot fix the newly reported violations immediately)
|
|
63
|
+
|
|
64
|
+
In general, treat the rules as guidance to follow; fix violations rather than ignore them. For example, RSpec conventions in this project expect `described_class` to be used in specs that target a specific class under test.
|
|
65
|
+
|
|
66
|
+
## Benefits of rubocop_gradual
|
|
67
|
+
|
|
68
|
+
- Allows incremental adoption of code style rules
|
|
69
|
+
- Prevents CI failures due to pre-existing violations
|
|
70
|
+
- Provides a clear record of code style debt
|
|
71
|
+
- Enables focused efforts on improving code quality over time
|
data/SECURITY.md
CHANGED
data/certs/pboling.pem
ADDED
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
-----BEGIN CERTIFICATE-----
|
|
2
|
+
MIIEgDCCAuigAwIBAgIBATANBgkqhkiG9w0BAQsFADBDMRUwEwYDVQQDDAxwZXRl
|
|
3
|
+
ci5ib2xpbmcxFTATBgoJkiaJk/IsZAEZFgVnbWFpbDETMBEGCgmSJomT8ixkARkW
|
|
4
|
+
A2NvbTAeFw0yNTA1MDQxNTMzMDlaFw00NTA0MjkxNTMzMDlaMEMxFTATBgNVBAMM
|
|
5
|
+
DHBldGVyLmJvbGluZzEVMBMGCgmSJomT8ixkARkWBWdtYWlsMRMwEQYKCZImiZPy
|
|
6
|
+
LGQBGRYDY29tMIIBojANBgkqhkiG9w0BAQEFAAOCAY8AMIIBigKCAYEAruUoo0WA
|
|
7
|
+
uoNuq6puKWYeRYiZekz/nsDeK5x/0IEirzcCEvaHr3Bmz7rjo1I6On3gGKmiZs61
|
|
8
|
+
LRmQ3oxy77ydmkGTXBjruJB+pQEn7UfLSgQ0xa1/X3kdBZt6RmabFlBxnHkoaGY5
|
|
9
|
+
mZuZ5+Z7walmv6sFD9ajhzj+oIgwWfnEHkXYTR8I6VLN7MRRKGMPoZ/yvOmxb2DN
|
|
10
|
+
coEEHWKO9CvgYpW7asIihl/9GMpKiRkcYPm9dGQzZc6uTwom1COfW0+ZOFrDVBuV
|
|
11
|
+
FMQRPswZcY4Wlq0uEBLPU7hxnCL9nKK6Y9IhdDcz1mY6HZ91WImNslOSI0S8hRpj
|
|
12
|
+
yGOWxQIhBT3fqCBlRIqFQBudrnD9jSNpSGsFvbEijd5ns7Z9ZMehXkXDycpGAUj1
|
|
13
|
+
to/5cuTWWw1JqUWrKJYoifnVhtE1o1DZ+LkPtWxHtz5kjDG/zR3MG0Ula0UOavlD
|
|
14
|
+
qbnbcXPBnwXtTFeZ3C+yrWpE4pGnl3yGkZj9SMTlo9qnTMiPmuWKQDatAgMBAAGj
|
|
15
|
+
fzB9MAkGA1UdEwQCMAAwCwYDVR0PBAQDAgSwMB0GA1UdDgQWBBQE8uWvNbPVNRXZ
|
|
16
|
+
HlgPbc2PCzC4bjAhBgNVHREEGjAYgRZwZXRlci5ib2xpbmdAZ21haWwuY29tMCEG
|
|
17
|
+
A1UdEgQaMBiBFnBldGVyLmJvbGluZ0BnbWFpbC5jb20wDQYJKoZIhvcNAQELBQAD
|
|
18
|
+
ggGBAJbnUwfJQFPkBgH9cL7hoBfRtmWiCvdqdjeTmi04u8zVNCUox0A4gT982DE9
|
|
19
|
+
wmuN12LpdajxZONqbXuzZvc+nb0StFwmFYZG6iDwaf4BPywm2e/Vmq0YG45vZXGR
|
|
20
|
+
L8yMDSK1cQXjmA+ZBKOHKWavxP6Vp7lWvjAhz8RFwqF9GuNIdhv9NpnCAWcMZtpm
|
|
21
|
+
GUPyIWw/Cw/2wZp74QzZj6Npx+LdXoLTF1HMSJXZ7/pkxLCsB8m4EFVdb/IrW/0k
|
|
22
|
+
kNSfjtAfBHO8nLGuqQZVH9IBD1i9K6aSs7pT6TW8itXUIlkIUI2tg5YzW6OFfPzq
|
|
23
|
+
QekSkX3lZfY+HTSp/o+YvKkqWLUV7PQ7xh1ZYDtocpaHwgxe/j3bBqHE+CUPH2vA
|
|
24
|
+
0V/FwdTRWcwsjVoOJTrYcff8pBZ8r2MvtAc54xfnnhGFzeRHfcltobgFxkAXdE6p
|
|
25
|
+
DVjBtqT23eugOqQ73umLcYDZkc36vnqGxUBSsXrzY9pzV5gGr2I8YUxMqf6ATrZt
|
|
26
|
+
L9nRqA==
|
|
27
|
+
-----END CERTIFICATE-----
|
|
@@ -46,12 +46,22 @@ module RSpec
|
|
|
46
46
|
end
|
|
47
47
|
end
|
|
48
48
|
|
|
49
|
+
# Opt in to stubbing ENV hash accessors. By default, stub_env only stubs
|
|
50
|
+
# ENV[], ENV.fetch, and ENV.values_at so partial ENV stubs stay narrowly
|
|
51
|
+
# scoped.
|
|
52
|
+
def stub_env_hash_accessors
|
|
53
|
+
init_stub unless env_stubbed?
|
|
54
|
+
allow(ENV).to(receive(:to_hash) { mixed_env_hash })
|
|
55
|
+
allow(ENV).to(receive(:to_h) { mixed_env_hash })
|
|
56
|
+
end
|
|
57
|
+
|
|
49
58
|
private
|
|
50
59
|
|
|
51
60
|
STUBBED_KEY = "__STUBBED__"
|
|
52
61
|
|
|
53
|
-
def add_stubbed_value(key, value)
|
|
62
|
+
def add_stubbed_value(key, value, track: true)
|
|
54
63
|
key = key.to_s # Support symbols by forcing to string
|
|
64
|
+
remember_stubbed_value(key, value) if track
|
|
55
65
|
allow_brackets(key, value)
|
|
56
66
|
allow_fetch(key, value)
|
|
57
67
|
allow_values_at
|
|
@@ -80,10 +90,33 @@ module RSpec
|
|
|
80
90
|
end
|
|
81
91
|
|
|
82
92
|
def init_stub
|
|
93
|
+
@__rspec_stubbed_env_mutations ||= []
|
|
83
94
|
allow(ENV).to(receive(:[]).and_call_original)
|
|
84
95
|
allow(ENV).to(receive(:fetch).and_call_original)
|
|
85
96
|
allow(ENV).to(receive(:values_at).and_call_original)
|
|
86
|
-
add_stubbed_value(STUBBED_KEY, true)
|
|
97
|
+
add_stubbed_value(STUBBED_KEY, true, :track => false)
|
|
98
|
+
end
|
|
99
|
+
|
|
100
|
+
def remember_stubbed_value(key, value)
|
|
101
|
+
@__rspec_stubbed_env_mutations ||= []
|
|
102
|
+
@__rspec_stubbed_env_mutations << [:stub, key, value]
|
|
103
|
+
end
|
|
104
|
+
|
|
105
|
+
def remember_hidden_key(key)
|
|
106
|
+
@__rspec_stubbed_env_mutations ||= []
|
|
107
|
+
@__rspec_stubbed_env_mutations << [:hide, key]
|
|
108
|
+
end
|
|
109
|
+
|
|
110
|
+
def mixed_env_hash
|
|
111
|
+
@__rspec_stubbed_env_mutations.each_with_object(ENV.each_pair.to_h) do |mutation, hash|
|
|
112
|
+
operation, key, value = mutation
|
|
113
|
+
case operation
|
|
114
|
+
when :stub
|
|
115
|
+
value.nil? ? hash.delete(key) : hash[key] = value
|
|
116
|
+
when :hide
|
|
117
|
+
hash.delete(key)
|
|
118
|
+
end
|
|
119
|
+
end
|
|
87
120
|
end
|
|
88
121
|
end
|
|
89
122
|
end
|
data/lib/rspec/stubbed_env.rb
CHANGED
data.tar.gz.sig
CHANGED
|
Binary file
|
metadata
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
|
2
2
|
name: rspec-stubbed_env
|
|
3
3
|
version: !ruby/object:Gem::Version
|
|
4
|
-
version: 1.0.
|
|
4
|
+
version: 1.0.5
|
|
5
5
|
platform: ruby
|
|
6
6
|
authors:
|
|
7
7
|
- Peter Boling
|
|
@@ -36,15 +36,66 @@ cert_chain:
|
|
|
36
36
|
DVjBtqT23eugOqQ73umLcYDZkc36vnqGxUBSsXrzY9pzV5gGr2I8YUxMqf6ATrZt
|
|
37
37
|
L9nRqA==
|
|
38
38
|
-----END CERTIFICATE-----
|
|
39
|
-
date:
|
|
39
|
+
date: 1980-01-02 00:00:00.000000000 Z
|
|
40
40
|
dependencies:
|
|
41
41
|
- !ruby/object:Gem::Dependency
|
|
42
|
-
name:
|
|
42
|
+
name: kettle-dev
|
|
43
|
+
requirement: !ruby/object:Gem::Requirement
|
|
44
|
+
requirements:
|
|
45
|
+
- - "~>"
|
|
46
|
+
- !ruby/object:Gem::Version
|
|
47
|
+
version: '2.2'
|
|
48
|
+
- - ">="
|
|
49
|
+
- !ruby/object:Gem::Version
|
|
50
|
+
version: 2.2.19
|
|
51
|
+
type: :development
|
|
52
|
+
prerelease: false
|
|
53
|
+
version_requirements: !ruby/object:Gem::Requirement
|
|
54
|
+
requirements:
|
|
55
|
+
- - "~>"
|
|
56
|
+
- !ruby/object:Gem::Version
|
|
57
|
+
version: '2.2'
|
|
58
|
+
- - ">="
|
|
59
|
+
- !ruby/object:Gem::Version
|
|
60
|
+
version: 2.2.19
|
|
61
|
+
- !ruby/object:Gem::Dependency
|
|
62
|
+
name: bundler-audit
|
|
63
|
+
requirement: !ruby/object:Gem::Requirement
|
|
64
|
+
requirements:
|
|
65
|
+
- - "~>"
|
|
66
|
+
- !ruby/object:Gem::Version
|
|
67
|
+
version: 0.9.3
|
|
68
|
+
type: :development
|
|
69
|
+
prerelease: false
|
|
70
|
+
version_requirements: !ruby/object:Gem::Requirement
|
|
71
|
+
requirements:
|
|
72
|
+
- - "~>"
|
|
73
|
+
- !ruby/object:Gem::Version
|
|
74
|
+
version: 0.9.3
|
|
75
|
+
- !ruby/object:Gem::Dependency
|
|
76
|
+
name: rake
|
|
77
|
+
requirement: !ruby/object:Gem::Requirement
|
|
78
|
+
requirements:
|
|
79
|
+
- - "~>"
|
|
80
|
+
- !ruby/object:Gem::Version
|
|
81
|
+
version: '13.0'
|
|
82
|
+
type: :development
|
|
83
|
+
prerelease: false
|
|
84
|
+
version_requirements: !ruby/object:Gem::Requirement
|
|
85
|
+
requirements:
|
|
86
|
+
- - "~>"
|
|
87
|
+
- !ruby/object:Gem::Version
|
|
88
|
+
version: '13.0'
|
|
89
|
+
- !ruby/object:Gem::Dependency
|
|
90
|
+
name: require_bench
|
|
43
91
|
requirement: !ruby/object:Gem::Requirement
|
|
44
92
|
requirements:
|
|
45
93
|
- - "~>"
|
|
46
94
|
- !ruby/object:Gem::Version
|
|
47
95
|
version: '1.0'
|
|
96
|
+
- - ">="
|
|
97
|
+
- !ruby/object:Gem::Version
|
|
98
|
+
version: 1.0.4
|
|
48
99
|
type: :development
|
|
49
100
|
prerelease: false
|
|
50
101
|
version_requirements: !ruby/object:Gem::Requirement
|
|
@@ -52,41 +103,93 @@ dependencies:
|
|
|
52
103
|
- - "~>"
|
|
53
104
|
- !ruby/object:Gem::Version
|
|
54
105
|
version: '1.0'
|
|
106
|
+
- - ">="
|
|
107
|
+
- !ruby/object:Gem::Version
|
|
108
|
+
version: 1.0.4
|
|
55
109
|
- !ruby/object:Gem::Dependency
|
|
56
110
|
name: appraisal2
|
|
57
111
|
requirement: !ruby/object:Gem::Requirement
|
|
58
112
|
requirements:
|
|
59
113
|
- - "~>"
|
|
60
114
|
- !ruby/object:Gem::Version
|
|
61
|
-
version: '3.
|
|
115
|
+
version: '3.1'
|
|
116
|
+
- - ">="
|
|
117
|
+
- !ruby/object:Gem::Version
|
|
118
|
+
version: 3.1.3
|
|
62
119
|
type: :development
|
|
63
120
|
prerelease: false
|
|
64
121
|
version_requirements: !ruby/object:Gem::Requirement
|
|
65
122
|
requirements:
|
|
66
123
|
- - "~>"
|
|
67
124
|
- !ruby/object:Gem::Version
|
|
68
|
-
version: '3.
|
|
125
|
+
version: '3.1'
|
|
126
|
+
- - ">="
|
|
127
|
+
- !ruby/object:Gem::Version
|
|
128
|
+
version: 3.1.3
|
|
69
129
|
- !ruby/object:Gem::Dependency
|
|
70
|
-
name:
|
|
130
|
+
name: kettle-test
|
|
71
131
|
requirement: !ruby/object:Gem::Requirement
|
|
72
132
|
requirements:
|
|
73
133
|
- - "~>"
|
|
74
134
|
- !ruby/object:Gem::Version
|
|
75
|
-
version: '
|
|
135
|
+
version: '2.0'
|
|
136
|
+
- - ">="
|
|
137
|
+
- !ruby/object:Gem::Version
|
|
138
|
+
version: 2.0.7
|
|
76
139
|
type: :development
|
|
77
140
|
prerelease: false
|
|
78
141
|
version_requirements: !ruby/object:Gem::Requirement
|
|
79
142
|
requirements:
|
|
80
143
|
- - "~>"
|
|
81
144
|
- !ruby/object:Gem::Version
|
|
82
|
-
version: '
|
|
145
|
+
version: '2.0'
|
|
146
|
+
- - ">="
|
|
147
|
+
- !ruby/object:Gem::Version
|
|
148
|
+
version: 2.0.7
|
|
83
149
|
- !ruby/object:Gem::Dependency
|
|
84
|
-
name:
|
|
150
|
+
name: turbo_tests2
|
|
151
|
+
requirement: !ruby/object:Gem::Requirement
|
|
152
|
+
requirements:
|
|
153
|
+
- - "~>"
|
|
154
|
+
- !ruby/object:Gem::Version
|
|
155
|
+
version: '3.1'
|
|
156
|
+
- - ">="
|
|
157
|
+
- !ruby/object:Gem::Version
|
|
158
|
+
version: 3.1.5
|
|
159
|
+
type: :development
|
|
160
|
+
prerelease: false
|
|
161
|
+
version_requirements: !ruby/object:Gem::Requirement
|
|
162
|
+
requirements:
|
|
163
|
+
- - "~>"
|
|
164
|
+
- !ruby/object:Gem::Version
|
|
165
|
+
version: '3.1'
|
|
166
|
+
- - ">="
|
|
167
|
+
- !ruby/object:Gem::Version
|
|
168
|
+
version: 3.1.5
|
|
169
|
+
- !ruby/object:Gem::Dependency
|
|
170
|
+
name: ruby-progressbar
|
|
171
|
+
requirement: !ruby/object:Gem::Requirement
|
|
172
|
+
requirements:
|
|
173
|
+
- - "~>"
|
|
174
|
+
- !ruby/object:Gem::Version
|
|
175
|
+
version: '1.13'
|
|
176
|
+
type: :development
|
|
177
|
+
prerelease: false
|
|
178
|
+
version_requirements: !ruby/object:Gem::Requirement
|
|
179
|
+
requirements:
|
|
180
|
+
- - "~>"
|
|
181
|
+
- !ruby/object:Gem::Version
|
|
182
|
+
version: '1.13'
|
|
183
|
+
- !ruby/object:Gem::Dependency
|
|
184
|
+
name: stone_checksums
|
|
85
185
|
requirement: !ruby/object:Gem::Requirement
|
|
86
186
|
requirements:
|
|
87
187
|
- - "~>"
|
|
88
188
|
- !ruby/object:Gem::Version
|
|
89
189
|
version: '1.0'
|
|
190
|
+
- - ">="
|
|
191
|
+
- !ruby/object:Gem::Version
|
|
192
|
+
version: 1.0.3
|
|
90
193
|
type: :development
|
|
91
194
|
prerelease: false
|
|
92
195
|
version_requirements: !ruby/object:Gem::Requirement
|
|
@@ -94,84 +197,125 @@ dependencies:
|
|
|
94
197
|
- - "~>"
|
|
95
198
|
- !ruby/object:Gem::Version
|
|
96
199
|
version: '1.0'
|
|
200
|
+
- - ">="
|
|
201
|
+
- !ruby/object:Gem::Version
|
|
202
|
+
version: 1.0.3
|
|
97
203
|
- !ruby/object:Gem::Dependency
|
|
98
|
-
name:
|
|
204
|
+
name: gitmoji-regex
|
|
99
205
|
requirement: !ruby/object:Gem::Requirement
|
|
100
206
|
requirements:
|
|
101
207
|
- - "~>"
|
|
102
208
|
- !ruby/object:Gem::Version
|
|
103
|
-
version: '0
|
|
209
|
+
version: '2.0'
|
|
210
|
+
- - ">="
|
|
211
|
+
- !ruby/object:Gem::Version
|
|
212
|
+
version: 2.0.3
|
|
104
213
|
type: :development
|
|
105
214
|
prerelease: false
|
|
106
215
|
version_requirements: !ruby/object:Gem::Requirement
|
|
107
216
|
requirements:
|
|
108
217
|
- - "~>"
|
|
109
218
|
- !ruby/object:Gem::Version
|
|
110
|
-
version: '0
|
|
219
|
+
version: '2.0'
|
|
220
|
+
- - ">="
|
|
221
|
+
- !ruby/object:Gem::Version
|
|
222
|
+
version: 2.0.3
|
|
111
223
|
- !ruby/object:Gem::Dependency
|
|
112
|
-
name:
|
|
224
|
+
name: rspec
|
|
113
225
|
requirement: !ruby/object:Gem::Requirement
|
|
114
226
|
requirements:
|
|
115
227
|
- - "~>"
|
|
116
228
|
- !ruby/object:Gem::Version
|
|
117
|
-
version: '13
|
|
229
|
+
version: '3.13'
|
|
118
230
|
type: :development
|
|
119
231
|
prerelease: false
|
|
120
232
|
version_requirements: !ruby/object:Gem::Requirement
|
|
121
233
|
requirements:
|
|
122
234
|
- - "~>"
|
|
123
235
|
- !ruby/object:Gem::Version
|
|
124
|
-
version: '13
|
|
125
|
-
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
|
|
236
|
+
version: '3.13'
|
|
237
|
+
- !ruby/object:Gem::Dependency
|
|
238
|
+
name: rspec-block_is_expected
|
|
239
|
+
requirement: !ruby/object:Gem::Requirement
|
|
240
|
+
requirements:
|
|
241
|
+
- - "~>"
|
|
242
|
+
- !ruby/object:Gem::Version
|
|
243
|
+
version: '1.0'
|
|
244
|
+
type: :development
|
|
245
|
+
prerelease: false
|
|
246
|
+
version_requirements: !ruby/object:Gem::Requirement
|
|
247
|
+
requirements:
|
|
248
|
+
- - "~>"
|
|
249
|
+
- !ruby/object:Gem::Version
|
|
250
|
+
version: '1.0'
|
|
251
|
+
- !ruby/object:Gem::Dependency
|
|
252
|
+
name: rspec_junit_formatter
|
|
253
|
+
requirement: !ruby/object:Gem::Requirement
|
|
254
|
+
requirements:
|
|
255
|
+
- - "~>"
|
|
256
|
+
- !ruby/object:Gem::Version
|
|
257
|
+
version: '0.6'
|
|
258
|
+
type: :development
|
|
259
|
+
prerelease: false
|
|
260
|
+
version_requirements: !ruby/object:Gem::Requirement
|
|
261
|
+
requirements:
|
|
262
|
+
- - "~>"
|
|
263
|
+
- !ruby/object:Gem::Version
|
|
264
|
+
version: '0.6'
|
|
265
|
+
description: "\U0001FAE5 Stub or hide environment variables in a scoped context for
|
|
266
|
+
testing\nstub_env('REDIS_URL' => 'redis://localhost:6379/')\nhide_env('SESSION_SECRET')\n"
|
|
129
267
|
email:
|
|
130
268
|
- floss@galtzo.com
|
|
131
269
|
executables: []
|
|
132
270
|
extensions: []
|
|
133
271
|
extra_rdoc_files:
|
|
134
272
|
- CHANGELOG.md
|
|
273
|
+
- CITATION.cff
|
|
135
274
|
- CODE_OF_CONDUCT.md
|
|
136
275
|
- CONTRIBUTING.md
|
|
137
|
-
-
|
|
276
|
+
- FUNDING.md
|
|
277
|
+
- LICENSE.md
|
|
138
278
|
- README.md
|
|
279
|
+
- RUBOCOP.md
|
|
139
280
|
- SECURITY.md
|
|
140
281
|
files:
|
|
141
282
|
- CHANGELOG.md
|
|
283
|
+
- CITATION.cff
|
|
142
284
|
- CODE_OF_CONDUCT.md
|
|
143
285
|
- CONTRIBUTING.md
|
|
144
|
-
-
|
|
286
|
+
- FUNDING.md
|
|
287
|
+
- LICENSE.md
|
|
145
288
|
- README.md
|
|
289
|
+
- RUBOCOP.md
|
|
146
290
|
- SECURITY.md
|
|
291
|
+
- certs/pboling.pem
|
|
147
292
|
- lib/rspec/stubbed_env.rb
|
|
148
293
|
- lib/rspec/stubbed_env/config.rb
|
|
149
294
|
- lib/rspec/stubbed_env/hide_helpers.rb
|
|
150
295
|
- lib/rspec/stubbed_env/stub_helpers.rb
|
|
151
296
|
- lib/rspec/stubbed_env/version.rb
|
|
152
|
-
|
|
297
|
+
- sig/rspec/stubbed_env/version.rbs
|
|
298
|
+
homepage: https://github.com/galtzo-floss/rspec-stubbed_env
|
|
153
299
|
licenses:
|
|
154
300
|
- MIT
|
|
155
301
|
metadata:
|
|
156
302
|
homepage_uri: https://rspec-stubbed-env.galtzo.com/
|
|
157
|
-
source_code_uri: https://github.com/
|
|
158
|
-
changelog_uri: https://github.com/
|
|
159
|
-
bug_tracker_uri: https://github.com/
|
|
160
|
-
documentation_uri: https://www.rubydoc.info/gems/rspec-stubbed_env/1.0.
|
|
303
|
+
source_code_uri: https://github.com/galtzo-floss/rspec-stubbed_env/tree/v1.0.5
|
|
304
|
+
changelog_uri: https://github.com/galtzo-floss/rspec-stubbed_env/blob/v1.0.5/CHANGELOG.md
|
|
305
|
+
bug_tracker_uri: https://github.com/galtzo-floss/rspec-stubbed_env/issues
|
|
306
|
+
documentation_uri: https://www.rubydoc.info/gems/rspec-stubbed_env/1.0.5
|
|
161
307
|
funding_uri: https://github.com/sponsors/pboling
|
|
162
|
-
wiki_uri: https://github.com/
|
|
308
|
+
wiki_uri: https://github.com/galtzo-floss/rspec-stubbed_env/wiki
|
|
163
309
|
news_uri: https://www.railsbling.com/tags/rspec-stubbed_env
|
|
310
|
+
discord_uri: https://discord.gg/3qme4XHNKN
|
|
164
311
|
rubygems_mfa_required: 'true'
|
|
165
312
|
rdoc_options:
|
|
166
313
|
- "--title"
|
|
167
|
-
- rspec-stubbed_env - Unobtrusively stub ENV keys and values during testing
|
|
314
|
+
- "rspec-stubbed_env - \U0001FAE5 Unobtrusively stub ENV keys and values during testing"
|
|
168
315
|
- "--main"
|
|
169
|
-
- CHANGELOG.md
|
|
170
|
-
- CODE_OF_CONDUCT.md
|
|
171
|
-
- CONTRIBUTING.md
|
|
172
|
-
- LICENSE.txt
|
|
173
316
|
- README.md
|
|
174
|
-
-
|
|
317
|
+
- "--exclude"
|
|
318
|
+
- "^sig/"
|
|
175
319
|
- "--line-numbers"
|
|
176
320
|
- "--inline-source"
|
|
177
321
|
- "--quiet"
|
|
@@ -188,7 +332,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
|
188
332
|
- !ruby/object:Gem::Version
|
|
189
333
|
version: '0'
|
|
190
334
|
requirements: []
|
|
191
|
-
rubygems_version:
|
|
335
|
+
rubygems_version: 4.0.10
|
|
192
336
|
specification_version: 4
|
|
193
|
-
summary: Unobtrusively stub ENV keys and values during testing
|
|
337
|
+
summary: "\U0001FAE5 Unobtrusively stub ENV keys and values during testing"
|
|
194
338
|
test_files: []
|
metadata.gz.sig
CHANGED
|
Binary file
|
data/LICENSE.txt
DELETED
|
@@ -1,8 +0,0 @@
|
|
|
1
|
-
Copyright © 2014 LittlOwlLabs
|
|
2
|
-
Copyright © 2018-2020, 2023 - 2025 Peter Boling of railsbling.com
|
|
3
|
-
|
|
4
|
-
Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:
|
|
5
|
-
|
|
6
|
-
The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.
|
|
7
|
-
|
|
8
|
-
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|