r_spec 1.0.0.beta11 → 1.0.0
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
- data/README.md +10 -9
- data/lib/r_spec/dsl.rb +1 -1
- metadata +4 -4
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: b251a708b0d9e2f0dcc8a17f7ef08cfeeafa6e553446e9a650431c9aaf7b6951
|
4
|
+
data.tar.gz: 528cbc2cd07397ba094a5f08703be53467ac04ee85c82f1cd1465e419f4c5c92
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 7132f226d0510929ec1a466c2c3e9a3c90a654efd399646476eb04b5fbdcad84254791eb270b83ca68e2c17ad06ca98581a79251714ae7032a9eb888f8716db2
|
7
|
+
data.tar.gz: 55d0b1f4e98feeca3c875c542529e1ea5a4f43093a30658f56670f380de23f7f5402e562fccfb85e69e234a066f06ec8600493fcdedd871d78183ea419d055f6
|
data/README.md
CHANGED
@@ -6,15 +6,16 @@ A minimalist __[RSpec](https://github.com/rspec/rspec) clone__ with all the esse
|
|
6
6
|
|
7
7
|
## Status
|
8
8
|
|
9
|
-
[](https://github.com/cyril/r_spec.rb/releases)
|
10
|
+
[](https://rubydoc.info/github/cyril/r_spec.rb/main)
|
11
11
|
[](https://github.com/cyril/r_spec.rb/actions?query=workflow%3Aci+branch%3Amain)
|
12
12
|
[](https://github.com/cyril/r_spec.rb/actions?query=workflow%3Arubocop+branch%3Amain)
|
13
|
+
[](https://github.com/cyril/r_spec.rb/raw/main/LICENSE.md)
|
13
14
|
|
14
15
|
## Project goals
|
15
16
|
|
16
17
|
* Enforce the guidelines and best practices outlined in the community [RSpec style guide](https://rspec.rubystyle.guide/).
|
17
|
-
* Provide most of RSpec's DSL to express expected outcomes of a code example
|
18
|
+
* Provide most of RSpec's DSL to express expected outcomes of a code example with no magical powers.
|
18
19
|
|
19
20
|
## Some differences
|
20
21
|
|
@@ -22,7 +23,7 @@ A minimalist __[RSpec](https://github.com/rspec/rspec) clone__ with all the esse
|
|
22
23
|
* Spec files can also be executed directly with the `ruby` executable.
|
23
24
|
* There is no option to activate monkey-patching.
|
24
25
|
* It does not rely on hacks such as `at_exit` hook to trigger the tests.
|
25
|
-
* Built-in matchers do not trust _actual_ and do not send it messages.
|
26
|
+
* Built-in matchers [do not trust _actual_](https://asciinema.org/a/29172?autoplay=1&speed=2) and do not send it messages.
|
26
27
|
* If no `subject` has been explicitly determined, none is defined.
|
27
28
|
* If no described class is set, `described_class` is undefined instead of `nil`.
|
28
29
|
* Expectations cannot be added inside a `before` block.
|
@@ -30,7 +31,7 @@ A minimalist __[RSpec](https://github.com/rspec/rspec) clone__ with all the esse
|
|
30
31
|
* The `let` method defines a helper method rather than a memoized helper method.
|
31
32
|
* The one-liner `is_expected` syntax also works with block expectations.
|
32
33
|
* `subject`, `before`, `after` and `let` definitions must come before examples.
|
33
|
-
* Each `context` runs its tests in _isolation_ to prevent side effects.
|
34
|
+
* Each [`context` runs its tests in _isolation_](https://asciinema.org/a/29070?autoplay=1&speed=2) to prevent side effects.
|
34
35
|
|
35
36
|
## Important ⚠️
|
36
37
|
|
@@ -49,7 +50,7 @@ Following [RubyGems naming conventions](https://guides.rubygems.org/name-your-ge
|
|
49
50
|
Add this line to your application's Gemfile:
|
50
51
|
|
51
52
|
```ruby
|
52
|
-
gem "r_spec"
|
53
|
+
gem "r_spec"
|
53
54
|
```
|
54
55
|
|
55
56
|
And then execute:
|
@@ -61,7 +62,7 @@ bundle
|
|
61
62
|
Or install it yourself as:
|
62
63
|
|
63
64
|
```sh
|
64
|
-
gem install r_spec
|
65
|
+
gem install r_spec
|
65
66
|
```
|
66
67
|
|
67
68
|
## Overview
|
@@ -72,7 +73,7 @@ Inspired by [RSpec](https://rspec.info/), it includes a domain specific language
|
|
72
73
|
|
73
74
|
A basic spec looks something like this:
|
74
75
|
|
75
|
-
[](https://asciinema.org/a/422210?autoplay=1&speed=2)
|
76
77
|
|
77
78
|
## Usage
|
78
79
|
|
@@ -256,7 +257,7 @@ __RSpec clone__ follows [Semantic Versioning 2.0](https://semver.org/).
|
|
256
257
|
|
257
258
|
## License
|
258
259
|
|
259
|
-
The [gem](https://rubygems.org/gems/r_spec) is available as open source under the terms of the [MIT License](https://
|
260
|
+
The [gem](https://rubygems.org/gems/r_spec) is available as open source under the terms of the [MIT License](https://github.com/cyril/r_spec.rb/raw/main/LICENSE.md).
|
260
261
|
|
261
262
|
## One more thing
|
262
263
|
|
data/lib/r_spec/dsl.rb
CHANGED
@@ -180,7 +180,7 @@ module RSpec
|
|
180
180
|
# @param _description [String] A description that usually begins with
|
181
181
|
# "when", "with" or "without".
|
182
182
|
# @param block [Proc] The block to define the specs.
|
183
|
-
def self.context(_description
|
183
|
+
def self.context(_description, &block)
|
184
184
|
desc = ::Class.new(self)
|
185
185
|
::Aw.fork! { desc.instance_eval(&block) }
|
186
186
|
end
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: r_spec
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.0.0
|
4
|
+
version: 1.0.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Cyril Kato
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2021-06-
|
11
|
+
date: 2021-06-24 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: aw
|
@@ -235,9 +235,9 @@ required_ruby_version: !ruby/object:Gem::Requirement
|
|
235
235
|
version: 2.7.0
|
236
236
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
237
237
|
requirements:
|
238
|
-
- - "
|
238
|
+
- - ">="
|
239
239
|
- !ruby/object:Gem::Version
|
240
|
-
version:
|
240
|
+
version: '0'
|
241
241
|
requirements: []
|
242
242
|
rubygems_version: 3.1.6
|
243
243
|
signing_key:
|