Kristian Mandrup
2010-Jul-08 19:44 UTC
[rspec-users] RSpec 2 equivalent for Rails::Generators::TestCase ?
I have been creating a lot of Thor generators and Rails generators during the past 4 months, but only this week did I find some good examples of how to write tests for generators using Rails::Generators::TestCase - in the "rails3-generators" project. I prefer to write my tests in RSpec 2, so I was wondering if there is an RSpec 2 equivalent out there yet? If not, I will try writing my own RSpec 2 port... but I would be very happy if anyone could help me in this effort, with suggestions or anything. Thanks! Kristian Test::Unit example ------------------------- require ''generator_helper'' class Canable::Generators::ModelGeneratorTest < Rails::Generators::TestCase destination File.join(Rails.root) tests Canable::Generators::ModelGenerator setup :prepare_destination setup :copy_routes def assert_model(name, options) assert_file "app/models/#{name}.rb" do |account| assert_class name.camelize, account do |klass| assert_match /include Canable::Ables/, klass assert_match(/userstamps!/, klass) if options[:userstamps] if method = options[:method] assert_match(/def #{method}_by?(user)/, klass) if method end end end end test "invoke with no arguments" do run_generator end # test include Canable:Ables statement is added test "invoke with model name" do name = ''house'' run_generator(name) assert_model(name) end end