Skip to content

Commit 98f0007

Browse files
authored
feat!(v2): move pact/v2 to pact namespace (#397)
* feat!(v2): move pact/v2 to pact namespace BREAKING CHANGE: drops existing pact-ruby v1 interface, (pact-ruby core) which means gems now require platform specific gems. plain ruby support is no longer available, due to interfacing with a c shared library via pact-ruby-ffi -> pact-ffi * chore: fixups
1 parent 1658a0b commit 98f0007

File tree

454 files changed

+6110
-20810
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

454 files changed

+6110
-20810
lines changed

.github/workflows/test.yml

Lines changed: 11 additions & 74 deletions
Original file line numberDiff line numberDiff line change
@@ -23,44 +23,21 @@ jobs:
2323
with:
2424
ruby-version: ${{ matrix.ruby_version }}
2525
bundler-cache: true
26-
env:
27-
BUNDLE_WITH: v2
2826
- uses: pact-foundation/pact-cli@main
2927
- run: pact plugin install --yes https://github.com/mefellows/pact-matt-plugin/releases/tag/v0.1.1
3028
- name: Test Pact-Ruby Specs
3129
run: "bundle exec rake"
30+
- name: Test Pact-Ruby Consumer Tests
31+
run: "bundle exec rake pact:spec"
32+
- name: Test Pact-Ruby Provider Verification
33+
run: "bundle exec rake pact:verify"
3234
- name: Test Pact-Ruby Zoo App Specs
3335
run: "bundle install && bundle exec rake spec"
34-
if: matrix.ruby_version > '3.0'
3536
working-directory: example/zoo-app
36-
- name: Test Pact-Ruby Animal Service Specs
37+
- name: Test Pact-Ruby v2 Animal Service Specs
3738
run: "bundle install && bundle exec rake pact:verify"
38-
if: matrix.os != 'windows-latest' && matrix.ruby_version > '3.0'
39+
if: matrix.os != 'windows-latest'
3940
working-directory: example/animal-service
40-
- name: Test Pact-Ruby v2 spec:v2
41-
run: "bundle exec rake spec:v2"
42-
env:
43-
BUNDLE_WITH: v2
44-
- name: Test Pact-Ruby v2 pact:v2:spec
45-
run: "bundle exec rake pact:v2:spec"
46-
env:
47-
BUNDLE_WITH: v2
48-
- name: Test Pact-Ruby v2 pact:v2:verify
49-
run: "bundle exec rake pact:v2:verify"
50-
env:
51-
BUNDLE_WITH: v2
52-
- name: Test Pact-Ruby v2 Zoo App Specs
53-
run: "bundle install && bundle exec rake spec:v2"
54-
if: matrix.ruby_version > '3.0'
55-
working-directory: example/zoo-app-v2
56-
env:
57-
BUNDLE_WITH: v2
58-
- name: Test Pact-Ruby v2 Animal Service Specs
59-
run: "bundle install && bundle exec rake pact:v2:verify"
60-
if: matrix.os != 'windows-latest' && matrix.ruby_version > '3.0'
61-
working-directory: example/animal-service-v2
62-
env:
63-
BUNDLE_WITH: v2
6441

6542
test-with-rack-2:
6643
runs-on: ${{ matrix.os }}
@@ -75,52 +52,12 @@ jobs:
7552
with:
7653
ruby-version: ${{ matrix.ruby_version }}
7754
bundler-cache: true
78-
env:
79-
BUNDLE_WITH: v2
8055
- uses: pact-foundation/pact-cli@main
8156
- run: pact plugin install --yes https://github.com/mefellows/pact-matt-plugin/releases/tag/v0.1.1
8257
- run: "bundle exec appraisal install"
83-
env:
84-
BUNDLE_WITH: v2
8558
- run: "bundle exec appraisal rack-2 rake"
86-
- run: "bundle exec appraisal rack-2 rake spec:v2"
87-
env:
88-
BUNDLE_WITH: v2
89-
- name: Test Mixed Pacts (Http/Kafaka/Grpc) - Pact-Ruby v2
90-
run: "bundle exec appraisal rack-2 rake pact:v2:spec"
91-
env:
92-
BUNDLE_WITH: v2
93-
- name: Verify Mixed Pacts (Http/Kafaka/Grpc) - Pact-Ruby v2
94-
run: "bundle exec appraisal rack-2 rake pact:v2:verify"
95-
if: matrix.os != 'windows-latest' && matrix.ruby_version > '3.0'
96-
env:
97-
BUNDLE_WITH: v2
98-
99-
test-with-active-support:
100-
runs-on: ${{ matrix.os }}
101-
strategy:
102-
fail-fast: false
103-
matrix:
104-
ruby_version: ["3.2", "3.3", "3.4"]
105-
os: ["ubuntu-latest","windows-latest","macos-latest"]
106-
defaults:
107-
run:
108-
shell: bash
109-
steps:
110-
- uses: actions/checkout@v5
111-
- uses: ruby/setup-ruby@v1
112-
with:
113-
ruby-version: ${{ matrix.ruby_version }}
114-
bundler-cache: true
115-
env:
116-
BUNDLE_WITH: v2
117-
- run: bundle install
118-
- run: "bundle exec appraisal install"
119-
name: "install active support - pact-ruby"
120-
- run: "bundle exec appraisal activesupport rake spec_with_active_support"
121-
name: "test with active support - pact-ruby"
122-
- run: "bundle exec rake spec:v2"
123-
name: "test with active support - pact-ruby v2"
124-
env:
125-
LOAD_ACTIVE_SUPPORT: 'true'
126-
BUNDLE_WITH: v2
59+
- name: Test Mixed Pacts (Http/Kafaka/Grpc)
60+
run: "bundle exec appraisal rack-2 rake pact:spec"
61+
- name: Verify Mixed Pacts (Http/Kafaka/Grpc)
62+
run: "bundle exec appraisal rack-2 rake pact:verify"
63+
if: matrix.os != 'windows-latest'

.rspec

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,2 +1,4 @@
11
--color
22
--format progress
3+
--require spec_helper
4+
--require rails_helper

.rspec_v2

Lines changed: 0 additions & 4 deletions
This file was deleted.

Gemfile

Lines changed: 9 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -3,32 +3,26 @@ source 'https://rubygems.org'
33
# Specify your gem's dependencies in pact.gemspec
44
gemspec
55

6-
gem "appraisal", "~> 2.5"
6+
gem 'appraisal', '~> 2.5'
77

88
if ENV['X_PACT_DEVELOPMENT']
9-
gem "pact-support", path: '../pact-support'
10-
gem "pact-mock_service", path: '../pact-mock_service'
11-
gem "pry-byebug"
12-
end
13-
14-
group :v2, optional: true do
15-
gem "pact-ffi", "~> 0.4.28"
16-
gem "ffi"
9+
gem 'pact-ffi', path: '../pact-ruby-ffi'
10+
gem 'pry-byebug'
1711
end
1812

1913
group :local_development do
20-
gem "pry-byebug"
14+
gem 'pry-byebug'
2115
end
2216

2317
group :test do
2418
gem 'faraday', '~>2.0', '<3.0'
2519
gem 'faraday-retry', '~>2.0'
2620
gem 'rackup'
27-
gem 'tzinfo-data', platforms: [:mingw, :mswin, :x64_mingw]
21+
gem 'tzinfo-data', platforms: %i[windows]
2822
end
2923

30-
if RUBY_VERSION >= "3.4"
31-
gem "csv"
32-
gem "mutex_m"
33-
gem "base64"
24+
if RUBY_VERSION >= '3.4'
25+
gem 'base64'
26+
gem 'csv'
27+
gem 'mutex_m'
3428
end

0 commit comments

Comments
 (0)