bryanlarsen-railroad 0.7.7

Sign up to get free protection for your applications and to get access to all the features.
@@ -0,0 +1,43 @@
1
+ $:.unshift File.join(File.dirname(__FILE__), '../..')
2
+ require 'railroad'
3
+
4
+ namespace :doc do
5
+ namespace :diagrams do
6
+ desc "Draw model diagrams"
7
+ task :models => :environment do
8
+ doc_diagrams_generate(ModelsDiagram, 'models', '-a -m -t -M', 'neato')
9
+ end
10
+
11
+ desc "Draw controller diagrams"
12
+ task :controllers do
13
+ doc_diagrams_generate(ControllersDiagram, 'controllers', '-C', 'neato')
14
+ end
15
+
16
+ desc "Draw states diagrams"
17
+ task :states do
18
+ doc_diagrams_generate(AasmDiagram, 'states', '-A', 'dot')
19
+ end
20
+ end
21
+
22
+ desc "Draw controllers, models & states diagrams"
23
+ task :diagrams => %w(diagrams:models diagrams:controllers diagrams:states)
24
+ end
25
+
26
+ def doc_diagrams_generate(generator, type, options, dot_cmd)
27
+ options = OptionsStruct.new
28
+ options.parse "-v -j -l -i #{options}".split
29
+
30
+ output_dir = "doc/diagrams"
31
+
32
+ FileUtils.mkdir(output_dir) unless File.exist?(output_dir)
33
+
34
+ diagram = generator.new options
35
+ diagram.generate
36
+ f=open("#{output_dir}/#{type}.dot", "w")
37
+ f.write(diagram.to_s)
38
+ f.close
39
+
40
+ sh "#{dot_cmd} -Tpng #{output_dir}/#{type}.dot -o #{output_dir}/#{type}.png"
41
+ sh "#{dot_cmd} -Tsvg #{output_dir}/#{type}.dot | sed 's/font-size:14.00/font-size:11px/g' > #{output_dir}/#{type}.svg"
42
+ end
43
+
@@ -0,0 +1 @@
1
+ load 'railroad/tasks/diagrams.rake'
metadata ADDED
@@ -0,0 +1,88 @@
1
+ --- !ruby/object:Gem::Specification
2
+ name: bryanlarsen-railroad
3
+ version: !ruby/object:Gem::Version
4
+ version: 0.7.7
5
+ platform: ruby
6
+ authors:
7
+ - Javier Smaldone
8
+ - Thomas Ritz
9
+ - Tien Dung
10
+ - Factory Design Labs
11
+ - Mike Mondragon
12
+ - Tero Tilus
13
+ - David Dollar
14
+ - Bruno Michel
15
+ autorequire:
16
+ bindir: bin
17
+ cert_chain: []
18
+
19
+ date: 2009-03-14 00:00:00 -07:00
20
+ default_executable: railroad
21
+ dependencies:
22
+ - !ruby/object:Gem::Dependency
23
+ name: hoe
24
+ type: :development
25
+ version_requirement:
26
+ version_requirements: !ruby/object:Gem::Requirement
27
+ requirements:
28
+ - - ">="
29
+ - !ruby/object:Gem::Version
30
+ version: 1.7.0
31
+ version:
32
+ description: RailRoad is a class diagrams generator for Ruby on Rails applications.
33
+ email: javier@smaldone.com.ar
34
+ executables:
35
+ - railroad
36
+ extensions: []
37
+
38
+ extra_rdoc_files:
39
+ - History.txt
40
+ - Manifest.txt
41
+ - README.txt
42
+ files:
43
+ - COPYING
44
+ - ChangeLog
45
+ - History.txt
46
+ - Manifest.txt
47
+ - README.txt
48
+ - Rakefile
49
+ - bin/railroad
50
+ - init.rb
51
+ - lib/railroad.rb
52
+ - lib/railroad/aasm_diagram.rb
53
+ - lib/railroad/app_diagram.rb
54
+ - lib/railroad/controllers_diagram.rb
55
+ - lib/railroad/diagram_graph.rb
56
+ - lib/railroad/models_diagram.rb
57
+ - lib/railroad/options_struct.rb
58
+ - lib/railroad/tasks/diagrams.rb
59
+ - lib/railroad/tasks/diagrams.rake
60
+ has_rdoc: true
61
+ homepage: http://railroad.rubyforge.org
62
+ post_install_message:
63
+ rdoc_options:
64
+ - --main
65
+ - README.txt
66
+ require_paths:
67
+ - lib
68
+ required_ruby_version: !ruby/object:Gem::Requirement
69
+ requirements:
70
+ - - ">="
71
+ - !ruby/object:Gem::Version
72
+ version: "0"
73
+ version:
74
+ required_rubygems_version: !ruby/object:Gem::Requirement
75
+ requirements:
76
+ - - ">="
77
+ - !ruby/object:Gem::Version
78
+ version: "0"
79
+ version:
80
+ requirements: []
81
+
82
+ rubyforge_project: railroad
83
+ rubygems_version: 1.2.0
84
+ signing_key:
85
+ specification_version: 2
86
+ summary: A DOT diagram generator for Ruby on Rail applications
87
+ test_files: []
88
+