pact_broker 2.13.1 → 2.14.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (69) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +28 -0
  3. data/DEVELOPER_DOCUMENTATION.md +1 -1
  4. data/README.md +3 -2
  5. data/db/migrations/000046_recreate_latest_verifications.rb +2 -1
  6. data/db/migrations/20180119_update_latest_triggered_webhooks.rb +63 -0
  7. data/db/test/backwards_compatibility/Gemfile +1 -0
  8. data/db/test/backwards_compatibility/config.ru +3 -0
  9. data/db/test/backwards_compatibility/gemfiles/1.18.0.gemfile +1 -0
  10. data/db/test/backwards_compatibility/gemfiles/1.18.0.gemfile.lock +6 -5
  11. data/db/test/backwards_compatibility/gemfiles/2.0.0.gemfile +1 -0
  12. data/db/test/backwards_compatibility/gemfiles/2.0.0.gemfile.lock +6 -5
  13. data/db/test/backwards_compatibility/gemfiles/2.1.0.gemfile +1 -0
  14. data/db/test/backwards_compatibility/gemfiles/2.1.0.gemfile.lock +6 -5
  15. data/db/test/backwards_compatibility/gemfiles/2.2.0.gemfile +1 -0
  16. data/db/test/backwards_compatibility/gemfiles/2.2.0.gemfile.lock +8 -7
  17. data/db/test/backwards_compatibility/gemfiles/2.3.0.gemfile +1 -0
  18. data/db/test/backwards_compatibility/gemfiles/2.3.0.gemfile.lock +8 -7
  19. data/db/test/backwards_compatibility/gemfiles/2.4.2.gemfile +1 -0
  20. data/db/test/backwards_compatibility/gemfiles/2.4.2.gemfile.lock +8 -7
  21. data/db/test/backwards_compatibility/gemfiles/2.5.1.gemfile +1 -0
  22. data/db/test/backwards_compatibility/gemfiles/2.5.1.gemfile.lock +8 -7
  23. data/db/test/backwards_compatibility/gemfiles/2.6.0.gemfile +1 -0
  24. data/db/test/backwards_compatibility/gemfiles/2.6.0.gemfile.lock +8 -7
  25. data/db/test/backwards_compatibility/gemfiles/head.gemfile +1 -0
  26. data/db/test/backwards_compatibility/gemfiles/head.gemfile.lock +9 -31
  27. data/lib/pact_broker/api.rb +2 -0
  28. data/lib/pact_broker/api/decorators/matrix_decorator.rb +2 -4
  29. data/lib/pact_broker/api/pact_broker_urls.rb +2 -0
  30. data/lib/pact_broker/api/resources/badge.rb +7 -1
  31. data/lib/pact_broker/api/resources/index.rb +12 -3
  32. data/lib/pact_broker/api/resources/matrix_badge.rb +6 -6
  33. data/lib/pact_broker/api/resources/version.rb +7 -3
  34. data/lib/pact_broker/doc/views/webhooks.markdown +11 -2
  35. data/lib/pact_broker/domain/verification.rb +6 -0
  36. data/lib/pact_broker/domain/webhook_request.rb +9 -2
  37. data/lib/pact_broker/pacts/pact_version.rb +7 -1
  38. data/lib/pact_broker/ui/helpers/url_helper.rb +3 -0
  39. data/lib/pact_broker/ui/view_models/index_item.rb +7 -3
  40. data/lib/pact_broker/ui/views/index/show-with-tags.haml +14 -9
  41. data/lib/pact_broker/ui/views/index/show.haml +9 -4
  42. data/lib/pact_broker/ui/views/matrix/show.haml +3 -0
  43. data/lib/pact_broker/verifications/all_verifications.rb +12 -0
  44. data/lib/pact_broker/verifications/repository.rb +20 -0
  45. data/lib/pact_broker/verifications/service.rb +4 -0
  46. data/lib/pact_broker/version.rb +1 -1
  47. data/lib/pact_broker/versions/service.rb +4 -0
  48. data/lib/pact_broker/webhooks/job.rb +1 -1
  49. data/lib/pact_broker/webhooks/repository.rb +0 -3
  50. data/lib/pact_broker/webhooks/service.rb +2 -1
  51. data/lib/pact_broker/webhooks/triggered_webhook.rb +4 -1
  52. data/public/images/doc-matrix.svg +15 -0
  53. data/public/stylesheets/index.css +17 -3
  54. data/script/db-spec.sh +6 -0
  55. data/script/insert-self-signed-certificate-from-url.rb +1 -0
  56. data/script/recreate-mysql-db.sh +16 -0
  57. data/script/recreate-test-database.sh +2 -0
  58. data/script/seed-matrix.rb +11 -0
  59. data/spec/lib/pact_broker/api/resources/badge_spec.rb +23 -39
  60. data/spec/lib/pact_broker/domain/webhook_request_spec.rb +38 -7
  61. data/spec/lib/pact_broker/pacts/pact_version_spec.rb +44 -21
  62. data/spec/lib/pact_broker/ui/view_models/index_item_spec.rb +1 -0
  63. data/spec/lib/pact_broker/verifications/repository_spec.rb +24 -0
  64. data/spec/lib/pact_broker/webhooks/job_spec.rb +8 -5
  65. data/spec/lib/pact_broker/webhooks/service_spec.rb +2 -2
  66. data/spec/service_consumers/hal_relation_proxy_app.rb +36 -0
  67. data/spec/service_consumers/pact_helper.rb +21 -1
  68. data/spec/service_consumers/provider_states_for_pact_broker_client.rb +27 -0
  69. metadata +9 -2
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 6493a06ed84ec11bd1c966faddbe3ddb2b948dc1
4
- data.tar.gz: f2edee66e10d7ab2fbc8183ff3a685eca1fb20b6
3
+ metadata.gz: 1bff63de2839f330d5263f10405807c379b9bf19
4
+ data.tar.gz: dca5739d3c0ac1ff475d562cbef60aa1f7f4dca5
5
5
  SHA512:
6
- metadata.gz: 0ddb05561ad94aeb5a3faef53dd0a96b7ca5550f312810f47e1640303298d3f6ef065e29b30d1b41a5928e46d6cba568bacf7c311c745d4f3af0d66d19cb3342
7
- data.tar.gz: 905912e0bb8021d08d1d6f8f9ca9cc6d45cc3eafa0fd51dbbfb33ab8297627d3ad437472b5b3b2cf5de6ef5fdce736a14066591f8221a239c2ac56ad8e41483a
6
+ metadata.gz: 670ad21e3643323cd4aab278693fe568462121f7df52f98244fc3575c0a23d8b09368091b528cb52757d6304fe0485645630a76ecde396df887703acb9282da4
7
+ data.tar.gz: 05e0e8605022baba6a5b6b09be2812e1c628fde7d0b287e72796a63b6c7f07c3620e18fb93acfe5ab979db14b85333088a1dba15eef390008ab6aaef08852ece
data/CHANGELOG.md CHANGED
@@ -1,3 +1,31 @@
1
+ <a name="v2.14.0"></a>
2
+ ### v2.14.0 (2018-02-15)
3
+
4
+
5
+ #### Features
6
+
7
+ * **matrix ui**
8
+ * add home link ([3f74e7e](/../../commit/3f74e7e))
9
+
10
+ * **index**
11
+ * add link to show/hide latest tags ([412a2d3](/../../commit/412a2d3))
12
+
13
+ * change URL for retrieving latest version so that it does not clash with a version called "latest" ([8e45062](/../../commit/8e45062))
14
+ * add endpoints to get latest pacticipant version and latest tagged version ([aa60a85](/../../commit/aa60a85))
15
+ * elegantly handle long service names in index. ([ad8da50](/../../commit/ad8da50))
16
+
17
+
18
+ #### Bug Fixes
19
+
20
+ * return overwritten pact publication as latest if non exists as a latest version when rendering verification ([8217209](/../../commit/8217209))
21
+ * #184 Escape username before asigning it to URI userinfo attribute ([81bb779](/../../commit/81bb779))
22
+ * remove non UTF-8 chars from webhook response bodies before saving the logs to the (UTF-8 encoded) database table ([0ee5b0b](/../../commit/0ee5b0b))
23
+ * ensure webhook dependencies are saved before executing ([9a89d07](/../../commit/9a89d07))
24
+
25
+ * **matrix badge**
26
+ * correct status of pact when consumer and provider version tags are specified ([0eb7429](/../../commit/0eb7429))
27
+
28
+
1
29
  <a name="v2.13.1"></a>
2
30
  ### v2.13.1 (2018-01-12)
3
31
 
@@ -46,7 +46,7 @@ Domain classes are found in `lib/pact_broker/domain`. Many of these classes are
46
46
  * `consumer version number` and `consumer version order`
47
47
  * `revision_number`
48
48
 
49
- * `latest_pact_publications` - This view has the same columns as `all_pact_publications`, but it only contains the latest revision of the pact for each provider/consumer/version. It maps to what a user would consider the "pact" resource ie. `/pacts/provider/Provider/consumer/Consumer/version/1.2.3`. Previous revisions are not currently exposed via the API.
49
+ * `latest_pact_publications_by_consumer_versions` - This view has the same columns as `all_pact_publications`, but it only contains the latest revision of the pact for each provider/consumer/version. It maps to what a user would consider the "pact" resource ie. `/pacts/provider/Provider/consumer/Consumer/version/1.2.3`. Previous revisions are not currently exposed via the API.
50
50
 
51
51
  The `AllPactPublications` Sequel model in the code is what is used when querying data for displaying in a response, rather than the normalised separate PactPublication and PactVersion models.
52
52
 
data/README.md CHANGED
@@ -127,7 +127,7 @@ In a hurry? Hate having to run your own infrastructure? Check out the [Hosted Pa
127
127
 
128
128
  #### Container solutions
129
129
 
130
- You can use the [Pact Broker Docker image][docker] or [Terraform on AWS][terraform]
130
+ You can use the [Pact Broker Docker image][docker] or [Terraform on AWS][terraform]. See the [wiki][reverse-proxy-docs] for instructions on using a reverse proxy with SSL.
131
131
 
132
132
  #### Rolling your own
133
133
 
@@ -140,7 +140,7 @@ You can use the [Pact Broker Docker image][docker] or [Terraform on AWS][terrafo
140
140
  * Copy the [pact\_broker](https://github.com/DiUS/pact_broker-docker/tree/master/pact_broker) directory from the Pact Broker Docker project. This will have the recommended settings for database connections, logging, basic auth etc. Note that the Docker image uses Phusion Passenger as the web application server in front of the Pact Broker Ruby application, which is the recommended set up.
141
141
  * Modify the config.ru and Gemfile as desired (eg. choose database driver gem, set your database credentials. Use the "pg" gem if using Postgres and the "mysql2" gem if using MySQL)
142
142
  * Please ensure you use `encoding: 'utf8'` in your Sequel options to avoid encoding issues.
143
- * For production usage, use a web application server like [Phusion Passenger](https://www.phusionpassenger.com) or [Nginx](http://nginx.org/) to serve the Pact Broker application. You'll need to read up on the documentation for these yourself as it is beyond the scope of this documentation.
143
+ * For production usage, use a web application server like [Phusion Passenger](https://www.phusionpassenger.com) or [Nginx](http://nginx.org/) to serve the Pact Broker application. You'll need to read up on the documentation for these yourself as it is beyond the scope of this documentation. See the [wiki][reverse-proxy-docs] for instructions on using a reverse proxy with SSL.
144
144
  * Deploy to your location of choice.
145
145
 
146
146
  ## Upgrading
@@ -155,6 +155,7 @@ Please read the [UPGRADING.md](UPGRADING.md) documentation before upgrading your
155
155
  [terraform]: https://github.com/nadnerb/terraform-pact-broker
156
156
  [hosted]: https://pact.dius.com.au/?utm_source=github&utm_campaign=GITHUB_BROKER&utm_medium=github
157
157
  [wiki]: https://github.com/pact-foundation/pact_broker/wiki
158
+ [reverse-proxy-docs]: https://github.com/pact-foundation/pact_broker/wiki/Configuration#running-the-broker-behind-a-reverse-proxy
158
159
  [stackoverflow]: http://stackoverflow.com/questions/tagged/pact-broker
159
160
  [twitter]: https://twitter.com/pact_up
160
161
  [gitter]: https://gitter.im/realestate-com-au/pact
@@ -11,7 +11,8 @@ Sequel.migration do
11
11
  "SELECT v.id, v.number, v.success, s.number as provider_version, v.build_url, v.pact_version_id, v.execution_date, v.created_at, v.provider_version_id, s.number as provider_version_number
12
12
  FROM verifications v
13
13
  INNER JOIN latest_verification_numbers lv
14
- ON v.pact_version_id = lv.pact_version_id AND v.number = lv.latest_number
14
+ ON v.pact_version_id = lv.pact_version_id
15
+ AND v.number = lv.latest_number
15
16
  INNER JOIN versions s on v.provider_version_id = s.id"
16
17
  )
17
18
  end
@@ -0,0 +1,63 @@
1
+ Sequel.migration do
2
+ up do
3
+ # These views find the latest triggered webhook for each webhook/consumer/provider
4
+ # by finding the latest execution date for each webhook
5
+ # then taking the row with the max ID in case there there are two
6
+ # triggered webhooks for the same UUID and same creation date
7
+ # Not sure if this is strictly necessary to do the extra step, but better to be
8
+ # safe than sorry.
9
+ # I probably could just take the max ID for each webhook/consumer/provider, but
10
+ # something in my head says that
11
+ # relying on the primary key for order is not a good idea, even though
12
+ # according to the SQL it should be fine.
13
+
14
+ create_or_replace_view(:latest_triggered_webhook_creation_dates,
15
+ "select webhook_uuid, consumer_id, provider_id, max(created_at) as latest_triggered_webhook_created_at
16
+ from triggered_webhooks
17
+ group by webhook_uuid, consumer_id, provider_id"
18
+ )
19
+
20
+ # Ignore ltwcd.latest_triggered_webhook_created_at, it's there because postgres doesn't allow you to modify
21
+ # the names and types of columns in a view
22
+ create_or_replace_view(:latest_triggered_webhook_ids,
23
+ "select tw.webhook_uuid, tw.consumer_id, tw.provider_id, ltwcd.latest_triggered_webhook_created_at, max(tw.id) as latest_triggered_webhook_id
24
+ from latest_triggered_webhook_creation_dates ltwcd
25
+ inner join triggered_webhooks tw
26
+ on tw.consumer_id = ltwcd.consumer_id
27
+ and tw.provider_id = ltwcd.provider_id
28
+ and tw.webhook_uuid = ltwcd.webhook_uuid
29
+ and tw.created_at = ltwcd.latest_triggered_webhook_created_at
30
+ group by tw.webhook_uuid, tw.consumer_id, tw.provider_id, ltwcd.latest_triggered_webhook_created_at"
31
+ )
32
+
33
+ create_or_replace_view(:latest_triggered_webhooks,
34
+ "select tw.*
35
+ from triggered_webhooks tw
36
+ inner join latest_triggered_webhook_ids ltwi
37
+ on tw.consumer_id = ltwi.consumer_id
38
+ and tw.provider_id = ltwi.provider_id
39
+ and tw.webhook_uuid = ltwi.webhook_uuid
40
+ and tw.id = ltwi.latest_triggered_webhook_id"
41
+ )
42
+ end
43
+
44
+ down do
45
+ create_or_replace_view(:latest_triggered_webhook_ids,
46
+ "select webhook_uuid, consumer_id, provider_id, max(created_at) as latest_triggered_webhook_created_at
47
+ from triggered_webhooks
48
+ group by webhook_uuid, consumer_id, provider_id"
49
+ )
50
+
51
+ create_or_replace_view(:latest_triggered_webhooks,
52
+ "select tw.*
53
+ from triggered_webhooks tw
54
+ inner join latest_triggered_webhook_ids ltwi
55
+ on tw.consumer_id = ltwi.consumer_id
56
+ and tw.provider_id = ltwi.provider_id
57
+ and tw.webhook_uuid = ltwi.webhook_uuid
58
+ and tw.created_at = ltwi.latest_triggered_webhook_created_at"
59
+ )
60
+
61
+ drop_view(:latest_triggered_webhook_creation_dates)
62
+ end
63
+ end
@@ -9,3 +9,4 @@ gem 'appraisal'
9
9
  gem 'rspec'
10
10
  gem 'rake', '~>12.0'
11
11
  gem 'rack-reverse-proxy', '~>0.12'
12
+ gem 'rack-test'
@@ -9,6 +9,9 @@ FileUtils.touch "pids/#{Process.pid}"
9
9
  DATABASE_CREDENTIALS = {adapter: "sqlite", database: "pact_broker_database.sqlite3", :encoding => 'utf8'}
10
10
 
11
11
  app = PactBroker::App.new do | config |
12
+ config.logger.formatter = proc do |severity, datetime, progname, msg|
13
+ "v#{PactBroker::VERSION} #{severity} -- : #{msg}\n"
14
+ end
12
15
  config.database_connection = Sequel.connect(DATABASE_CREDENTIALS.merge(:logger => config.logger))
13
16
  config.auto_migrate_db = true
14
17
  end
@@ -11,4 +11,5 @@ gem "appraisal"
11
11
  gem "rspec"
12
12
  gem "rake", "~>12.0"
13
13
  gem "rack-reverse-proxy", "~>0.12"
14
+ gem "rack-test"
14
15
  gem "dry-types", "0.10"
@@ -14,7 +14,7 @@ GEM
14
14
  awesome_print (1.8.0)
15
15
  blockenspiel (0.5.0)
16
16
  concurrent-ruby (1.0.5)
17
- daemons (1.2.5)
17
+ daemons (1.2.6)
18
18
  declarative (0.0.10)
19
19
  declarative-builder (0.1.0)
20
20
  declarative-option (< 0.2.0)
@@ -66,8 +66,8 @@ GEM
66
66
  concurrent-ruby (~> 1.0)
67
67
  inflecto (0.0.2)
68
68
  json (2.1.0)
69
- minitest (5.10.3)
70
- multi_json (1.12.2)
69
+ minitest (5.11.1)
70
+ multi_json (1.13.1)
71
71
  multi_xml (0.6.0)
72
72
  mysql2 (0.3.21)
73
73
  pact (1.11.1)
@@ -152,7 +152,7 @@ GEM
152
152
  rspec-core (~> 3.7.0)
153
153
  rspec-expectations (~> 3.7.0)
154
154
  rspec-mocks (~> 3.7.0)
155
- rspec-core (3.7.0)
155
+ rspec-core (3.7.1)
156
156
  rspec-support (~> 3.7.0)
157
157
  rspec-expectations (3.7.0)
158
158
  diff-lcs (>= 1.2.0, < 2.0)
@@ -190,7 +190,7 @@ GEM
190
190
  as-notifications (~> 1.0)
191
191
  i18n (>= 0.4.0)
192
192
  multi_json
193
- webrick (1.3.1)
193
+ webrick (1.4.2)
194
194
 
195
195
  PLATFORMS
196
196
  ruby
@@ -202,6 +202,7 @@ DEPENDENCIES
202
202
  pact_broker (= 1.18.0)
203
203
  pg (~> 0.21)
204
204
  rack-reverse-proxy (~> 0.12)
205
+ rack-test
205
206
  rake (~> 12.0)
206
207
  rspec
207
208
  sqlite3 (~> 1.3)
@@ -11,4 +11,5 @@ gem "appraisal"
11
11
  gem "rspec"
12
12
  gem "rake", "~>12.0"
13
13
  gem "rack-reverse-proxy", "~>0.12"
14
+ gem "rack-test"
14
15
  gem "dry-types", "0.10"
@@ -13,7 +13,7 @@ GEM
13
13
  as-notifications (1.0.1)
14
14
  awesome_print (1.8.0)
15
15
  concurrent-ruby (1.0.5)
16
- daemons (1.2.5)
16
+ daemons (1.2.6)
17
17
  declarative (0.0.10)
18
18
  declarative-builder (0.1.0)
19
19
  declarative-option (< 0.2.0)
@@ -65,8 +65,8 @@ GEM
65
65
  concurrent-ruby (~> 1.0)
66
66
  inflecto (0.0.2)
67
67
  json (2.1.0)
68
- minitest (5.10.3)
69
- multi_json (1.12.2)
68
+ minitest (5.11.1)
69
+ multi_json (1.13.1)
70
70
  multi_xml (0.6.0)
71
71
  mysql2 (0.3.21)
72
72
  pact (1.11.1)
@@ -151,7 +151,7 @@ GEM
151
151
  rspec-core (~> 3.7.0)
152
152
  rspec-expectations (~> 3.7.0)
153
153
  rspec-mocks (~> 3.7.0)
154
- rspec-core (3.7.0)
154
+ rspec-core (3.7.1)
155
155
  rspec-support (~> 3.7.0)
156
156
  rspec-expectations (3.7.0)
157
157
  diff-lcs (>= 1.2.0, < 2.0)
@@ -188,7 +188,7 @@ GEM
188
188
  as-notifications (~> 1.0)
189
189
  i18n (>= 0.4.0)
190
190
  multi_json
191
- webrick (1.3.1)
191
+ webrick (1.4.2)
192
192
 
193
193
  PLATFORMS
194
194
  ruby
@@ -200,6 +200,7 @@ DEPENDENCIES
200
200
  pact_broker (= 2.0.0)
201
201
  pg (~> 0.21)
202
202
  rack-reverse-proxy (~> 0.12)
203
+ rack-test
203
204
  rake (~> 12.0)
204
205
  rspec
205
206
  sqlite3 (~> 1.3)
@@ -11,4 +11,5 @@ gem "appraisal"
11
11
  gem "rspec"
12
12
  gem "rake", "~>12.0"
13
13
  gem "rack-reverse-proxy", "~>0.12"
14
+ gem "rack-test"
14
15
  gem "dry-types", "0.10"
@@ -13,7 +13,7 @@ GEM
13
13
  as-notifications (1.0.1)
14
14
  awesome_print (1.8.0)
15
15
  concurrent-ruby (1.0.5)
16
- daemons (1.2.5)
16
+ daemons (1.2.6)
17
17
  declarative (0.0.10)
18
18
  declarative-builder (0.1.0)
19
19
  declarative-option (< 0.2.0)
@@ -65,8 +65,8 @@ GEM
65
65
  concurrent-ruby (~> 1.0)
66
66
  inflecto (0.0.2)
67
67
  json (2.1.0)
68
- minitest (5.10.3)
69
- multi_json (1.12.2)
68
+ minitest (5.11.1)
69
+ multi_json (1.13.1)
70
70
  multi_xml (0.6.0)
71
71
  mysql2 (0.3.21)
72
72
  pact (1.11.1)
@@ -152,7 +152,7 @@ GEM
152
152
  rspec-core (~> 3.7.0)
153
153
  rspec-expectations (~> 3.7.0)
154
154
  rspec-mocks (~> 3.7.0)
155
- rspec-core (3.7.0)
155
+ rspec-core (3.7.1)
156
156
  rspec-support (~> 3.7.0)
157
157
  rspec-expectations (3.7.0)
158
158
  diff-lcs (>= 1.2.0, < 2.0)
@@ -189,7 +189,7 @@ GEM
189
189
  as-notifications (~> 1.0)
190
190
  i18n (>= 0.4.0)
191
191
  multi_json
192
- webrick (1.3.1)
192
+ webrick (1.4.2)
193
193
 
194
194
  PLATFORMS
195
195
  ruby
@@ -201,6 +201,7 @@ DEPENDENCIES
201
201
  pact_broker (= 2.1.0)
202
202
  pg (~> 0.21)
203
203
  rack-reverse-proxy (~> 0.12)
204
+ rack-test
204
205
  rake (~> 12.0)
205
206
  rspec
206
207
  sqlite3 (~> 1.3)
@@ -11,4 +11,5 @@ gem "appraisal"
11
11
  gem "rspec"
12
12
  gem "rake", "~>12.0"
13
13
  gem "rack-reverse-proxy", "~>0.12"
14
+ gem "rack-test"
14
15
  gem "dry-types", "0.10.3"
@@ -8,7 +8,7 @@ GEM
8
8
  as-notifications (1.0.1)
9
9
  awesome_print (1.8.0)
10
10
  concurrent-ruby (1.0.5)
11
- daemons (1.2.5)
11
+ daemons (1.2.6)
12
12
  declarative (0.0.10)
13
13
  declarative-builder (0.1.0)
14
14
  declarative-option (< 0.2.0)
@@ -59,7 +59,7 @@ GEM
59
59
  concurrent-ruby (~> 1.0)
60
60
  inflecto (0.0.2)
61
61
  json (2.1.0)
62
- multi_json (1.12.2)
62
+ multi_json (1.13.1)
63
63
  multi_xml (0.6.0)
64
64
  mustermann (1.0.1)
65
65
  mustermann19 (0.4.4)
@@ -110,13 +110,13 @@ GEM
110
110
  sequel (~> 4.23)
111
111
  sucker_punch (~> 2.0)
112
112
  webmachine (= 1.4.0)
113
- padrino-core (0.14.1.1)
113
+ padrino-core (0.14.2)
114
114
  mustermann19
115
- padrino-support (= 0.14.1.1)
115
+ padrino-support (= 0.14.2)
116
116
  rack-protection (>= 1.5.0)
117
117
  sinatra (>= 1.4.6)
118
118
  thor (~> 0.18)
119
- padrino-support (0.14.1.1)
119
+ padrino-support (0.14.2)
120
120
  pg (0.21.0)
121
121
  rack (2.0.3)
122
122
  rack-protection (2.0.0)
@@ -144,7 +144,7 @@ GEM
144
144
  rspec-core (~> 3.7.0)
145
145
  rspec-expectations (~> 3.7.0)
146
146
  rspec-mocks (~> 3.7.0)
147
- rspec-core (3.7.0)
147
+ rspec-core (3.7.1)
148
148
  rspec-support (~> 3.7.0)
149
149
  rspec-expectations (3.7.0)
150
150
  diff-lcs (>= 1.2.0, < 2.0)
@@ -177,7 +177,7 @@ GEM
177
177
  as-notifications (~> 1.0)
178
178
  i18n (>= 0.4.0)
179
179
  multi_json
180
- webrick (1.3.1)
180
+ webrick (1.4.2)
181
181
 
182
182
  PLATFORMS
183
183
  ruby
@@ -189,6 +189,7 @@ DEPENDENCIES
189
189
  pact_broker (= 2.2.0)
190
190
  pg (~> 0.21)
191
191
  rack-reverse-proxy (~> 0.12)
192
+ rack-test
192
193
  rake (~> 12.0)
193
194
  rspec
194
195
  sqlite3 (~> 1.3)
@@ -11,3 +11,4 @@ gem "appraisal"
11
11
  gem "rspec"
12
12
  gem "rake", "~>12.0"
13
13
  gem "rack-reverse-proxy", "~>0.12"
14
+ gem "rack-test"
@@ -8,7 +8,7 @@ GEM
8
8
  as-notifications (1.0.1)
9
9
  awesome_print (1.8.0)
10
10
  concurrent-ruby (1.0.5)
11
- daemons (1.2.5)
11
+ daemons (1.2.6)
12
12
  declarative (0.0.10)
13
13
  declarative-builder (0.1.0)
14
14
  declarative-option (< 0.2.0)
@@ -59,7 +59,7 @@ GEM
59
59
  concurrent-ruby (~> 1.0)
60
60
  inflecto (0.0.2)
61
61
  json (2.1.0)
62
- multi_json (1.12.2)
62
+ multi_json (1.13.1)
63
63
  multi_xml (0.6.0)
64
64
  mustermann (1.0.1)
65
65
  mustermann19 (0.4.4)
@@ -110,13 +110,13 @@ GEM
110
110
  sequel (~> 4.23)
111
111
  sucker_punch (~> 2.0)
112
112
  webmachine (= 1.4.0)
113
- padrino-core (0.14.1.1)
113
+ padrino-core (0.14.2)
114
114
  mustermann19
115
- padrino-support (= 0.14.1.1)
115
+ padrino-support (= 0.14.2)
116
116
  rack-protection (>= 1.5.0)
117
117
  sinatra (>= 1.4.6)
118
118
  thor (~> 0.18)
119
- padrino-support (0.14.1.1)
119
+ padrino-support (0.14.2)
120
120
  pg (0.21.0)
121
121
  rack (2.0.3)
122
122
  rack-protection (2.0.0)
@@ -144,7 +144,7 @@ GEM
144
144
  rspec-core (~> 3.7.0)
145
145
  rspec-expectations (~> 3.7.0)
146
146
  rspec-mocks (~> 3.7.0)
147
- rspec-core (3.7.0)
147
+ rspec-core (3.7.1)
148
148
  rspec-support (~> 3.7.0)
149
149
  rspec-expectations (3.7.0)
150
150
  diff-lcs (>= 1.2.0, < 2.0)
@@ -177,7 +177,7 @@ GEM
177
177
  as-notifications (~> 1.0)
178
178
  i18n (>= 0.4.0)
179
179
  multi_json
180
- webrick (1.3.1)
180
+ webrick (1.4.2)
181
181
 
182
182
  PLATFORMS
183
183
  ruby
@@ -188,6 +188,7 @@ DEPENDENCIES
188
188
  pact_broker (= 2.3.0)
189
189
  pg (~> 0.21)
190
190
  rack-reverse-proxy (~> 0.12)
191
+ rack-test
191
192
  rake (~> 12.0)
192
193
  rspec
193
194
  sqlite3 (~> 1.3)