Commit eb95be4cf1132d285daeaedd5da329a44b23f236

Authored by Dan Croak
1 parent a5ec8f61

upgrading coulda

vendor/plugins/coulda/features/step_definitions/migration_steps.rb
1 1 Then /^the paperclip migration should add "(.*)" columns to the "(.*)"$/ do |attr, table|
2   - up = " add_column :#{table}, :#{attr}_file_name, :string\n" <<
3   - " add_column :#{table}, :#{attr}_content_type, :string\n" <<
4   - " add_column :#{table}, :#{attr}_file_size, :integer\n" <<
5   - " add_column :#{table}, :#{attr}_updated_at, :datetime"
6   - down = " remove_column :#{table}, :#{attr}_file_name\n" <<
7   - " remove_column :#{table}, :#{attr}_content_type\n" <<
8   - " remove_column :#{table}, :#{attr}_file_size\n" <<
9   - " remove_column :#{table}, :#{attr}_updated_at"
10   - assert_generated_migration(table) do |body|
11   - assert body.include?(up), body.inspect
12   - assert body.include?(down), body.inspect
  2 + assert_generated_migration(table) do
  3 + " add_column :#{table}, :#{attr}_file_name, :string, :default => \"\"\n" <<
  4 + " add_column :#{table}, :#{attr}_content_type, :string, :default => \"\"\n" <<
  5 + " add_column :#{table}, :#{attr}_file_size, :integer, :default => \"\"\n" <<
  6 + " add_column :#{table}, :#{attr}_updated_at, :datetime, :default => \"\""
  7 + end
  8 + assert_generated_migration(table) do
  9 + " remove_column :#{table}, :#{attr}_file_name\n" <<
  10 + " remove_column :#{table}, :#{attr}_content_type\n" <<
  11 + " remove_column :#{table}, :#{attr}_file_size\n" <<
  12 + " remove_column :#{table}, :#{attr}_updated_at"
  13 + end
  14 +end
  15 +
  16 +Then /^the "(.*)" table should have db index on "(.*)"$/ do |table, foreign_key|
  17 + assert_generated_migration(table) do
  18 + "add_index :#{table}, :#{foreign_key}"
  19 + end
  20 +end
  21 +
  22 +Then /^the "(.*)" table should have paperclip columns for "(.*)"$/ do |table, attr|
  23 + assert_generated_migration(table) do
  24 + " table.string :#{attr}_file_name, :default => \"\"\n" <<
  25 + " table.string :#{attr}_content_type, :default => \"\"\n" <<
  26 + " table.integer :#{attr}_file_size\n" <<
  27 + " table.datetime :#{attr}_updated_at"
13 28 end
14 29 end
  30 +
... ...
vendor/plugins/coulda/features/step_definitions/model_steps.rb
... ... @@ -80,21 +80,3 @@ Then /^the &quot;(.*)&quot; unit test should have &quot;(.*)&quot; macro$/ do |model, macro|
80 80 end
81 81 end
82 82  
83   -# MIGRATION
84   -
85   -Then /^the "(.*)" table should have db index on "(.*)"$/ do |table, foreign_key|
86   - assert_generated_migration(table) do
87   - "add_index :#{table}, :#{foreign_key}"
88   - end
89   -end
90   -
91   -Then /^the "(.*)" table should have paperclip columns for "(.*)"$/ do |table, attr|
92   - assert_generated_migration(table) do
93   - " table.string :#{attr}_file_name\n" <<
94   - " table.string :#{attr}_content_type\n" <<
95   - " table.integer :#{attr}_file_size\n" <<
96   - " table.datetime :#{attr}_updated_at"
97   - end
98   -end
99   -
100   -
... ...
vendor/plugins/coulda/generators/model/templates/migration.rb
... ... @@ -3,10 +3,12 @@ class &lt;%= migration_name %&gt; &lt; ActiveRecord::Migration
3 3 create_table :<%= table_name %> do |table|
4 4 <% attributes.each do |attribute| -%>
5 5 <% if attribute.type == :paperclip -%>
6   - table.string :<%= attribute.name %>_file_name
7   - table.string :<%= attribute.name %>_content_type
  6 + table.string :<%= attribute.name %>_file_name, :default => ""
  7 + table.string :<%= attribute.name %>_content_type, :default => ""
8 8 table.integer :<%= attribute.name %>_file_size
9 9 table.datetime :<%= attribute.name %>_updated_at
  10 +<% elsif attribute.type == :string -%>
  11 + table.string :<%= attribute.name %>, :default => ""
10 12 <% else -%>
11 13 table.<%= attribute.type %> :<%= attribute.name %>
12 14 <% end -%>
... ...