aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorKir2012-01-26 20:03:15 +0200
committerKir2012-01-26 20:03:15 +0200
commitd0eb10ce77dcbde6ea2f17936951d463880d22e1 (patch)
treefbd53fd93b3ee9514884b2f822247d488487f1fc
parent48f44e9d6cf1d772178fcad989bd395ab9e50a00 (diff)
parent3637c99f3e7508cc09cd0f87ed148047393a4ef7 (diff)
downloadinboxes-d0eb10ce77dcbde6ea2f17936951d463880d22e1.tar.bz2
Fixing specs
-rw-r--r--inboxes.gemspec1
-rw-r--r--spec/inboxes/discussions_controller_spec.rb192
-rw-r--r--spec/support/factories.rb23
3 files changed, 97 insertions, 119 deletions
diff --git a/inboxes.gemspec b/inboxes.gemspec
index 1b05f38..82ec3c3 100644
--- a/inboxes.gemspec
+++ b/inboxes.gemspec
@@ -26,6 +26,7 @@ Gem::Specification.new do |s|
s.add_runtime_dependency "cancan"
s.add_development_dependency "sqlite3"
+ # s.add_development_dependency 'dm-sqlite-adapter', ['>= 1.1.0']
s.add_development_dependency 'rspec', ['>= 0']
s.add_development_dependency 'factory_girl', ['~> 1.2']
s.add_development_dependency 'rspec-rails', ['>= 0']
diff --git a/spec/inboxes/discussions_controller_spec.rb b/spec/inboxes/discussions_controller_spec.rb
index 16a2514..564e9e8 100644
--- a/spec/inboxes/discussions_controller_spec.rb
+++ b/spec/inboxes/discussions_controller_spec.rb
@@ -1,96 +1,96 @@
-# require 'spec_helper'
-#
-# describe Inboxes::DiscussionsController do
-# context "Guest" do
-# it "should not see discussions list" do
-# get :index
-# response.should redirect_to(sign_in_url)
-# end
-#
-# it "should not see new action" do
-# get :new
-# response.should redirect_to(sign_in_url)
-# end
-#
-# it "should not create discussion if model is valid" do
-# recipient_ids = [Factory(:user).id, Factory(:user).id]
-# post(:create,
-# :discussion => {
-# :recipient_ids => recipient_ids,
-# :messages_attributes => {
-# 0 => {:body => Factory.next(:string)}
-# }
-# }
-# )
-#
-# response.should redirect_to(sign_in_url)
-# end
-#
-# end
-#
-# context("Authenticated admin") do
-# before(:each) do
-# @request.env["devise.mapping"] = Devise.mappings[:user]
-# @user = Factory(:user)
-# @user.set_role(:admin)
-# sign_in @user
-# end
-#
-# it "should see discussions list" do
-# get :index
-# response.should render_template(:index)
-# end
-#
-# it "should see new action" do
-# get :new
-# response.should render_template(:new)
-# end
-#
-# it "should open discussion" do
-# discussion = Factory.build(:discussion)
-# discussion.recipient_ids = [@user, Factory(:user)].map { |u| u.id }
-# discussion.save.should be true
-#
-# get(:show, :id => discussion)
-# response.status.should be 200
-# end
-#
-# it "should create private discussion if model is valid" do
-# recipient_ids = [Factory(:user).id, Factory(:user).id]
-# post(:create,
-# :discussion => {
-# :recipient_ids => recipient_ids,
-# :messages_attributes => {
-# 0 => {:body => Factory.next(:string)}
-# }
-# }
-# )
-#
-# response.should redirect_to(discussion_url(assigns[:discussion]))
-# end
-#
-# it "should create group discussion if model is valid" do
-# recipient_ids = [Factory(:user).id, Factory(:user).id, Factory(:user).id]
-# post(:create,
-# :discussion => {
-# :recipient_ids => recipient_ids,
-# :messages_attributes => {
-# 0 => {:body => Factory.next(:string)}
-# }
-# }
-# )
-#
-# response.should redirect_to(discussion_url(assigns[:discussion]))
-# end
-#
-# it "should not create discussion with empty message" do
-# discussion = Discussion.new
-# discussion.recipient_ids = [Factory(:user).id, Factory(:user).id, Factory(:user).id]
-# post(:create, :discussion => discussion)
-#
-# response.should render_template(:new)
-# end
-#
-# end
-#
-# end
+require 'spec_helper'
+
+describe Inboxes::DiscussionsController do
+ context "Guest" do
+ it "should not see discussions list" do
+ get :index
+ response.should redirect_to(sign_in_url)
+ end
+
+ it "should not see new action" do
+ get :new
+ response.should redirect_to(sign_in_url)
+ end
+
+ it "should not create discussion if model is valid" do
+ recipient_ids = [Factory(:user).id, Factory(:user).id]
+ post(:create,
+ :discussion => {
+ :recipient_ids => recipient_ids,
+ :messages_attributes => {
+ 0 => {:body => Factory.next(:string)}
+ }
+ }
+ )
+
+ response.should redirect_to(sign_in_url)
+ end
+
+ end
+
+ context("Authenticated admin") do
+ before(:each) do
+ @request.env["devise.mapping"] = Devise.mappings[:user]
+ @user = Factory(:user)
+ @user.set_role(:admin)
+ sign_in @user
+ end
+
+ it "should see discussions list" do
+ get :index
+ response.should render_template(:index)
+ end
+
+ it "should see new action" do
+ get :new
+ response.should render_template(:new)
+ end
+
+ it "should open discussion" do
+ discussion = Factory.build(:discussion)
+ discussion.recipient_ids = [@user, Factory(:user)].map { |u| u.id }
+ discussion.save.should be true
+
+ get(:show, :id => discussion)
+ response.status.should be 200
+ end
+
+ it "should create private discussion if model is valid" do
+ recipient_ids = [Factory(:user).id, Factory(:user).id]
+ post(:create,
+ :discussion => {
+ :recipient_ids => recipient_ids,
+ :messages_attributes => {
+ 0 => {:body => Factory.next(:string)}
+ }
+ }
+ )
+
+ response.should redirect_to(discussion_url(assigns[:discussion]))
+ end
+
+ it "should create group discussion if model is valid" do
+ recipient_ids = [Factory(:user).id, Factory(:user).id, Factory(:user).id]
+ post(:create,
+ :discussion => {
+ :recipient_ids => recipient_ids,
+ :messages_attributes => {
+ 0 => {:body => Factory.next(:string)}
+ }
+ }
+ )
+
+ response.should redirect_to(discussion_url(assigns[:discussion]))
+ end
+
+ it "should not create discussion with empty message" do
+ discussion = Discussion.new
+ discussion.recipient_ids = [Factory(:user).id, Factory(:user).id, Factory(:user).id]
+ post(:create, :discussion => discussion)
+
+ response.should render_template(:new)
+ end
+
+ end
+
+end
diff --git a/spec/support/factories.rb b/spec/support/factories.rb
deleted file mode 100644
index 9a5bb87..0000000
--- a/spec/support/factories.rb
+++ /dev/null
@@ -1,23 +0,0 @@
-# FactoryGirl.define do
-#
-# factory :user do
-# email {Factory.next(:email)}
-# first_name 'user'
-# last_name 'usered'
-# username {Factory.next(:login)}
-# password "foobar"
-# password_confirmation { |u| u.password }
-# role 2
-# end
-#
-# factory :discussion do
-# recipient_ids {[Factory(:user).id, Factory(:user).id]}
-# end
-#
-# factory :message do
-# association :user
-# association :discussion
-# # user {Factory(:user)}
-# # discussion {Factory(:discussion)}
-# end
-# end \ No newline at end of file