sarahmei / r_spec

A small Rspec clone based on Fix specing framework.

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

RSpec

Build Status Gem Version Inline docs Documentation

A small Rspec clone based on Fix specing framework.

Contact

Rubies

Installation

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

Usage

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

Security

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

Versioning

RSpec follows Semantic Versioning 2.0.

Contributing

  1. Fork it
  2. Create your feature branch (git checkout -b my-new-feature)
  3. Commit your changes (git commit -am 'Add some feature')
  4. Push to the branch (git push origin my-new-feature)
  5. Create a new Pull Request

License

See LICENSE.md file.

About

A small Rspec clone based on Fix specing framework.

License:MIT License


Languages

Language:Ruby 99.2%Language:Shell 0.8%