A small Rspec clone based on Fix specing framework.
- Home page: https://github.com/cyril/r_spec
- Bugs/issues: https://github.com/cyril/r_spec/issues
- Support: https://stackoverflow.com/questions/tagged/r_spec
RSpec is cryptographically signed.
To be sure the gem you install hasn't been tampered with, add my public key (if you haven't already) as a trusted certificate:
$ gem cert --add <(curl -Ls https://raw.github.com/cyril/r_spec/master/certs/gem-cyril-public_cert.pem)
$ gem install r_spec -P HighSecurity
The HighSecurity
trust profile will verify all gems. All of RSpec's dependencies are signed.
Or add this line to your application's Gemfile:
gem 'r_spec'
And then execute:
$ bundle
Given this greeting_spec.rb
spec:
require 'r_spec'
greeting = 'Hello, world!'
RSpec.describe 'Test' do
context 'Alice' do
before { greeting.gsub!('world', 'Alice') }
it { expect(greeting).to eql 'Hello, Alice!' }
end
context 'Bob' do
before { greeting.gsub!('world', 'Bob') }
it { expect(greeting).to eql 'Hello, Bob!' }
end
end
It can be tested in the console with the command:
$ ruby greeting_spec.rb
..
Ran 2 tests in 0.010994 seconds
100% compliant - 0 infos, 0 failures, 0 errors
As a basic form of security RSpec provides a set of SHA512 checksums for
every Gem release. These checksums can be found in the checksum/
directory.
Although these checksums do not prevent malicious users from tampering with a
built Gem they can be used for basic integrity verification purposes.
The checksum of a file can be checked using the sha512sum
command. For
example:
$ sha512sum pkg/r_spec-0.1.0.gem
e9e35e1953104e2d428b0f217e418db3c1baecd9e011b2545f9fcba4ff7e3bba674c6b928b3d8db842a139cd7cc9806d77ebdc7f710ece4f2aecb343703e2451 pkg/r_spec-0.1.0.gem
RSpec follows Semantic Versioning 2.0.
- 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 a new Pull Request
See LICENSE.md
file.