assignable_values 0.16.5 → 0.16.6
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 +9 -19
- data/.ruby-version +1 -1
- data/CHANGELOG.md +14 -0
- data/Gemfile +1 -1
- 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 → Gemfile.7.0.pg} +4 -4
- data/Gemfile.7.0.pg.lock +65 -0
- data/Gemfile.lock +1 -1
- data/README.md +1 -1
- data/assignable_values.gemspec +8 -0
- data/lib/assignable_values/version.rb +1 -1
- data/spec/assignable_values/active_record_spec.rb +17 -3
- metadata +11 -8
- data/Gemfile.4.2.lock +0 -70
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
SHA256:
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
3
|
+
metadata.gz: 5b8661c6374664b624b4fd0a3e54529ac3783fff619a7d846b9c2836e8839608
|
|
4
|
+
data.tar.gz: 2c72259b1eee2a767778975f95a6ac4f08ed02bbda8056426d7e7bca19e004da
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: 774ebe2bd0bbee83b66ab01a4a8358068c86688a543fdaea24b8f54220b7b9533de93d163c8d263a35dd33e6cd5855f9eeb4132e9b83a1e2d71f6fbb5bb647ce
|
|
7
|
+
data.tar.gz: 1a7e51073af59fe8bcaf86537de1ba7d7c33fd116f5573c0a171915cc00ad975b16062d1e327caeee7f38afc21baee695dbd2a8e7cf09d573d0512f80201be65
|
data/.github/workflows/test.yml
CHANGED
|
@@ -26,16 +26,6 @@ jobs:
|
|
|
26
26
|
fail-fast: false
|
|
27
27
|
matrix:
|
|
28
28
|
include:
|
|
29
|
-
- ruby: 2.3.8
|
|
30
|
-
gemfile: Gemfile.4.2
|
|
31
|
-
- ruby: 2.3.8
|
|
32
|
-
gemfile: Gemfile.5.0
|
|
33
|
-
- ruby: 2.3.8
|
|
34
|
-
gemfile: Gemfile.5.1
|
|
35
|
-
- ruby: 2.4.2
|
|
36
|
-
gemfile: Gemfile.5.0
|
|
37
|
-
- ruby: 2.4.2
|
|
38
|
-
gemfile: Gemfile.5.1
|
|
39
29
|
- ruby: 2.5.3
|
|
40
30
|
gemfile: Gemfile.5.0
|
|
41
31
|
- ruby: 2.5.3
|
|
@@ -48,10 +38,6 @@ jobs:
|
|
|
48
38
|
uses: ruby/setup-ruby@v1
|
|
49
39
|
with:
|
|
50
40
|
ruby-version: "${{ matrix.ruby }}"
|
|
51
|
-
- name: Install database client
|
|
52
|
-
run: |
|
|
53
|
-
sudo apt-get update
|
|
54
|
-
sudo apt-get install -y mysql-client libmariadbclient-dev
|
|
55
41
|
- name: Bundle
|
|
56
42
|
run: |
|
|
57
43
|
gem install bundler:2.1.4
|
|
@@ -76,14 +62,18 @@ jobs:
|
|
|
76
62
|
fail-fast: false
|
|
77
63
|
matrix:
|
|
78
64
|
include:
|
|
79
|
-
- ruby: 2.3.8
|
|
80
|
-
gemfile: Gemfile.5.1.pg
|
|
81
|
-
- ruby: 2.4.2
|
|
82
|
-
gemfile: Gemfile.5.1.pg
|
|
83
65
|
- ruby: 2.5.3
|
|
84
66
|
gemfile: Gemfile.5.1.pg
|
|
85
67
|
- ruby: 2.5.3
|
|
86
|
-
gemfile: Gemfile.6.
|
|
68
|
+
gemfile: Gemfile.6.1.pg
|
|
69
|
+
- ruby: 2.7.3
|
|
70
|
+
gemfile: Gemfile.6.1.pg
|
|
71
|
+
- ruby: 2.7.3
|
|
72
|
+
gemfile: Gemfile.7.0.pg
|
|
73
|
+
- ruby: 3.0.1
|
|
74
|
+
gemfile: Gemfile.6.1.pg
|
|
75
|
+
- ruby: 3.0.1
|
|
76
|
+
gemfile: Gemfile.7.0.pg
|
|
87
77
|
env:
|
|
88
78
|
BUNDLE_GEMFILE: "${{ matrix.gemfile }}"
|
|
89
79
|
steps:
|
data/.ruby-version
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
|
|
1
|
+
3.0.1
|
data/CHANGELOG.md
CHANGED
|
@@ -6,8 +6,22 @@ This project adheres to [Semantic Versioning](http://semver.org/spec/v2.0.0.html
|
|
|
6
6
|
|
|
7
7
|
### Breaking changes
|
|
8
8
|
|
|
9
|
+
-
|
|
10
|
+
|
|
9
11
|
### Compatible changes
|
|
10
12
|
|
|
13
|
+
-
|
|
14
|
+
|
|
15
|
+
## 0.16.6 - 2022-03-16
|
|
16
|
+
|
|
17
|
+
### Breaking changes
|
|
18
|
+
|
|
19
|
+
- Remove no longer supported ruby versions (2.3.8, 2.4.2)
|
|
20
|
+
|
|
21
|
+
### Compatible changes
|
|
22
|
+
|
|
23
|
+
- test against ActiveRecord 7.0
|
|
24
|
+
|
|
11
25
|
## 0.16.5 - 2021-01-10
|
|
12
26
|
|
|
13
27
|
### Compatible changes
|
data/Gemfile
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
./Gemfile.
|
|
1
|
+
./Gemfile.7.0.pg
|
|
@@ -1,31 +1,31 @@
|
|
|
1
1
|
PATH
|
|
2
2
|
remote: .
|
|
3
3
|
specs:
|
|
4
|
-
assignable_values (0.16.
|
|
4
|
+
assignable_values (0.16.5)
|
|
5
5
|
activerecord (>= 2.3)
|
|
6
6
|
|
|
7
7
|
GEM
|
|
8
8
|
remote: https://rubygems.org/
|
|
9
9
|
specs:
|
|
10
|
-
activemodel (6.
|
|
11
|
-
activesupport (= 6.
|
|
12
|
-
activerecord (6.
|
|
13
|
-
activemodel (= 6.
|
|
14
|
-
activesupport (= 6.
|
|
15
|
-
activesupport (6.
|
|
10
|
+
activemodel (6.1.3.2)
|
|
11
|
+
activesupport (= 6.1.3.2)
|
|
12
|
+
activerecord (6.1.3.2)
|
|
13
|
+
activemodel (= 6.1.3.2)
|
|
14
|
+
activesupport (= 6.1.3.2)
|
|
15
|
+
activesupport (6.1.3.2)
|
|
16
16
|
concurrent-ruby (~> 1.0, >= 1.0.2)
|
|
17
|
-
i18n (>=
|
|
18
|
-
minitest (
|
|
19
|
-
tzinfo (~>
|
|
20
|
-
zeitwerk (~> 2.
|
|
17
|
+
i18n (>= 1.6, < 2)
|
|
18
|
+
minitest (>= 5.1)
|
|
19
|
+
tzinfo (~> 2.0)
|
|
20
|
+
zeitwerk (~> 2.3)
|
|
21
21
|
concurrent-ruby (1.1.5)
|
|
22
22
|
database_cleaner (1.7.0)
|
|
23
23
|
diff-lcs (1.3)
|
|
24
|
-
gemika (0.
|
|
24
|
+
gemika (0.5.0)
|
|
25
25
|
i18n (1.6.0)
|
|
26
26
|
concurrent-ruby (~> 1.0)
|
|
27
|
-
minitest (5.
|
|
28
|
-
pg (
|
|
27
|
+
minitest (5.14.4)
|
|
28
|
+
pg (1.1.0)
|
|
29
29
|
rake (12.3.2)
|
|
30
30
|
rspec (3.8.0)
|
|
31
31
|
rspec-core (~> 3.8.0)
|
|
@@ -45,24 +45,23 @@ GEM
|
|
|
45
45
|
sneaky-save
|
|
46
46
|
sneaky-save (0.1.3)
|
|
47
47
|
activerecord (>= 3.2.0)
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
zeitwerk (2.1.9)
|
|
48
|
+
tzinfo (2.0.4)
|
|
49
|
+
concurrent-ruby (~> 1.0)
|
|
50
|
+
zeitwerk (2.4.2)
|
|
52
51
|
|
|
53
52
|
PLATFORMS
|
|
54
53
|
ruby
|
|
55
54
|
|
|
56
55
|
DEPENDENCIES
|
|
57
|
-
activerecord (~> 6.
|
|
56
|
+
activerecord (~> 6.1.3)
|
|
58
57
|
assignable_values!
|
|
59
58
|
database_cleaner
|
|
60
|
-
gemika
|
|
59
|
+
gemika (>= 0.5.0)
|
|
61
60
|
i18n
|
|
62
|
-
pg (
|
|
61
|
+
pg (= 1.1)
|
|
63
62
|
rake
|
|
64
63
|
rspec
|
|
65
64
|
rspec_candy
|
|
66
65
|
|
|
67
66
|
BUNDLED WITH
|
|
68
|
-
|
|
67
|
+
2.2.15
|
|
@@ -1,14 +1,14 @@
|
|
|
1
1
|
source 'https://rubygems.org'
|
|
2
2
|
|
|
3
3
|
# Runtime dependencies
|
|
4
|
-
gem 'activerecord', '~>
|
|
5
|
-
gem 'i18n'
|
|
6
|
-
gem '
|
|
4
|
+
gem 'activerecord', '~>7.0.0'
|
|
5
|
+
gem 'i18n'
|
|
6
|
+
gem 'pg', '1.1'
|
|
7
7
|
|
|
8
8
|
# Development dependencies
|
|
9
9
|
gem 'rake'
|
|
10
10
|
gem 'database_cleaner'
|
|
11
|
-
gem 'rspec'
|
|
11
|
+
gem 'rspec'
|
|
12
12
|
gem 'rspec_candy'
|
|
13
13
|
gem 'gemika', '>= 0.5.0'
|
|
14
14
|
|
data/Gemfile.7.0.pg.lock
ADDED
|
@@ -0,0 +1,65 @@
|
|
|
1
|
+
PATH
|
|
2
|
+
remote: .
|
|
3
|
+
specs:
|
|
4
|
+
assignable_values (0.16.6)
|
|
5
|
+
activerecord (>= 2.3)
|
|
6
|
+
|
|
7
|
+
GEM
|
|
8
|
+
remote: https://rubygems.org/
|
|
9
|
+
specs:
|
|
10
|
+
activemodel (7.0.0)
|
|
11
|
+
activesupport (= 7.0.0)
|
|
12
|
+
activerecord (7.0.0)
|
|
13
|
+
activemodel (= 7.0.0)
|
|
14
|
+
activesupport (= 7.0.0)
|
|
15
|
+
activesupport (7.0.0)
|
|
16
|
+
concurrent-ruby (~> 1.0, >= 1.0.2)
|
|
17
|
+
i18n (>= 1.6, < 2)
|
|
18
|
+
minitest (>= 5.1)
|
|
19
|
+
tzinfo (~> 2.0)
|
|
20
|
+
concurrent-ruby (1.1.5)
|
|
21
|
+
database_cleaner (1.7.0)
|
|
22
|
+
diff-lcs (1.3)
|
|
23
|
+
gemika (0.5.0)
|
|
24
|
+
i18n (1.6.0)
|
|
25
|
+
concurrent-ruby (~> 1.0)
|
|
26
|
+
minitest (5.15.0)
|
|
27
|
+
pg (1.1.0)
|
|
28
|
+
rake (12.3.2)
|
|
29
|
+
rspec (3.8.0)
|
|
30
|
+
rspec-core (~> 3.8.0)
|
|
31
|
+
rspec-expectations (~> 3.8.0)
|
|
32
|
+
rspec-mocks (~> 3.8.0)
|
|
33
|
+
rspec-core (3.8.0)
|
|
34
|
+
rspec-support (~> 3.8.0)
|
|
35
|
+
rspec-expectations (3.8.2)
|
|
36
|
+
diff-lcs (>= 1.2.0, < 2.0)
|
|
37
|
+
rspec-support (~> 3.8.0)
|
|
38
|
+
rspec-mocks (3.8.0)
|
|
39
|
+
diff-lcs (>= 1.2.0, < 2.0)
|
|
40
|
+
rspec-support (~> 3.8.0)
|
|
41
|
+
rspec-support (3.8.0)
|
|
42
|
+
rspec_candy (0.5.1)
|
|
43
|
+
rspec
|
|
44
|
+
sneaky-save
|
|
45
|
+
sneaky-save (0.1.3)
|
|
46
|
+
activerecord (>= 3.2.0)
|
|
47
|
+
tzinfo (2.0.4)
|
|
48
|
+
concurrent-ruby (~> 1.0)
|
|
49
|
+
|
|
50
|
+
PLATFORMS
|
|
51
|
+
ruby
|
|
52
|
+
|
|
53
|
+
DEPENDENCIES
|
|
54
|
+
activerecord (~> 7.0.0)
|
|
55
|
+
assignable_values!
|
|
56
|
+
database_cleaner
|
|
57
|
+
gemika (>= 0.5.0)
|
|
58
|
+
i18n
|
|
59
|
+
pg (= 1.1)
|
|
60
|
+
rake
|
|
61
|
+
rspec
|
|
62
|
+
rspec_candy
|
|
63
|
+
|
|
64
|
+
BUNDLED WITH
|
|
65
|
+
2.2.15
|
data/Gemfile.lock
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
./Gemfile.
|
|
1
|
+
./Gemfile.7.0.pg.lock
|
data/README.md
CHANGED
|
@@ -5,7 +5,7 @@ assignable_values - Enums on vitamins [
|
|
15
23
|
s.test_files = s.files.grep(%r{^spec/})
|
|
16
24
|
s.require_paths = ["lib"]
|
|
@@ -53,6 +53,20 @@ describe AssignableValues::ActiveRecord do
|
|
|
53
53
|
|
|
54
54
|
end
|
|
55
55
|
|
|
56
|
+
context 'when the options are passed as a hash' do
|
|
57
|
+
before :each do
|
|
58
|
+
@klass = Song.disposable_copy do
|
|
59
|
+
assignable_values_for(:virtual_multi_genres, { :multiple => true, :allow_blank => true }) do
|
|
60
|
+
%w[pop rock]
|
|
61
|
+
end
|
|
62
|
+
end
|
|
63
|
+
end
|
|
64
|
+
|
|
65
|
+
it 'should not raise an error' do
|
|
66
|
+
@klass.new(:virtual_multi_genres => ['rock']).should be_valid
|
|
67
|
+
end
|
|
68
|
+
end
|
|
69
|
+
|
|
56
70
|
context 'when validating virtual attributes with multiple: true' do
|
|
57
71
|
|
|
58
72
|
context 'with allow_blank: false' do
|
|
@@ -122,7 +136,7 @@ describe AssignableValues::ActiveRecord do
|
|
|
122
136
|
record = @klass.new(:genre => 'disallowed value')
|
|
123
137
|
record.valid?
|
|
124
138
|
errors = record.errors[:genre]
|
|
125
|
-
error = errors.
|
|
139
|
+
error = errors.respond_to?(:first) ? errors.first : errors # the return value sometimes was a string, sometimes an Array in Rails
|
|
126
140
|
error.should == I18n.t('errors.messages.inclusion')
|
|
127
141
|
error.should == 'is not included in the list'
|
|
128
142
|
end
|
|
@@ -274,7 +288,7 @@ describe AssignableValues::ActiveRecord do
|
|
|
274
288
|
record = @klass.new(:genre => 'disallowed value')
|
|
275
289
|
record.valid?
|
|
276
290
|
errors = record.errors[:genre]
|
|
277
|
-
error = errors.
|
|
291
|
+
error = errors.respond_to?(:first) ? errors.first : errors # the return value sometimes was a string, sometimes an Array in Rails
|
|
278
292
|
error.should == 'should be something different'
|
|
279
293
|
end
|
|
280
294
|
|
|
@@ -373,7 +387,7 @@ describe AssignableValues::ActiveRecord do
|
|
|
373
387
|
record = klass.new(:artist => disallowed_association)
|
|
374
388
|
record.valid?
|
|
375
389
|
errors = record.errors[:artist_id]
|
|
376
|
-
error = errors.
|
|
390
|
+
error = errors.respond_to?(:first) ? errors.first : errors # the return value sometimes was a string, sometimes an Array in Rails
|
|
377
391
|
error.should == I18n.t('errors.messages.inclusion')
|
|
378
392
|
end
|
|
379
393
|
|
metadata
CHANGED
|
@@ -1,14 +1,14 @@
|
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
|
2
2
|
name: assignable_values
|
|
3
3
|
version: !ruby/object:Gem::Version
|
|
4
|
-
version: 0.16.
|
|
4
|
+
version: 0.16.6
|
|
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-03-16 00:00:00.000000000 Z
|
|
12
12
|
dependencies:
|
|
13
13
|
- !ruby/object:Gem::Dependency
|
|
14
14
|
name: activerecord
|
|
@@ -36,16 +36,16 @@ files:
|
|
|
36
36
|
- ".ruby-version"
|
|
37
37
|
- CHANGELOG.md
|
|
38
38
|
- Gemfile
|
|
39
|
-
- Gemfile.4.2
|
|
40
|
-
- Gemfile.4.2.lock
|
|
41
39
|
- Gemfile.5.0
|
|
42
40
|
- Gemfile.5.0.lock
|
|
43
41
|
- Gemfile.5.1
|
|
44
42
|
- Gemfile.5.1.lock
|
|
45
43
|
- Gemfile.5.1.pg
|
|
46
44
|
- Gemfile.5.1.pg.lock
|
|
47
|
-
- Gemfile.6.
|
|
48
|
-
- Gemfile.6.
|
|
45
|
+
- Gemfile.6.1.pg
|
|
46
|
+
- Gemfile.6.1.pg.lock
|
|
47
|
+
- Gemfile.7.0.pg
|
|
48
|
+
- Gemfile.7.0.pg.lock
|
|
49
49
|
- Gemfile.lock
|
|
50
50
|
- LICENSE
|
|
51
51
|
- README.md
|
|
@@ -71,7 +71,10 @@ files:
|
|
|
71
71
|
homepage: https://github.com/makandra/assignable_values
|
|
72
72
|
licenses:
|
|
73
73
|
- MIT
|
|
74
|
-
metadata:
|
|
74
|
+
metadata:
|
|
75
|
+
bug_tracker_uri: https://github.com/makandra/assignable_values/issues
|
|
76
|
+
changelog_uri: https://github.com/makandra/assignable_values/blob/master/CHANGELOG.md
|
|
77
|
+
rubygems_mfa_required: 'true'
|
|
75
78
|
post_install_message:
|
|
76
79
|
rdoc_options: []
|
|
77
80
|
require_paths:
|
|
@@ -87,7 +90,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
|
87
90
|
- !ruby/object:Gem::Version
|
|
88
91
|
version: '0'
|
|
89
92
|
requirements: []
|
|
90
|
-
rubygems_version: 3.2.
|
|
93
|
+
rubygems_version: 3.2.15
|
|
91
94
|
signing_key:
|
|
92
95
|
specification_version: 4
|
|
93
96
|
summary: Restrict the values assignable to ActiveRecord attributes or associations
|
data/Gemfile.4.2.lock
DELETED
|
@@ -1,70 +0,0 @@
|
|
|
1
|
-
PATH
|
|
2
|
-
remote: .
|
|
3
|
-
specs:
|
|
4
|
-
assignable_values (0.16.5)
|
|
5
|
-
activerecord (>= 2.3)
|
|
6
|
-
|
|
7
|
-
GEM
|
|
8
|
-
remote: https://rubygems.org/
|
|
9
|
-
specs:
|
|
10
|
-
activemodel (4.2.7.1)
|
|
11
|
-
activesupport (= 4.2.7.1)
|
|
12
|
-
builder (~> 3.1)
|
|
13
|
-
activerecord (4.2.7.1)
|
|
14
|
-
activemodel (= 4.2.7.1)
|
|
15
|
-
activesupport (= 4.2.7.1)
|
|
16
|
-
arel (~> 6.0)
|
|
17
|
-
activesupport (4.2.7.1)
|
|
18
|
-
i18n (~> 0.7)
|
|
19
|
-
json (~> 1.7, >= 1.7.7)
|
|
20
|
-
minitest (~> 5.1)
|
|
21
|
-
thread_safe (~> 0.3, >= 0.3.4)
|
|
22
|
-
tzinfo (~> 1.1)
|
|
23
|
-
arel (6.0.3)
|
|
24
|
-
builder (3.2.2)
|
|
25
|
-
database_cleaner (1.5.3)
|
|
26
|
-
diff-lcs (1.2.5)
|
|
27
|
-
gemika (0.5.0)
|
|
28
|
-
i18n (0.7.0)
|
|
29
|
-
json (1.8.3)
|
|
30
|
-
minitest (5.9.1)
|
|
31
|
-
mysql2 (0.4.10)
|
|
32
|
-
rake (10.3.2)
|
|
33
|
-
rspec (3.5.0)
|
|
34
|
-
rspec-core (~> 3.5.0)
|
|
35
|
-
rspec-expectations (~> 3.5.0)
|
|
36
|
-
rspec-mocks (~> 3.5.0)
|
|
37
|
-
rspec-core (3.5.4)
|
|
38
|
-
rspec-support (~> 3.5.0)
|
|
39
|
-
rspec-expectations (3.5.0)
|
|
40
|
-
diff-lcs (>= 1.2.0, < 2.0)
|
|
41
|
-
rspec-support (~> 3.5.0)
|
|
42
|
-
rspec-mocks (3.5.0)
|
|
43
|
-
diff-lcs (>= 1.2.0, < 2.0)
|
|
44
|
-
rspec-support (~> 3.5.0)
|
|
45
|
-
rspec-support (3.5.0)
|
|
46
|
-
rspec_candy (0.3.1)
|
|
47
|
-
rspec
|
|
48
|
-
sneaky-save
|
|
49
|
-
sneaky-save (0.0.5)
|
|
50
|
-
activerecord (>= 3.2.0)
|
|
51
|
-
thread_safe (0.3.5)
|
|
52
|
-
tzinfo (1.2.2)
|
|
53
|
-
thread_safe (~> 0.1)
|
|
54
|
-
|
|
55
|
-
PLATFORMS
|
|
56
|
-
ruby
|
|
57
|
-
|
|
58
|
-
DEPENDENCIES
|
|
59
|
-
activerecord (~> 4.2.0)
|
|
60
|
-
assignable_values!
|
|
61
|
-
database_cleaner
|
|
62
|
-
gemika (>= 0.5.0)
|
|
63
|
-
i18n (~> 0.7.0)
|
|
64
|
-
mysql2
|
|
65
|
-
rake
|
|
66
|
-
rspec (~> 3.4)
|
|
67
|
-
rspec_candy
|
|
68
|
-
|
|
69
|
-
BUNDLED WITH
|
|
70
|
-
2.1.4
|