gemika 0.4.1 → 0.7.0
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 +4 -4
- data/.github/workflows/test.yml +112 -0
- data/.ruby-version +1 -1
- data/CHANGELOG.md +31 -4
- data/Gemfile.5.2.mysql2 +1 -1
- data/Gemfile.5.2.mysql2.lock +4 -4
- data/Gemfile.5.2.pg.lock +2 -2
- data/Gemfile.5.2.sqlite3.lock +2 -2
- data/{Gemfile.6.0.pg → Gemfile.6.1.pg} +2 -2
- data/{Gemfile.6.0.pg.lock → Gemfile.6.1.pg.lock} +21 -22
- data/{Gemfile.4.2.pg → Gemfile.7.0.pg} +3 -5
- data/Gemfile.7.0.pg.lock +64 -0
- data/README.md +77 -7
- data/lib/gemika/database.rb +2 -2
- data/lib/gemika/env.rb +9 -1
- data/lib/gemika/errors.rb +2 -0
- data/lib/gemika/github_actions_generator.rb +150 -0
- data/lib/gemika/matrix/github_actions_config.rb +61 -0
- data/lib/gemika/matrix/travis_config.rb +42 -0
- data/lib/gemika/matrix.rb +109 -42
- data/lib/gemika/tasks/gemika.rb +14 -0
- data/lib/gemika/tasks/matrix.rb +4 -4
- data/lib/gemika/tasks.rb +1 -0
- data/lib/gemika/version.rb +1 -1
- data/spec/fixtures/github_actions_yml/Gemfile_without_gemika +1 -0
- data/spec/fixtures/github_actions_yml/excludes.yml +13 -0
- data/spec/fixtures/github_actions_yml/gemfile_without_gemika.yml +8 -0
- data/spec/fixtures/github_actions_yml/includes.yml +20 -0
- data/spec/fixtures/github_actions_yml/invalid.yml +8 -0
- data/spec/fixtures/github_actions_yml/missing_gemfile.yml +8 -0
- data/spec/fixtures/github_actions_yml/multiple_jobs.yml +16 -0
- data/spec/fixtures/github_actions_yml/two_by_two.yml +10 -0
- data/spec/fixtures/migrate/expected_github_actions.yml +129 -0
- data/{.travis.yml → spec/fixtures/migrate/travis.yml} +1 -1
- data/spec/gemika/matrix/row_spec.rb +62 -0
- data/spec/gemika/matrix_spec.rb +100 -0
- data/spec/spec_helper.rb +5 -1
- data/spec/support/database.github.yml +13 -0
- metadata +24 -15
- data/Gemfile.2.3.mysql2 +0 -18
- data/Gemfile.2.3.mysql2.lock +0 -42
- data/Gemfile.3.2.mysql2 +0 -18
- data/Gemfile.3.2.mysql2.lock +0 -67
- data/Gemfile.4.2.mysql2 +0 -17
- data/Gemfile.4.2.mysql2.lock +0 -69
- data/Gemfile.4.2.pg.lock +0 -69
- data/spec/support/database.travis.yml +0 -9
@@ -0,0 +1,129 @@
|
|
1
|
+
name: Tests
|
2
|
+
'on':
|
3
|
+
push:
|
4
|
+
branches:
|
5
|
+
- master
|
6
|
+
pull_request:
|
7
|
+
branches:
|
8
|
+
- master
|
9
|
+
jobs:
|
10
|
+
test_mysql:
|
11
|
+
runs-on: ubuntu-20.04
|
12
|
+
services:
|
13
|
+
mysql:
|
14
|
+
image: mysql:5.6
|
15
|
+
env:
|
16
|
+
MYSQL_ROOT_PASSWORD: password
|
17
|
+
options: --health-cmd "mysqladmin ping" --health-interval 10s --health-timeout
|
18
|
+
5s --health-retries 5
|
19
|
+
ports:
|
20
|
+
- 3306:3306
|
21
|
+
strategy:
|
22
|
+
fail-fast: false
|
23
|
+
matrix:
|
24
|
+
include:
|
25
|
+
- ruby: 1.8.7
|
26
|
+
gemfile: Gemfile.2.3.mysql2
|
27
|
+
- ruby: 1.8.7
|
28
|
+
gemfile: Gemfile.3.2.mysql2
|
29
|
+
- ruby: 2.1.8
|
30
|
+
gemfile: Gemfile.3.2.mysql2
|
31
|
+
- ruby: 2.2.4
|
32
|
+
gemfile: Gemfile.3.2.mysql2
|
33
|
+
- ruby: 2.1.8
|
34
|
+
gemfile: Gemfile.4.2.mysql2
|
35
|
+
- ruby: 2.2.4
|
36
|
+
gemfile: Gemfile.4.2.mysql2
|
37
|
+
- ruby: 2.3.1
|
38
|
+
gemfile: Gemfile.4.2.mysql2
|
39
|
+
- ruby: 2.2.4
|
40
|
+
gemfile: Gemfile.5.2.mysql2
|
41
|
+
- ruby: 2.3.1
|
42
|
+
gemfile: Gemfile.5.2.mysql2
|
43
|
+
env:
|
44
|
+
BUNDLE_GEMFILE: "${{ matrix.gemfile }}"
|
45
|
+
steps:
|
46
|
+
- uses: actions/checkout@v2
|
47
|
+
- name: Install ruby
|
48
|
+
uses: ruby/setup-ruby@v1
|
49
|
+
with:
|
50
|
+
ruby-version: "${{ matrix.ruby }}"
|
51
|
+
- name: Setup database
|
52
|
+
run: |
|
53
|
+
sudo apt-get install -y mysql-client libmariadbclient-dev
|
54
|
+
mysql -e 'create database IF NOT EXISTS test;' -u root --password=password -P 3306 -h 127.0.0.1
|
55
|
+
- name: Bundle
|
56
|
+
run: |
|
57
|
+
gem install bundler:2.2.15
|
58
|
+
bundle install --no-deployment
|
59
|
+
- name: Run tests
|
60
|
+
run: bundle exec rspec
|
61
|
+
test_pg:
|
62
|
+
runs-on: ubuntu-20.04
|
63
|
+
services:
|
64
|
+
postgres:
|
65
|
+
image: postgres
|
66
|
+
env:
|
67
|
+
POSTGRES_PASSWORD: postgres
|
68
|
+
options: "--health-cmd pg_isready --health-interval 10s --health-timeout 5s
|
69
|
+
--health-retries 5"
|
70
|
+
ports:
|
71
|
+
- 5432:5432
|
72
|
+
strategy:
|
73
|
+
fail-fast: false
|
74
|
+
matrix:
|
75
|
+
include:
|
76
|
+
- ruby: 2.1.8
|
77
|
+
gemfile: Gemfile.4.2.pg
|
78
|
+
- ruby: 2.2.4
|
79
|
+
gemfile: Gemfile.4.2.pg
|
80
|
+
- ruby: 2.3.1
|
81
|
+
gemfile: Gemfile.4.2.pg
|
82
|
+
- ruby: 2.2.4
|
83
|
+
gemfile: Gemfile.5.2.pg
|
84
|
+
- ruby: 2.3.1
|
85
|
+
gemfile: Gemfile.5.2.pg
|
86
|
+
- ruby: 2.6.4
|
87
|
+
gemfile: Gemfile.6.1.pg
|
88
|
+
env:
|
89
|
+
BUNDLE_GEMFILE: "${{ matrix.gemfile }}"
|
90
|
+
steps:
|
91
|
+
- uses: actions/checkout@v2
|
92
|
+
- name: Install ruby
|
93
|
+
uses: ruby/setup-ruby@v1
|
94
|
+
with:
|
95
|
+
ruby-version: "${{ matrix.ruby }}"
|
96
|
+
- name: Setup database
|
97
|
+
run: |
|
98
|
+
sudo apt-get install -y postgresql-client
|
99
|
+
PGPASSWORD=postgres psql -c 'create database test;' -U postgres -p 5432 -h localhost
|
100
|
+
- name: Bundle
|
101
|
+
run: |
|
102
|
+
gem install bundler:2.2.15
|
103
|
+
bundle install --no-deployment
|
104
|
+
- name: Run tests
|
105
|
+
run: bundle exec rspec
|
106
|
+
test_sqlite:
|
107
|
+
runs-on: ubuntu-20.04
|
108
|
+
strategy:
|
109
|
+
fail-fast: false
|
110
|
+
matrix:
|
111
|
+
include:
|
112
|
+
- ruby: 2.2.4
|
113
|
+
gemfile: Gemfile.5.2.sqlite3
|
114
|
+
- ruby: 2.3.1
|
115
|
+
gemfile: Gemfile.5.2.sqlite3
|
116
|
+
env:
|
117
|
+
BUNDLE_GEMFILE: "${{ matrix.gemfile }}"
|
118
|
+
steps:
|
119
|
+
- uses: actions/checkout@v2
|
120
|
+
- name: Install ruby
|
121
|
+
uses: ruby/setup-ruby@v1
|
122
|
+
with:
|
123
|
+
ruby-version: "${{ matrix.ruby }}"
|
124
|
+
- name: Bundle
|
125
|
+
run: |
|
126
|
+
gem install bundler:2.2.15
|
127
|
+
bundle install --no-deployment
|
128
|
+
- name: Run tests
|
129
|
+
run: bundle exec rspec
|
@@ -0,0 +1,62 @@
|
|
1
|
+
require 'spec_helper'
|
2
|
+
|
3
|
+
describe Gemika::Matrix::Row do
|
4
|
+
|
5
|
+
let(:subject) { described_class.new(ruby: '3.0.3', gemfile: nil) }
|
6
|
+
|
7
|
+
describe '#compatible_with_ruby?' do
|
8
|
+
context 'when no rbenv alias is present' do
|
9
|
+
before { expect(subject).to receive(:rbenv_aliases).and_return('') }
|
10
|
+
|
11
|
+
context 'when the requested ruby version is the current ruby version' do
|
12
|
+
it 'returns true' do
|
13
|
+
expect(subject.compatible_with_ruby?('3.0.3')).to eq(true)
|
14
|
+
end
|
15
|
+
end
|
16
|
+
|
17
|
+
context 'when the requested ruby version is not the current ruby version' do
|
18
|
+
it 'returns false' do
|
19
|
+
expect(subject.compatible_with_ruby?('2.5.7')).to eq(false)
|
20
|
+
end
|
21
|
+
end
|
22
|
+
end
|
23
|
+
|
24
|
+
context 'when an rbenv alias is present' do
|
25
|
+
context 'when the current ruby version is an rbenv alias of the requested version' do
|
26
|
+
before { expect(subject).to receive(:rbenv_aliases).and_return('3.0.3 => 3.0.1') }
|
27
|
+
|
28
|
+
it 'returns true and stores that alias in the @used_ruby variable' do
|
29
|
+
expect(subject.compatible_with_ruby?('3.0.1')).to eq(true)
|
30
|
+
expect(subject.used_ruby).to eq('3.0.1')
|
31
|
+
expect(subject.ruby).to eq('3.0.3')
|
32
|
+
end
|
33
|
+
end
|
34
|
+
|
35
|
+
context 'when the requested ruby version is not aliased by rbenv' do
|
36
|
+
before { expect(subject).to receive(:rbenv_aliases).and_return('3.0.0 => 3.0.1') }
|
37
|
+
|
38
|
+
it 'returns true when the requested ruby version is the current ruby version' do
|
39
|
+
expect(subject.compatible_with_ruby?('3.0.3')).to eq(true)
|
40
|
+
expect(subject.used_ruby).to eq('3.0.3')
|
41
|
+
expect(subject.ruby).to eq('3.0.3')
|
42
|
+
end
|
43
|
+
|
44
|
+
it 'returns false when the requested ruby version is not the current ruby version' do
|
45
|
+
expect(subject.compatible_with_ruby?('3.0.4')).to eq(false)
|
46
|
+
expect(subject.used_ruby).to eq('3.0.3')
|
47
|
+
expect(subject.ruby).to eq('3.0.3')
|
48
|
+
end
|
49
|
+
end
|
50
|
+
end
|
51
|
+
|
52
|
+
context 'when multiple rbenv aliases chained result in aliasing the requested ruby version' do
|
53
|
+
before { expect(subject).to receive(:rbenv_aliases).and_return("3.0.3 => 3.0.2\n3.0.2 => 3.0.1\n3.0.1 => 3.0.0") }
|
54
|
+
|
55
|
+
it 'returns true' do
|
56
|
+
expect(subject.compatible_with_ruby?('3.0.0')).to eq(true)
|
57
|
+
end
|
58
|
+
end
|
59
|
+
|
60
|
+
end
|
61
|
+
|
62
|
+
end
|
data/spec/gemika/matrix_spec.rb
CHANGED
@@ -159,4 +159,104 @@ EOF
|
|
159
159
|
|
160
160
|
end
|
161
161
|
|
162
|
+
describe '.from_github_actions_yml' do
|
163
|
+
|
164
|
+
it 'builds a matrix by combining Ruby versions and gemfiles from a Github Actions workflow configuration file' do
|
165
|
+
path = 'spec/fixtures/github_actions_yml/two_by_two.yml'
|
166
|
+
matrix = Gemika::Matrix.from_github_actions_yml(:path => path, :validate => false)
|
167
|
+
matrix.rows.size.should == 4
|
168
|
+
matrix.rows[0].ruby.should == '2.1.8'
|
169
|
+
matrix.rows[0].gemfile.should == 'gemfiles/Gemfile1'
|
170
|
+
matrix.rows[1].ruby.should == '2.1.8'
|
171
|
+
matrix.rows[1].gemfile.should == 'gemfiles/Gemfile2'
|
172
|
+
matrix.rows[2].ruby.should == '2.3.1'
|
173
|
+
matrix.rows[2].gemfile.should == 'gemfiles/Gemfile1'
|
174
|
+
matrix.rows[3].ruby.should == '2.3.1'
|
175
|
+
matrix.rows[3].gemfile.should == 'gemfiles/Gemfile2'
|
176
|
+
end
|
177
|
+
|
178
|
+
it 'combines matrixes of multiple jobs' do
|
179
|
+
path = 'spec/fixtures/github_actions_yml/multiple_jobs.yml'
|
180
|
+
matrix = Gemika::Matrix.from_github_actions_yml(:path => path, :validate => false)
|
181
|
+
matrix.rows.size.should == 2
|
182
|
+
matrix.rows[0].ruby.should == '2.1.8'
|
183
|
+
matrix.rows[0].gemfile.should == 'gemfiles/Gemfile1'
|
184
|
+
matrix.rows[1].ruby.should == '2.3.1'
|
185
|
+
matrix.rows[1].gemfile.should == 'gemfiles/Gemfile2'
|
186
|
+
end
|
187
|
+
|
188
|
+
it 'allows to exclude rows from the matrix' do
|
189
|
+
path = 'spec/fixtures/github_actions_yml/excludes.yml'
|
190
|
+
matrix = Gemika::Matrix.from_github_actions_yml(:path => path, :validate => false)
|
191
|
+
matrix.rows.size.should == 3
|
192
|
+
matrix.rows[0].ruby.should == '2.1.8'
|
193
|
+
matrix.rows[0].gemfile.should == 'gemfiles/Gemfile2'
|
194
|
+
matrix.rows[1].ruby.should == '2.3.1'
|
195
|
+
matrix.rows[1].gemfile.should == 'gemfiles/Gemfile1'
|
196
|
+
matrix.rows[2].ruby.should == '2.3.1'
|
197
|
+
matrix.rows[2].gemfile.should == 'gemfiles/Gemfile2'
|
198
|
+
end
|
199
|
+
|
200
|
+
it 'allows to include rows to the matrix' do
|
201
|
+
path = 'spec/fixtures/github_actions_yml/includes.yml'
|
202
|
+
matrix = Gemika::Matrix.from_github_actions_yml(:path => path, :validate => false)
|
203
|
+
matrix.rows.size.should == 6
|
204
|
+
matrix.rows[0].ruby.should == '2.1.8'
|
205
|
+
matrix.rows[0].gemfile.should == 'gemfiles/Gemfile1'
|
206
|
+
matrix.rows[1].ruby.should == '2.1.8'
|
207
|
+
matrix.rows[1].gemfile.should == 'gemfiles/Gemfile2'
|
208
|
+
matrix.rows[2].ruby.should == '2.3.1'
|
209
|
+
matrix.rows[2].gemfile.should == 'gemfiles/Gemfile1'
|
210
|
+
matrix.rows[3].ruby.should == '2.3.1'
|
211
|
+
matrix.rows[3].gemfile.should == 'gemfiles/Gemfile2'
|
212
|
+
matrix.rows[4].ruby.should == '2.6.3'
|
213
|
+
matrix.rows[4].gemfile.should == 'gemfiles/Gemfile3'
|
214
|
+
matrix.rows[5].ruby.should == '2.7.1'
|
215
|
+
matrix.rows[5].gemfile.should == 'gemfiles/Gemfile3'
|
216
|
+
end
|
217
|
+
|
218
|
+
it 'complains about missing keys' do
|
219
|
+
path = 'spec/fixtures/github_actions_yml/invalid.yml'
|
220
|
+
expect { Gemika::Matrix.from_github_actions_yml(:path => path) }.to raise_error(Gemika::InvalidMatrixDefinition)
|
221
|
+
end
|
222
|
+
|
223
|
+
it 'raises an error if a Gemfile does not exist' do
|
224
|
+
path = 'spec/fixtures/github_actions_yml/missing_gemfile.yml'
|
225
|
+
expect { Gemika::Matrix.from_github_actions_yml(:path => path) }.to raise_error(Gemika::MissingGemfile, /gemfile not found/i)
|
226
|
+
end
|
227
|
+
|
228
|
+
it 'raises an error if a Gemfile does not depend on "gemika"' do
|
229
|
+
path = 'spec/fixtures/github_actions_yml/gemfile_without_gemika.yml'
|
230
|
+
expect { Gemika::Matrix.from_github_actions_yml(:path => path) }.to raise_error(Gemika::UnusableGemfile, /missing gemika dependency/i)
|
231
|
+
end
|
232
|
+
|
233
|
+
end
|
234
|
+
|
235
|
+
describe '.from_ci_config' do
|
236
|
+
it 'parses the .travis.yml if it exists' do
|
237
|
+
File.should_receive(:exists?).with('.travis.yml').and_return(true)
|
238
|
+
Gemika::Matrix.should_receive(:from_travis_yml).and_return('travis matrix')
|
239
|
+
Gemika::Matrix.from_ci_config.should == 'travis matrix'
|
240
|
+
end
|
241
|
+
|
242
|
+
it 'parses the .github/workflows/test.yml if it exists' do
|
243
|
+
File.should_receive(:exists?).with('.travis.yml').and_return(false)
|
244
|
+
File.should_receive(:exists?).with('.github/workflows/test.yml').and_return(true)
|
245
|
+
Gemika::Matrix.should_receive(:from_github_actions_yml).and_return('github matrix')
|
246
|
+
Gemika::Matrix.from_ci_config.should == 'github matrix'
|
247
|
+
end
|
248
|
+
|
249
|
+
it 'raises an error if no ci definition exists' do
|
250
|
+
File.should_receive(:exists?).with('.travis.yml').and_return(false)
|
251
|
+
File.should_receive(:exists?).with('.github/workflows/test.yml').and_return(false)
|
252
|
+
expect { Gemika::Matrix.from_ci_config }.to raise_error(Gemika::MissingMatrixDefinition)
|
253
|
+
end
|
254
|
+
end
|
255
|
+
|
256
|
+
describe '.generate_github_actions_workflow' do
|
257
|
+
github_actions_workflow = Gemika::Matrix.generate_github_actions_workflow(path: 'spec/fixtures/migrate/travis.yml')
|
258
|
+
expected_github_actions_workflow = YAML.load_file('spec/fixtures/migrate/expected_github_actions.yml')
|
259
|
+
github_actions_workflow.should == expected_github_actions_workflow
|
260
|
+
end
|
261
|
+
|
162
262
|
end
|
data/spec/spec_helper.rb
CHANGED
@@ -4,7 +4,11 @@ require 'active_record'
|
|
4
4
|
require 'gemika'
|
5
5
|
require 'pry'
|
6
6
|
|
7
|
-
|
7
|
+
if Gemika::Env.gem?('activerecord', '>= 7.0')
|
8
|
+
ActiveRecord.default_timezone = :local
|
9
|
+
else
|
10
|
+
ActiveRecord::Base.default_timezone = :local
|
11
|
+
end
|
8
12
|
|
9
13
|
Dir["#{File.dirname(__FILE__)}/support/*.rb"].sort.each {|f| require f}
|
10
14
|
Dir["#{File.dirname(__FILE__)}/shared_examples/*.rb"].sort.each {|f| require f}
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: gemika
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.
|
4
|
+
version: 0.7.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Henning Koch
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date:
|
11
|
+
date: 2022-01-26 00:00:00.000000000 Z
|
12
12
|
dependencies: []
|
13
13
|
description: Helpers for testing Ruby gems
|
14
14
|
email: henning.koch@makandra.de
|
@@ -16,28 +16,22 @@ executables: []
|
|
16
16
|
extensions: []
|
17
17
|
extra_rdoc_files: []
|
18
18
|
files:
|
19
|
+
- ".github/workflows/test.yml"
|
19
20
|
- ".gitignore"
|
20
21
|
- ".rspec"
|
21
22
|
- ".ruby-version"
|
22
|
-
- ".travis.yml"
|
23
23
|
- ".yardopts"
|
24
24
|
- CHANGELOG.md
|
25
|
-
- Gemfile.2.3.mysql2
|
26
|
-
- Gemfile.2.3.mysql2.lock
|
27
|
-
- Gemfile.3.2.mysql2
|
28
|
-
- Gemfile.3.2.mysql2.lock
|
29
|
-
- Gemfile.4.2.mysql2
|
30
|
-
- Gemfile.4.2.mysql2.lock
|
31
|
-
- Gemfile.4.2.pg
|
32
|
-
- Gemfile.4.2.pg.lock
|
33
25
|
- Gemfile.5.2.mysql2
|
34
26
|
- Gemfile.5.2.mysql2.lock
|
35
27
|
- Gemfile.5.2.pg
|
36
28
|
- Gemfile.5.2.pg.lock
|
37
29
|
- Gemfile.5.2.sqlite3
|
38
30
|
- Gemfile.5.2.sqlite3.lock
|
39
|
-
- Gemfile.6.
|
40
|
-
- Gemfile.6.
|
31
|
+
- Gemfile.6.1.pg
|
32
|
+
- Gemfile.6.1.pg.lock
|
33
|
+
- Gemfile.7.0.pg
|
34
|
+
- Gemfile.7.0.pg.lock
|
41
35
|
- LICENSE
|
42
36
|
- README.md
|
43
37
|
- Rakefile
|
@@ -47,14 +41,28 @@ files:
|
|
47
41
|
- lib/gemika/database.rb
|
48
42
|
- lib/gemika/env.rb
|
49
43
|
- lib/gemika/errors.rb
|
44
|
+
- lib/gemika/github_actions_generator.rb
|
50
45
|
- lib/gemika/matrix.rb
|
46
|
+
- lib/gemika/matrix/github_actions_config.rb
|
47
|
+
- lib/gemika/matrix/travis_config.rb
|
51
48
|
- lib/gemika/rspec.rb
|
52
49
|
- lib/gemika/tasks.rb
|
50
|
+
- lib/gemika/tasks/gemika.rb
|
53
51
|
- lib/gemika/tasks/matrix.rb
|
54
52
|
- lib/gemika/tasks/rspec.rb
|
55
53
|
- lib/gemika/version.rb
|
56
54
|
- spec/fixtures/gemfiles/Gemfile_with_activesupport_5
|
57
55
|
- spec/fixtures/gemfiles/Gemfile_with_activesupport_5.lock
|
56
|
+
- spec/fixtures/github_actions_yml/Gemfile_without_gemika
|
57
|
+
- spec/fixtures/github_actions_yml/excludes.yml
|
58
|
+
- spec/fixtures/github_actions_yml/gemfile_without_gemika.yml
|
59
|
+
- spec/fixtures/github_actions_yml/includes.yml
|
60
|
+
- spec/fixtures/github_actions_yml/invalid.yml
|
61
|
+
- spec/fixtures/github_actions_yml/missing_gemfile.yml
|
62
|
+
- spec/fixtures/github_actions_yml/multiple_jobs.yml
|
63
|
+
- spec/fixtures/github_actions_yml/two_by_two.yml
|
64
|
+
- spec/fixtures/migrate/expected_github_actions.yml
|
65
|
+
- spec/fixtures/migrate/travis.yml
|
58
66
|
- spec/fixtures/travis_yml/Gemfile_without_gemika
|
59
67
|
- spec/fixtures/travis_yml/excludes.yml
|
60
68
|
- spec/fixtures/travis_yml/gemfile_without_gemika.yml
|
@@ -63,12 +71,13 @@ files:
|
|
63
71
|
- spec/fixtures/travis_yml/two_by_two.yml
|
64
72
|
- spec/gemika/database_spec.rb
|
65
73
|
- spec/gemika/env_spec.rb
|
74
|
+
- spec/gemika/matrix/row_spec.rb
|
66
75
|
- spec/gemika/matrix_spec.rb
|
67
76
|
- spec/gemika/rspec_spec.rb
|
68
77
|
- spec/spec_helper.rb
|
78
|
+
- spec/support/database.github.yml
|
69
79
|
- spec/support/database.rb
|
70
80
|
- spec/support/database.sample.yml
|
71
|
-
- spec/support/database.travis.yml
|
72
81
|
- spec/support/models.rb
|
73
82
|
homepage: https://github.com/makandra/gemika
|
74
83
|
licenses:
|
@@ -89,7 +98,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
89
98
|
- !ruby/object:Gem::Version
|
90
99
|
version: '0'
|
91
100
|
requirements: []
|
92
|
-
rubygems_version: 3.
|
101
|
+
rubygems_version: 3.2.32
|
93
102
|
signing_key:
|
94
103
|
specification_version: 4
|
95
104
|
summary: Helpers for testing Ruby gems
|
data/Gemfile.2.3.mysql2
DELETED
@@ -1,18 +0,0 @@
|
|
1
|
-
source 'https://rubygems.org'
|
2
|
-
|
3
|
-
# Ruby
|
4
|
-
ruby '< 2'
|
5
|
-
|
6
|
-
# Runtime dependencies
|
7
|
-
gem 'activerecord', '=2.3.18'
|
8
|
-
gem 'rspec', '~> 1.3.0'
|
9
|
-
gem 'mysql2', '= 0.2.20'
|
10
|
-
gem 'i18n', '=0.6.11' # 0.7 no longer builds for Ruby 1.8.7
|
11
|
-
|
12
|
-
# Development dependencies
|
13
|
-
gem 'rake', '=10.0.4'
|
14
|
-
gem 'database_cleaner'
|
15
|
-
gem 'pry'
|
16
|
-
|
17
|
-
# Gem under test
|
18
|
-
gem 'gemika', :path => '.'
|
data/Gemfile.2.3.mysql2.lock
DELETED
@@ -1,42 +0,0 @@
|
|
1
|
-
PATH
|
2
|
-
remote: .
|
3
|
-
specs:
|
4
|
-
gemika (0.4.1)
|
5
|
-
|
6
|
-
GEM
|
7
|
-
remote: https://rubygems.org/
|
8
|
-
specs:
|
9
|
-
activerecord (2.3.18)
|
10
|
-
activesupport (= 2.3.18)
|
11
|
-
activesupport (2.3.18)
|
12
|
-
coderay (1.1.2)
|
13
|
-
database_cleaner (1.0.1)
|
14
|
-
i18n (0.6.11)
|
15
|
-
method_source (0.9.2)
|
16
|
-
mysql2 (0.2.20)
|
17
|
-
pry (0.9.12.6)
|
18
|
-
coderay (~> 1.0)
|
19
|
-
method_source (~> 0.8)
|
20
|
-
slop (~> 3.4)
|
21
|
-
rake (10.0.4)
|
22
|
-
rspec (1.3.2)
|
23
|
-
slop (3.6.0)
|
24
|
-
|
25
|
-
PLATFORMS
|
26
|
-
ruby
|
27
|
-
|
28
|
-
DEPENDENCIES
|
29
|
-
activerecord (= 2.3.18)
|
30
|
-
database_cleaner
|
31
|
-
gemika!
|
32
|
-
i18n (= 0.6.11)
|
33
|
-
mysql2 (= 0.2.20)
|
34
|
-
pry
|
35
|
-
rake (= 10.0.4)
|
36
|
-
rspec (~> 1.3.0)
|
37
|
-
|
38
|
-
RUBY VERSION
|
39
|
-
ruby 1.8.7p375
|
40
|
-
|
41
|
-
BUNDLED WITH
|
42
|
-
1.17.3
|
data/Gemfile.3.2.mysql2
DELETED
@@ -1,18 +0,0 @@
|
|
1
|
-
source 'https://rubygems.org'
|
2
|
-
|
3
|
-
# Ruby
|
4
|
-
ruby '< 2.3'
|
5
|
-
|
6
|
-
# Runtime dependencies
|
7
|
-
gem 'activerecord', '=3.2.22'
|
8
|
-
gem 'rspec', '~> 3.4'
|
9
|
-
gem 'mysql2', '= 0.3.17'
|
10
|
-
gem 'i18n', '=0.6.11' # 0.7 no longer builds for Ruby 1.8.7
|
11
|
-
|
12
|
-
# Development dependencies
|
13
|
-
gem 'rake', '=10.0.4'
|
14
|
-
gem 'database_cleaner', '~>1.0.0'
|
15
|
-
gem 'pry'
|
16
|
-
|
17
|
-
# Gem under test
|
18
|
-
gem 'gemika', :path => '.'
|
data/Gemfile.3.2.mysql2.lock
DELETED
@@ -1,67 +0,0 @@
|
|
1
|
-
PATH
|
2
|
-
remote: .
|
3
|
-
specs:
|
4
|
-
gemika (0.4.1)
|
5
|
-
|
6
|
-
GEM
|
7
|
-
remote: https://rubygems.org/
|
8
|
-
specs:
|
9
|
-
activemodel (3.2.22)
|
10
|
-
activesupport (= 3.2.22)
|
11
|
-
builder (~> 3.0.0)
|
12
|
-
activerecord (3.2.22)
|
13
|
-
activemodel (= 3.2.22)
|
14
|
-
activesupport (= 3.2.22)
|
15
|
-
arel (~> 3.0.2)
|
16
|
-
tzinfo (~> 0.3.29)
|
17
|
-
activesupport (3.2.22)
|
18
|
-
i18n (~> 0.6, >= 0.6.4)
|
19
|
-
multi_json (~> 1.0)
|
20
|
-
arel (3.0.3)
|
21
|
-
builder (3.0.4)
|
22
|
-
coderay (1.1.2)
|
23
|
-
database_cleaner (1.0.1)
|
24
|
-
diff-lcs (1.2.5)
|
25
|
-
i18n (0.6.11)
|
26
|
-
method_source (0.9.2)
|
27
|
-
multi_json (1.12.1)
|
28
|
-
mysql2 (0.3.17)
|
29
|
-
pry (0.9.12.6)
|
30
|
-
coderay (~> 1.0)
|
31
|
-
method_source (~> 0.8)
|
32
|
-
slop (~> 3.4)
|
33
|
-
rake (10.0.4)
|
34
|
-
rspec (3.5.0)
|
35
|
-
rspec-core (~> 3.5.0)
|
36
|
-
rspec-expectations (~> 3.5.0)
|
37
|
-
rspec-mocks (~> 3.5.0)
|
38
|
-
rspec-core (3.5.3)
|
39
|
-
rspec-support (~> 3.5.0)
|
40
|
-
rspec-expectations (3.5.0)
|
41
|
-
diff-lcs (>= 1.2.0, < 2.0)
|
42
|
-
rspec-support (~> 3.5.0)
|
43
|
-
rspec-mocks (3.5.0)
|
44
|
-
diff-lcs (>= 1.2.0, < 2.0)
|
45
|
-
rspec-support (~> 3.5.0)
|
46
|
-
rspec-support (3.5.0)
|
47
|
-
slop (3.6.0)
|
48
|
-
tzinfo (0.3.51)
|
49
|
-
|
50
|
-
PLATFORMS
|
51
|
-
ruby
|
52
|
-
|
53
|
-
DEPENDENCIES
|
54
|
-
activerecord (= 3.2.22)
|
55
|
-
database_cleaner (~> 1.0.0)
|
56
|
-
gemika!
|
57
|
-
i18n (= 0.6.11)
|
58
|
-
mysql2 (= 0.3.17)
|
59
|
-
pry
|
60
|
-
rake (= 10.0.4)
|
61
|
-
rspec (~> 3.4)
|
62
|
-
|
63
|
-
RUBY VERSION
|
64
|
-
ruby 1.8.7p375
|
65
|
-
|
66
|
-
BUNDLED WITH
|
67
|
-
1.17.3
|
data/Gemfile.4.2.mysql2
DELETED
@@ -1,17 +0,0 @@
|
|
1
|
-
source 'https://rubygems.org'
|
2
|
-
|
3
|
-
# Ruby
|
4
|
-
ruby '>= 1.9.3'
|
5
|
-
|
6
|
-
# Runtime dependencies
|
7
|
-
gem 'activerecord', '~>4.2.1'
|
8
|
-
gem 'rspec', '~>3.4'
|
9
|
-
gem 'mysql2', '~> 0.3.17'
|
10
|
-
|
11
|
-
# Development dependencies
|
12
|
-
gem 'rake'
|
13
|
-
gem 'database_cleaner'
|
14
|
-
gem 'pry'
|
15
|
-
|
16
|
-
# Gem under test
|
17
|
-
gem 'gemika', :path => '.'
|
data/Gemfile.4.2.mysql2.lock
DELETED
@@ -1,69 +0,0 @@
|
|
1
|
-
PATH
|
2
|
-
remote: .
|
3
|
-
specs:
|
4
|
-
gemika (0.4.1)
|
5
|
-
|
6
|
-
GEM
|
7
|
-
remote: https://rubygems.org/
|
8
|
-
specs:
|
9
|
-
activemodel (4.2.7.1)
|
10
|
-
activesupport (= 4.2.7.1)
|
11
|
-
builder (~> 3.1)
|
12
|
-
activerecord (4.2.7.1)
|
13
|
-
activemodel (= 4.2.7.1)
|
14
|
-
activesupport (= 4.2.7.1)
|
15
|
-
arel (~> 6.0)
|
16
|
-
activesupport (4.2.7.1)
|
17
|
-
i18n (~> 0.7)
|
18
|
-
json (~> 1.7, >= 1.7.7)
|
19
|
-
minitest (~> 5.1)
|
20
|
-
thread_safe (~> 0.3, >= 0.3.4)
|
21
|
-
tzinfo (~> 1.1)
|
22
|
-
arel (6.0.3)
|
23
|
-
builder (3.2.2)
|
24
|
-
coderay (1.1.2)
|
25
|
-
database_cleaner (1.5.3)
|
26
|
-
diff-lcs (1.2.5)
|
27
|
-
i18n (0.7.0)
|
28
|
-
json (1.8.3)
|
29
|
-
method_source (0.9.2)
|
30
|
-
minitest (5.9.0)
|
31
|
-
mysql2 (0.3.21)
|
32
|
-
pry (0.12.2)
|
33
|
-
coderay (~> 1.1.0)
|
34
|
-
method_source (~> 0.9.0)
|
35
|
-
rake (11.3.0)
|
36
|
-
rspec (3.5.0)
|
37
|
-
rspec-core (~> 3.5.0)
|
38
|
-
rspec-expectations (~> 3.5.0)
|
39
|
-
rspec-mocks (~> 3.5.0)
|
40
|
-
rspec-core (3.5.3)
|
41
|
-
rspec-support (~> 3.5.0)
|
42
|
-
rspec-expectations (3.5.0)
|
43
|
-
diff-lcs (>= 1.2.0, < 2.0)
|
44
|
-
rspec-support (~> 3.5.0)
|
45
|
-
rspec-mocks (3.5.0)
|
46
|
-
diff-lcs (>= 1.2.0, < 2.0)
|
47
|
-
rspec-support (~> 3.5.0)
|
48
|
-
rspec-support (3.5.0)
|
49
|
-
thread_safe (0.3.5)
|
50
|
-
tzinfo (1.2.2)
|
51
|
-
thread_safe (~> 0.1)
|
52
|
-
|
53
|
-
PLATFORMS
|
54
|
-
ruby
|
55
|
-
|
56
|
-
DEPENDENCIES
|
57
|
-
activerecord (~> 4.2.1)
|
58
|
-
database_cleaner
|
59
|
-
gemika!
|
60
|
-
mysql2 (~> 0.3.17)
|
61
|
-
pry
|
62
|
-
rake
|
63
|
-
rspec (~> 3.4)
|
64
|
-
|
65
|
-
RUBY VERSION
|
66
|
-
ruby 2.2.4p230
|
67
|
-
|
68
|
-
BUNDLED WITH
|
69
|
-
1.17.3
|