https://github.com/rspec/rspec-its
`its` for RSpec 3 extracted from rspec-core 2.x
https://github.com/rspec/rspec-its
Keywords from Contributors
rubygems rspec activerecord mvc activejob code-quality coverage feature-flag rubocop crash-reporting
Last synced: about 21 hours ago
JSON representation
Repository metadata
`its` for RSpec 3 extracted from rspec-core 2.x
- Host: GitHub
- URL: https://github.com/rspec/rspec-its
- Owner: rspec
- License: mit
- Created: 2013-09-23T19:57:22.000Z (over 12 years ago)
- Default Branch: main
- Last Pushed: 2025-11-24T13:55:49.000Z (3 months ago)
- Last Synced: 2026-02-27T21:45:04.083Z (4 days ago)
- Language: Ruby
- Size: 136 KB
- Stars: 276
- Watchers: 7
- Forks: 36
- Open Issues: 1
- Releases: 0
-
Metadata Files:
- Readme: README.md
- Changelog: Changelog.md
- Funding: .github/FUNDING.yml
- License: LICENSE.txt
README.md
RSpec::Its 
RSpec::Its provides the its method as a short-hand to specify the expected value of an attribute.
Installation
Add this line to your application's Gemfile:
gem 'rspec-its'
And then execute:
$ bundle
Or install it yourself as:
$ gem install rspec-its
And require it as:
require 'rspec/its'
Usage
Use the its method to generate a nested example group with a single example that specifies the expected value
of an attribute of the subject using is_expected. The its method can also specify the block expectations of
an attribute of the subject using will or will_not.
its accepts a symbol or a string, and a block representing the example.
its(:size) { is_expected.to eq(1) }
its("length") { is_expected.to eq(1) }
You can use a string with dots to specify a nested attribute (i.e. an
attribute of the attribute of the subject).
its("phone_numbers.size") { is_expected.to_not eq(0) }
The following should-style method is also available:
its(:size) { should eq(1) }
as is an alias of is_expected for pluralized use:
its(:keys) { are_expected.to eq([:key1, :key2]) }
The following block expect-style method is also available:
its(:size) { will_not raise_error }
as is this alias for pluralized use:
its(:keys) { will raise_error(NoMethodError) }
When the subject implements the [] operator, you can pass in an array with a single key to
refer to the value returned by that operator when passed that key as an argument.
its([:key]) { is_expected.to eq(value) }
For hashes, multiple keys within the array will result in successive accesses into the hash. For example:
subject { {key1: {key2: 3} } }
its([:key1, :key2]) { is_expected.to eq(3) }
For other objects, multiple keys within the array will be passed as separate arguments in a single method call to [], as in:
subject { Matrix[ [:a, :b], [:c, :d] ] }
its([1,1]) { is_expected.to eq(:d) }
Metadata arguments are supported.
its(:size, focus: true) { is_expected.to eq(1) }
Contributing
- Fork it
- Create your feature branch (
git checkout -b my-new-feature) - Commit your changes (
git commit -am 'Add some feature') - Push to the branch (
git push origin my-new-feature) - Create new Pull Request
Owner metadata
- Name: RSpec
- Login: rspec
- Email:
- Kind: organization
- Description:
- Website: http://rspec.info
- Location:
- Twitter:
- Company:
- Icon url: https://avatars.githubusercontent.com/u/22388?v=4
- Repositories: 18
- Last ynced at: 2024-03-25T19:34:00.441Z
- Profile URL: https://github.com/rspec
GitHub Events
Total
- Delete event: 11
- Pull request event: 24
- Issues event: 4
- Watch event: 12
- Issue comment event: 16
- Push event: 32
- Create event: 10
Last Year
- Delete event: 1
- Pull request event: 3
- Watch event: 6
- Push event: 2
- Create event: 1
Committers metadata
Last synced: about 23 hours ago
Total Commits: 142
Total Committers: 20
Avg Commits per committer: 7.1
Development Distribution Score (DDS): 0.556
Commits in past year: 2
Committers in past year: 1
Avg Commits per committer in past year: 2.0
Development Distribution Score (DDS) in past year: 0.0
| Name | Commits | |
|---|---|---|
| Jon Rowe | h****o@j****k | 63 |
| Peter Alfvin | p****n@g****m | 52 |
| Olle Jonsson | o****n@g****m | 5 |
| dependabot[bot] | 4****] | 3 |
| Alexis Montagne | a****e@g****m | 2 |
| Ken Dreyer | k****r@k****m | 2 |
| Tilo Prütz | t****o@i****e | 2 |
| Siva Gollapalli | s****a@j****m | 1 |
| Abraham Sangha | a****a@g****m | 1 |
| Alyssa Ross | hi@a****s | 1 |
| James Ottaway | g****t@j****o | 1 |
| Matijs van Zuijlen | m****s@m****t | 1 |
| Myron Marston | m****n@g****m | 1 |
| Orien Madgwick | _@o****o | 1 |
| Phil Pirozhkov | p****j | 1 |
| Russ Buchanan | r****s@g****m | 1 |
| Tim Wade | i****y | 1 |
| Vít Ondruch | v****h@r****m | 1 |
| michael chrisco | m****o@g****m | 1 |
| ydah | 1****h | 1 |
Committer domains:
- redhat.com: 1
- orien.io: 1
- matijs.net: 1
- james.ottaway.io: 1
- alyssa.is: 1
- joshsoftware.com: 1
- infopark.de: 1
- ktdreyer.com: 1
- jonrowe.co.uk: 1
Issue and Pull Request metadata
Last synced: 2 months ago
Total issues: 26
Total pull requests: 86
Average time to close issues: about 1 year
Average time to close pull requests: 8 months
Total issue authors: 21
Total pull request authors: 34
Average comments per issue: 4.88
Average comments per pull request: 1.4
Merged pull request: 58
Bot issues: 0
Bot pull requests: 2
Past year issues: 0
Past year pull requests: 5
Past year average time to close issues: N/A
Past year average time to close pull requests: 10 minutes
Past year issue authors: 0
Past year pull request authors: 2
Past year average comments per issue: 0
Past year average comments per pull request: 0.0
Past year merged pull request: 4
Past year bot issues: 0
Past year bot pull requests: 1
Top Issue Authors
- myronmarston (6)
- palfvin (1)
- mbj (1)
- bbtdev (1)
- DannyBen (1)
- dnagir (1)
- burtlo (1)
- islandsvinur (1)
- yb66 (1)
- walterdolce (1)
- otg-kalex (1)
- obfuscoder (1)
- nilbus (1)
- michaelachrisco (1)
- twe4ked (1)
Top Pull Request Authors
- JonRowe (29)
- palfvin (6)
- olleolleolle (6)
- voxik (5)
- jamesottaway (3)
- ydah (3)
- jacob-carlborg (2)
- bazay (2)
- dependabot[bot] (2)
- walterdolce (2)
- zirni (2)
- ktdreyer (2)
- benoittgt (1)
- pirj (1)
- michaelachrisco (1)
Top Issue Labels
- enhancement (1)
Top Pull Request Labels
- dependencies (2)
- github_actions (2)
Package metadata
- Total packages: 14
-
Total downloads:
- rubygems: 193,645,654 total
- Total docker downloads: 1,221,430,742
- Total dependent packages: 1,354 (may contain duplicates)
- Total dependent repositories: 12,966 (may contain duplicates)
- Total versions: 36
- Total maintainers: 1
gem.coop: rspec-its
RSpec extension gem for attribute matching
- Homepage: https://github.com/rspec/rspec-its
- Documentation: http://www.rubydoc.info/gems/rspec-its/
- Licenses: MIT
- Latest release: 2.0.0 (published over 1 year ago)
- Last Synced: 2026-03-02T05:31:43.812Z (1 day ago)
- Versions: 9
- Dependent Packages: 0
- Dependent Repositories: 0
- Downloads: 96,822,827 Total
- Docker Downloads: 610,715,371
-
Rankings:
- Dependent repos count: 0.0%
- Dependent packages count: 0.0%
- Average: 0.102%
- Docker downloads count: 0.147%
- Downloads: 0.26%
- Maintainers (1)
rubygems.org: rspec-its
RSpec extension gem for attribute matching
- Homepage: https://github.com/rspec/rspec-its
- Documentation: http://www.rubydoc.info/gems/rspec-its/
- Licenses: MIT
- Latest release: 2.0.0 (published over 1 year ago)
- Last Synced: 2026-03-02T06:31:52.091Z (1 day ago)
- Versions: 9
- Dependent Packages: 1,354
- Dependent Repositories: 12,966
- Downloads: 96,822,827 Total
- Docker Downloads: 610,715,371
-
Rankings:
- Dependent packages count: 0.036%
- Downloads: 0.224%
- Docker downloads count: 0.264%
- Dependent repos count: 0.302%
- Average: 1.43%
- Stargazers count: 3.567%
- Forks count: 4.188%
- Maintainers (1)
proxy.golang.org: github.com/rspec/rspec-its
- Homepage:
- Documentation: https://pkg.go.dev/github.com/rspec/rspec-its#section-documentation
- Licenses: mit
- Latest release: v2.0.0+incompatible (published over 1 year ago)
- Last Synced: 2026-02-28T21:01:06.035Z (3 days ago)
- Versions: 7
- Dependent Packages: 0
- Dependent Repositories: 0
-
Rankings:
- Stargazers count: 3.362%
- Forks count: 3.804%
- Average: 6.886%
- Dependent packages count: 9.576%
- Dependent repos count: 10.802%
debian-10: ruby-rspec-its
- Homepage: https://github.com/rspec/rspec-its
- Documentation: https://packages.debian.org/buster/ruby-rspec-its
- Licenses:
- Latest release: 1.2.0-3 (published 20 days ago)
- Last Synced: 2026-02-13T04:25:30.381Z (19 days ago)
- Versions: 1
- Dependent Packages: 0
- Dependent Repositories: 0
-
Rankings:
- Dependent repos count: 0.0%
- Dependent packages count: 0.0%
- Average: 100%
debian-11: ruby-rspec-its
- Homepage: https://github.com/rspec/rspec-its
- Documentation: https://packages.debian.org/bullseye/ruby-rspec-its
- Licenses:
- Latest release: 1.3.0-1 (published 21 days ago)
- Last Synced: 2026-02-13T08:24:30.542Z (18 days ago)
- Versions: 1
- Dependent Packages: 0
- Dependent Repositories: 0
-
Rankings:
- Dependent repos count: 0.0%
- Dependent packages count: 0.0%
- Average: 100%
guix: ruby-rspec-its
RSpec extension that provides the @code{its} method
- Homepage: https://github.com/rspec/rspec-its
- Documentation: https://git.savannah.gnu.org/cgit/guix.git/tree/gnu/packages/ruby-xyz.scm#n539
- Licenses: expat
- Latest release: 1.3.0 (published about 24 hours ago)
- Last Synced: 2026-03-02T18:51:45.625Z (about 24 hours ago)
- Versions: 1
- Dependent Packages: 0
- Dependent Repositories: 0
-
Rankings:
- Dependent repos count: 0.0%
- Dependent packages count: 0.0%
- Average: 100%
debian-12: ruby-rspec-its
- Homepage: https://github.com/rspec/rspec-its
- Documentation: https://packages.debian.org/bookworm/ruby-rspec-its
- Licenses:
- Latest release: 1.3.0-1 (published 19 days ago)
- Last Synced: 2026-02-12T23:40:08.925Z (19 days ago)
- Versions: 1
- Dependent Packages: 0
- Dependent Repositories: 0
-
Rankings:
debian-13: ruby-rspec-its
- Homepage: https://github.com/rspec/rspec-its
- Documentation: https://packages.debian.org/trixie/ruby-rspec-its
- Licenses:
- Latest release: 1.3.0-1 (published 19 days ago)
- Last Synced: 2026-02-13T13:19:14.611Z (18 days ago)
- Versions: 1
- Dependent Packages: 0
- Dependent Repositories: 0
-
Rankings:
- Dependent repos count: 0.0%
- Dependent packages count: 0.0%
- Average: 100%
Dependencies
- coveralls >= 0
- ffi < 1.9.19
- ffi < 1.9.15
- ffi ~> 1.9.25
- aruba ~> 0.14.12 development
- bundler > 1.3.0 development
- cucumber ~> 1.3.8 development
- rake ~> 11.0.0 development
- rake ~> 10.0.0 development
- rake ~> 12.3.2 development
- rake ~> 13.0.0 development
- rspec-core >= 3.0.0
- rspec-expectations >= 3.0.0
- actions/checkout v3 composite
- ruby/setup-ruby v1 composite
Score: 29.690210164043897