Mike Gehard's blog



Mike GehardMike Gehard
Making sure you implement the ActiveModel interface fully
edit Posted by Mike Gehard on Friday April 08, 2011 at 04:01PM

Rails 3 brings with it ActiveModel.

ActiveModel give you a way to make non-db backed models look like db backed models to your views and controllers. See this post for a good explanation of what using ActiveModel buys you.

ActiveModel gives you a great way to test that your class implements the minimum ActiveModel interface: ActiveModel::Lint::Tests

Check out this gist for the details for using these tests in RSpec:

Mike GehardMike Gehard
Testing Rails3 Generators using Cucumber and Aruba
edit Posted by Mike Gehard on Wednesday September 15, 2010 at 06:34AM

In an effort to continue my contributions to the open source Ruby/Rails ecosystem, I decided to help the factory_girl_rails team move the Rails3 generators from the rails3-generators project into the factory_girl_rails project.

Like all good Ruby/Rails developers, they asked to make sure that I had tests written around the generators. I thought for a bit on how I was going to do this and then I wandered across the Cucumber feature files in the rspec-rails repo and found my answer.

Rspec-rails (and RSpec2 as well) uses a gem called Aruba to easily write Cucumber features around things that happen from the command line.

If you'd like to check out the result of using Cucumber and Aruba to test Rails3 generators, head over to my fork of the factory_girl_rails gem and check out the features/generators.feature file.

Hopefully the changes will be merged into the official factory_girl_rails repo soon and the generators will live closer to home.

Mike GehardMike Gehard
Using RSpec-rails2 to test Rails3 ApplicationController functionality
edit Posted by Mike Gehard on Friday August 06, 2010 at 07:19AM

The other day I was looking to test some rescue_from functionality in a subclass of ApplicationController and found an easy way to set this up, the controller() method.

Note: Testing of ApplicationController subclasses is a new addition and not available in a released beta of rspec-rails2 as of the writing of this post.