fixtures_dump 0.3.1 → 0.4.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 CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: e910b3b26c96a0b97f6ea6d2911470aeb085ac36a1fcb5e21c65e4279cc90684
4
- data.tar.gz: a159ce5d1ebc8efd7a96bae067b9d0e3de4e27a45f94bbc75df39fd3941caa01
3
+ metadata.gz: b7eed8e7726804331348f690ac3e54898db082a3fc7e3910e1e214ea4c96aa6e
4
+ data.tar.gz: 89486dc50877c72737b1dc8b994e806d0b4f0d5d3738bf23290dd1ff61381045
5
5
  SHA512:
6
- metadata.gz: 4c23efc0de3236190f48a27ce4bacc905ae5e5e5d7d94dc31cfc181d106ecb4b2d15dcf19ec5a935c633bb2432328a0e4015d579ff3cf1bd2b2c7d2a01f59b0b
7
- data.tar.gz: 5ccca0abedb3c59cafa00a512420f583415ce13e2f473954fc2bbab17ce06bdfcc66d40bd85c395f30c3d7e9016077915a36651bc5717cbcdc4e5da93b187cf5
6
+ metadata.gz: 1de194de60ce25047b9bb66542346837c89e9d6ef96a29351bd51b48592bc34ac57f0afa2ad1f5b6e72ac5506c2482b9657aaf3399b9683533ca9881c40cc766
7
+ data.tar.gz: 5c403f5bf7505fa036cd542ee57326570517f245e7a76ec88a8722cb6a03bb46e0287200ceed61d58c58c23a64d2bddfd89e111411b14afd7f482200561122ac
@@ -1,7 +1,7 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- fixtures_dump (0.3.1)
4
+ fixtures_dump (0.4.0)
5
5
 
6
6
  GEM
7
7
  remote: https://rubygems.org/
data/README.md CHANGED
@@ -22,19 +22,19 @@ Or install it yourself as:
22
22
 
23
23
  ### General usage:
24
24
 
25
- bundle exec rake db:fixtures:dump
25
+ bundle exec rails db:fixtures:dump
26
26
 
27
27
  It defaults to using _'test/fixtures'_ as the fixture folder. This can be customized with the environmental variable _FIXTURES_PATH_
28
28
 
29
- FIXTURES_PATH=spec/fixtures bundle exec rake db:fixtures:dump
29
+ FIXTURES_PATH=spec/fixtures bundle exec rails db:fixtures:dump
30
30
 
31
31
  You can either dump all models (with no configuration), or you can whitelist the desired models with the _REQUIRED_ environmental variable.
32
32
 
33
- REQUIRED=RequiredModel bundle exec rake db:fixtures:dump
33
+ REQUIRED=RequiredModel bundle exec rails db:fixtures:dump
34
34
 
35
35
  You can also download all the models that descend from _ActiveRecord::Base.descendants_ except for some:
36
36
 
37
- EXCLUDED=ExcludeThis bundle exec rake db:fixtures:dump
37
+ EXCLUDED=ExcludeThis bundle exec rails db:fixtures:dump
38
38
 
39
39
  ## Development
40
40
 
@@ -1,4 +1,5 @@
1
1
  require "fixtures_dump/version"
2
+ require "fixtures_dump/helpers"
2
3
 
3
4
  module FixturesDump
4
5
  require 'fixtures_dump/railtie' if defined?(Rails)
@@ -0,0 +1,22 @@
1
+ module FixturesDump
2
+ module Helpers
3
+ extend self
4
+
5
+ def record_key record, model
6
+ key = if record.respond_to?(:immutable_name)
7
+ record.immutable_name
8
+ elsif record.respond_to?(:name)
9
+ record.name
10
+ else
11
+ "#{model.to_s.underscore}_#{record.id}"
12
+ end
13
+ underscore_key key
14
+ end
15
+
16
+ private
17
+
18
+ def underscore_key key
19
+ key.underscore.gsub(/ /, '_')
20
+ end
21
+ end
22
+ end
@@ -1,3 +1,3 @@
1
1
  module FixturesDump
2
- VERSION = "0.3.1"
2
+ VERSION = "0.4.0"
3
3
  end
@@ -22,16 +22,10 @@ namespace 'db:fixtures' do
22
22
 
23
23
  filepath.open('w') do |file|
24
24
  hash = {}
25
- model.find_each do |r|
26
- key = if r.respond_to?(:immutable_name)
27
- r.immutable_name
28
- elsif r.respond_to?(:name)
29
- r.name
30
- else
31
- "#{model.to_s.underscore}_#{r.id}"
32
- end
33
- attributes = r.attributes.except(:password_digest, :created_at, :updated_at).delete_if{|k,v| v.nil?}
34
- hash[key.underscore] = attributes
25
+ model.find_each do |record|
26
+ record_key = FixturesDump::Helpers.record_key(record, model)
27
+ attributes = record.attributes.except('password_digest', 'created_at', 'updated_at').delete_if{ |_,value| value.blank? }
28
+ hash[record_key] = attributes
35
29
  end
36
30
  file.write hash.to_yaml
37
31
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: fixtures_dump
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.3.1
4
+ version: 0.4.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Catalin Ionescu
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2020-09-04 00:00:00.000000000 Z
11
+ date: 2020-09-06 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: bundler
@@ -72,6 +72,7 @@ files:
72
72
  - bin/setup
73
73
  - fixtures_dump.gemspec
74
74
  - lib/fixtures_dump.rb
75
+ - lib/fixtures_dump/helpers.rb
75
76
  - lib/fixtures_dump/railtie.rb
76
77
  - lib/fixtures_dump/version.rb
77
78
  - lib/tasks/fixtures_dump.rake