Skip to content

Commit bc9b21c

Browse files
committed
Start of matrix testing
1 parent a940a5c commit bc9b21c

Some content is hidden

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

63 files changed

+805
-1162
lines changed

.github/workflows/ci.yml

Lines changed: 25 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,25 @@
1+
name: CI
2+
3+
on: [push, pull_request]
4+
5+
jobs:
6+
test:
7+
runs-on: ubuntu-latest
8+
strategy:
9+
matrix:
10+
ruby-version: [ '3.1', '3.2', '3.3' ]
11+
gemfile: [ 'gemfiles/rails_6.1.gemfile', 'gemfiles/rails_7.0.gemfile', 'gemfiles/rails_7.1.gemfile' ]
12+
steps:
13+
- uses: actions/checkout@v2
14+
- name: Set up Ruby
15+
uses: ruby/setup-ruby@v1
16+
with:
17+
ruby-version: ${{ matrix.ruby-version }}
18+
- name: Install dependencies
19+
run: |
20+
gem install bundler
21+
bundle install --gemfile ${{ matrix.gemfile }}
22+
- name: Run tests
23+
run: |
24+
bundle exec appraisal install
25+
bundle exec appraisal ${{ matrix.gemfile | split: '/' | last | split: '.' | first }} rspec

.gitignore

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -9,3 +9,6 @@
99

1010
# rspec failure tracking
1111
.rspec_status
12+
13+
# Created when initializing Rails app
14+
/spec/log

.ruby-version

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
3.1.6

Appraisals

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,12 @@
1+
# Appraisals
2+
appraise 'rails-6.1' do
3+
gem 'rails', '~> 6.1.0'
4+
end
5+
6+
appraise 'rails-7.0' do
7+
gem 'rails', '~> 7.0.0'
8+
end
9+
10+
appraise 'rails-7.1' do
11+
gem 'rails', '~> 7.1.0'
12+
end

Gemfile.lock

Lines changed: 141 additions & 103 deletions
Original file line numberDiff line numberDiff line change
@@ -7,136 +7,174 @@ PATH
77
GEM
88
remote: https://rubygems.org/
99
specs:
10-
actioncable (5.2.3)
11-
actionpack (= 5.2.3)
10+
actioncable (6.1.4.7)
11+
actionpack (= 6.1.4.7)
12+
activesupport (= 6.1.4.7)
1213
nio4r (~> 2.0)
1314
websocket-driver (>= 0.6.1)
14-
actionmailer (5.2.3)
15-
actionpack (= 5.2.3)
16-
actionview (= 5.2.3)
17-
activejob (= 5.2.3)
15+
actionmailbox (6.1.4.7)
16+
actionpack (= 6.1.4.7)
17+
activejob (= 6.1.4.7)
18+
activerecord (= 6.1.4.7)
19+
activestorage (= 6.1.4.7)
20+
activesupport (= 6.1.4.7)
21+
mail (>= 2.7.1)
22+
actionmailer (6.1.4.7)
23+
actionpack (= 6.1.4.7)
24+
actionview (= 6.1.4.7)
25+
activejob (= 6.1.4.7)
26+
activesupport (= 6.1.4.7)
1827
mail (~> 2.5, >= 2.5.4)
1928
rails-dom-testing (~> 2.0)
20-
actionpack (5.2.3)
21-
actionview (= 5.2.3)
22-
activesupport (= 5.2.3)
23-
rack (~> 2.0)
29+
actionpack (6.1.4.7)
30+
actionview (= 6.1.4.7)
31+
activesupport (= 6.1.4.7)
32+
rack (~> 2.0, >= 2.0.9)
2433
rack-test (>= 0.6.3)
2534
rails-dom-testing (~> 2.0)
26-
rails-html-sanitizer (~> 1.0, >= 1.0.2)
27-
actionview (5.2.3)
28-
activesupport (= 5.2.3)
35+
rails-html-sanitizer (~> 1.0, >= 1.2.0)
36+
actiontext (6.1.4.7)
37+
actionpack (= 6.1.4.7)
38+
activerecord (= 6.1.4.7)
39+
activestorage (= 6.1.4.7)
40+
activesupport (= 6.1.4.7)
41+
nokogiri (>= 1.8.5)
42+
actionview (6.1.4.7)
43+
activesupport (= 6.1.4.7)
2944
builder (~> 3.1)
3045
erubi (~> 1.4)
3146
rails-dom-testing (~> 2.0)
32-
rails-html-sanitizer (~> 1.0, >= 1.0.3)
33-
activejob (5.2.3)
34-
activesupport (= 5.2.3)
47+
rails-html-sanitizer (~> 1.1, >= 1.2.0)
48+
activejob (6.1.4.7)
49+
activesupport (= 6.1.4.7)
3550
globalid (>= 0.3.6)
36-
activemodel (5.2.3)
37-
activesupport (= 5.2.3)
38-
activerecord (5.2.3)
39-
activemodel (= 5.2.3)
40-
activesupport (= 5.2.3)
41-
arel (>= 9.0)
42-
activestorage (5.2.3)
43-
actionpack (= 5.2.3)
44-
activerecord (= 5.2.3)
45-
marcel (~> 0.3.1)
46-
activesupport (5.2.3)
51+
activemodel (6.1.4.7)
52+
activesupport (= 6.1.4.7)
53+
activerecord (6.1.4.7)
54+
activemodel (= 6.1.4.7)
55+
activesupport (= 6.1.4.7)
56+
activestorage (6.1.4.7)
57+
actionpack (= 6.1.4.7)
58+
activejob (= 6.1.4.7)
59+
activerecord (= 6.1.4.7)
60+
activesupport (= 6.1.4.7)
61+
marcel (~> 1.0.0)
62+
mini_mime (>= 1.1.0)
63+
activesupport (6.1.4.7)
4764
concurrent-ruby (~> 1.0, >= 1.0.2)
48-
i18n (>= 0.7, < 2)
49-
minitest (~> 5.1)
50-
tzinfo (~> 1.1)
51-
arel (9.0.0)
52-
builder (3.2.3)
53-
concurrent-ruby (1.1.5)
54-
crass (1.0.4)
55-
diff-lcs (1.3)
56-
erubi (1.8.0)
57-
globalid (0.4.2)
58-
activesupport (>= 4.2.0)
59-
i18n (1.6.0)
65+
i18n (>= 1.6, < 2)
66+
minitest (>= 5.1)
67+
tzinfo (~> 2.0)
68+
zeitwerk (~> 2.3)
69+
appraisal (2.5.0)
70+
bundler
71+
rake
72+
thor (>= 0.14.0)
73+
builder (3.3.0)
74+
concurrent-ruby (1.3.3)
75+
crass (1.0.6)
76+
date (3.3.4)
77+
diff-lcs (1.5.1)
78+
erubi (1.13.0)
79+
globalid (1.2.1)
80+
activesupport (>= 6.1)
81+
i18n (1.14.5)
6082
concurrent-ruby (~> 1.0)
61-
loofah (2.2.3)
83+
loofah (2.22.0)
6284
crass (~> 1.0.2)
63-
nokogiri (>= 1.5.9)
64-
mail (2.7.1)
85+
nokogiri (>= 1.12.0)
86+
mail (2.8.1)
6587
mini_mime (>= 0.1.1)
66-
marcel (0.3.3)
67-
mimemagic (~> 0.3.2)
68-
method_source (0.9.2)
69-
mimemagic (0.3.3)
70-
mini_mime (1.0.1)
71-
mini_portile2 (2.4.0)
72-
minitest (5.11.3)
73-
nio4r (2.3.1)
74-
nokogiri (1.10.3)
75-
mini_portile2 (~> 2.4.0)
76-
rack (2.0.7)
77-
rack-test (1.1.0)
78-
rack (>= 1.0, < 3)
79-
rails (5.2.3)
80-
actioncable (= 5.2.3)
81-
actionmailer (= 5.2.3)
82-
actionpack (= 5.2.3)
83-
actionview (= 5.2.3)
84-
activejob (= 5.2.3)
85-
activemodel (= 5.2.3)
86-
activerecord (= 5.2.3)
87-
activestorage (= 5.2.3)
88-
activesupport (= 5.2.3)
89-
bundler (>= 1.3.0)
90-
railties (= 5.2.3)
88+
net-imap
89+
net-pop
90+
net-smtp
91+
marcel (1.0.4)
92+
method_source (1.1.0)
93+
mini_mime (1.1.5)
94+
minitest (5.24.0)
95+
net-imap (0.4.14)
96+
date
97+
net-protocol
98+
net-pop (0.1.2)
99+
net-protocol
100+
net-protocol (0.2.2)
101+
timeout
102+
net-smtp (0.5.0)
103+
net-protocol
104+
nio4r (2.7.3)
105+
nokogiri (1.16.6-arm64-darwin)
106+
racc (~> 1.4)
107+
racc (1.8.0)
108+
rack (2.2.9)
109+
rack-test (2.1.0)
110+
rack (>= 1.3)
111+
rails (6.1.4.7)
112+
actioncable (= 6.1.4.7)
113+
actionmailbox (= 6.1.4.7)
114+
actionmailer (= 6.1.4.7)
115+
actionpack (= 6.1.4.7)
116+
actiontext (= 6.1.4.7)
117+
actionview (= 6.1.4.7)
118+
activejob (= 6.1.4.7)
119+
activemodel (= 6.1.4.7)
120+
activerecord (= 6.1.4.7)
121+
activestorage (= 6.1.4.7)
122+
activesupport (= 6.1.4.7)
123+
bundler (>= 1.15.0)
124+
railties (= 6.1.4.7)
91125
sprockets-rails (>= 2.0.0)
92-
rails-dom-testing (2.0.3)
93-
activesupport (>= 4.2.0)
126+
rails-dom-testing (2.2.0)
127+
activesupport (>= 5.0.0)
128+
minitest
94129
nokogiri (>= 1.6)
95-
rails-html-sanitizer (1.0.4)
96-
loofah (~> 2.2, >= 2.2.2)
97-
railties (5.2.3)
98-
actionpack (= 5.2.3)
99-
activesupport (= 5.2.3)
130+
rails-html-sanitizer (1.6.0)
131+
loofah (~> 2.21)
132+
nokogiri (~> 1.14)
133+
railties (6.1.4.7)
134+
actionpack (= 6.1.4.7)
135+
activesupport (= 6.1.4.7)
100136
method_source
101-
rake (>= 0.8.7)
102-
thor (>= 0.19.0, < 2.0)
137+
rake (>= 0.13)
138+
thor (~> 1.0)
103139
rake (10.5.0)
104-
rspec (3.8.0)
105-
rspec-core (~> 3.8.0)
106-
rspec-expectations (~> 3.8.0)
107-
rspec-mocks (~> 3.8.0)
108-
rspec-core (3.8.1)
109-
rspec-support (~> 3.8.0)
110-
rspec-expectations (3.8.4)
140+
rspec (3.13.0)
141+
rspec-core (~> 3.13.0)
142+
rspec-expectations (~> 3.13.0)
143+
rspec-mocks (~> 3.13.0)
144+
rspec-core (3.13.0)
145+
rspec-support (~> 3.13.0)
146+
rspec-expectations (3.13.1)
111147
diff-lcs (>= 1.2.0, < 2.0)
112-
rspec-support (~> 3.8.0)
113-
rspec-mocks (3.8.1)
148+
rspec-support (~> 3.13.0)
149+
rspec-mocks (3.13.1)
114150
diff-lcs (>= 1.2.0, < 2.0)
115-
rspec-support (~> 3.8.0)
116-
rspec-support (3.8.2)
117-
sprockets (3.7.2)
151+
rspec-support (~> 3.13.0)
152+
rspec-support (3.13.1)
153+
sprockets (4.2.1)
118154
concurrent-ruby (~> 1.0)
119-
rack (> 1, < 3)
120-
sprockets-rails (3.2.1)
121-
actionpack (>= 4.0)
122-
activesupport (>= 4.0)
155+
rack (>= 2.2.4, < 4)
156+
sprockets-rails (3.5.1)
157+
actionpack (>= 6.1)
158+
activesupport (>= 6.1)
123159
sprockets (>= 3.0.0)
124-
thor (0.20.3)
125-
thread_safe (0.3.6)
126-
tzinfo (1.2.5)
127-
thread_safe (~> 0.1)
128-
websocket-driver (0.7.1)
160+
thor (1.3.1)
161+
timeout (0.4.1)
162+
tzinfo (2.0.6)
163+
concurrent-ruby (~> 1.0)
164+
websocket-driver (0.7.6)
129165
websocket-extensions (>= 0.1.0)
130-
websocket-extensions (0.1.4)
166+
websocket-extensions (0.1.5)
167+
zeitwerk (2.6.16)
131168

132169
PLATFORMS
133-
ruby
170+
arm64-darwin-23
134171

135172
DEPENDENCIES
136-
bundler (~> 2.0)
137-
rake (~> 10.0)
138-
rspec (~> 3.0)
173+
appraisal
174+
bundler
175+
rake (>= 10.0)
176+
rspec (>= 3.0)
139177
scan-suppressing-logger!
140178

141179
BUNDLED WITH
142-
2.0.1
180+
2.5.14

gemfiles/rails_6.1.gemfile

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,7 @@
1+
# This file was generated by Appraisal
2+
3+
source "https://rubygems.org"
4+
5+
gem "rails", "~> 6.1.0"
6+
7+
gemspec path: "../"

0 commit comments

Comments
 (0)