Permalink
Browse files

fix test unit integration by using ActionController::TestCase instead…

… of Test::Unit::TestCase
  • Loading branch information...
1 parent 44e0a65 commit caa6a1cdf2bbb47b0353c05cb9c019178e79deb9 @qrush qrush committed with joshuaclayton May 24, 2012
Showing with 49 additions and 5 deletions.
  1. +3 −2 db/schema.rb
  2. +43 −0 features/integration_with_test_unit.feature
  3. +3 −3 lib/clearance/testing.rb
View
@@ -1,3 +1,4 @@
+# encoding: UTF-8
# This file is auto-generated from the current state of the database. Instead
# of editing this file, please use the migrations feature of Active Record to
# incrementally modify your database, and then regenerate this schema definition.
@@ -18,8 +19,8 @@
t.string "salt", :limit => 128
t.string "confirmation_token", :limit => 128
t.string "remember_token", :limit => 128
- t.datetime "created_at"
- t.datetime "updated_at"
+ t.datetime "created_at", :null => false
+ t.datetime "updated_at", :null => false
end
add_index "users", ["email"], :name => "index_users_on_email"
@@ -0,0 +1,43 @@
+Feature: integrate with test unit
+
+ Background:
+ When I successfully run `bundle exec rails new testapp`
+ And I cd to "testapp"
+ And I remove the file "public/index.html"
+ And I remove the file "app/views/layouts/application.html.erb"
+ And I configure ActionMailer to use "localhost" as a host
+ And I configure a root route
+ And I add the "factory_girl_rails" gem
+ And I run `bundle install --local`
+
+ Scenario: generate a Rails app, run the generators, and run the tests
+ When I successfully run `bundle exec rails generate clearance:install`
+ And I successfully run `bundle exec rake db:migrate --trace`
+ And I successfully run `bundle exec rails generate controller posts index`
+ And I add the "cucumber-rails" gem
+ And I write to "test/test_helper.rb" with:
+ """
+ ENV["RAILS_ENV"] = "test"
+ require File.expand_path('../../config/environment', __FILE__)
+ require 'rails/test_help'
+
+ class ActiveSupport::TestCase
+ fixtures :all
+ end
+
+ require 'clearance/testing'
+ """
+ And I write to "test/functionals/posts_controller_test.rb" with:
+ """
+ require 'test_helper'
+
+ class PostsControllerTest < ActionController::TestCase
+ test "should get index" do
+ sign_in
+ get :index
+ assert_response :success
+ end
+ end
+ """
+ And I successfully run `bundle exec rake --trace`
+ Then the output should contain "1 tests, 1 assertions, 0 failures"
View
@@ -2,9 +2,9 @@
require 'clearance/testing/deny_access_matcher'
require 'clearance/testing/helpers'
-if defined?(Test::Unit::TestCase)
- Test::Unit::TestCase.extend Clearance::Testing::Matchers
- class Test::Unit::TestCase
+if defined?(ActionController::TestCase)
+ ActionController::TestCase.extend Clearance::Testing::Matchers
+ class ActionController::TestCase
include Clearance::Testing::Helpers
end
end

0 comments on commit caa6a1c

Please sign in to comment.