loud boot.rb
[has_many_polymorphs.git] / test / generator / tagging_generator_test.rb
blob91a53246bbee9a21035f0d8c5dc6d0be0d9bdffb
1 require 'fileutils'
2 require File.dirname(__FILE__) + '/../test_helper'
4 class TaggingGeneratorTest < Test::Unit::TestCase
5   
6   def setup
7     Dir.chdir RAILS_ROOT do
8       truncate
10       # Revert environment lib requires
11       FileUtils.cp "config/environment.rb.canonical", "config/environment.rb"
12       
13       # Delete generator output
14       ["app/models/tag.rb", "app/models/tagging.rb", 
15         "test/unit/tag_test.rb", "test/unit/tagging_test.rb", 
16         "test/fixtures/tags.yml", "test/fixtures/taggings.yml",
17         "lib/tagging_extensions.rb",
18         "db/migrate/009_create_tags_and_taggings.rb"].each do |file|
19           File.delete file if File.exist? file
20       end
21       
22       # Rebuild database
23       Echoe.silence do
24         system("ruby #{HERE}/setup.rb")
25       end
26     end
27   end
28   
29   alias :teardown :setup
31   def test_generator
32     Dir.chdir RAILS_ROOT do
33       Echoe.silence do
34         assert system("script/generate tagging Stick Stone -q -f")
35         assert system("rake db:migrate")
36         assert system("rake test:units")      
37       end
38     end
39   end
40   
41 end