/shokkenki-provider

Example-driven consumer-driven contracts. For providers.

Primary LanguageRubyOtherNOASSERTION

Shokkenki Provider Build Status Code Climate

Allows providers to redeem (verify) Shokkenki consumer-driven contracts.

Providers can redeem a ticket generated by Shokkenki Consumer to verify that they adhere to the contract specified by a consumer.

Redeeming a ticket involves generating and running a series of RSpec examples that test each interaction specified against the provider.

Install

gem install shokkenki-provider

Provider Rspec

require 'shokkenki/provider/rspec'

class Restaurant
  def call env
    env['PATH_INFO'] == '/order/ramen' ? [200, {}, ['a tasty morsel']] : raise('Unsupported path')
  end
end

Shokkenki.provider.configure do
  provider(:restaurant) { run Restaurant.new }
end

Shokkenki.provider.redeem_tickets

When run, this example will define and run an RSpec specification:

Hungry Man
  order for ramen
    body
      json
        $.flavour
          matches /tasty/

Documentation

Detailed documentation and examples for each feature can be found on the Shokkenki Provider Relish Project.

Need help?

Try the Shokkenki Google Group (you must be a member to post).

Bugs or Feature Requests for the Project/Documentation?

Please use Shokkenki Provider Issues on Github. Have your say on the features that you want.

License

See LICENSE.txt.