2009-09-17 22:54:19 +00:00
|
|
|
RAILS_ENV = ENV["RAILS_ENV"] = "test"
|
2009-09-17 12:24:33 +00:00
|
|
|
require 'test/unit'
|
|
|
|
require 'rubygems'
|
|
|
|
require 'active_support'
|
|
|
|
require 'active_support/test_case'
|
2009-09-17 22:54:19 +00:00
|
|
|
require 'action_mailer'
|
2009-09-17 12:24:33 +00:00
|
|
|
require 'active_record'
|
|
|
|
|
|
|
|
require File.join(File.dirname(__FILE__), '..', 'lib', 'devise')
|
|
|
|
|
2009-09-18 00:29:13 +00:00
|
|
|
ActionMailer::Base.delivery_method = :test
|
|
|
|
ActionMailer::Base.perform_deliveries = true
|
|
|
|
|
|
|
|
ActiveRecord::Migration.verbose = false
|
2009-09-17 12:24:33 +00:00
|
|
|
ActiveRecord::Base.logger = Logger.new(nil)
|
|
|
|
ActiveRecord::Base.establish_connection(:adapter => "sqlite3", :database => ":memory:")
|
|
|
|
ActiveRecord::Schema.define(:version => 1) do
|
|
|
|
create_table :users do |t|
|
|
|
|
t.string :email, :null => false
|
|
|
|
t.string :encrypted_password, :null => false
|
|
|
|
t.string :password_salt, :null => false
|
2009-09-17 23:03:38 +00:00
|
|
|
t.string :confirmation_token
|
2009-09-17 14:06:46 +00:00
|
|
|
t.datetime :confirmed_at
|
2009-09-17 12:24:33 +00:00
|
|
|
end
|
|
|
|
end
|
|
|
|
|
|
|
|
class User < ::ActiveRecord::Base
|
|
|
|
include ::Devise::Authenticable
|
|
|
|
end
|
|
|
|
|
|
|
|
class ActiveSupport::TestCase
|
|
|
|
def assert_not(assertion)
|
|
|
|
assert !assertion
|
|
|
|
end
|
|
|
|
|
|
|
|
def assert_blank(assertion)
|
|
|
|
assert assertion.blank?
|
|
|
|
end
|
|
|
|
|
|
|
|
def assert_not_blank(assertion)
|
|
|
|
assert !assertion.blank?
|
|
|
|
end
|
|
|
|
alias :assert_present :assert_not_blank
|
2009-09-17 14:06:46 +00:00
|
|
|
|
2009-09-18 00:29:13 +00:00
|
|
|
def setup_mailer
|
|
|
|
ActionMailer::Base.deliveries = []
|
|
|
|
end
|
|
|
|
|
2009-09-17 14:06:46 +00:00
|
|
|
# Helpers for creating new users
|
|
|
|
#
|
2009-09-17 22:54:19 +00:00
|
|
|
def generate_unique_email
|
|
|
|
@@email_count ||= 0
|
|
|
|
@@email_count += 1
|
|
|
|
"test#{@@email_count}@email.com"
|
|
|
|
end
|
|
|
|
|
2009-09-17 14:06:46 +00:00
|
|
|
def valid_attributes(attributes={})
|
2009-09-17 22:54:19 +00:00
|
|
|
{ :email => generate_unique_email,
|
2009-09-17 14:06:46 +00:00
|
|
|
:password => '12345',
|
|
|
|
:password_confirmation => '12345' }.update(attributes)
|
|
|
|
end
|
|
|
|
|
|
|
|
def new_user(attributes={})
|
|
|
|
User.new(valid_attributes(attributes))
|
|
|
|
end
|
|
|
|
|
|
|
|
def create_user(attributes={})
|
|
|
|
User.create!(valid_attributes(attributes))
|
|
|
|
end
|
|
|
|
|
|
|
|
def field_accessible?(field)
|
|
|
|
new_user(field => 'test').send(field) == 'test'
|
|
|
|
end
|
2009-09-17 12:24:33 +00:00
|
|
|
end
|
|
|
|
|