Skip to content

waterlink/spec2-mocks.cr

master
Switch branches/tags

Name already in use

A tag already exists with the provided branch name. Many Git commands accept both tag and branch names, so creating this branch may cause unexpected behavior. Are you sure you want to create this branch?
Code

Latest commit

 

Git stats

Files

Permalink
Failed to load latest commit information.
Type
Name
Latest commit message
Commit time
 
 
src
 
 
 
 
 
 
 
 
 
 
 
 

spec2-mocks

This is an adapter of mocks.cr for spec2.cr.

Installation

Make sure, that you have correct versions of spec2 and mocks in you shard.yml in depdendencies section.

Next, add this to your application's shard.yml:

dependencies:
  spec2-mocks:
    github: waterlink/spec2-mocks.cr
    version: ~> 0.4

Usage

require "spec2-mocks"

This additionally adds before { Mocks.reset } to each top-level Spec2.describe.

Using have_received matcher

expect(person).to have_received(say("hello world"))

Using receive matcher

expect(person).to receive(say("hello world"))

This uses spec2's delayed { ... } feature to verify expectations after the end of the example.

Development

After cloning the project:

cd spec2-mocks.cr
crystal deps   # install dependencies
crystal spec   # run specs

Just use normal TDD development style.

Contributing

  1. Fork it ( https://github.com/waterlink/spec2-mocks.cr/fork )
  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

Contributors

  • waterlink Oleksii Fedorov - creator, maintainer

About

This library connects spec2.cr and mocks.cr, effectively enabling 'have_received' expectation for spec2.

Resources

License

Stars

Watchers

Forks

Packages

No packages published