prepare for spec (part II)

This commit is contained in:
Akira Matsuda 2011-02-12 00:07:26 +09:00
parent 575a0b303b
commit 31b213a760
4 changed files with 21 additions and 13 deletions

View File

@ -2,19 +2,29 @@ require 'active_record'
require 'action_controller/railtie'
require 'action_view/railtie'
# database
ActiveRecord::Base.configurations = {'test' => {:adapter => 'sqlite3', :database => ':memory:'}}
ActiveRecord::Base.establish_connection('test')
# config
app = Class.new(Rails::Application)
app.config.secret_token = "3b7cd727ee24e8444053437c36cc66c4"
app.config.session_store :cookie_store, :key => "_myapp_session"
app.config.active_support.deprecation = :log
app.initialize!
# routes
app.routes.draw do
resources :users
end
# models
class User < ActiveRecord::Base
default_scope order(:name)
end
class Book < ActiveRecord::Base; end
# controllers
class ApplicationController < ActionController::Base; end
class UsersController < ApplicationController
def index
@ -26,4 +36,13 @@ ERB
end
end
# helpers
Object.const_set(:ApplicationHelper, Module.new)
#migrations
class CreateAllTables < ActiveRecord::Migration
def self.up
create_table(:users) {|t| t.string :name }
create_table(:books) {|t| t.string :title }
end
end

View File

@ -3,7 +3,7 @@ $LOAD_PATH.unshift(File.dirname(__FILE__))
require 'rails'
require 'kaminari'
require File.join(File.dirname(__FILE__), 'support/fake_app')
require File.join(File.dirname(__FILE__), 'fake_app')
require 'rspec/rails'
# Requires supporting files with custom matchers and macros, etc,
@ -14,6 +14,6 @@ RSpec.configure do |config|
config.mock_with :rr
config.before :all do
# ActiveRecord::Base.connection.execute 'CREATE TABLE "users" ("id" INTEGER PRIMARY KEY AUTOINCREMENT NOT NULL, "name" varchar(255))' unless ActiveRecord::Base.connection.table_exists? 'users'
CreateUsers.up unless ActiveRecord::Base.connection.table_exists? 'users'
CreateAllTables.up unless ActiveRecord::Base.connection.table_exists? 'users'
end
end

View File

@ -1,8 +0,0 @@
class CreateUsers < ActiveRecord::Migration
def self.up
create_table :users do |t|
t.string :name
t.timestamps
end
end
end

View File

@ -1,3 +0,0 @@
class User < ActiveRecord::Base
default_scope order('name')
end