pact_broker 1.3.0 → 1.3.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +5 -13
 - data/.travis.yml +6 -0
 - data/CHANGELOG.md +6 -0
 - data/README.md +3 -1
 - data/lib/pact_broker/api/contracts/consumer_version_number_validation.rb +32 -0
 - data/lib/pact_broker/api/contracts/pacticipant_name_contract.rb +27 -0
 - data/lib/pact_broker/api/contracts/pacticipant_name_validation.rb +30 -0
 - data/lib/pact_broker/api/contracts/put_pact_params_contract.rb +55 -0
 - data/lib/pact_broker/api/contracts/request_validations.rb +40 -0
 - data/lib/pact_broker/api/contracts/webhook_contract.rb +32 -0
 - data/lib/pact_broker/api/pact_broker_urls.rb +7 -0
 - data/lib/pact_broker/api/resources/base_resource.rb +9 -0
 - data/lib/pact_broker/api/resources/pact.rb +10 -3
 - data/lib/pact_broker/api/resources/pact_webhooks.rb +9 -0
 - data/lib/pact_broker/constants.rb +5 -0
 - data/lib/pact_broker/doc/views/pacticipants.markdown +2 -2
 - data/lib/pact_broker/locale/en.yml +6 -0
 - data/lib/pact_broker/messages.rb +4 -0
 - data/lib/pact_broker/models/webhook.rb +10 -8
 - data/lib/pact_broker/models/webhook_request.rb +5 -17
 - data/lib/pact_broker/pacts/pact_params.rb +79 -0
 - data/lib/pact_broker/services/webhook_service.rb +6 -0
 - data/lib/pact_broker/version.rb +1 -1
 - data/pact_broker.gemspec +4 -3
 - data/spec/fixtures/webhook_valid.json +14 -0
 - data/spec/integration/endpoints/pact_put_spec.rb +16 -0
 - data/spec/integration/endpoints/pact_webhooks_spec.rb +96 -0
 - data/spec/lib/pact_broker/api/contracts/put_pact_params_contract_spec.rb +122 -0
 - data/spec/lib/pact_broker/api/contracts/webhook_contract_spec.rb +106 -0
 - data/spec/lib/pact_broker/api/resources/pact_spec.rb +15 -1
 - data/spec/lib/pact_broker/api/resources/pact_webhooks_spec.rb +11 -8
 - data/spec/lib/pact_broker/models/webhook_request_spec.rb +0 -31
 - data/spec/lib/pact_broker/models/webhook_spec.rb +0 -21
 - data/spec/lib/pact_broker/pacts/pact_params_spec.rb +69 -0
 - data/spec/support/shared_examples_for_responses.rb +14 -0
 - metadata +88 -55
 
| 
         @@ -15,7 +15,7 @@ module PactBroker::Api 
     | 
|
| 
       15 
15 
     | 
    
         | 
| 
       16 
16 
     | 
    
         
             
                  describe "PUT" do
         
     | 
| 
       17 
17 
     | 
    
         | 
| 
       18 
     | 
    
         
            -
                    subject { put "/pacts/provider/Provider/consumer/Consumer/version/1.2", json, {'CONTENT_TYPE' => "application/json"} }
         
     | 
| 
      
 18 
     | 
    
         
            +
                    subject { put "/pacts/provider/Provider/consumer/Consumer/version/1.2", json, {'CONTENT_TYPE' => "application/json"} ; last_response }
         
     | 
| 
       19 
19 
     | 
    
         | 
| 
       20 
20 
     | 
    
         
             
                    let(:response) { subject; last_response }
         
     | 
| 
       21 
21 
     | 
    
         | 
| 
         @@ -35,6 +35,20 @@ module PactBroker::Api 
     | 
|
| 
       35 
35 
     | 
    
         
             
                      end
         
     | 
| 
       36 
36 
     | 
    
         
             
                    end
         
     | 
| 
       37 
37 
     | 
    
         | 
| 
      
 38 
     | 
    
         
            +
                    context "with validation errors" do
         
     | 
| 
      
 39 
     | 
    
         
            +
             
     | 
| 
      
 40 
     | 
    
         
            +
                      let(:errors) { double(:errors, full_messages: ['messages']) }
         
     | 
| 
      
 41 
     | 
    
         
            +
             
     | 
| 
      
 42 
     | 
    
         
            +
                      before do
         
     | 
| 
      
 43 
     | 
    
         
            +
                        allow_any_instance_of(Contracts::PutPactParamsContract).to receive(:validate).and_return(false)
         
     | 
| 
      
 44 
     | 
    
         
            +
                        allow_any_instance_of(Contracts::PutPactParamsContract).to receive(:errors).and_return(errors)
         
     | 
| 
      
 45 
     | 
    
         
            +
                      end
         
     | 
| 
      
 46 
     | 
    
         
            +
             
     | 
| 
      
 47 
     | 
    
         
            +
                      it "returns a 400 error" do
         
     | 
| 
      
 48 
     | 
    
         
            +
                        expect(subject).to be_a_json_error_response 'messages'
         
     | 
| 
      
 49 
     | 
    
         
            +
                      end
         
     | 
| 
      
 50 
     | 
    
         
            +
                    end
         
     | 
| 
      
 51 
     | 
    
         
            +
             
     | 
| 
       38 
52 
     | 
    
         
             
                    context "with a potential duplicate pacticipant" do
         
     | 
| 
       39 
53 
     | 
    
         | 
| 
       40 
54 
     | 
    
         
             
                      let(:pacticipant_service) { PactBroker::Services::PacticipantService }
         
     | 
| 
         @@ -6,6 +6,8 @@ module PactBroker::Api 
     | 
|
| 
       6 
6 
     | 
    
         | 
| 
       7 
7 
     | 
    
         
             
                describe PactWebhooks do
         
     | 
| 
       8 
8 
     | 
    
         | 
| 
      
 9 
     | 
    
         
            +
             
     | 
| 
      
 10 
     | 
    
         
            +
                  let(:webhook_service) { PactBroker::Services::WebhookService }
         
     | 
| 
       9 
11 
     | 
    
         
             
                  let(:uuid) { '1483234k24DKFGJ45K' }
         
     | 
| 
       10 
12 
     | 
    
         
             
                  let(:path) { "/webhooks/provider/Some%20Provider/consumer/Some%20Consumer" }
         
     | 
| 
       11 
13 
     | 
    
         
             
                  let(:headers) { {'CONTENT_TYPE' => 'application/json'} }
         
     | 
| 
         @@ -25,7 +27,7 @@ module PactBroker::Api 
     | 
|
| 
       25 
27 
     | 
    
         
             
                    let(:decorator) { instance_double(Decorators::WebhooksDecorator, to_json: json) }
         
     | 
| 
       26 
28 
     | 
    
         | 
| 
       27 
29 
     | 
    
         
             
                    before do
         
     | 
| 
       28 
     | 
    
         
            -
                      allow( 
     | 
| 
      
 30 
     | 
    
         
            +
                      allow(webhook_service).to receive(:find_by_consumer_and_provider).and_return(webhooks)
         
     | 
| 
       29 
31 
     | 
    
         
             
                      allow(Decorators::WebhooksDecorator).to receive(:new).and_return(decorator)
         
     | 
| 
       30 
32 
     | 
    
         
             
                    end
         
     | 
| 
       31 
33 
     | 
    
         | 
| 
         @@ -58,12 +60,13 @@ module PactBroker::Api 
     | 
|
| 
       58 
60 
     | 
    
         
             
                    end
         
     | 
| 
       59 
61 
     | 
    
         
             
                    let(:next_uuid) { '123k2nvkkwjrwk34' }
         
     | 
| 
       60 
62 
     | 
    
         | 
| 
       61 
     | 
    
         
            -
                    let(: 
     | 
| 
      
 63 
     | 
    
         
            +
                    let(:valid) { true }
         
     | 
| 
      
 64 
     | 
    
         
            +
                    let(:errors) { double("errors", any?: !valid, full_messages: ['messages']) }
         
     | 
| 
       62 
65 
     | 
    
         | 
| 
       63 
66 
     | 
    
         
             
                    before do
         
     | 
| 
       64 
     | 
    
         
            -
                      allow( 
     | 
| 
       65 
     | 
    
         
            -
                      allow( 
     | 
| 
       66 
     | 
    
         
            -
                      allow( 
     | 
| 
      
 67 
     | 
    
         
            +
                      allow(webhook_service).to receive(:create).and_return(saved_webhook)
         
     | 
| 
      
 68 
     | 
    
         
            +
                      allow(webhook_service).to receive(:next_uuid).and_return(next_uuid)
         
     | 
| 
      
 69 
     | 
    
         
            +
                      allow(webhook_service).to receive(:errors).and_return(errors)
         
     | 
| 
       67 
70 
     | 
    
         
             
                      allow(PactBroker::Models::Webhook).to receive(:new).and_return(webhook)
         
     | 
| 
       68 
71 
     | 
    
         
             
                    end
         
     | 
| 
       69 
72 
     | 
    
         | 
| 
         @@ -117,7 +120,7 @@ module PactBroker::Api 
     | 
|
| 
       117 
120 
     | 
    
         | 
| 
       118 
121 
     | 
    
         
             
                    context "with invalid attributes" do
         
     | 
| 
       119 
122 
     | 
    
         | 
| 
       120 
     | 
    
         
            -
                      let(: 
     | 
| 
      
 123 
     | 
    
         
            +
                      let(:valid) { false }
         
     | 
| 
       121 
124 
     | 
    
         | 
| 
       122 
125 
     | 
    
         
             
                      it "returns a 400" do
         
     | 
| 
       123 
126 
     | 
    
         
             
                        subject
         
     | 
| 
         @@ -131,7 +134,7 @@ module PactBroker::Api 
     | 
|
| 
       131 
134 
     | 
    
         | 
| 
       132 
135 
     | 
    
         
             
                      it "returns the validation errors" do
         
     | 
| 
       133 
136 
     | 
    
         
             
                        subject
         
     | 
| 
       134 
     | 
    
         
            -
                        expect(JSON.parse(last_response.body, symbolize_names: true)).to eq errors:  
     | 
| 
      
 137 
     | 
    
         
            +
                        expect(JSON.parse(last_response.body, symbolize_names: true)).to eq errors: ['messages']
         
     | 
| 
       135 
138 
     | 
    
         
             
                      end
         
     | 
| 
       136 
139 
     | 
    
         | 
| 
       137 
140 
     | 
    
         
             
                    end
         
     | 
| 
         @@ -146,7 +149,7 @@ module PactBroker::Api 
     | 
|
| 
       146 
149 
     | 
    
         
             
                      end
         
     | 
| 
       147 
150 
     | 
    
         | 
| 
       148 
151 
     | 
    
         
             
                      it "saves the webhook" do
         
     | 
| 
       149 
     | 
    
         
            -
                        expect( 
     | 
| 
      
 152 
     | 
    
         
            +
                        expect(webhook_service).to receive(:create).with(next_uuid, webhook, consumer, provider)
         
     | 
| 
       150 
153 
     | 
    
         
             
                        subject
         
     | 
| 
       151 
154 
     | 
    
         
             
                      end
         
     | 
| 
       152 
155 
     | 
    
         | 
| 
         @@ -137,37 +137,6 @@ module PactBroker 
     | 
|
| 
       137 
137 
     | 
    
         | 
| 
       138 
138 
     | 
    
         
             
                  end
         
     | 
| 
       139 
139 
     | 
    
         | 
| 
       140 
     | 
    
         
            -
             
     | 
| 
       141 
     | 
    
         
            -
                  describe "validate" do
         
     | 
| 
       142 
     | 
    
         
            -
                    let(:method) { 'POST' }
         
     | 
| 
       143 
     | 
    
         
            -
                    let(:url) { "http://example.org" }
         
     | 
| 
       144 
     | 
    
         
            -
                    subject { WebhookRequest.new(method: method, url: url)}
         
     | 
| 
       145 
     | 
    
         
            -
                    context "with a missing method" do
         
     | 
| 
       146 
     | 
    
         
            -
                      let(:method) { nil }
         
     | 
| 
       147 
     | 
    
         
            -
                      it "returns an error" do
         
     | 
| 
       148 
     | 
    
         
            -
                        expect(subject.validate.first).to eq "Missing required attribute 'method'"
         
     | 
| 
       149 
     | 
    
         
            -
                      end
         
     | 
| 
       150 
     | 
    
         
            -
                    end
         
     | 
| 
       151 
     | 
    
         
            -
                    context "with an invalid method" do
         
     | 
| 
       152 
     | 
    
         
            -
                      let(:method) { 'INVALID' }
         
     | 
| 
       153 
     | 
    
         
            -
                      it "returns an error" do
         
     | 
| 
       154 
     | 
    
         
            -
                        expect(subject.validate.first).to eq "Invalid HTTP method 'INVALID'"
         
     | 
| 
       155 
     | 
    
         
            -
                      end
         
     | 
| 
       156 
     | 
    
         
            -
                    end
         
     | 
| 
       157 
     | 
    
         
            -
                    context "with a missing url" do
         
     | 
| 
       158 
     | 
    
         
            -
                      let(:url) { nil }
         
     | 
| 
       159 
     | 
    
         
            -
                      it "returns an error" do
         
     | 
| 
       160 
     | 
    
         
            -
                        expect(subject.validate.first).to eq "Missing required attribute 'url'"
         
     | 
| 
       161 
     | 
    
         
            -
                      end
         
     | 
| 
       162 
     | 
    
         
            -
                    end
         
     | 
| 
       163 
     | 
    
         
            -
                    context "with a URL that is missing the scheme" do
         
     | 
| 
       164 
     | 
    
         
            -
                      let(:url) { "example.org" }
         
     | 
| 
       165 
     | 
    
         
            -
                      it "returns an error" do
         
     | 
| 
       166 
     | 
    
         
            -
                        expect(subject.validate.first).to eq "Invalid URL 'example.org'. Expected format: http://example.org"
         
     | 
| 
       167 
     | 
    
         
            -
                      end
         
     | 
| 
       168 
     | 
    
         
            -
                    end
         
     | 
| 
       169 
     | 
    
         
            -
             
     | 
| 
       170 
     | 
    
         
            -
                  end
         
     | 
| 
       171 
140 
     | 
    
         
             
                end
         
     | 
| 
       172 
141 
     | 
    
         | 
| 
       173 
142 
     | 
    
         
             
              end
         
     | 
| 
         @@ -12,27 +12,6 @@ module PactBroker 
     | 
|
| 
       12 
12 
     | 
    
         
             
                  let(:request) { instance_double(PactBroker::Models::WebhookRequest, execute: nil)}
         
     | 
| 
       13 
13 
     | 
    
         
             
                  subject { Webhook.new(request: request, consumer: consumer, provider: provider,) }
         
     | 
| 
       14 
14 
     | 
    
         | 
| 
       15 
     | 
    
         
            -
                  describe "#validate" do
         
     | 
| 
       16 
     | 
    
         
            -
                    let(:errors) { ['errors'] }
         
     | 
| 
       17 
     | 
    
         
            -
             
     | 
| 
       18 
     | 
    
         
            -
             
     | 
| 
       19 
     | 
    
         
            -
                    context "when the request is not present" do
         
     | 
| 
       20 
     | 
    
         
            -
                      let(:request) { nil }
         
     | 
| 
       21 
     | 
    
         
            -
             
     | 
| 
       22 
     | 
    
         
            -
                      it "returns an error message" do
         
     | 
| 
       23 
     | 
    
         
            -
                        expect(subject.validate).to include "Missing required attribute 'request'"
         
     | 
| 
       24 
     | 
    
         
            -
                      end
         
     | 
| 
       25 
     | 
    
         
            -
                    end
         
     | 
| 
       26 
     | 
    
         
            -
             
     | 
| 
       27 
     | 
    
         
            -
                    context "when the request is present" do
         
     | 
| 
       28 
     | 
    
         
            -
             
     | 
| 
       29 
     | 
    
         
            -
                      it "validates the request" do
         
     | 
| 
       30 
     | 
    
         
            -
                        expect(request).to receive(:validate).and_return(errors)
         
     | 
| 
       31 
     | 
    
         
            -
                        expect(subject.validate).to eq errors
         
     | 
| 
       32 
     | 
    
         
            -
                      end
         
     | 
| 
       33 
     | 
    
         
            -
                    end
         
     | 
| 
       34 
     | 
    
         
            -
                  end
         
     | 
| 
       35 
     | 
    
         
            -
             
     | 
| 
       36 
15 
     | 
    
         
             
                  describe "description" do
         
     | 
| 
       37 
16 
     | 
    
         
             
                    it "returns a description of the webhook" do
         
     | 
| 
       38 
17 
     | 
    
         
             
                      expect(subject.description).to eq "A webhook for the pact between Consumer and Provider"
         
     | 
| 
         @@ -0,0 +1,69 @@ 
     | 
|
| 
      
 1 
     | 
    
         
            +
            require 'spec_helper'
         
     | 
| 
      
 2 
     | 
    
         
            +
            require 'pact_broker/pacts/pact_params'
         
     | 
| 
      
 3 
     | 
    
         
            +
             
     | 
| 
      
 4 
     | 
    
         
            +
            module PactBroker
         
     | 
| 
      
 5 
     | 
    
         
            +
              module Pacts
         
     | 
| 
      
 6 
     | 
    
         
            +
                describe PactParams do
         
     | 
| 
      
 7 
     | 
    
         
            +
             
     | 
| 
      
 8 
     | 
    
         
            +
                  let(:body) { load_fixture('consumer-provider.json') }
         
     | 
| 
      
 9 
     | 
    
         
            +
                  let(:consumer_version_number) { '1.2.3' }
         
     | 
| 
      
 10 
     | 
    
         
            +
                  let(:headers) { { 'X-Pact-Consumer-Version' => consumer_version_number } }
         
     | 
| 
      
 11 
     | 
    
         
            +
             
     | 
| 
      
 12 
     | 
    
         
            +
                  describe "from_request" do
         
     | 
| 
      
 13 
     | 
    
         
            +
             
     | 
| 
      
 14 
     | 
    
         
            +
                    context "from a PUT request" do
         
     | 
| 
      
 15 
     | 
    
         
            +
                      let(:request) { Webmachine::Request.new("PUT", "/", headers, body)}
         
     | 
| 
      
 16 
     | 
    
         
            +
                      let(:path_info) do
         
     | 
| 
      
 17 
     | 
    
         
            +
                        {
         
     | 
| 
      
 18 
     | 
    
         
            +
                          consumer_name: 'Consumer',
         
     | 
| 
      
 19 
     | 
    
         
            +
                          provider_name: 'Provider',
         
     | 
| 
      
 20 
     | 
    
         
            +
                          consumer_version_number: '1.2.3'
         
     | 
| 
      
 21 
     | 
    
         
            +
                        }
         
     | 
| 
      
 22 
     | 
    
         
            +
                      end
         
     | 
| 
      
 23 
     | 
    
         
            +
             
     | 
| 
      
 24 
     | 
    
         
            +
                      subject { PactParams.from_request(request, path_info) }
         
     | 
| 
      
 25 
     | 
    
         
            +
             
     | 
| 
      
 26 
     | 
    
         
            +
                      it "extracts the consumer name from the path" do
         
     | 
| 
      
 27 
     | 
    
         
            +
                        expect(subject.consumer_name).to eq "Consumer"
         
     | 
| 
      
 28 
     | 
    
         
            +
                      end
         
     | 
| 
      
 29 
     | 
    
         
            +
             
     | 
| 
      
 30 
     | 
    
         
            +
                      it "extracts the provider name from the path" do
         
     | 
| 
      
 31 
     | 
    
         
            +
                        expect(subject.provider_name).to eq "Provider"
         
     | 
| 
      
 32 
     | 
    
         
            +
                      end
         
     | 
| 
      
 33 
     | 
    
         
            +
             
     | 
| 
      
 34 
     | 
    
         
            +
                      it "extracts the consumer_version_number from the path" do
         
     | 
| 
      
 35 
     | 
    
         
            +
                        expect(subject.consumer_version_number).to eq "1.2.3"
         
     | 
| 
      
 36 
     | 
    
         
            +
                      end
         
     | 
| 
      
 37 
     | 
    
         
            +
             
     | 
| 
      
 38 
     | 
    
         
            +
                      it "extracts the json_content" do
         
     | 
| 
      
 39 
     | 
    
         
            +
                        expect(subject.json_content).to eq body
         
     | 
| 
      
 40 
     | 
    
         
            +
                      end
         
     | 
| 
      
 41 
     | 
    
         
            +
             
     | 
| 
      
 42 
     | 
    
         
            +
                      it "extracts the consumer name from the pact" do
         
     | 
| 
      
 43 
     | 
    
         
            +
                        expect(subject.consumer_name_in_pact).to eq "A Consumer"
         
     | 
| 
      
 44 
     | 
    
         
            +
                      end
         
     | 
| 
      
 45 
     | 
    
         
            +
             
     | 
| 
      
 46 
     | 
    
         
            +
                      it "extracts the provider name from the pact" do
         
     | 
| 
      
 47 
     | 
    
         
            +
                        expect(subject.provider_name_in_pact).to eq "A Provider"
         
     | 
| 
      
 48 
     | 
    
         
            +
                      end
         
     | 
| 
      
 49 
     | 
    
         
            +
             
     | 
| 
      
 50 
     | 
    
         
            +
                      context "with missing data" do
         
     | 
| 
      
 51 
     | 
    
         
            +
                        let(:body){ '' }
         
     | 
| 
      
 52 
     | 
    
         
            +
             
     | 
| 
      
 53 
     | 
    
         
            +
                        it "the consumer name from the pact is nil" do
         
     | 
| 
      
 54 
     | 
    
         
            +
                          expect(subject.consumer_name_in_pact).to be nil
         
     | 
| 
      
 55 
     | 
    
         
            +
                        end
         
     | 
| 
      
 56 
     | 
    
         
            +
             
     | 
| 
      
 57 
     | 
    
         
            +
                        it "the provider name from the pact is nil" do
         
     | 
| 
      
 58 
     | 
    
         
            +
                          expect(subject.provider_name_in_pact).to be nil
         
     | 
| 
      
 59 
     | 
    
         
            +
                        end
         
     | 
| 
      
 60 
     | 
    
         
            +
             
     | 
| 
      
 61 
     | 
    
         
            +
                        it "extracts the json_content" do
         
     | 
| 
      
 62 
     | 
    
         
            +
                          expect(subject.json_content).to eq ''
         
     | 
| 
      
 63 
     | 
    
         
            +
                        end
         
     | 
| 
      
 64 
     | 
    
         
            +
                      end
         
     | 
| 
      
 65 
     | 
    
         
            +
                    end
         
     | 
| 
      
 66 
     | 
    
         
            +
                  end
         
     | 
| 
      
 67 
     | 
    
         
            +
                end
         
     | 
| 
      
 68 
     | 
    
         
            +
              end
         
     | 
| 
      
 69 
     | 
    
         
            +
            end
         
     | 
| 
         @@ -18,6 +18,20 @@ RSpec::Matchers.define :be_a_hal_json_success_response do 
     | 
|
| 
       18 
18 
     | 
    
         
             
              end
         
     | 
| 
       19 
19 
     | 
    
         
             
            end
         
     | 
| 
       20 
20 
     | 
    
         | 
| 
      
 21 
     | 
    
         
            +
            RSpec::Matchers.define :be_a_json_response do
         
     | 
| 
      
 22 
     | 
    
         
            +
              match do | actual |
         
     | 
| 
      
 23 
     | 
    
         
            +
                expect(actual.headers['Content-Type']).to eq 'application/json'
         
     | 
| 
      
 24 
     | 
    
         
            +
              end
         
     | 
| 
      
 25 
     | 
    
         
            +
            end
         
     | 
| 
      
 26 
     | 
    
         
            +
             
     | 
| 
      
 27 
     | 
    
         
            +
            RSpec::Matchers.define :be_a_json_error_response do | message |
         
     | 
| 
      
 28 
     | 
    
         
            +
              match do | actual |
         
     | 
| 
      
 29 
     | 
    
         
            +
                expect(actual.status).to be 400
         
     | 
| 
      
 30 
     | 
    
         
            +
                expect(actual.headers['Content-Type']).to eq 'application/json'
         
     | 
| 
      
 31 
     | 
    
         
            +
                expect(actual.body).to include message
         
     | 
| 
      
 32 
     | 
    
         
            +
              end
         
     | 
| 
      
 33 
     | 
    
         
            +
            end
         
     | 
| 
      
 34 
     | 
    
         
            +
             
     | 
| 
       21 
35 
     | 
    
         
             
            RSpec::Matchers.define :be_a_404_response do
         
     | 
| 
       22 
36 
     | 
    
         
             
              match do | actual |
         
     | 
| 
       23 
37 
     | 
    
         
             
                expect(actual.status).to be 404
         
     | 
    
        metadata
    CHANGED
    
    | 
         @@ -1,7 +1,7 @@ 
     | 
|
| 
       1 
1 
     | 
    
         
             
            --- !ruby/object:Gem::Specification
         
     | 
| 
       2 
2 
     | 
    
         
             
            name: pact_broker
         
     | 
| 
       3 
3 
     | 
    
         
             
            version: !ruby/object:Gem::Version
         
     | 
| 
       4 
     | 
    
         
            -
              version: 1.3. 
     | 
| 
      
 4 
     | 
    
         
            +
              version: 1.3.1
         
     | 
| 
       5 
5 
     | 
    
         
             
            platform: ruby
         
     | 
| 
       6 
6 
     | 
    
         
             
            authors:
         
     | 
| 
       7 
7 
     | 
    
         
             
            - Bethany Skurrie
         
     | 
| 
         @@ -10,292 +10,306 @@ authors: 
     | 
|
| 
       10 
10 
     | 
    
         
             
            autorequire: 
         
     | 
| 
       11 
11 
     | 
    
         
             
            bindir: bin
         
     | 
| 
       12 
12 
     | 
    
         
             
            cert_chain: []
         
     | 
| 
       13 
     | 
    
         
            -
            date: 2014-10- 
     | 
| 
      
 13 
     | 
    
         
            +
            date: 2014-10-23 00:00:00.000000000 Z
         
     | 
| 
       14 
14 
     | 
    
         
             
            dependencies:
         
     | 
| 
       15 
15 
     | 
    
         
             
            - !ruby/object:Gem::Dependency
         
     | 
| 
       16 
16 
     | 
    
         
             
              name: httparty
         
     | 
| 
       17 
17 
     | 
    
         
             
              requirement: !ruby/object:Gem::Requirement
         
     | 
| 
       18 
18 
     | 
    
         
             
                requirements:
         
     | 
| 
       19 
     | 
    
         
            -
                - -  
     | 
| 
      
 19 
     | 
    
         
            +
                - - ">="
         
     | 
| 
       20 
20 
     | 
    
         
             
                  - !ruby/object:Gem::Version
         
     | 
| 
       21 
21 
     | 
    
         
             
                    version: '0'
         
     | 
| 
       22 
22 
     | 
    
         
             
              type: :runtime
         
     | 
| 
       23 
23 
     | 
    
         
             
              prerelease: false
         
     | 
| 
       24 
24 
     | 
    
         
             
              version_requirements: !ruby/object:Gem::Requirement
         
     | 
| 
       25 
25 
     | 
    
         
             
                requirements:
         
     | 
| 
       26 
     | 
    
         
            -
                - -  
     | 
| 
      
 26 
     | 
    
         
            +
                - - ">="
         
     | 
| 
       27 
27 
     | 
    
         
             
                  - !ruby/object:Gem::Version
         
     | 
| 
       28 
28 
     | 
    
         
             
                    version: '0'
         
     | 
| 
       29 
29 
     | 
    
         
             
            - !ruby/object:Gem::Dependency
         
     | 
| 
       30 
30 
     | 
    
         
             
              name: json
         
     | 
| 
       31 
31 
     | 
    
         
             
              requirement: !ruby/object:Gem::Requirement
         
     | 
| 
       32 
32 
     | 
    
         
             
                requirements:
         
     | 
| 
       33 
     | 
    
         
            -
                - -  
     | 
| 
      
 33 
     | 
    
         
            +
                - - ">="
         
     | 
| 
       34 
34 
     | 
    
         
             
                  - !ruby/object:Gem::Version
         
     | 
| 
       35 
35 
     | 
    
         
             
                    version: '0'
         
     | 
| 
       36 
36 
     | 
    
         
             
              type: :runtime
         
     | 
| 
       37 
37 
     | 
    
         
             
              prerelease: false
         
     | 
| 
       38 
38 
     | 
    
         
             
              version_requirements: !ruby/object:Gem::Requirement
         
     | 
| 
       39 
39 
     | 
    
         
             
                requirements:
         
     | 
| 
       40 
     | 
    
         
            -
                - -  
     | 
| 
      
 40 
     | 
    
         
            +
                - - ">="
         
     | 
| 
       41 
41 
     | 
    
         
             
                  - !ruby/object:Gem::Version
         
     | 
| 
       42 
42 
     | 
    
         
             
                    version: '0'
         
     | 
| 
       43 
43 
     | 
    
         
             
            - !ruby/object:Gem::Dependency
         
     | 
| 
       44 
44 
     | 
    
         
             
              name: roar
         
     | 
| 
       45 
45 
     | 
    
         
             
              requirement: !ruby/object:Gem::Requirement
         
     | 
| 
       46 
46 
     | 
    
         
             
                requirements:
         
     | 
| 
       47 
     | 
    
         
            -
                - -  
     | 
| 
      
 47 
     | 
    
         
            +
                - - "~>"
         
     | 
| 
       48 
48 
     | 
    
         
             
                  - !ruby/object:Gem::Version
         
     | 
| 
       49 
     | 
    
         
            -
                    version:  
     | 
| 
      
 49 
     | 
    
         
            +
                    version: 0.12.9
         
     | 
| 
       50 
50 
     | 
    
         
             
              type: :runtime
         
     | 
| 
       51 
51 
     | 
    
         
             
              prerelease: false
         
     | 
| 
       52 
52 
     | 
    
         
             
              version_requirements: !ruby/object:Gem::Requirement
         
     | 
| 
       53 
53 
     | 
    
         
             
                requirements:
         
     | 
| 
       54 
     | 
    
         
            -
                - -  
     | 
| 
      
 54 
     | 
    
         
            +
                - - "~>"
         
     | 
| 
       55 
55 
     | 
    
         
             
                  - !ruby/object:Gem::Version
         
     | 
| 
       56 
     | 
    
         
            -
                    version:  
     | 
| 
      
 56 
     | 
    
         
            +
                    version: 0.12.9
         
     | 
| 
      
 57 
     | 
    
         
            +
            - !ruby/object:Gem::Dependency
         
     | 
| 
      
 58 
     | 
    
         
            +
              name: reform
         
     | 
| 
      
 59 
     | 
    
         
            +
              requirement: !ruby/object:Gem::Requirement
         
     | 
| 
      
 60 
     | 
    
         
            +
                requirements:
         
     | 
| 
      
 61 
     | 
    
         
            +
                - - "~>"
         
     | 
| 
      
 62 
     | 
    
         
            +
                  - !ruby/object:Gem::Version
         
     | 
| 
      
 63 
     | 
    
         
            +
                    version: '1.0'
         
     | 
| 
      
 64 
     | 
    
         
            +
              type: :runtime
         
     | 
| 
      
 65 
     | 
    
         
            +
              prerelease: false
         
     | 
| 
      
 66 
     | 
    
         
            +
              version_requirements: !ruby/object:Gem::Requirement
         
     | 
| 
      
 67 
     | 
    
         
            +
                requirements:
         
     | 
| 
      
 68 
     | 
    
         
            +
                - - "~>"
         
     | 
| 
      
 69 
     | 
    
         
            +
                  - !ruby/object:Gem::Version
         
     | 
| 
      
 70 
     | 
    
         
            +
                    version: '1.0'
         
     | 
| 
       57 
71 
     | 
    
         
             
            - !ruby/object:Gem::Dependency
         
     | 
| 
       58 
72 
     | 
    
         
             
              name: sequel
         
     | 
| 
       59 
73 
     | 
    
         
             
              requirement: !ruby/object:Gem::Requirement
         
     | 
| 
       60 
74 
     | 
    
         
             
                requirements:
         
     | 
| 
       61 
     | 
    
         
            -
                - - ~>
         
     | 
| 
      
 75 
     | 
    
         
            +
                - - "~>"
         
     | 
| 
       62 
76 
     | 
    
         
             
                  - !ruby/object:Gem::Version
         
     | 
| 
       63 
77 
     | 
    
         
             
                    version: '4.12'
         
     | 
| 
       64 
78 
     | 
    
         
             
              type: :runtime
         
     | 
| 
       65 
79 
     | 
    
         
             
              prerelease: false
         
     | 
| 
       66 
80 
     | 
    
         
             
              version_requirements: !ruby/object:Gem::Requirement
         
     | 
| 
       67 
81 
     | 
    
         
             
                requirements:
         
     | 
| 
       68 
     | 
    
         
            -
                - - ~>
         
     | 
| 
      
 82 
     | 
    
         
            +
                - - "~>"
         
     | 
| 
       69 
83 
     | 
    
         
             
                  - !ruby/object:Gem::Version
         
     | 
| 
       70 
84 
     | 
    
         
             
                    version: '4.12'
         
     | 
| 
       71 
85 
     | 
    
         
             
            - !ruby/object:Gem::Dependency
         
     | 
| 
       72 
86 
     | 
    
         
             
              name: webmachine
         
     | 
| 
       73 
87 
     | 
    
         
             
              requirement: !ruby/object:Gem::Requirement
         
     | 
| 
       74 
88 
     | 
    
         
             
                requirements:
         
     | 
| 
       75 
     | 
    
         
            -
                - -  
     | 
| 
      
 89 
     | 
    
         
            +
                - - "~>"
         
     | 
| 
       76 
90 
     | 
    
         
             
                  - !ruby/object:Gem::Version
         
     | 
| 
       77 
     | 
    
         
            -
                    version: ' 
     | 
| 
      
 91 
     | 
    
         
            +
                    version: '1.2'
         
     | 
| 
       78 
92 
     | 
    
         
             
              type: :runtime
         
     | 
| 
       79 
93 
     | 
    
         
             
              prerelease: false
         
     | 
| 
       80 
94 
     | 
    
         
             
              version_requirements: !ruby/object:Gem::Requirement
         
     | 
| 
       81 
95 
     | 
    
         
             
                requirements:
         
     | 
| 
       82 
     | 
    
         
            -
                - -  
     | 
| 
      
 96 
     | 
    
         
            +
                - - "~>"
         
     | 
| 
       83 
97 
     | 
    
         
             
                  - !ruby/object:Gem::Version
         
     | 
| 
       84 
     | 
    
         
            -
                    version: ' 
     | 
| 
      
 98 
     | 
    
         
            +
                    version: '1.2'
         
     | 
| 
       85 
99 
     | 
    
         
             
            - !ruby/object:Gem::Dependency
         
     | 
| 
       86 
100 
     | 
    
         
             
              name: versionomy
         
     | 
| 
       87 
101 
     | 
    
         
             
              requirement: !ruby/object:Gem::Requirement
         
     | 
| 
       88 
102 
     | 
    
         
             
                requirements:
         
     | 
| 
       89 
     | 
    
         
            -
                - -  
     | 
| 
      
 103 
     | 
    
         
            +
                - - "~>"
         
     | 
| 
       90 
104 
     | 
    
         
             
                  - !ruby/object:Gem::Version
         
     | 
| 
       91 
     | 
    
         
            -
                    version: '0'
         
     | 
| 
      
 105 
     | 
    
         
            +
                    version: '0.4'
         
     | 
| 
       92 
106 
     | 
    
         
             
              type: :runtime
         
     | 
| 
       93 
107 
     | 
    
         
             
              prerelease: false
         
     | 
| 
       94 
108 
     | 
    
         
             
              version_requirements: !ruby/object:Gem::Requirement
         
     | 
| 
       95 
109 
     | 
    
         
             
                requirements:
         
     | 
| 
       96 
     | 
    
         
            -
                - -  
     | 
| 
      
 110 
     | 
    
         
            +
                - - "~>"
         
     | 
| 
       97 
111 
     | 
    
         
             
                  - !ruby/object:Gem::Version
         
     | 
| 
       98 
     | 
    
         
            -
                    version: '0'
         
     | 
| 
      
 112 
     | 
    
         
            +
                    version: '0.4'
         
     | 
| 
       99 
113 
     | 
    
         
             
            - !ruby/object:Gem::Dependency
         
     | 
| 
       100 
114 
     | 
    
         
             
              name: rack
         
     | 
| 
       101 
115 
     | 
    
         
             
              requirement: !ruby/object:Gem::Requirement
         
     | 
| 
       102 
116 
     | 
    
         
             
                requirements:
         
     | 
| 
       103 
     | 
    
         
            -
                - -  
     | 
| 
      
 117 
     | 
    
         
            +
                - - ">="
         
     | 
| 
       104 
118 
     | 
    
         
             
                  - !ruby/object:Gem::Version
         
     | 
| 
       105 
119 
     | 
    
         
             
                    version: '0'
         
     | 
| 
       106 
120 
     | 
    
         
             
              type: :runtime
         
     | 
| 
       107 
121 
     | 
    
         
             
              prerelease: false
         
     | 
| 
       108 
122 
     | 
    
         
             
              version_requirements: !ruby/object:Gem::Requirement
         
     | 
| 
       109 
123 
     | 
    
         
             
                requirements:
         
     | 
| 
       110 
     | 
    
         
            -
                - -  
     | 
| 
      
 124 
     | 
    
         
            +
                - - ">="
         
     | 
| 
       111 
125 
     | 
    
         
             
                  - !ruby/object:Gem::Version
         
     | 
| 
       112 
126 
     | 
    
         
             
                    version: '0'
         
     | 
| 
       113 
127 
     | 
    
         
             
            - !ruby/object:Gem::Dependency
         
     | 
| 
       114 
128 
     | 
    
         
             
              name: redcarpet
         
     | 
| 
       115 
129 
     | 
    
         
             
              requirement: !ruby/object:Gem::Requirement
         
     | 
| 
       116 
130 
     | 
    
         
             
                requirements:
         
     | 
| 
       117 
     | 
    
         
            -
                - - ~>
         
     | 
| 
      
 131 
     | 
    
         
            +
                - - "~>"
         
     | 
| 
       118 
132 
     | 
    
         
             
                  - !ruby/object:Gem::Version
         
     | 
| 
       119 
133 
     | 
    
         
             
                    version: '3.1'
         
     | 
| 
       120 
134 
     | 
    
         
             
              type: :runtime
         
     | 
| 
       121 
135 
     | 
    
         
             
              prerelease: false
         
     | 
| 
       122 
136 
     | 
    
         
             
              version_requirements: !ruby/object:Gem::Requirement
         
     | 
| 
       123 
137 
     | 
    
         
             
                requirements:
         
     | 
| 
       124 
     | 
    
         
            -
                - - ~>
         
     | 
| 
      
 138 
     | 
    
         
            +
                - - "~>"
         
     | 
| 
       125 
139 
     | 
    
         
             
                  - !ruby/object:Gem::Version
         
     | 
| 
       126 
140 
     | 
    
         
             
                    version: '3.1'
         
     | 
| 
       127 
141 
     | 
    
         
             
            - !ruby/object:Gem::Dependency
         
     | 
| 
       128 
142 
     | 
    
         
             
              name: pact
         
     | 
| 
       129 
143 
     | 
    
         
             
              requirement: !ruby/object:Gem::Requirement
         
     | 
| 
       130 
144 
     | 
    
         
             
                requirements:
         
     | 
| 
       131 
     | 
    
         
            -
                - - ~>
         
     | 
| 
      
 145 
     | 
    
         
            +
                - - "~>"
         
     | 
| 
       132 
146 
     | 
    
         
             
                  - !ruby/object:Gem::Version
         
     | 
| 
       133 
147 
     | 
    
         
             
                    version: '1.3'
         
     | 
| 
       134 
     | 
    
         
            -
                - -  
     | 
| 
      
 148 
     | 
    
         
            +
                - - ">="
         
     | 
| 
       135 
149 
     | 
    
         
             
                  - !ruby/object:Gem::Version
         
     | 
| 
       136 
150 
     | 
    
         
             
                    version: 1.3.2
         
     | 
| 
       137 
151 
     | 
    
         
             
              type: :runtime
         
     | 
| 
       138 
152 
     | 
    
         
             
              prerelease: false
         
     | 
| 
       139 
153 
     | 
    
         
             
              version_requirements: !ruby/object:Gem::Requirement
         
     | 
| 
       140 
154 
     | 
    
         
             
                requirements:
         
     | 
| 
       141 
     | 
    
         
            -
                - - ~>
         
     | 
| 
      
 155 
     | 
    
         
            +
                - - "~>"
         
     | 
| 
       142 
156 
     | 
    
         
             
                  - !ruby/object:Gem::Version
         
     | 
| 
       143 
157 
     | 
    
         
             
                    version: '1.3'
         
     | 
| 
       144 
     | 
    
         
            -
                - -  
     | 
| 
      
 158 
     | 
    
         
            +
                - - ">="
         
     | 
| 
       145 
159 
     | 
    
         
             
                  - !ruby/object:Gem::Version
         
     | 
| 
       146 
160 
     | 
    
         
             
                    version: 1.3.2
         
     | 
| 
       147 
161 
     | 
    
         
             
            - !ruby/object:Gem::Dependency
         
     | 
| 
       148 
162 
     | 
    
         
             
              name: padrino
         
     | 
| 
       149 
163 
     | 
    
         
             
              requirement: !ruby/object:Gem::Requirement
         
     | 
| 
       150 
164 
     | 
    
         
             
                requirements:
         
     | 
| 
       151 
     | 
    
         
            -
                - - ~>
         
     | 
| 
      
 165 
     | 
    
         
            +
                - - "~>"
         
     | 
| 
       152 
166 
     | 
    
         
             
                  - !ruby/object:Gem::Version
         
     | 
| 
       153 
167 
     | 
    
         
             
                    version: '0.12'
         
     | 
| 
       154 
168 
     | 
    
         
             
              type: :runtime
         
     | 
| 
       155 
169 
     | 
    
         
             
              prerelease: false
         
     | 
| 
       156 
170 
     | 
    
         
             
              version_requirements: !ruby/object:Gem::Requirement
         
     | 
| 
       157 
171 
     | 
    
         
             
                requirements:
         
     | 
| 
       158 
     | 
    
         
            -
                - - ~>
         
     | 
| 
      
 172 
     | 
    
         
            +
                - - "~>"
         
     | 
| 
       159 
173 
     | 
    
         
             
                  - !ruby/object:Gem::Version
         
     | 
| 
       160 
174 
     | 
    
         
             
                    version: '0.12'
         
     | 
| 
       161 
175 
     | 
    
         
             
            - !ruby/object:Gem::Dependency
         
     | 
| 
       162 
176 
     | 
    
         
             
              name: haml
         
     | 
| 
       163 
177 
     | 
    
         
             
              requirement: !ruby/object:Gem::Requirement
         
     | 
| 
       164 
178 
     | 
    
         
             
                requirements:
         
     | 
| 
       165 
     | 
    
         
            -
                - -  
     | 
| 
      
 179 
     | 
    
         
            +
                - - ">="
         
     | 
| 
       166 
180 
     | 
    
         
             
                  - !ruby/object:Gem::Version
         
     | 
| 
       167 
181 
     | 
    
         
             
                    version: '0'
         
     | 
| 
       168 
182 
     | 
    
         
             
              type: :runtime
         
     | 
| 
       169 
183 
     | 
    
         
             
              prerelease: false
         
     | 
| 
       170 
184 
     | 
    
         
             
              version_requirements: !ruby/object:Gem::Requirement
         
     | 
| 
       171 
185 
     | 
    
         
             
                requirements:
         
     | 
| 
       172 
     | 
    
         
            -
                - -  
     | 
| 
      
 186 
     | 
    
         
            +
                - - ">="
         
     | 
| 
       173 
187 
     | 
    
         
             
                  - !ruby/object:Gem::Version
         
     | 
| 
       174 
188 
     | 
    
         
             
                    version: '0'
         
     | 
| 
       175 
189 
     | 
    
         
             
            - !ruby/object:Gem::Dependency
         
     | 
| 
       176 
190 
     | 
    
         
             
              name: sqlite3
         
     | 
| 
       177 
191 
     | 
    
         
             
              requirement: !ruby/object:Gem::Requirement
         
     | 
| 
       178 
192 
     | 
    
         
             
                requirements:
         
     | 
| 
       179 
     | 
    
         
            -
                - -  
     | 
| 
      
 193 
     | 
    
         
            +
                - - ">="
         
     | 
| 
       180 
194 
     | 
    
         
             
                  - !ruby/object:Gem::Version
         
     | 
| 
       181 
195 
     | 
    
         
             
                    version: '0'
         
     | 
| 
       182 
196 
     | 
    
         
             
              type: :development
         
     | 
| 
       183 
197 
     | 
    
         
             
              prerelease: false
         
     | 
| 
       184 
198 
     | 
    
         
             
              version_requirements: !ruby/object:Gem::Requirement
         
     | 
| 
       185 
199 
     | 
    
         
             
                requirements:
         
     | 
| 
       186 
     | 
    
         
            -
                - -  
     | 
| 
      
 200 
     | 
    
         
            +
                - - ">="
         
     | 
| 
       187 
201 
     | 
    
         
             
                  - !ruby/object:Gem::Version
         
     | 
| 
       188 
202 
     | 
    
         
             
                    version: '0'
         
     | 
| 
       189 
203 
     | 
    
         
             
            - !ruby/object:Gem::Dependency
         
     | 
| 
       190 
204 
     | 
    
         
             
              name: pry
         
     | 
| 
       191 
205 
     | 
    
         
             
              requirement: !ruby/object:Gem::Requirement
         
     | 
| 
       192 
206 
     | 
    
         
             
                requirements:
         
     | 
| 
       193 
     | 
    
         
            -
                - -  
     | 
| 
      
 207 
     | 
    
         
            +
                - - ">="
         
     | 
| 
       194 
208 
     | 
    
         
             
                  - !ruby/object:Gem::Version
         
     | 
| 
       195 
209 
     | 
    
         
             
                    version: '0'
         
     | 
| 
       196 
210 
     | 
    
         
             
              type: :development
         
     | 
| 
       197 
211 
     | 
    
         
             
              prerelease: false
         
     | 
| 
       198 
212 
     | 
    
         
             
              version_requirements: !ruby/object:Gem::Requirement
         
     | 
| 
       199 
213 
     | 
    
         
             
                requirements:
         
     | 
| 
       200 
     | 
    
         
            -
                - -  
     | 
| 
      
 214 
     | 
    
         
            +
                - - ">="
         
     | 
| 
       201 
215 
     | 
    
         
             
                  - !ruby/object:Gem::Version
         
     | 
| 
       202 
216 
     | 
    
         
             
                    version: '0'
         
     | 
| 
       203 
217 
     | 
    
         
             
            - !ruby/object:Gem::Dependency
         
     | 
| 
       204 
218 
     | 
    
         
             
              name: rake
         
     | 
| 
       205 
219 
     | 
    
         
             
              requirement: !ruby/object:Gem::Requirement
         
     | 
| 
       206 
220 
     | 
    
         
             
                requirements:
         
     | 
| 
       207 
     | 
    
         
            -
                - - ~>
         
     | 
| 
      
 221 
     | 
    
         
            +
                - - "~>"
         
     | 
| 
       208 
222 
     | 
    
         
             
                  - !ruby/object:Gem::Version
         
     | 
| 
       209 
223 
     | 
    
         
             
                    version: '10.0'
         
     | 
| 
       210 
224 
     | 
    
         
             
              type: :development
         
     | 
| 
       211 
225 
     | 
    
         
             
              prerelease: false
         
     | 
| 
       212 
226 
     | 
    
         
             
              version_requirements: !ruby/object:Gem::Requirement
         
     | 
| 
       213 
227 
     | 
    
         
             
                requirements:
         
     | 
| 
       214 
     | 
    
         
            -
                - - ~>
         
     | 
| 
      
 228 
     | 
    
         
            +
                - - "~>"
         
     | 
| 
       215 
229 
     | 
    
         
             
                  - !ruby/object:Gem::Version
         
     | 
| 
       216 
230 
     | 
    
         
             
                    version: '10.0'
         
     | 
| 
       217 
231 
     | 
    
         
             
            - !ruby/object:Gem::Dependency
         
     | 
| 
       218 
232 
     | 
    
         
             
              name: fakefs
         
     | 
| 
       219 
233 
     | 
    
         
             
              requirement: !ruby/object:Gem::Requirement
         
     | 
| 
       220 
234 
     | 
    
         
             
                requirements:
         
     | 
| 
       221 
     | 
    
         
            -
                - - ~>
         
     | 
| 
      
 235 
     | 
    
         
            +
                - - "~>"
         
     | 
| 
       222 
236 
     | 
    
         
             
                  - !ruby/object:Gem::Version
         
     | 
| 
       223 
237 
     | 
    
         
             
                    version: '0.4'
         
     | 
| 
       224 
238 
     | 
    
         
             
              type: :development
         
     | 
| 
       225 
239 
     | 
    
         
             
              prerelease: false
         
     | 
| 
       226 
240 
     | 
    
         
             
              version_requirements: !ruby/object:Gem::Requirement
         
     | 
| 
       227 
241 
     | 
    
         
             
                requirements:
         
     | 
| 
       228 
     | 
    
         
            -
                - - ~>
         
     | 
| 
      
 242 
     | 
    
         
            +
                - - "~>"
         
     | 
| 
       229 
243 
     | 
    
         
             
                  - !ruby/object:Gem::Version
         
     | 
| 
       230 
244 
     | 
    
         
             
                    version: '0.4'
         
     | 
| 
       231 
245 
     | 
    
         
             
            - !ruby/object:Gem::Dependency
         
     | 
| 
       232 
246 
     | 
    
         
             
              name: mysql2
         
     | 
| 
       233 
247 
     | 
    
         
             
              requirement: !ruby/object:Gem::Requirement
         
     | 
| 
       234 
248 
     | 
    
         
             
                requirements:
         
     | 
| 
       235 
     | 
    
         
            -
                - - ~>
         
     | 
| 
      
 249 
     | 
    
         
            +
                - - "~>"
         
     | 
| 
       236 
250 
     | 
    
         
             
                  - !ruby/object:Gem::Version
         
     | 
| 
       237 
251 
     | 
    
         
             
                    version: 0.3.15
         
     | 
| 
       238 
252 
     | 
    
         
             
              type: :development
         
     | 
| 
       239 
253 
     | 
    
         
             
              prerelease: false
         
     | 
| 
       240 
254 
     | 
    
         
             
              version_requirements: !ruby/object:Gem::Requirement
         
     | 
| 
       241 
255 
     | 
    
         
             
                requirements:
         
     | 
| 
       242 
     | 
    
         
            -
                - - ~>
         
     | 
| 
      
 256 
     | 
    
         
            +
                - - "~>"
         
     | 
| 
       243 
257 
     | 
    
         
             
                  - !ruby/object:Gem::Version
         
     | 
| 
       244 
258 
     | 
    
         
             
                    version: 0.3.15
         
     | 
| 
       245 
259 
     | 
    
         
             
            - !ruby/object:Gem::Dependency
         
     | 
| 
       246 
260 
     | 
    
         
             
              name: webmock
         
     | 
| 
       247 
261 
     | 
    
         
             
              requirement: !ruby/object:Gem::Requirement
         
     | 
| 
       248 
262 
     | 
    
         
             
                requirements:
         
     | 
| 
       249 
     | 
    
         
            -
                - -  
     | 
| 
      
 263 
     | 
    
         
            +
                - - ">="
         
     | 
| 
       250 
264 
     | 
    
         
             
                  - !ruby/object:Gem::Version
         
     | 
| 
       251 
265 
     | 
    
         
             
                    version: '0'
         
     | 
| 
       252 
266 
     | 
    
         
             
              type: :development
         
     | 
| 
       253 
267 
     | 
    
         
             
              prerelease: false
         
     | 
| 
       254 
268 
     | 
    
         
             
              version_requirements: !ruby/object:Gem::Requirement
         
     | 
| 
       255 
269 
     | 
    
         
             
                requirements:
         
     | 
| 
       256 
     | 
    
         
            -
                - -  
     | 
| 
      
 270 
     | 
    
         
            +
                - - ">="
         
     | 
| 
       257 
271 
     | 
    
         
             
                  - !ruby/object:Gem::Version
         
     | 
| 
       258 
272 
     | 
    
         
             
                    version: '0'
         
     | 
| 
       259 
273 
     | 
    
         
             
            - !ruby/object:Gem::Dependency
         
     | 
| 
       260 
274 
     | 
    
         
             
              name: rspec
         
     | 
| 
       261 
275 
     | 
    
         
             
              requirement: !ruby/object:Gem::Requirement
         
     | 
| 
       262 
276 
     | 
    
         
             
                requirements:
         
     | 
| 
       263 
     | 
    
         
            -
                - - ~>
         
     | 
| 
      
 277 
     | 
    
         
            +
                - - "~>"
         
     | 
| 
       264 
278 
     | 
    
         
             
                  - !ruby/object:Gem::Version
         
     | 
| 
       265 
279 
     | 
    
         
             
                    version: '3.0'
         
     | 
| 
       266 
280 
     | 
    
         
             
              type: :development
         
     | 
| 
       267 
281 
     | 
    
         
             
              prerelease: false
         
     | 
| 
       268 
282 
     | 
    
         
             
              version_requirements: !ruby/object:Gem::Requirement
         
     | 
| 
       269 
283 
     | 
    
         
             
                requirements:
         
     | 
| 
       270 
     | 
    
         
            -
                - - ~>
         
     | 
| 
      
 284 
     | 
    
         
            +
                - - "~>"
         
     | 
| 
       271 
285 
     | 
    
         
             
                  - !ruby/object:Gem::Version
         
     | 
| 
       272 
286 
     | 
    
         
             
                    version: '3.0'
         
     | 
| 
       273 
287 
     | 
    
         
             
            - !ruby/object:Gem::Dependency
         
     | 
| 
       274 
288 
     | 
    
         
             
              name: rspec-its
         
     | 
| 
       275 
289 
     | 
    
         
             
              requirement: !ruby/object:Gem::Requirement
         
     | 
| 
       276 
290 
     | 
    
         
             
                requirements:
         
     | 
| 
       277 
     | 
    
         
            -
                - -  
     | 
| 
      
 291 
     | 
    
         
            +
                - - ">="
         
     | 
| 
       278 
292 
     | 
    
         
             
                  - !ruby/object:Gem::Version
         
     | 
| 
       279 
293 
     | 
    
         
             
                    version: '0'
         
     | 
| 
       280 
294 
     | 
    
         
             
              type: :development
         
     | 
| 
       281 
295 
     | 
    
         
             
              prerelease: false
         
     | 
| 
       282 
296 
     | 
    
         
             
              version_requirements: !ruby/object:Gem::Requirement
         
     | 
| 
       283 
297 
     | 
    
         
             
                requirements:
         
     | 
| 
       284 
     | 
    
         
            -
                - -  
     | 
| 
      
 298 
     | 
    
         
            +
                - - ">="
         
     | 
| 
       285 
299 
     | 
    
         
             
                  - !ruby/object:Gem::Version
         
     | 
| 
       286 
300 
     | 
    
         
             
                    version: '0'
         
     | 
| 
       287 
301 
     | 
    
         
             
            - !ruby/object:Gem::Dependency
         
     | 
| 
       288 
302 
     | 
    
         
             
              name: database_cleaner
         
     | 
| 
       289 
303 
     | 
    
         
             
              requirement: !ruby/object:Gem::Requirement
         
     | 
| 
       290 
304 
     | 
    
         
             
                requirements:
         
     | 
| 
       291 
     | 
    
         
            -
                - -  
     | 
| 
      
 305 
     | 
    
         
            +
                - - ">="
         
     | 
| 
       292 
306 
     | 
    
         
             
                  - !ruby/object:Gem::Version
         
     | 
| 
       293 
307 
     | 
    
         
             
                    version: '0'
         
     | 
| 
       294 
308 
     | 
    
         
             
              type: :development
         
     | 
| 
       295 
309 
     | 
    
         
             
              prerelease: false
         
     | 
| 
       296 
310 
     | 
    
         
             
              version_requirements: !ruby/object:Gem::Requirement
         
     | 
| 
       297 
311 
     | 
    
         
             
                requirements:
         
     | 
| 
       298 
     | 
    
         
            -
                - -  
     | 
| 
      
 312 
     | 
    
         
            +
                - - ">="
         
     | 
| 
       299 
313 
     | 
    
         
             
                  - !ruby/object:Gem::Version
         
     | 
| 
       300 
314 
     | 
    
         
             
                    version: '0'
         
     | 
| 
       301 
315 
     | 
    
         
             
            description: A server that stores and returns pact files generated by the pact gem.
         
     | 
| 
         @@ -308,8 +322,9 @@ executables: [] 
     | 
|
| 
       308 
322 
     | 
    
         
             
            extensions: []
         
     | 
| 
       309 
323 
     | 
    
         
             
            extra_rdoc_files: []
         
     | 
| 
       310 
324 
     | 
    
         
             
            files:
         
     | 
| 
       311 
     | 
    
         
            -
            - .gitignore
         
     | 
| 
       312 
     | 
    
         
            -
            - .rspec
         
     | 
| 
      
 325 
     | 
    
         
            +
            - ".gitignore"
         
     | 
| 
      
 326 
     | 
    
         
            +
            - ".rspec"
         
     | 
| 
      
 327 
     | 
    
         
            +
            - ".travis.yml"
         
     | 
| 
       313 
328 
     | 
    
         
             
            - CHANGELOG.md
         
     | 
| 
       314 
329 
     | 
    
         
             
            - Gemfile
         
     | 
| 
       315 
330 
     | 
    
         
             
            - README.md
         
     | 
| 
         @@ -338,6 +353,12 @@ files: 
     | 
|
| 
       338 
353 
     | 
    
         
             
            - lib/db.rb
         
     | 
| 
       339 
354 
     | 
    
         
             
            - lib/pact_broker.rb
         
     | 
| 
       340 
355 
     | 
    
         
             
            - lib/pact_broker/api.rb
         
     | 
| 
      
 356 
     | 
    
         
            +
            - lib/pact_broker/api/contracts/consumer_version_number_validation.rb
         
     | 
| 
      
 357 
     | 
    
         
            +
            - lib/pact_broker/api/contracts/pacticipant_name_contract.rb
         
     | 
| 
      
 358 
     | 
    
         
            +
            - lib/pact_broker/api/contracts/pacticipant_name_validation.rb
         
     | 
| 
      
 359 
     | 
    
         
            +
            - lib/pact_broker/api/contracts/put_pact_params_contract.rb
         
     | 
| 
      
 360 
     | 
    
         
            +
            - lib/pact_broker/api/contracts/request_validations.rb
         
     | 
| 
      
 361 
     | 
    
         
            +
            - lib/pact_broker/api/contracts/webhook_contract.rb
         
     | 
| 
       341 
362 
     | 
    
         
             
            - lib/pact_broker/api/decorators.rb
         
     | 
| 
       342 
363 
     | 
    
         
             
            - lib/pact_broker/api/decorators/base_decorator.rb
         
     | 
| 
       343 
364 
     | 
    
         
             
            - lib/pact_broker/api/decorators/basic_pacticipant_decorator.rb
         
     | 
| 
         @@ -381,6 +402,7 @@ files: 
     | 
|
| 
       381 
402 
     | 
    
         
             
            - lib/pact_broker/api/resources/webhooks.rb
         
     | 
| 
       382 
403 
     | 
    
         
             
            - lib/pact_broker/app.rb
         
     | 
| 
       383 
404 
     | 
    
         
             
            - lib/pact_broker/configuration.rb
         
     | 
| 
      
 405 
     | 
    
         
            +
            - lib/pact_broker/constants.rb
         
     | 
| 
       384 
406 
     | 
    
         
             
            - lib/pact_broker/db.rb
         
     | 
| 
       385 
407 
     | 
    
         
             
            - lib/pact_broker/doc/controllers/app.rb
         
     | 
| 
       386 
408 
     | 
    
         
             
            - lib/pact_broker/doc/views/latest-pacts.markdown
         
     | 
| 
         @@ -407,6 +429,7 @@ files: 
     | 
|
| 
       407 
429 
     | 
    
         
             
            - lib/pact_broker/models/webhook_execution_result.rb
         
     | 
| 
       408 
430 
     | 
    
         
             
            - lib/pact_broker/models/webhook_request.rb
         
     | 
| 
       409 
431 
     | 
    
         
             
            - lib/pact_broker/models/webhook_request_header.rb
         
     | 
| 
      
 432 
     | 
    
         
            +
            - lib/pact_broker/pacts/pact_params.rb
         
     | 
| 
       410 
433 
     | 
    
         
             
            - lib/pact_broker/project_root.rb
         
     | 
| 
       411 
434 
     | 
    
         
             
            - lib/pact_broker/repositories.rb
         
     | 
| 
       412 
435 
     | 
    
         
             
            - lib/pact_broker/repositories/pact.rb
         
     | 
| 
         @@ -471,9 +494,13 @@ files: 
     | 
|
| 
       471 
494 
     | 
    
         
             
            - script/update-hal-browser
         
     | 
| 
       472 
495 
     | 
    
         
             
            - spec/fixtures/consumer-provider.json
         
     | 
| 
       473 
496 
     | 
    
         
             
            - spec/fixtures/renderer_pact.json
         
     | 
| 
      
 497 
     | 
    
         
            +
            - spec/fixtures/webhook_valid.json
         
     | 
| 
       474 
498 
     | 
    
         
             
            - spec/integration/app_spec.rb
         
     | 
| 
       475 
499 
     | 
    
         
             
            - spec/integration/endpoints/group.rb
         
     | 
| 
       476 
500 
     | 
    
         
             
            - spec/integration/endpoints/pact_put_spec.rb
         
     | 
| 
      
 501 
     | 
    
         
            +
            - spec/integration/endpoints/pact_webhooks_spec.rb
         
     | 
| 
      
 502 
     | 
    
         
            +
            - spec/lib/pact_broker/api/contracts/put_pact_params_contract_spec.rb
         
     | 
| 
      
 503 
     | 
    
         
            +
            - spec/lib/pact_broker/api/contracts/webhook_contract_spec.rb
         
     | 
| 
       477 
504 
     | 
    
         
             
            - spec/lib/pact_broker/api/decorators/latest_pact_decorator_spec.rb
         
     | 
| 
       478 
505 
     | 
    
         
             
            - spec/lib/pact_broker/api/decorators/pact_collection_decorator_spec.rb
         
     | 
| 
       479 
506 
     | 
    
         
             
            - spec/lib/pact_broker/api/decorators/pact_decorator_spec.rb
         
     | 
| 
         @@ -506,6 +533,7 @@ files: 
     | 
|
| 
       506 
533 
     | 
    
         
             
            - spec/lib/pact_broker/models/pacticipant_spec.rb
         
     | 
| 
       507 
534 
     | 
    
         
             
            - spec/lib/pact_broker/models/webhook_request_spec.rb
         
     | 
| 
       508 
535 
     | 
    
         
             
            - spec/lib/pact_broker/models/webhook_spec.rb
         
     | 
| 
      
 536 
     | 
    
         
            +
            - spec/lib/pact_broker/pacts/pact_params_spec.rb
         
     | 
| 
       509 
537 
     | 
    
         
             
            - spec/lib/pact_broker/repositories/pact_repository_spec.rb
         
     | 
| 
       510 
538 
     | 
    
         
             
            - spec/lib/pact_broker/repositories/pacticipant_repository_spec.rb
         
     | 
| 
       511 
539 
     | 
    
         
             
            - spec/lib/pact_broker/repositories/tag_repository_spec.rb
         
     | 
| 
         @@ -578,26 +606,30 @@ require_paths: 
     | 
|
| 
       578 
606 
     | 
    
         
             
            - lib
         
     | 
| 
       579 
607 
     | 
    
         
             
            required_ruby_version: !ruby/object:Gem::Requirement
         
     | 
| 
       580 
608 
     | 
    
         
             
              requirements:
         
     | 
| 
       581 
     | 
    
         
            -
              - -  
     | 
| 
      
 609 
     | 
    
         
            +
              - - ">="
         
     | 
| 
       582 
610 
     | 
    
         
             
                - !ruby/object:Gem::Version
         
     | 
| 
       583 
611 
     | 
    
         
             
                  version: '0'
         
     | 
| 
       584 
612 
     | 
    
         
             
            required_rubygems_version: !ruby/object:Gem::Requirement
         
     | 
| 
       585 
613 
     | 
    
         
             
              requirements:
         
     | 
| 
       586 
     | 
    
         
            -
              - -  
     | 
| 
      
 614 
     | 
    
         
            +
              - - ">="
         
     | 
| 
       587 
615 
     | 
    
         
             
                - !ruby/object:Gem::Version
         
     | 
| 
       588 
616 
     | 
    
         
             
                  version: '0'
         
     | 
| 
       589 
617 
     | 
    
         
             
            requirements: []
         
     | 
| 
       590 
618 
     | 
    
         
             
            rubyforge_project: 
         
     | 
| 
       591 
     | 
    
         
            -
            rubygems_version: 2. 
     | 
| 
      
 619 
     | 
    
         
            +
            rubygems_version: 2.2.2
         
     | 
| 
       592 
620 
     | 
    
         
             
            signing_key: 
         
     | 
| 
       593 
621 
     | 
    
         
             
            specification_version: 4
         
     | 
| 
       594 
622 
     | 
    
         
             
            summary: See description
         
     | 
| 
       595 
623 
     | 
    
         
             
            test_files:
         
     | 
| 
       596 
624 
     | 
    
         
             
            - spec/fixtures/consumer-provider.json
         
     | 
| 
       597 
625 
     | 
    
         
             
            - spec/fixtures/renderer_pact.json
         
     | 
| 
      
 626 
     | 
    
         
            +
            - spec/fixtures/webhook_valid.json
         
     | 
| 
       598 
627 
     | 
    
         
             
            - spec/integration/app_spec.rb
         
     | 
| 
       599 
628 
     | 
    
         
             
            - spec/integration/endpoints/group.rb
         
     | 
| 
       600 
629 
     | 
    
         
             
            - spec/integration/endpoints/pact_put_spec.rb
         
     | 
| 
      
 630 
     | 
    
         
            +
            - spec/integration/endpoints/pact_webhooks_spec.rb
         
     | 
| 
      
 631 
     | 
    
         
            +
            - spec/lib/pact_broker/api/contracts/put_pact_params_contract_spec.rb
         
     | 
| 
      
 632 
     | 
    
         
            +
            - spec/lib/pact_broker/api/contracts/webhook_contract_spec.rb
         
     | 
| 
       601 
633 
     | 
    
         
             
            - spec/lib/pact_broker/api/decorators/latest_pact_decorator_spec.rb
         
     | 
| 
       602 
634 
     | 
    
         
             
            - spec/lib/pact_broker/api/decorators/pact_collection_decorator_spec.rb
         
     | 
| 
       603 
635 
     | 
    
         
             
            - spec/lib/pact_broker/api/decorators/pact_decorator_spec.rb
         
     | 
| 
         @@ -630,6 +662,7 @@ test_files: 
     | 
|
| 
       630 
662 
     | 
    
         
             
            - spec/lib/pact_broker/models/pacticipant_spec.rb
         
     | 
| 
       631 
663 
     | 
    
         
             
            - spec/lib/pact_broker/models/webhook_request_spec.rb
         
     | 
| 
       632 
664 
     | 
    
         
             
            - spec/lib/pact_broker/models/webhook_spec.rb
         
     | 
| 
      
 665 
     | 
    
         
            +
            - spec/lib/pact_broker/pacts/pact_params_spec.rb
         
     | 
| 
       633 
666 
     | 
    
         
             
            - spec/lib/pact_broker/repositories/pact_repository_spec.rb
         
     | 
| 
       634 
667 
     | 
    
         
             
            - spec/lib/pact_broker/repositories/pacticipant_repository_spec.rb
         
     | 
| 
       635 
668 
     | 
    
         
             
            - spec/lib/pact_broker/repositories/tag_repository_spec.rb
         
     |