diff --git a/Gemfile b/Gemfile index 45d4565803f7f26aee4977e2788eb1e995d7a9b1..4c739a098abb10109e430db13ab6a741361a2f0d 100644 --- a/Gemfile +++ b/Gemfile @@ -62,7 +62,7 @@ group :test do gem 'rspec', '>= 2.0.0' gem 'rspec-rails', '>= 2.0.0' gem 'mocha' - gem 'database_cleaner', '0.5.2' + gem 'database_cleaner', '0.6.0' gem 'webmock', :require => false gem 'jasmine', :path => 'vendor/gems/jasmine', :require => false gem 'mongrel', :require => false if RUBY_VERSION.include? '1.8' diff --git a/Gemfile.lock b/Gemfile.lock index fc31e4b6c06e8280511bcfbab38a46f5575fe9fb..95cdd367153aba8c74a54630f04a9adc7d7f8be9 100644 --- a/Gemfile.lock +++ b/Gemfile.lock @@ -136,7 +136,7 @@ GEM cucumber (>= 0.8.0) culerity (0.2.14) daemons (1.1.0) - database_cleaner (0.5.2) + database_cleaner (0.6.0) devise (1.1.3) bcrypt-ruby (~> 2.1.2) warden (~> 0.10.7) @@ -366,7 +366,7 @@ DEPENDENCIES chef (= 0.9.12) cloudfiles (= 1.4.10) cucumber-rails (= 0.3.2) - database_cleaner (= 0.5.2) + database_cleaner (= 0.6.0) devise (= 1.1.3) devise_invitable (= 0.3.5) em-websocket! diff --git a/spec/controllers/aspects_controller_spec.rb b/spec/controllers/aspects_controller_spec.rb index e3445f2d4b217537a01eda289d38588d81316deb..01ce07cc4a02a0afa6d38b5f51e8ee40d0d6898d 100644 --- a/spec/controllers/aspects_controller_spec.rb +++ b/spec/controllers/aspects_controller_spec.rb @@ -9,14 +9,12 @@ describe AspectsController do render_views before do - @user = Factory.create(:user) - @user2 = Factory.create(:user) + @user = alice + @user2 = bob - @aspect0 = @user.aspects.create(:name => "lame-os") + @aspect0 = @user.aspects.first @aspect1 = @user.aspects.create(:name => "another aspect") - @aspect2 = @user2.aspects.create(:name => "party people") - - connect_users(@user, @aspect0, @user2, @aspect2) + @aspect2 = @user2.aspects.first @contact = @user.contact_for(@user2.person) @user.getting_started = false diff --git a/spec/controllers/comments_controller_spec.rb b/spec/controllers/comments_controller_spec.rb index ad4fa790e8681abb1f0795b3c97b544f643286bd..61a89fdd8ce6a8c36b45bb83571e5dbdcf938a7a 100644 --- a/spec/controllers/comments_controller_spec.rb +++ b/spec/controllers/comments_controller_spec.rb @@ -7,14 +7,14 @@ require 'spec_helper' describe CommentsController do render_views - let!(:user1) { Factory.create(:user) } - let!(:aspect1) { user1.aspects.create(:name => "AWESOME!!") } + before do + @user1 = alice + @user2 = bob - let!(:user2) { Factory.create(:user) } - let!(:aspect2) { user2.aspects.create(:name => "WIN!!") } + @aspect1 = @user1.aspects.first + @aspect2 = @user2.aspects.first - before do - sign_in :user, user1 + sign_in :user, @user1 end describe '#create' do @@ -24,7 +24,7 @@ describe CommentsController do } context "on my own post" do before do - @post = user1.post :status_message, :message => 'GIANTS', :to => aspect1.id + @post = @user1.post :status_message, :message => 'GIANTS', :to => @aspect1.id end it 'responds to format js' do post :create, comment_hash.merge(:format => 'js') @@ -35,8 +35,8 @@ describe CommentsController do context "on a post from a contact" do before do - connect_users(user1, aspect1, user2, aspect2) - @post = user2.post :status_message, :message => 'GIANTS', :to => aspect2.id + connect_users(@user1, @aspect1, @user2, @aspect2) + @post = @user2.post :status_message, :message => 'GIANTS', :to => @aspect2.id end it 'comments' do post :create, comment_hash @@ -46,10 +46,10 @@ describe CommentsController do new_user = Factory.create(:user) comment_hash[:person_id] = new_user.person.id.to_s post :create, comment_hash - Comment.find_by_text(comment_hash[:text]).person_id.should == user1.person.id + Comment.find_by_text(comment_hash[:text]).person_id.should == @user1.person.id end it "doesn't overwrite id" do - old_comment = user1.comment("hello", :on => @post) + old_comment = @user1.comment("hello", :on => @post) comment_hash[:id] = old_comment.id post :create, comment_hash old_comment.reload.text.should == 'hello' @@ -57,10 +57,10 @@ describe CommentsController do end context 'on a post from a stranger' do before do - @post = user2.post :status_message, :message => 'GIANTS', :to => aspect2.id + @post = @user2.post :status_message, :message => 'GIANTS', :to => @aspect2.id end it 'posts no comment' do - user1.should_not_receive(:comment) + @user1.should_not_receive(:comment) post :create, comment_hash response.code.should == '406' end diff --git a/spec/misc_spec.rb b/spec/misc_spec.rb index 43a83c866713f640d92642003a75f3bada739828..cbe75cccf9ac2593001c275b757403ffc96ded83 100644 --- a/spec/misc_spec.rb +++ b/spec/misc_spec.rb @@ -5,30 +5,25 @@ require 'spec_helper' describe 'making sure the spec runner works' do - it 'factoy creates a user with a person saved' do + it 'factory creates a user with a person saved' do user = Factory.create(:user) loaded_user = User.find(user.id) loaded_user.person.owner_id.should == user.id end - - describe 'factories' do - describe 'build' do - it 'does not save a built user' do - Factory.build(:user).should_not be_persisted - end - - it 'does not save a built person' do - Factory.build(:person).should_not be_persisted - end + describe 'fixtures' do + it 'loads fixtures' do + User.count.should == 3 end end describe '#connect_users' do before do - @user1 = Factory.create(:user) - @aspect1 = @user1.aspects.create(:name => "losers") - @user2 = Factory.create(:user) - @aspect2 = @user2.aspects.create(:name => "bruisers") + @user1 = User.where(:username => 'alice').first + @user2 = User.where(:username => 'eve').first + + @aspect1 = @user1.aspects.first + @aspect2 = @user2.aspects.first + connect_users(@user1, @aspect1, @user2, @aspect2) end diff --git a/spec/spec_helper.rb b/spec/spec_helper.rb index ecb34ba16544113e7572d74076979d5487e6c84c..fa3ef253bf3d22a5599f73091b78497fed4b1639 100644 --- a/spec/spec_helper.rb +++ b/spec/spec_helper.rb @@ -17,9 +17,11 @@ include HelperMethods # # Requires supporting files with custom matchers and macros, etc, # in ./support/ and its subdirectories. +#DatabaseCleaner.clean_with(:truncation) Dir["#{File.dirname(__FILE__)}/support/**/*.rb"].each {|f| require f} RSpec.configure do |config| + #DatabaseCleaner.strategy = nil config.mock_with :mocha config.mock_with :rspec diff --git a/spec/support/fixture_builder.rb b/spec/support/fixture_builder.rb index c81d2f55b8ca41b7866cb2b1056fc22c1578a7bd..1fc3a883907724fce4a0dd013f1757dba5839d3f 100644 --- a/spec/support/fixture_builder.rb +++ b/spec/support/fixture_builder.rb @@ -13,3 +13,15 @@ FixtureBuilder.configure do |fbuilder| connect_users(bob, bob.aspects.first, eve, eve.aspects.first) end end + +def alice + User.where(:username => 'alice').first +end + +def bob + User.where(:username => 'bob').first +end + +def eve + User.where(:username => 'eve').first +end