pact_broker 1.8.1 → 1.9.0.rc1

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 CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 2285ce5cae5cde5142184e3e74eb8ef40b3d7136
4
- data.tar.gz: 07a8eaf72ea92839a00928991f5ae33162a0c6ab
3
+ metadata.gz: 208bc2c96b00747e6675cc9056e9f4c15436544e
4
+ data.tar.gz: 9cf1e32591790a46ffe91410fac6ade7bbdfe68b
5
5
  SHA512:
6
- metadata.gz: cb28c1cd9e6db7f4ca2e0119dd1b227d4e7fb2980f3ac9ea7195504ddd1b8a77c536e7e7824c598afcb35c3004ee1adee2014771c06bd908a4e368b7a7f1877c
7
- data.tar.gz: f75108480b94f2aba9929f8c44e7067fa28ca0039fb16553b1e0e6848a65ad10968f7998e91a6d93fa0187f6f376f05c0870e4d30602409ebbf21d4a3c9a1049
6
+ metadata.gz: 8d51e7194bb7e31f3b8433056d7ac5feaa130366075fb7681f692f174309feb35c08a42941b85cc875daa912857aa89dc2ba28ab51f09e459d35d4f6066322de
7
+ data.tar.gz: 5adcf997c3020a9b6b144ad025ef960e129b79a401efc8b5533f8d31974c6cb269368916dd82b717f5f964fb285183fb278f637d203cd3f0ec4e07c781019f77
data/CHANGELOG.md CHANGED
@@ -2,6 +2,14 @@ Do this to generate your change history
2
2
 
3
3
  $ git log --pretty=format:' * %h - %s (%an, %ad)' vX.Y.Z..HEAD
4
4
 
5
+ #### 1.9.0.rc1 (2015-07-19)
6
+
7
+ * c855a2c - Support case insensitive resource names (Beth Skurrie, Sun Jul 19 17:28:55 2015 +1000)
8
+ * 7ea3e61 - Update pact_broker.gemspec (Beth Skurrie, Tue Jul 14 09:02:30 2015 +1000)
9
+ * f299cfd - Added logging for publishing and deleting pacts (Beth Skurrie, Wed Jul 8 16:00:58 2015 +1000)
10
+ * 67f0edb - Log error when contract cannot be parsed to a Pact (Beth Skurrie, Wed Jul 8 15:54:29 2015 +1000)
11
+ * 57caf63 - Double ensure that tables are created with UTF-8 encoding https://github.com/bethesque/pact_broker/issues/24 (Beth Skurrie, Fri Jul 3 15:46:46 2015 +1000)
12
+
5
13
  #### 1.8.1 (2015-06-30)
6
14
 
7
15
  * d0d466d - Avoid making a query for tags for each pact shown on the Pacts page (Beth Skurrie, Tue Jun 30 06:42:09 2015 +1000)
data/README.md CHANGED
@@ -18,6 +18,7 @@ Features:
18
18
  * Dynamically generated network diagrams.
19
19
  * Enables a pact version to be tagged (ie. "prod") so a provider can verify itself against a fixed version of a pact to ensure backwards compatibility.
20
20
  * Webhooks to trigger a provider build when a consumer publishes a change to a pact.
21
+ * Tracks changes between Pact versions so you can tell when a consumer has changed its expectations.
21
22
  * [Docker Pact Broker][docker]
22
23
 
23
24
  Travis CI Status: [![Build Status](https://travis-ci.org/bethesque/pact_broker.svg?branch=master)](https://travis-ci.org/bethesque/pact_broker)
@@ -1,6 +1,6 @@
1
1
  Sequel.migration do
2
2
  change do
3
- create_table(:pacticipants) do
3
+ create_table(:pacticipants, charset: 'utf8') do
4
4
  primary_key :id
5
5
  String :name, :unique => true
6
6
  String :repository_url
@@ -1,7 +1,7 @@
1
1
  Sequel.migration do
2
2
 
3
3
  change do
4
- create_table(:versions) do
4
+ create_table(:versions, charset: 'utf8') do
5
5
  primary_key :id
6
6
  String :number
7
7
  String :repository_ref
@@ -1,6 +1,6 @@
1
1
  Sequel.migration do
2
2
  change do
3
- create_table(:pacts) do
3
+ create_table(:pacts, charset: 'utf8') do
4
4
  primary_key :id
5
5
  String :json_content, :text=>true
6
6
  foreign_key :version_id, :versions, null: false
@@ -1,6 +1,6 @@
1
1
  Sequel.migration do
2
2
  change do
3
- create_table(:tags) do
3
+ create_table(:tags, charset: 'utf8') do
4
4
  String :name
5
5
  foreign_key :version_id, :versions
6
6
  primary_key [:version_id, :name], :name=>:tags_pk
@@ -1,6 +1,6 @@
1
1
  Sequel.migration do
2
2
  change do
3
- create_table(:webhooks) do
3
+ create_table(:webhooks, charset: 'utf8') do
4
4
  primary_key :id
5
5
  String :uuid, null: false, unique: true, unique_constraint_name: 'uq_webhook_uuid'
6
6
  String :method, null: false
@@ -11,7 +11,7 @@ Sequel.migration do
11
11
  foreign_key :provider_id, :pacticipants, null: false, foreign_key_constraint_name: 'fk_webhooks_provider'
12
12
  end
13
13
 
14
- create_table(:webhook_headers) do
14
+ create_table(:webhook_headers, charset: 'utf8') do
15
15
  String :name, null: false
16
16
  String :value
17
17
  foreign_key :webhook_id, :webhooks, null: false, foreign_key_constraint_name: 'fk_webhookheaders_webhooks'
@@ -3,7 +3,7 @@ require_relative 'migration_helper'
3
3
 
4
4
  Sequel.migration do
5
5
  change do
6
- create_table(:pact_version_contents) do
6
+ create_table(:pact_version_contents, charset: 'utf8') do
7
7
  String :sha, primary_key: true, null: false, primary_key_constraint_name: 'pk_pact_version_contents'
8
8
  String :content, type: PactBroker::MigrationHelper.large_text_type
9
9
  DateTime :created_at, null: false
@@ -3,6 +3,7 @@ require 'pact/reification'
3
3
  require 'redcarpet'
4
4
  require 'pact/doc/markdown/consumer_contract_renderer'
5
5
  require 'pact_broker/api/pact_broker_urls'
6
+ require 'pact_broker/logging'
6
7
 
7
8
  module PactBroker
8
9
  module Api
@@ -11,6 +12,8 @@ module PactBroker
11
12
 
12
13
  class NotAPactError < StandardError; end
13
14
 
15
+ include PactBroker::Logging
16
+
14
17
  def self.call pact
15
18
  new(pact).call
16
19
  end
@@ -84,7 +87,9 @@ module PactBroker
84
87
 
85
88
  def consumer_contract
86
89
  Pact::ConsumerContract.from_json(@json_content)
87
- rescue
90
+ rescue => e
91
+ logger.warn "#{e.class} #{e.message} #{e.backtrace.join("\n")}"
92
+ logger.warn "Could not parse the following content to a Pact, showing raw content instead: #{@json_content}"
88
93
  raise NotAPactError
89
94
  end
90
95
 
@@ -8,6 +8,7 @@ module PactBroker
8
8
 
9
9
  attr_accessor :log_dir, :database_connection, :auto_migrate_db, :use_hal_browser, :html_pact_renderer
10
10
  attr_accessor :validate_database_connection_config, :enable_diagnostic_endpoints, :version_parser
11
+ attr_accessor :use_case_sensitive_resource_names
11
12
  attr_writer :logger
12
13
 
13
14
  def logger
@@ -20,9 +21,10 @@ module PactBroker
20
21
  config.log_dir = File.expand_path("./log")
21
22
  config.auto_migrate_db = true
22
23
  config.use_hal_browser = true
23
- config.html_pact_renderer = default_html_pact_render
24
24
  config.validate_database_connection_config = true
25
25
  config.enable_diagnostic_endpoints = true
26
+ config.use_case_sensitive_resource_names = true
27
+ config.html_pact_renderer = default_html_pact_render
26
28
  config.version_parser = PactBroker::Versions::ParseSemanticVersion
27
29
  config
28
30
  end
@@ -2,13 +2,13 @@ require 'pact_broker/domain/tag'
2
2
  require 'pact_broker/domain/pacticipant'
3
3
  require 'pact_broker/domain/version'
4
4
  require 'pact_broker/pacts/pact_version_content'
5
+ require 'pact_broker/repositories/helpers'
5
6
 
6
7
  module PactBroker
7
8
  module Pacts
8
9
 
9
10
  class AllPacts < Sequel::Model(:all_pacts)
10
11
 
11
-
12
12
  set_primary_key :id
13
13
  associate(:one_to_many, :tags, :class => "PactBroker::Domain::Tag", :reciprocal => :version, :key => :version_id, :primary_key => :consumer_version_id)
14
14
  associate(:many_to_one, :pact_version_content, :key => :pact_version_content_sha, :primary_key => :sha)
@@ -24,22 +24,23 @@ module PactBroker
24
24
  # {table_alias: :lp}
25
25
  # )
26
26
  # end
27
+ include PactBroker::Repositories::Helpers
27
28
 
28
29
  def consumer consumer_name
29
- filter(consumer_name: consumer_name)
30
+ where(name_like(:consumer_name, consumer_name))
30
31
  end
31
32
 
32
33
  def provider provider_name
33
- filter(provider_name: provider_name)
34
+ where(name_like(:provider_name, provider_name))
34
35
  end
35
36
 
36
37
  def tag tag_name
37
- join(:tags, {version_id: :consumer_version_id})
38
- .where('tags.name = ?', tag_name)
38
+ filter = name_like(Sequel.qualify(:tags, :name), tag_name)
39
+ join(:tags, {version_id: :consumer_version_id}).where(filter)
39
40
  end
40
41
 
41
42
  def consumer_version_number number
42
- filter(consumer_version_number: number)
43
+ where(name_like(:consumer_version_number, number))
43
44
  end
44
45
 
45
46
  def consumer_version_order_before order
@@ -1,5 +1,6 @@
1
1
  require 'pact_broker/repositories'
2
2
  require 'pact_broker/services'
3
+ require 'pact_broker/logging'
3
4
 
4
5
  module PactBroker
5
6
  module Pacts
@@ -9,6 +10,7 @@ module PactBroker
9
10
 
10
11
  extend PactBroker::Repositories
11
12
  extend PactBroker::Services
13
+ include PactBroker::Logging
12
14
 
13
15
  def find_latest_pact params
14
16
  pact_repository.find_latest_pact(params[:consumer_name], params[:provider_name], params[:tag])
@@ -23,6 +25,7 @@ module PactBroker
23
25
  end
24
26
 
25
27
  def delete params
28
+ logger.info "Deleting pact version with params #{params}"
26
29
  pact_repository.delete(params)
27
30
  end
28
31
 
@@ -77,6 +80,7 @@ module PactBroker
77
80
  private
78
81
 
79
82
  def update_pact params, existing_pact
83
+ logger.info "Updating existing pact version with params #{params}"
80
84
  updated_pact = pact_repository.update existing_pact.id, params
81
85
 
82
86
  if existing_pact.json_content != updated_pact.json_content
@@ -87,6 +91,7 @@ module PactBroker
87
91
  end
88
92
 
89
93
  def create_pact params, version, provider
94
+ logger.info "Creating new pact version with params #{params}"
90
95
  pact = pact_repository.create json_content: params[:json_content], version_id: version.id, provider_id: provider.id
91
96
  trigger_webhooks pact
92
97
  pact
@@ -0,0 +1,16 @@
1
+ module PactBroker
2
+ module Repositories
3
+ module Helpers
4
+
5
+ extend self
6
+
7
+ def name_like column_name, value
8
+ Sequel.like(column_name, value, case_sensitivity_options)
9
+ end
10
+
11
+ def case_sensitivity_options
12
+ {case_insensitive: !PactBroker.configuration.use_case_sensitive_resource_names}
13
+ end
14
+ end
15
+ end
16
+ end
@@ -1,12 +1,15 @@
1
1
  require 'sequel'
2
2
  require 'pact_broker/domain/pacticipant'
3
+ require 'pact_broker/repositories/helpers'
3
4
 
4
5
  module PactBroker
5
6
  module Repositories
6
7
  class PacticipantRepository
7
8
 
9
+ include Helpers
10
+
8
11
  def find_by_name name
9
- PactBroker::Domain::Pacticipant.where(name: name).single_record
12
+ PactBroker::Domain::Pacticipant.where(name_like(:name, name)).single_record
10
13
  end
11
14
 
12
15
  def find_by_id id
@@ -36,7 +39,6 @@ module PactBroker
36
39
  def find_latest_version name
37
40
 
38
41
  end
39
-
40
42
  end
41
43
  end
42
44
  end
@@ -1,9 +1,12 @@
1
1
  require 'pact_broker/domain/tag'
2
+ require 'pact_broker/repositories/helpers'
3
+
2
4
 
3
5
  module PactBroker
4
6
  module Repositories
5
7
  class TagRepository
6
8
 
9
+ include Helpers
7
10
 
8
11
  def create args
9
12
  Domain::Tag.new(name: args.fetch(:name), version: args.fetch(:version)).save
@@ -14,12 +17,11 @@ module PactBroker
14
17
  .select(:tags__name, :tags__version_id, :tags__created_at, :tags__updated_at)
15
18
  .join(:versions, {id: :version_id})
16
19
  .join(:pacticipants, {pacticipants__id: :versions__pacticipant_id})
17
- .where(:tags__name => args.fetch(:tag_name))
18
- .where(:versions__number => args.fetch(:pacticipant_version_number))
19
- .where(:pacticipants__name => args.fetch(:pacticipant_name))
20
+ .where(name_like(:tags__name, args.fetch(:tag_name)))
21
+ .where(name_like(:versions__number, args.fetch(:pacticipant_version_number)))
22
+ .where(name_like(:pacticipants__name, args.fetch(:pacticipant_name)))
20
23
  .single_record
21
24
  end
22
-
23
25
  end
24
26
  end
25
- end
27
+ end
@@ -1,10 +1,13 @@
1
1
  require 'sequel'
2
2
  require 'pact_broker/domain/version'
3
+ require 'pact_broker/repositories/tag_repository'
3
4
 
4
5
  module PactBroker
5
6
  module Repositories
6
7
  class VersionRepository
7
8
 
9
+ include Helpers
10
+
8
11
  def find_by_pacticipant_id_and_number pacticipant_id, number
9
12
  PactBroker::Domain::Version.where(number: number, pacticipant_id: pacticipant_id).single_record
10
13
  end
@@ -12,9 +15,9 @@ module PactBroker
12
15
  def find_by_pacticipant_name_and_number pacticipant_name, number
13
16
  PactBroker::Domain::Version
14
17
  .select(:versions__id, :versions__number, :versions__pacticipant_id, :versions__order, :versions__created_at, :versions__updated_at)
15
- .where(number: number)
16
18
  .join(:pacticipants, {id: :pacticipant_id})
17
- .where(name: pacticipant_name)
19
+ .where(name_like(:number, number))
20
+ .where(name_like(:name, pacticipant_name))
18
21
  .single_record
19
22
  end
20
23
 
@@ -31,7 +34,6 @@ module PactBroker
31
34
  create(pacticipant_id: pacticipant_id, number: number)
32
35
  end
33
36
  end
34
-
35
37
  end
36
38
  end
37
- end
39
+ end
@@ -1,3 +1,3 @@
1
1
  module PactBroker
2
- VERSION = '1.8.1'
2
+ VERSION = '1.9.0.rc1'
3
3
  end
data/pact_broker.gemspec CHANGED
@@ -11,7 +11,7 @@ Gem::Specification.new do |gem|
11
11
  gem.email = ["bskurrie@dius.com.au", "serge.matheson@rea-group.com", "warner@warnergodfrey.com"]
12
12
  gem.description = %q{A server that stores and returns pact files generated by the pact gem. It enables head/prod cross testing of the consumer and provider projects.}
13
13
  gem.summary = %q{See description}
14
- gem.homepage = "https://github.com/DiUS/pact_broker"
14
+ gem.homepage = "https://github.com/bethesque/pact_broker"
15
15
 
16
16
  gem.files = `git ls-files`.split($/)
17
17
  gem.executables = gem.files.grep(%r{^bin/}).map{ |f| File.basename(f) }
@@ -0,0 +1,66 @@
1
+ describe "retrieving a pact" do
2
+
3
+ subject { get path; last_response }
4
+
5
+ context "when differing case is used in the consumer and provider names" do
6
+
7
+ let(:path) { "/pacts/provider/a%20provider/consumer/a%20consumer/version/1.2.3A" }
8
+
9
+ before do
10
+ ProviderStateBuilder.new.create_pact_with_hierarchy "A Consumer", "1.2.3a", "A Provider"
11
+ end
12
+
13
+ context "when case sensitivity is turned on" do
14
+ before do
15
+ allow(PactBroker.configuration).to receive(:use_case_sensitive_resource_names).and_return(true)
16
+ end
17
+
18
+ it "returns a 404 Not found" do
19
+ expect(subject.status).to be 404
20
+ end
21
+ end
22
+
23
+ context "when case sensitivity is turned off" do
24
+ before do
25
+ allow(PactBroker.configuration).to receive(:use_case_sensitive_resource_names).and_return(false)
26
+ end
27
+
28
+ it "returns a 200 Success" do
29
+ expect(subject.status).to be 200
30
+ end
31
+ end
32
+ end
33
+ context "when differing case is used in the tag name" do
34
+
35
+ let(:path) { "/pacts/provider/a%20provider/consumer/a%20consumer/latest/PROD" }
36
+
37
+ before do
38
+ ProviderStateBuilder.new
39
+ .create_consumer("A Consumer")
40
+ .create_consumer_version("1.2.3")
41
+ .create_consumer_version_tag("prod")
42
+ .create_provider("A Provider")
43
+ .create_pact
44
+ end
45
+
46
+ context "when case sensitivity is turned on" do
47
+ before do
48
+ allow(PactBroker.configuration).to receive(:use_case_sensitive_resource_names).and_return(true)
49
+ end
50
+
51
+ it "returns a 404 Not found" do
52
+ expect(subject.status).to be 404
53
+ end
54
+ end
55
+
56
+ context "when case sensitivity is turned off" do
57
+ before do
58
+ allow(PactBroker.configuration).to receive(:use_case_sensitive_resource_names).and_return(false)
59
+ end
60
+
61
+ it "returns a 200 Success" do
62
+ expect(subject.status).to be 200
63
+ end
64
+ end
65
+ end
66
+ end
@@ -60,6 +60,12 @@ module PactBroker
60
60
  it "renders the JSON in HTML" do
61
61
  expect(subject).to match /\[\s+1\s+\]/m
62
62
  end
63
+
64
+ it "logs a warning" do
65
+ allow(PactBroker.logger).to receive(:warn).with(/Error/)
66
+ expect(PactBroker.logger).to receive(:warn).with(/Could not parse/)
67
+ subject
68
+ end
63
69
  end
64
70
  end
65
71
 
@@ -6,6 +6,36 @@ module PactBroker
6
6
  module Repositories
7
7
  describe PacticipantRepository do
8
8
 
9
+ describe "#find_by_name" do
10
+ before do
11
+ ProviderStateBuilder.new.create_pacticipant("Foo Bar")
12
+ end
13
+
14
+ subject { PacticipantRepository.new.find_by_name('foo bar') }
15
+
16
+ context "when the name is a different case" do
17
+ context "with case sensitivity turned on" do
18
+ before do
19
+ allow(PactBroker.configuration).to receive(:use_case_sensitive_resource_names).and_return(true)
20
+ end
21
+
22
+ it "returns nil" do
23
+ expect(subject).to be nil
24
+ end
25
+ end
26
+
27
+ context "with case sensitivity turned off" do
28
+ before do
29
+ allow(PactBroker.configuration).to receive(:use_case_sensitive_resource_names).and_return(false)
30
+ end
31
+
32
+ it "returns the pacticipant" do
33
+ expect(subject).to_not be nil
34
+ expect(subject.name).to eq "Foo Bar"
35
+ end
36
+ end
37
+ end
38
+ end
9
39
 
10
40
  describe "#pacticipant_names" do
11
41
 
@@ -8,7 +8,7 @@ module PactBroker
8
8
  describe ".find" do
9
9
 
10
10
  let(:pacticipant_name) { "test_pacticipant" }
11
- let(:version_number) { "1.2.3" }
11
+ let(:version_number) { "1.2.3a" }
12
12
  let(:tag_name) { "prod" }
13
13
 
14
14
  subject { TagRepository.new }
@@ -41,6 +41,18 @@ module PactBroker
41
41
  expect(find_tag.updated_at).to be_instance_of(DateTime)
42
42
  end
43
43
 
44
+ context "when case sensitivity is turned off and a name with different case is used" do
45
+ before do
46
+ allow(PactBroker.configuration).to receive(:use_case_sensitive_resource_names).and_return(false)
47
+ end
48
+
49
+ let(:options) { {pacticipant_name: pacticipant_name.upcase, pacticipant_version_number: version_number.upcase, tag_name: tag_name.upcase} }
50
+
51
+ it "returns the tag" do
52
+ expect(find_tag).to_not be nil
53
+ expect(find_tag.name).to eq tag_name
54
+ end
55
+ end
44
56
  end
45
57
 
46
58
  context "when the tag does not exist" do
@@ -26,7 +26,6 @@ module PactBroker
26
26
 
27
27
  describe "#find_by_pacticipant_name_and_number" do
28
28
 
29
-
30
29
  subject { described_class.new.find_by_pacticipant_name_and_number pacticipant_name, version_number }
31
30
 
32
31
  context "when the version exists" do
@@ -48,6 +47,18 @@ module PactBroker
48
47
  expect(subject.tags.first.name).to eq "prod"
49
48
  expect(subject.order).to eq 0
50
49
  end
50
+
51
+ context "when case sensitivity is turned off and names with different cases are used" do
52
+ before do
53
+ allow(PactBroker.configuration).to receive(:use_case_sensitive_resource_names).and_return(false)
54
+ end
55
+
56
+ subject { described_class.new.find_by_pacticipant_name_and_number pacticipant_name.upcase, version_number.upcase }
57
+
58
+ it "returns the version" do
59
+ expect(subject).to_not be nil
60
+ end
61
+ end
51
62
  end
52
63
 
53
64
  context "when the version doesn't exist" do
@@ -55,10 +66,7 @@ module PactBroker
55
66
  expect(subject).to be_nil
56
67
  end
57
68
  end
58
-
59
69
  end
60
-
61
-
62
70
  end
63
71
  end
64
- end
72
+ end
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.8.1
4
+ version: 1.9.0.rc1
5
5
  platform: ruby
6
6
  authors:
7
7
  - Bethany Skurrie
@@ -10,7 +10,7 @@ authors:
10
10
  autorequire:
11
11
  bindir: bin
12
12
  cert_chain: []
13
- date: 2015-06-29 00:00:00.000000000 Z
13
+ date: 2015-07-19 00:00:00.000000000 Z
14
14
  dependencies:
15
15
  - !ruby/object:Gem::Dependency
16
16
  name: httparty
@@ -502,6 +502,7 @@ files:
502
502
  - lib/pact_broker/project_root.rb
503
503
  - lib/pact_broker/relationships/groupify.rb
504
504
  - lib/pact_broker/repositories.rb
505
+ - lib/pact_broker/repositories/helpers.rb
505
506
  - lib/pact_broker/repositories/pacticipant_repository.rb
506
507
  - lib/pact_broker/repositories/tag_repository.rb
507
508
  - lib/pact_broker/repositories/version_repository.rb
@@ -567,6 +568,7 @@ files:
567
568
  - spec/features/create_webhook_spec.rb
568
569
  - spec/features/delete_pact_spec.rb
569
570
  - spec/features/get_diff.rb
571
+ - spec/features/get_pact_spec.rb
570
572
  - spec/features/get_previous_distinct_version.rb
571
573
  - spec/features/get_provider_pacts.rb
572
574
  - spec/features/get_version.rb
@@ -691,7 +693,7 @@ files:
691
693
  - vendor/hal-browser/vendor/js/jquery-1.10.2.min.map
692
694
  - vendor/hal-browser/vendor/js/underscore.js
693
695
  - vendor/hal-browser/vendor/js/uritemplates.js
694
- homepage: https://github.com/DiUS/pact_broker
696
+ homepage: https://github.com/bethesque/pact_broker
695
697
  licenses:
696
698
  - MIT
697
699
  metadata: {}
@@ -706,9 +708,9 @@ required_ruby_version: !ruby/object:Gem::Requirement
706
708
  version: '0'
707
709
  required_rubygems_version: !ruby/object:Gem::Requirement
708
710
  requirements:
709
- - - '>='
711
+ - - '>'
710
712
  - !ruby/object:Gem::Version
711
- version: '0'
713
+ version: 1.3.1
712
714
  requirements: []
713
715
  rubyforge_project:
714
716
  rubygems_version: 2.0.14
@@ -719,6 +721,7 @@ test_files:
719
721
  - spec/features/create_webhook_spec.rb
720
722
  - spec/features/delete_pact_spec.rb
721
723
  - spec/features/get_diff.rb
724
+ - spec/features/get_pact_spec.rb
722
725
  - spec/features/get_previous_distinct_version.rb
723
726
  - spec/features/get_provider_pacts.rb
724
727
  - spec/features/get_version.rb