diff options
| author | Kir | 2012-01-26 12:36:32 +0200 | 
|---|---|---|
| committer | Kir | 2012-01-26 12:36:32 +0200 | 
| commit | cf8f7b3ae751d61ac3e74728c006c492acd78de7 (patch) | |
| tree | 7204a5f198c833937cecd84f84c163c6ecce7457 /spec | |
| parent | bac1756272bee288c5aa377e9a4692fb9382b10d (diff) | |
| download | inboxes-cf8f7b3ae751d61ac3e74728c006c492acd78de7.tar.bz2 | |
Added fake_app
Diffstat (limited to 'spec')
| -rw-r--r-- | spec/fake_app.rb | 87 | ||||
| -rw-r--r-- | spec/spec_helper.rb | 29 | 
2 files changed, 115 insertions, 1 deletions
| diff --git a/spec/fake_app.rb b/spec/fake_app.rb new file mode 100644 index 0000000..37df9e2 --- /dev/null +++ b/spec/fake_app.rb @@ -0,0 +1,87 @@ +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 +  devise_for :users +end + +# models +class User < ActiveRecord::Base +  devise :database_authenticatable, :registerable, +         :recoverable, :rememberable, :trackable, :validatable +  attr_accessible :email, :password, :password_confirmation, :remember_me, :name +  validates :name, :presence => true, :uniqueness => true +  has_inboxes +end + +# controllers +class ApplicationController < ActionController::Base +  before_filter :assign_unread_discussions +   +  private +   +  def assign_unread_discussions +    @unread_discussions_count = Discussion.unread_for(current_user).count if user_signed_in? +  end +end + +# helpers +Object.const_set(:ApplicationHelper, Module.new) + +#migrations +ActiveRecord::Base.silence do +  ActiveRecord::Migration.verbose = false +  ActiveRecord::Schema.define :version => 0 do +    create_table "users", :force => true do |t| +      t.string   "email",                                 :default => "", :null => false +      t.string   "encrypted_password",     :limit => 128, :default => "", :null => false +      t.string   "reset_password_token" +      t.datetime "reset_password_sent_at" +      t.datetime "remember_created_at" +      t.integer  "sign_in_count",                         :default => 0 +      t.datetime "current_sign_in_at" +      t.datetime "last_sign_in_at" +      t.string   "current_sign_in_ip" +      t.string   "last_sign_in_ip" +      t.datetime "created_at" +      t.datetime "updated_at" +      t.string   "name" +    end +     +    create_table "discussions", :force => true do |t| +      t.integer  "user_id" +      t.integer  "messages_count", :default => 0 +      t.boolean  "is_private",     :default => true +      t.datetime "created_at" +      t.datetime "updated_at" +    end + +    create_table "messages", :force => true do |t| +      t.integer  "user_id" +      t.integer  "discussion_id" +      t.text     "body" +      t.datetime "created_at" +      t.datetime "updated_at" +    end + +    create_table "speakers", :force => true do |t| +      t.integer  "user_id" +      t.integer  "discussion_id" +      t.datetime "created_at" +      t.datetime "updated_at" +    end +  end +end
\ No newline at end of file diff --git a/spec/spec_helper.rb b/spec/spec_helper.rb index 174ab57..a0e9366 100644 --- a/spec/spec_helper.rb +++ b/spec/spec_helper.rb @@ -1,2 +1,29 @@ -require 'inboxes' +$LOAD_PATH.unshift(File.join(File.dirname(__FILE__), '..', 'lib')) +$LOAD_PATH.unshift(File.dirname(__FILE__)) +require 'rails' +# require 'inboxes' +require 'devise' +# require 'database_cleaner' +# Ensure we use 'syck' instead of 'psych' in 1.9.2 +# RubyGems >= 1.5.0 uses 'psych' on 1.9.2, but +# Psych does not yet support YAML 1.1 merge keys. +# Merge keys is often used in mongoid.yml +# See: http://redmine.ruby-lang.org/issues/show/4300 +if RUBY_VERSION >= '1.9.2' +  YAML::ENGINE.yamler = 'syck' +end +# require 'fake_gem' +require 'fake_app' +require 'rspec/rails' +# Requires supporting files with custom matchers and macros, etc, +# in ./support/ and its subdirectories. +Dir["#{File.dirname(__FILE__)}/support/**/*.rb"].each {|f| require f} + +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' +    # CreateAllTables.up unless ActiveRecord::Base.connection.table_exists? 'users' +  end +end
\ No newline at end of file | 
