Class project for TDD-ing 3rd party authentication using OmniAuth in Rails. Taught 8/30-9/1/2011
Ruby JavaScript
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Failed to load latest commit information.

Test-First Authentication

Sample project for a class taught by Wolfram Arnold at BlazingCloud on 8/30/2011 and 9/1/2011.


In this focused 2-part class you'll learn how to leverage the Devise and OmniAuth gems to add powerful third-party user authentication to your Rails applications. Devise is the most comprehensive and up-to-date authentication gem available. OmniAuth adds a simple interface for around 50 different third-party authentication providers, such as Twitter, Facebook, LinkedIn, SalesForce, etc. At the completion of this course you'll know:

  • The difference between user authentication and user identity
  • How to add a 3rd party authentication provider to any Rails app
  • How to combine 3rd party authentication with native app authentication
  • How to apply TDD (Test-Driven Development) for implementing your custom authentication and user identity requirements
  • How you can enjoy both the of fun experimenting and the satisfaction of a solution "done right"

This class is targeted at developers familiar with Rails either through working on a Rails project for 3-6 months or more, or through taking a Blazing Cloud (or equivalent) beginning Rails class. Familiarity with RSpec and TDD is helpful but not required. Participants are expected to have a working development environment with RVM and Rails 3 on their laptops. You can come early to the first class if you are new to RVM and/or Rails 3 and need some help making sure your environment is set up for effective learning. There will be some homework after session #1 which participants are expected to complete prior to session #2 and will be reviewed in the first hour of session #2.