rails-erd 1.4.3 → 1.4.4
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/lib/rails_erd/domain/attribute.rb +1 -1
- data/lib/rails_erd/version.rb +1 -1
- data/test/test_helper.rb +4 -0
- data/test/unit/graphviz_test.rb +19 -21
- data/test/unit/rake_task_test.rb +10 -1
- metadata +2 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: f023a0096d3737d00670e9d713e766855426f578
|
4
|
+
data.tar.gz: ebb61ceddc34a6d03ebb7157688335a41321ecc5
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 297d5f2899e0fbe308fe461c7304480efd00c10f904d58f5af14ee01b5ce2708167f49e4f366ff93ee9ac5e21b316da34d7b118c36a107965af07d0a3d404774
|
7
|
+
data.tar.gz: e757d823c41be9a73cf83b7e4485c6e596ece8874ac3e80de697a7536db6eab14906ac8a434936c99b94f83c515c2e0e2e16b0906870fd0a69185dcce75a679b
|
@@ -125,7 +125,7 @@ module RailsERD
|
|
125
125
|
# Returns any non-standard limit for this attribute. If a column has no
|
126
126
|
# limit or uses a default database limit, this method returns +nil+.
|
127
127
|
def limit
|
128
|
-
return if native_type == 'geometry'
|
128
|
+
return if native_type == 'geometry' || native_type == 'geography'
|
129
129
|
return column.limit.to_i if column.limit != native_type[:limit] and column.limit.respond_to?(:to_i)
|
130
130
|
column.precision.to_i if column.precision != native_type[:precision] and column.precision.respond_to?(:to_i)
|
131
131
|
end
|
data/lib/rails_erd/version.rb
CHANGED
data/test/test_helper.rb
CHANGED
@@ -2,11 +2,15 @@ require "rubygems"
|
|
2
2
|
require "bundler/setup"
|
3
3
|
|
4
4
|
require "active_record"
|
5
|
+
|
5
6
|
if ActiveSupport::VERSION::MAJOR >= 4
|
6
7
|
require "minitest/autorun"
|
8
|
+
require 'mocha/mini_test'
|
7
9
|
else
|
8
10
|
require "test/unit"
|
11
|
+
require 'mocha/test_unit'
|
9
12
|
end
|
13
|
+
|
10
14
|
require "rails_erd/domain"
|
11
15
|
|
12
16
|
ActiveRecord::Base.establish_connection :adapter => "sqlite3", :database => ":memory:"
|
data/test/unit/graphviz_test.rb
CHANGED
@@ -4,7 +4,7 @@ require "rails_erd/diagram/graphviz"
|
|
4
4
|
class GraphvizTest < ActiveSupport::TestCase
|
5
5
|
def setup
|
6
6
|
RailsERD.options.filetype = :png
|
7
|
-
RailsERD.options.warn
|
7
|
+
RailsERD.options.warn = false
|
8
8
|
end
|
9
9
|
|
10
10
|
def teardown
|
@@ -75,26 +75,30 @@ class GraphvizTest < ActiveSupport::TestCase
|
|
75
75
|
belongs_to :bar
|
76
76
|
end
|
77
77
|
create_model "Bar", :column => :string
|
78
|
+
|
79
|
+
Diagram.any_instance.expects(:save)
|
78
80
|
Diagram::Graphviz.create
|
79
|
-
assert File.exists?("erd.png")
|
80
81
|
end
|
81
82
|
|
82
83
|
test "create should create output for domain without attributes" do
|
83
84
|
create_simple_domain
|
85
|
+
|
86
|
+
Diagram.any_instance.expects(:save)
|
84
87
|
Diagram::Graphviz.create
|
85
|
-
assert File.exists?("erd.png")
|
86
88
|
end
|
87
89
|
|
88
90
|
test "create should write to file with dot extension if type is dot" do
|
89
91
|
create_simple_domain
|
90
|
-
|
91
|
-
|
92
|
+
|
93
|
+
Diagram.any_instance.expects(:save)
|
94
|
+
Diagram::Graphviz.create(:filetype => :dot)
|
92
95
|
end
|
93
96
|
|
94
97
|
test "create should create output for filenames that have spaces" do
|
95
98
|
create_simple_domain
|
96
|
-
|
97
|
-
|
99
|
+
|
100
|
+
Diagram.any_instance.expects(:save)
|
101
|
+
Diagram::Graphviz.create(:filename => "erd with spaces")
|
98
102
|
end
|
99
103
|
|
100
104
|
test "create should write to file with dot extension without requiring graphviz" do
|
@@ -105,7 +109,7 @@ class GraphvizTest < ActiveSupport::TestCase
|
|
105
109
|
def output_and_errors_from_command(*args); raise end
|
106
110
|
end
|
107
111
|
assert_nothing_raised do
|
108
|
-
Diagram::Graphviz.create
|
112
|
+
Diagram::Graphviz.create(:filetype => :dot)
|
109
113
|
end
|
110
114
|
ensure
|
111
115
|
GraphViz.class_eval do
|
@@ -119,14 +123,16 @@ class GraphvizTest < ActiveSupport::TestCase
|
|
119
123
|
belongs_to :bar
|
120
124
|
end
|
121
125
|
create_model "Bar", :column => :string
|
126
|
+
|
127
|
+
Diagram.any_instance.expects(:save)
|
122
128
|
Diagram::Graphviz.create(:orientation => :vertical)
|
123
|
-
assert File.exists?("erd.png")
|
124
129
|
end
|
125
130
|
|
126
131
|
test "create should create output for domain if orientation is vertical" do
|
127
132
|
create_simple_domain
|
133
|
+
|
134
|
+
Diagram.any_instance.expects(:save)
|
128
135
|
Diagram::Graphviz.create(:orientation => :vertical)
|
129
|
-
assert File.exists?("erd.png")
|
130
136
|
end
|
131
137
|
|
132
138
|
test "create should not create output if there are no connected models" do
|
@@ -144,24 +150,16 @@ class GraphvizTest < ActiveSupport::TestCase
|
|
144
150
|
assert_match /No entities found/, message
|
145
151
|
end
|
146
152
|
|
147
|
-
test "create should write to given file name plus extension if present" do
|
148
|
-
begin
|
149
|
-
create_simple_domain
|
150
|
-
Diagram::Graphviz.create :filename => "foobar"
|
151
|
-
assert File.exists?("foobar.png")
|
152
|
-
ensure
|
153
|
-
FileUtils.rm "foobar.png" rescue nil
|
154
|
-
end
|
155
|
-
end
|
156
|
-
|
157
153
|
test "create should abort and complain if output directory does not exist" do
|
158
154
|
message = nil
|
155
|
+
|
159
156
|
begin
|
160
157
|
create_simple_domain
|
161
|
-
Diagram::Graphviz.create
|
158
|
+
Diagram::Graphviz.create(:filename => "does_not_exist/foo")
|
162
159
|
rescue => e
|
163
160
|
message = e.message
|
164
161
|
end
|
162
|
+
|
165
163
|
assert_match /Output directory 'does_not_exist' does not exist/, message
|
166
164
|
end
|
167
165
|
|
data/test/unit/rake_task_test.rb
CHANGED
@@ -33,8 +33,9 @@ class RakeTaskTest < ActiveSupport::TestCase
|
|
33
33
|
# Diagram generation =======================================================
|
34
34
|
test "generate task should create output based on domain model" do
|
35
35
|
create_simple_domain
|
36
|
+
|
37
|
+
Diagram.any_instance.expects(:save)
|
36
38
|
Rake::Task["erd:generate"].execute
|
37
|
-
assert File.exists?("erd.dot")
|
38
39
|
end
|
39
40
|
|
40
41
|
test "generate task should not create output if there are no connected models" do
|
@@ -45,27 +46,35 @@ class RakeTaskTest < ActiveSupport::TestCase
|
|
45
46
|
test "generate task should eager load application environment" do
|
46
47
|
eager_loaded, environment_loaded = nil
|
47
48
|
create_app
|
49
|
+
|
48
50
|
Rails.application.class_eval do
|
49
51
|
define_method :eager_load! do
|
50
52
|
eager_loaded = true
|
51
53
|
end
|
52
54
|
end
|
55
|
+
|
53
56
|
Rake::Task.define_task :environment do
|
54
57
|
environment_loaded = true
|
55
58
|
end
|
59
|
+
|
56
60
|
create_simple_domain
|
61
|
+
|
57
62
|
Rake::Task["erd:generate"].invoke
|
63
|
+
|
58
64
|
assert_equal [true, true], [eager_loaded, environment_loaded]
|
59
65
|
end
|
60
66
|
|
61
67
|
test "generate task should complain if active record is not loaded" do
|
62
68
|
create_app
|
69
|
+
|
63
70
|
Rails.application.class_eval do
|
64
71
|
define_method :eager_load! do end
|
65
72
|
end
|
73
|
+
|
66
74
|
Rake::Task.define_task :environment
|
67
75
|
Object.send :remove_const, :ActiveRecord
|
68
76
|
message = nil
|
77
|
+
|
69
78
|
begin
|
70
79
|
Rake::Task["erd:generate"].invoke
|
71
80
|
rescue => e
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: rails-erd
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.4.
|
4
|
+
version: 1.4.4
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Rolf Timmermans
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2015-
|
11
|
+
date: 2015-10-15 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: activerecord
|