railroady 1.3.1 → 1.4.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/.gitignore +1 -0
- data/Gemfile.lock +8 -5
- data/lib/railroady/aasm_diagram.rb +3 -3
- data/lib/railroady/diagram_graph.rb +6 -3
- data/lib/railroady/models_diagram.rb +3 -1
- data/lib/railroady/version.rb +1 -1
- metadata +3 -4
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 5a7fa0d96074617758610fbbb1d18b7bbe69c379
|
4
|
+
data.tar.gz: 4ad8fd7e21e1a2b9c277498862d8463a446e377d
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 9eeea0a386b4acecb19a053cf8fb2327dc2c5cd1e6f30afda00e5162648c6d464eb8af2e5befe984ce3f0579c2e942cd3c3cb3e911de86cdf341b025cfaf0dfc
|
7
|
+
data.tar.gz: 2222c3470ec2585ad2428ee14c6939064da0e7a2026acb15fa2bfa8f8c875232b2d9f7fce7ec26f17d6eed723808b864b72d99908df1b4967619a20e3dd21764
|
data/.gitignore
CHANGED
data/Gemfile.lock
CHANGED
@@ -1,22 +1,22 @@
|
|
1
1
|
PATH
|
2
2
|
remote: .
|
3
3
|
specs:
|
4
|
-
railroady (1.
|
4
|
+
railroady (1.4.0)
|
5
5
|
|
6
6
|
GEM
|
7
7
|
remote: https://rubygems.org/
|
8
8
|
specs:
|
9
|
-
activesupport (4.2.
|
9
|
+
activesupport (4.2.4)
|
10
10
|
i18n (~> 0.7)
|
11
11
|
json (~> 1.7, >= 1.7.7)
|
12
12
|
minitest (~> 5.1)
|
13
13
|
thread_safe (~> 0.3, >= 0.3.4)
|
14
14
|
tzinfo (~> 1.1)
|
15
15
|
i18n (0.7.0)
|
16
|
-
json (1.8.
|
17
|
-
minitest (5.
|
16
|
+
json (1.8.3)
|
17
|
+
minitest (5.8.1)
|
18
18
|
rake (10.4.2)
|
19
|
-
thread_safe (0.3.
|
19
|
+
thread_safe (0.3.5)
|
20
20
|
tzinfo (1.2.2)
|
21
21
|
thread_safe (~> 0.1)
|
22
22
|
|
@@ -29,3 +29,6 @@ DEPENDENCIES
|
|
29
29
|
minitest
|
30
30
|
railroady!
|
31
31
|
rake
|
32
|
+
|
33
|
+
BUNDLED WITH
|
34
|
+
1.10.6
|
@@ -53,7 +53,7 @@ class AasmDiagram < AppDiagram
|
|
53
53
|
|
54
54
|
# Only interested in acts_as_state_machine models.
|
55
55
|
process_acts_as_state_machine_class(current_class) if current_class.respond_to?(:states)
|
56
|
-
process_aasm_class(current_class) if current_class.respond_to?(:aasm_states)
|
56
|
+
process_aasm_class(current_class) if current_class.respond_to?(:aasm_states) || current_class.respond_to?(:aasm)
|
57
57
|
end # process_class
|
58
58
|
|
59
59
|
def process_acts_as_state_machine_class(current_class)
|
@@ -91,13 +91,13 @@ class AasmDiagram < AppDiagram
|
|
91
91
|
end
|
92
92
|
@graph.add_node [node_type, current_class.name, node_attribs]
|
93
93
|
|
94
|
-
current_class.aasm.events.each do |
|
94
|
+
current_class.aasm.events.each do |event|
|
95
95
|
event.transitions.each do |transition|
|
96
96
|
@graph.add_edge [
|
97
97
|
'event',
|
98
98
|
current_class.name.downcase + '_' + transition.from.to_s,
|
99
99
|
current_class.name.downcase + '_' + transition.to.to_s,
|
100
|
-
|
100
|
+
event.name.to_s
|
101
101
|
]
|
102
102
|
end
|
103
103
|
end
|
@@ -97,8 +97,8 @@ class DiagramGraph
|
|
97
97
|
# Return subgraph format
|
98
98
|
return "subgraph cluster_#{name.downcase} {\n\tlabel = #{quote(name)}\n\t#{attributes.join("\n ")}}"
|
99
99
|
end # case
|
100
|
-
options = [options, custom_options].compact.join(', ')
|
101
|
-
"\t#{quote(name)} [#{options}]\n"
|
100
|
+
options = [options, custom_options].compact.reject{|o| o.empty?}.join(', ')
|
101
|
+
return "\t#{quote(name)} [#{options}]\n"
|
102
102
|
end # dot_node
|
103
103
|
|
104
104
|
# Build a DOT graph edge
|
@@ -112,7 +112,10 @@ class DiagramGraph
|
|
112
112
|
when 'one-many'
|
113
113
|
options += 'arrowtail=odot, arrowhead=crow' + suffix
|
114
114
|
when 'many-many'
|
115
|
-
options +=
|
115
|
+
options += "arrowtail=crow, arrowhead=crow" + suffix
|
116
|
+
when 'belongs-to'
|
117
|
+
# following http://guides.rubyonrails.org/association_basics.html#the-belongs-to-association
|
118
|
+
options += "arrowtail=none, arrowhead=normal" + suffix
|
116
119
|
when 'is-a'
|
117
120
|
options += 'arrowhead="none", arrowtail="onormal"'
|
118
121
|
when 'event'
|
@@ -108,7 +108,7 @@ class ModelsDiagram < AppDiagram
|
|
108
108
|
|
109
109
|
content_columns.each do |a|
|
110
110
|
content_column = a.name
|
111
|
-
content_column += ' :' + a.
|
111
|
+
content_column += ' :' + a.sql_type.to_s unless @options.hide_types
|
112
112
|
node_attribs << content_column
|
113
113
|
end
|
114
114
|
end
|
@@ -284,6 +284,8 @@ class ModelsDiagram < AppDiagram
|
|
284
284
|
elsif macro == 'has_many' && (!assoc.options[:through]) ||
|
285
285
|
%w(references_many embeds_many).include?(macro)
|
286
286
|
assoc_type = 'one-many'
|
287
|
+
elsif macro == 'belongs_to'
|
288
|
+
assoc_type = 'belongs-to'
|
287
289
|
else # habtm or has_many, :through
|
288
290
|
# Add FAKE associations too in order to understand mistakes
|
289
291
|
return if @habtm.include? [assoc_class_name, class_name, assoc_name]
|
data/lib/railroady/version.rb
CHANGED
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: railroady
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.
|
4
|
+
version: 1.4.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Preston Lee
|
@@ -11,7 +11,7 @@ authors:
|
|
11
11
|
autorequire:
|
12
12
|
bindir: bin
|
13
13
|
cert_chain: []
|
14
|
-
date: 2015-
|
14
|
+
date: 2015-10-19 00:00:00.000000000 Z
|
15
15
|
dependencies:
|
16
16
|
- !ruby/object:Gem::Dependency
|
17
17
|
name: bundler
|
@@ -141,7 +141,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
141
141
|
version: '0'
|
142
142
|
requirements: []
|
143
143
|
rubyforge_project:
|
144
|
-
rubygems_version: 2.4.
|
144
|
+
rubygems_version: 2.4.8
|
145
145
|
signing_key:
|
146
146
|
specification_version: 4
|
147
147
|
summary: Ruby on Rails 3/4 model and controller UML class diagram generator.
|
@@ -163,4 +163,3 @@ test_files:
|
|
163
163
|
- test/lib/railroady/diagram_graph_spec.rb
|
164
164
|
- test/lib/railroady/models_diagram_spec.rb
|
165
165
|
- test/spec_helper.rb
|
166
|
-
has_rdoc:
|