Matchi::Rspec

Build Status Code Climate Dependency Status Gem Version Inline docs Documentation

Extend Matchi matchers with some RSpec's ones.

Contact

Rubies

Installation

Matchi::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/fixrb/matchi-rspec/master/certs/gem-fixrb-public_cert.pem)
$ gem install matchi-rspec -P HighSecurity

The HighSecurity trust profile will verify all gems. All of Matchi::Rspec's dependencies are signed.

Usage

Identity matcher:

be = Matchi::Be.new(42)
be.matches? { 42 } # => true

Type/class matcher:

be_instance_of = Matchi::BeInstanceOf.new(String)
be_instance_of.matches? { 'foo' } # => true

Equivalence matcher:

eq = Matchi::Eq.new('foo')
eq.matches? { 'foo' } # => true

Security

As a basic form of security Matchi::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/matchi-rspec-0.1.0.gem
0decb77665ae868584aedab6ef126c7ce4efa69bf1fab75215ee9686b16525f8d7a45e03dc3145cb320371d8ddf2ffff90de34f5778fe55b11ce4cb4996a7f5a  pkg/matchi-rspec-0.1.0.gem

Versioning

Matchi::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.


This project is sponsored by:

Sashite