dread 0.0.4 → 0.0.5
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/dread.gemspec +1 -0
- data/lib/dread/console_output.rb +1 -1
- data/lib/dread/graph.rb +4 -3
- data/lib/dread/version.rb +2 -2
- data/lib/tasks/dread.rake +3 -1
- data/test/dread_test.rb +3 -2
- metadata +15 -1
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 1e06797613f10604b7ea856d50664648ae1eb999
|
4
|
+
data.tar.gz: 2c377cdc0bd7c79c7db3c765c7e511aa0f48bfff
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 8a031041bb4c6bf978d29071140325d4a83c7f67c77b7a734fbd48639a2c36a20ff2f10e7aa0cdeffb824b7118796772bcf3d01c9da11deaebfd3f3501fbdffc
|
7
|
+
data.tar.gz: 11e389c525b76b70be42940f196af19db6b7b7c1460f3dda6cb12cbdc237b6bfbe2b933c526ed66b6ec7e4f3315d76b4375ab5f5e9dd04ab393d2927800c6a2e
|
data/dread.gemspec
CHANGED
data/lib/dread/console_output.rb
CHANGED
data/lib/dread/graph.rb
CHANGED
@@ -12,16 +12,17 @@ module Dread
|
|
12
12
|
|
13
13
|
# { user: { tweets: { comments: {} }, comments: {}, account_setting: {} } }
|
14
14
|
def dependable_collection
|
15
|
-
@dependable_collection ||= Hash.new.tap do |relation_hash|
|
15
|
+
@dependable_collection ||= { relation_name.to_sym => Hash.new.tap do |relation_hash|
|
16
16
|
@clazz.reflections.each do |assoc_name, assoc_data|
|
17
17
|
if assoc_data.options[:dependent] == :delete
|
18
18
|
relation_hash[assoc_name] = {}
|
19
19
|
elsif assoc_data.options[:dependent] == :destroy
|
20
|
-
relation_hash
|
21
|
-
Graph.new(assoc_data, assoc_data.macro == :has_many).dependable_collection
|
20
|
+
relation_hash.merge!(
|
21
|
+
Graph.new(assoc_data, assoc_data.macro == :has_many).dependable_collection)
|
22
22
|
end
|
23
23
|
end
|
24
24
|
end
|
25
|
+
}
|
25
26
|
end
|
26
27
|
|
27
28
|
def draw(output='console_output')
|
data/lib/dread/version.rb
CHANGED
@@ -1,3 +1,3 @@
|
|
1
1
|
module Dread
|
2
|
-
VERSION = "0.0.
|
3
|
-
end
|
2
|
+
VERSION = "0.0.5"
|
3
|
+
end
|
data/lib/tasks/dread.rake
CHANGED
@@ -1,8 +1,10 @@
|
|
1
|
+
require 'colorize'
|
2
|
+
desc 'list destroyable/deletable dependencies of your ActiveRecord class'
|
1
3
|
task dread: :environment do
|
2
4
|
begin
|
3
5
|
dread_graph = Dread::Graph.new(ENV['class'])
|
4
6
|
dread_graph.draw
|
5
7
|
rescue Dread::Error => e
|
6
|
-
puts e.message
|
8
|
+
puts e.message.colorize(:red)
|
7
9
|
end
|
8
10
|
end
|
data/test/dread_test.rb
CHANGED
@@ -31,8 +31,9 @@ class DreadTest < ActiveSupport::TestCase
|
|
31
31
|
test 'collecting' do
|
32
32
|
dread_graph = Dread::Graph.new('user')
|
33
33
|
dependable_collection = dread_graph.dependable_collection
|
34
|
-
dependable_collection.assert_valid_keys(:
|
35
|
-
dependable_collection[:
|
34
|
+
dependable_collection.assert_valid_keys(:user)
|
35
|
+
dependable_collection[:user].assert_valid_keys(:tweets, :comments, :setting)
|
36
|
+
dependable_collection[:user][:tweets].assert_valid_keys(:comments)
|
36
37
|
end
|
37
38
|
|
38
39
|
end
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: dread
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.0.
|
4
|
+
version: 0.0.5
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Damir Svrtan
|
@@ -24,6 +24,20 @@ dependencies:
|
|
24
24
|
- - ">="
|
25
25
|
- !ruby/object:Gem::Version
|
26
26
|
version: 3.2.0
|
27
|
+
- !ruby/object:Gem::Dependency
|
28
|
+
name: colorize
|
29
|
+
requirement: !ruby/object:Gem::Requirement
|
30
|
+
requirements:
|
31
|
+
- - '='
|
32
|
+
- !ruby/object:Gem::Version
|
33
|
+
version: 0.7.3
|
34
|
+
type: :runtime
|
35
|
+
prerelease: false
|
36
|
+
version_requirements: !ruby/object:Gem::Requirement
|
37
|
+
requirements:
|
38
|
+
- - '='
|
39
|
+
- !ruby/object:Gem::Version
|
40
|
+
version: 0.7.3
|
27
41
|
- !ruby/object:Gem::Dependency
|
28
42
|
name: sqlite3
|
29
43
|
requirement: !ruby/object:Gem::Requirement
|