File tree 2 files changed +18
-2
lines changed
2 files changed +18
-2
lines changed Original file line number Diff line number Diff line change 1
1
require 'minitest/spec'
2
+ require 'yaml'
2
3
3
4
describe_recipe 'deploy::rails' do
4
5
include MiniTest ::Chef ::Resources
20
21
end
21
22
end
22
23
end
24
+
25
+ it 'should write a valid database configuration' do
26
+ node [ :deploy ] . each do |app , deploy |
27
+ cfg = YAML . load_file ( "#{ deploy [ :deploy_to ] } /shared/config/database.yml" )
28
+ [ "development" , "production" , deploy [ :rails_env ] ] . uniq . each do |env |
29
+ cfg [ env ] [ 'adapter' ] . must_equal deploy [ :database ] [ :adapter ] . to_s
30
+ cfg [ env ] [ 'database' ] . must_equal deploy [ :database ] [ :database ] . to_s
31
+ cfg [ env ] [ 'host' ] . must_equal ( ( deploy [ :database ] [ :host ] || 'localhost' ) . to_s )
32
+ cfg [ env ] [ 'username' ] . must_equal deploy [ :database ] [ :username ] . to_s
33
+ cfg [ env ] [ 'password' ] . must_equal ( ( deploy [ :database ] [ :password ] || '' ) . to_s )
34
+ cfg [ env ] [ 'reconnect' ] . must_equal deploy [ :database ] [ :reconnect ] ? true : false
35
+ cfg [ env ] [ 'port' ] . must_equal deploy [ :database ] [ :port ] . to_i if deploy [ :database ] [ :port ]
36
+ end
37
+ end
38
+ end
23
39
end
Original file line number Diff line number Diff line change 3
3
adapter: <%= @database[:adapter].to_s.inspect %>
4
4
database: <%= @database[:database].to_s.inspect %>
5
5
encoding: utf8
6
- host: <%= @database[:host].to_s.inspect || 'localhost' %>
6
+ host: <%= ( @database[:host] || 'localhost').to_s.inspect %>
7
7
username: <%= @database[:username].to_s.inspect %>
8
8
password: <%= @database[:password].to_s.inspect %>
9
9
reconnect: <%= @database[:reconnect] ? 'true' : 'false' %>
10
10
<% if @database[:port] -%>
11
- port: <%= @database[:port].to_s .inspect %>
11
+ port: <%= @database[:port].to_i .inspect %>
12
12
<% end -%>
13
13
14
14
<% end %>
You can’t perform that action at this time.
0 commit comments