Skip to content

Commit

Permalink
Update testing strategy
Browse files Browse the repository at this point in the history
  • Loading branch information
a-maas committed Mar 21, 2024
1 parent ea49771 commit d5c0e5b
Show file tree
Hide file tree
Showing 11 changed files with 678 additions and 230 deletions.
23 changes: 16 additions & 7 deletions .github/workflows/ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -7,17 +7,26 @@ jobs:
matrix:
ruby: ["2.5", "2.7", "3.0", "3.1", "3.2"]
gemfile:
- circuitbox_1
- circuitbox_2
- circuitbox_1_older_deps
- circuitbox_1_newer_deps
- circuitbox_2_newer_deps
exclude:
- ruby: "3.2"
gemfile: "circuitbox_1"
gemfile: "circuitbox_1_older_deps"
- ruby: "3.2"
gemfile: "circuitbox_1_newer_deps"
- ruby: "3.1"
gemfile: "circuitbox_1_older_deps"
- ruby: "3.1"
gemfile: "circuitbox_1"
gemfile: "circuitbox_1_newer_deps"
- ruby: "3.0"
gemfile: "circuitbox_1"
gemfile: "circuitbox_1_older_deps"
- ruby: "3.0"
gemfile: "circuitbox_1_newer_deps"
- ruby: "2.5"
gemfile: "circuitbox_1_older_deps"
- ruby: "2.5"
gemfile: "circuitbox_2"
gemfile: "circuitbox_2_newer_deps"

runs-on: ubuntu-22.04
env: # $BUNDLE_GEMFILE must be set at the job level, so it is set for all steps
Expand All @@ -32,7 +41,7 @@ jobs:
with:
ruby-version: ${{ matrix.ruby }}
bundler-cache: true
cache-version: 3
cache-version: 4
# Add or replace test runners here
- name: Run tests
run: bin/rake test
12 changes: 10 additions & 2 deletions Appraisals
Original file line number Diff line number Diff line change
@@ -1,7 +1,15 @@
appraise "circuitbox-1" do
appraise "circuitbox-1-older-deps" do
gem "activesupport", "~> 6.1.7.7"
gem "circuitbox", "~> 1.1.1"
gem "nokogiri", "1.12.5"
end

appraise "circuitbox-2" do
appraise "circuitbox-1-newer-deps" do
gem "activesupport", "~> 7.1.3.2"
gem "circuitbox", "~> 1.1.1"
end

appraise "circuitbox-2-newer-deps" do
gem "activesupport", "~> 7.1.3.2"
gem "circuitbox", "~> 2.0.0"
end
1 change: 0 additions & 1 deletion Gemfile
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,6 @@ git_source(:github) {|repo_name| "https://github.com/#{repo_name}" }
gemspec

group :test do
gem "nokogiri", "1.12.5" # Need old version to keep ruby 2.5 in the test matrix
gem 'minitest-ci', require: false
gem 'simplecov', '< 0.18', require: false
end
2 changes: 0 additions & 2 deletions gemfiles/.bundle/config

This file was deleted.

Original file line number Diff line number Diff line change
Expand Up @@ -2,10 +2,10 @@

source "https://rubygems.org"

gem "activesupport", "~> 7.1.3.2"
gem "circuitbox", "~> 1.1.1"

group :test do
gem "nokogiri", "1.12.5"
gem "minitest-ci", require: false
gem "simplecov", "< 0.18", require: false
end
Expand Down
278 changes: 278 additions & 0 deletions gemfiles/circuitbox_1_newer_deps.gemfile.lock
Original file line number Diff line number Diff line change
@@ -0,0 +1,278 @@
PATH
remote: ..
specs:
vertex_client (0.10.2)
activesupport
savon (>= 2.11)

GEM
remote: https://rubygems.org/
specs:
actioncable (7.1.3.2)
actionpack (= 7.1.3.2)
activesupport (= 7.1.3.2)
nio4r (~> 2.0)
websocket-driver (>= 0.6.1)
zeitwerk (~> 2.6)
actionmailbox (7.1.3.2)
actionpack (= 7.1.3.2)
activejob (= 7.1.3.2)
activerecord (= 7.1.3.2)
activestorage (= 7.1.3.2)
activesupport (= 7.1.3.2)
mail (>= 2.7.1)
net-imap
net-pop
net-smtp
actionmailer (7.1.3.2)
actionpack (= 7.1.3.2)
actionview (= 7.1.3.2)
activejob (= 7.1.3.2)
activesupport (= 7.1.3.2)
mail (~> 2.5, >= 2.5.4)
net-imap
net-pop
net-smtp
rails-dom-testing (~> 2.2)
actionpack (7.1.3.2)
actionview (= 7.1.3.2)
activesupport (= 7.1.3.2)
nokogiri (>= 1.8.5)
racc
rack (>= 2.2.4)
rack-session (>= 1.0.1)
rack-test (>= 0.6.3)
rails-dom-testing (~> 2.2)
rails-html-sanitizer (~> 1.6)
actiontext (7.1.3.2)
actionpack (= 7.1.3.2)
activerecord (= 7.1.3.2)
activestorage (= 7.1.3.2)
activesupport (= 7.1.3.2)
globalid (>= 0.6.0)
nokogiri (>= 1.8.5)
actionview (7.1.3.2)
activesupport (= 7.1.3.2)
builder (~> 3.1)
erubi (~> 1.11)
rails-dom-testing (~> 2.2)
rails-html-sanitizer (~> 1.6)
activejob (7.1.3.2)
activesupport (= 7.1.3.2)
globalid (>= 0.3.6)
activemodel (7.1.3.2)
activesupport (= 7.1.3.2)
activerecord (7.1.3.2)
activemodel (= 7.1.3.2)
activesupport (= 7.1.3.2)
timeout (>= 0.4.0)
activestorage (7.1.3.2)
actionpack (= 7.1.3.2)
activejob (= 7.1.3.2)
activerecord (= 7.1.3.2)
activesupport (= 7.1.3.2)
marcel (~> 1.0)
activesupport (7.1.3.2)
base64
bigdecimal
concurrent-ruby (~> 1.0, >= 1.0.2)
connection_pool (>= 2.2.5)
drb
i18n (>= 1.6, < 2)
minitest (>= 5.1)
mutex_m
tzinfo (~> 2.0)
addressable (2.8.6)
public_suffix (>= 2.0.2, < 6.0)
akami (1.3.3)
base64
gyoku (>= 0.4.0)
nokogiri
appraisal (2.5.0)
bundler
rake
thor (>= 0.14.0)
awesome_print (1.9.2)
base64 (0.2.0)
bigdecimal (3.1.7)
builder (3.2.4)
byebug (11.1.3)
circuitbox (1.1.1)
activesupport
moneta
concurrent-ruby (1.2.3)
connection_pool (2.4.1)
crack (1.0.0)
bigdecimal
rexml
crass (1.0.6)
date (3.3.4)
docile (1.4.0)
dotenv (3.1.0)
drb (2.2.1)
erubi (1.12.0)
faraday (2.9.0)
faraday-net_http (>= 2.0, < 3.2)
faraday-net_http (3.1.0)
net-http
globalid (1.2.1)
activesupport (>= 6.1)
gyoku (1.4.0)
builder (>= 2.1.2)
rexml (~> 3.0)
hashdiff (1.1.0)
httpi (4.0.1)
base64
mutex_m
nkf
rack (>= 2.0, < 3.1)
i18n (1.14.4)
concurrent-ruby (~> 1.0)
io-console (0.7.2)
irb (1.12.0)
rdoc
reline (>= 0.4.2)
json (2.7.1)
loofah (2.22.0)
crass (~> 1.0.2)
nokogiri (>= 1.12.0)
mail (2.8.1)
mini_mime (>= 0.1.1)
net-imap
net-pop
net-smtp
marcel (1.0.4)
mini_mime (1.1.5)
minitest (5.22.3)
minitest-ci (3.4.0)
minitest (>= 5.0.6)
mocha (2.1.0)
ruby2_keywords (>= 0.0.5)
moneta (1.6.0)
mutex_m (0.2.0)
net-http (0.4.1)
uri
net-imap (0.4.10)
date
net-protocol
net-pop (0.1.2)
net-protocol
net-protocol (0.2.2)
timeout
net-smtp (0.4.0.1)
net-protocol
nio4r (2.7.1)
nkf (0.2.0)
nokogiri (1.16.3-arm64-darwin)
racc (~> 1.4)
nokogiri (1.16.3-x86_64-linux)
racc (~> 1.4)
nori (2.7.0)
bigdecimal
psych (5.1.2)
stringio
public_suffix (5.0.4)
racc (1.7.3)
rack (3.0.10)
rack-session (2.0.0)
rack (>= 3.0.0)
rack-test (2.1.0)
rack (>= 1.3)
rackup (2.1.0)
rack (>= 3)
webrick (~> 1.8)
rails (7.1.3.2)
actioncable (= 7.1.3.2)
actionmailbox (= 7.1.3.2)
actionmailer (= 7.1.3.2)
actionpack (= 7.1.3.2)
actiontext (= 7.1.3.2)
actionview (= 7.1.3.2)
activejob (= 7.1.3.2)
activemodel (= 7.1.3.2)
activerecord (= 7.1.3.2)
activestorage (= 7.1.3.2)
activesupport (= 7.1.3.2)
bundler (>= 1.15.0)
railties (= 7.1.3.2)
rails-dom-testing (2.2.0)
activesupport (>= 5.0.0)
minitest
nokogiri (>= 1.6)
rails-html-sanitizer (1.6.0)
loofah (~> 2.21)
nokogiri (~> 1.14)
railties (7.1.3.2)
actionpack (= 7.1.3.2)
activesupport (= 7.1.3.2)
irb
rackup (>= 1.0.0)
rake (>= 12.2)
thor (~> 1.0, >= 1.2.2)
zeitwerk (~> 2.6)
rake (13.1.0)
rdoc (6.6.3.1)
psych (>= 4.0.0)
reline (0.4.3)
io-console (~> 0.5)
rexml (3.2.6)
ruby2_keywords (0.0.5)
savon (2.15.0)
akami (~> 1.2)
builder (>= 2.1.2)
gyoku (~> 1.2)
httpi (>= 2.4.5, < 5)
mail (~> 2.5)
nokogiri (>= 1.8.1)
nori (~> 2.4)
wasabi (>= 3.7, < 6)
simplecov (0.17.1)
docile (~> 1.1)
json (>= 1.8, < 3)
simplecov-html (~> 0.10.0)
simplecov-html (0.10.2)
stringio (3.1.0)
thor (1.3.1)
timeout (0.4.1)
tzinfo (2.0.6)
concurrent-ruby (~> 1.0)
uri (0.13.0)
vcr (6.2.0)
wasabi (5.0.2)
addressable
faraday (~> 2.8)
nokogiri (>= 1.13.9)
webmock (3.23.0)
addressable (>= 2.8.0)
crack (>= 0.3.2)
hashdiff (>= 0.4.0, < 2.0.0)
webrick (1.8.1)
websocket-driver (0.7.6)
websocket-extensions (>= 0.1.0)
websocket-extensions (0.1.5)
zeitwerk (2.6.13)

PLATFORMS
arm64-darwin-23
x86_64-linux

DEPENDENCIES
activesupport (~> 7.1.3.2)
appraisal
awesome_print
bundler
byebug
circuitbox (~> 1.1.1)
dotenv
minitest (~> 5.0)
minitest-ci
mocha
rails
rake
simplecov (< 0.18)
vcr
vertex_client!
webmock

BUNDLED WITH
2.4.12
14 changes: 14 additions & 0 deletions gemfiles/circuitbox_1_older_deps.gemfile
Original file line number Diff line number Diff line change
@@ -0,0 +1,14 @@
# This file was generated by Appraisal

source "https://rubygems.org"

gem "activesupport", "~> 6.1.7.7"
gem "circuitbox", "~> 1.1.1"
gem "nokogiri", "1.12.5"

group :test do
gem "minitest-ci", require: false
gem "simplecov", "< 0.18", require: false
end

gemspec path: "../"
Loading

0 comments on commit d5c0e5b

Please sign in to comment.