chop 0.36.6 → 0.37.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/README.md +1 -1
- data/chop.gemspec +1 -0
- data/lib/chop/create.rb +8 -2
- data/lib/chop/version.rb +1 -1
- metadata +16 -2
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
SHA256:
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
3
|
+
metadata.gz: 4f913987c39cc9d3a8c36fbd479af12e59fd8319415c15b24fcbd32e737af1aa
|
|
4
|
+
data.tar.gz: e85ac13a6ceabcad966813e1050ed5ce21f5d2db012453407458019c4c1c7a1e
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: 96d2f1ae11404d221fdc04d37b8d9f322fa5d1dc9f90e0dba798fcdc964d6492c5558d6c9911f5643318a7b2eb6bc850bc4790daca7737830b61101d4543ca22
|
|
7
|
+
data.tar.gz: 904edaee4530b7ed62c11f65791f5b1c55eaf9432e66d4b0b3dbe1f7bdb7c3813710fc295b4972a85f487cb66a40a7051f7d59ffb0cd2d5125b5b4a48c2247c3
|
data/README.md
CHANGED
|
@@ -163,7 +163,7 @@ end
|
|
|
163
163
|
|
|
164
164
|
Given "the following stories exist:" do |table|
|
|
165
165
|
table.create! factory_girl: "conversation_table/story" do
|
|
166
|
-
belongs_to :industry
|
|
166
|
+
belongs_to :industry # class is inferred from association reflection
|
|
167
167
|
|
|
168
168
|
rename :image => :image_file
|
|
169
169
|
file :image_file
|
data/chop.gemspec
CHANGED
|
@@ -23,6 +23,7 @@ Gem::Specification.new do |spec|
|
|
|
23
23
|
spec.add_dependency "cucumber"
|
|
24
24
|
spec.add_dependency "capybara"
|
|
25
25
|
|
|
26
|
+
spec.add_development_dependency "sqlite3", "~> 1.4"
|
|
26
27
|
spec.add_development_dependency "appraisal"
|
|
27
28
|
spec.add_development_dependency "rake"
|
|
28
29
|
spec.add_development_dependency "rspec"
|
data/lib/chop/create.rb
CHANGED
|
@@ -159,7 +159,7 @@ module Chop
|
|
|
159
159
|
|
|
160
160
|
def has_many key, klass=nil, delimiter: ", ", field: :name, find_by: nil
|
|
161
161
|
field = find_by if find_by
|
|
162
|
-
klass ||= key
|
|
162
|
+
klass ||= class_from_association(key)
|
|
163
163
|
self.field key do |names|
|
|
164
164
|
names.split(delimiter).map do |name|
|
|
165
165
|
klass.find_by!(field => name)
|
|
@@ -169,7 +169,7 @@ module Chop
|
|
|
169
169
|
|
|
170
170
|
def has_one key, klass=nil, field: :name, find_by: nil
|
|
171
171
|
field = find_by if find_by
|
|
172
|
-
klass ||= key
|
|
172
|
+
klass ||= class_from_association(key)
|
|
173
173
|
self.field key do |name|
|
|
174
174
|
klass.find_by!(field => name) if name.present?
|
|
175
175
|
end
|
|
@@ -206,6 +206,12 @@ module Chop
|
|
|
206
206
|
keys.replace keys.first.values
|
|
207
207
|
end
|
|
208
208
|
end
|
|
209
|
+
|
|
210
|
+
def class_from_association(key)
|
|
211
|
+
if self[:klass].respond_to?(:reflect_on_association)
|
|
212
|
+
self[:klass].reflect_on_association(key)&.klass
|
|
213
|
+
end || key.to_s.classify.constantize
|
|
214
|
+
end
|
|
209
215
|
end
|
|
210
216
|
end
|
|
211
217
|
|
data/lib/chop/version.rb
CHANGED
metadata
CHANGED
|
@@ -1,14 +1,14 @@
|
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
|
2
2
|
name: chop
|
|
3
3
|
version: !ruby/object:Gem::Version
|
|
4
|
-
version: 0.
|
|
4
|
+
version: 0.37.0
|
|
5
5
|
platform: ruby
|
|
6
6
|
authors:
|
|
7
7
|
- Micah Geisel
|
|
8
8
|
autorequire:
|
|
9
9
|
bindir: exe
|
|
10
10
|
cert_chain: []
|
|
11
|
-
date: 2026-02-
|
|
11
|
+
date: 2026-02-04 00:00:00.000000000 Z
|
|
12
12
|
dependencies:
|
|
13
13
|
- !ruby/object:Gem::Dependency
|
|
14
14
|
name: activerecord
|
|
@@ -52,6 +52,20 @@ dependencies:
|
|
|
52
52
|
- - ">="
|
|
53
53
|
- !ruby/object:Gem::Version
|
|
54
54
|
version: '0'
|
|
55
|
+
- !ruby/object:Gem::Dependency
|
|
56
|
+
name: sqlite3
|
|
57
|
+
requirement: !ruby/object:Gem::Requirement
|
|
58
|
+
requirements:
|
|
59
|
+
- - "~>"
|
|
60
|
+
- !ruby/object:Gem::Version
|
|
61
|
+
version: '1.4'
|
|
62
|
+
type: :development
|
|
63
|
+
prerelease: false
|
|
64
|
+
version_requirements: !ruby/object:Gem::Requirement
|
|
65
|
+
requirements:
|
|
66
|
+
- - "~>"
|
|
67
|
+
- !ruby/object:Gem::Version
|
|
68
|
+
version: '1.4'
|
|
55
69
|
- !ruby/object:Gem::Dependency
|
|
56
70
|
name: appraisal
|
|
57
71
|
requirement: !ruby/object:Gem::Requirement
|