summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorelijah <elijah@riseup.net>2013-07-04 03:37:44 -0700
committerelijah <elijah@riseup.net>2013-07-04 04:15:04 -0700
commit89eace3da1cba0b8dad8cc62cc88bf5ddb1faa5e (patch)
treea3ad233c8b765182ea20c78b16f30bc5b8c295df
parent64bacc45ea1a023b154b07ec0790f762a79d20d5 (diff)
fix ticket tests, get :admin_user factory to work.
-rw-r--r--help/test/functional/tickets_controller_test.rb13
-rw-r--r--users/test/factories.rb4
-rw-r--r--users/test/support/stub_record_helper.rb9
3 files changed, 16 insertions, 10 deletions
diff --git a/help/test/functional/tickets_controller_test.rb b/help/test/functional/tickets_controller_test.rb
index f8627d8..6479ba4 100644
--- a/help/test/functional/tickets_controller_test.rb
+++ b/help/test/functional/tickets_controller_test.rb
@@ -181,23 +181,24 @@ class TicketsControllerTest < ActionController::TestCase
test "admin_status mine vs all" do
testticket = FactoryGirl.create :ticket
+ user = find_record :user
login :is_admin? => true, :email => nil
- get :index, {:admin_status => "all", :open_status => "open"}
+ get :index, {:open_status => "open"}
assert assigns(:all_tickets).include?(testticket)
- get :index, {:admin_status => "mine", :open_status => "open"}
+ get :index, {:user_id => user.id, :open_status => "open"}
assert !assigns(:all_tickets).include?(testticket)
testticket.destroy
end
test "commenting on a ticket adds to tickets that are mine" do
testticket = FactoryGirl.create :ticket
- login :is_admin? => true, :email => nil
-
- get :index, {:admin_status => "mine", :open_status => "open"}
+ user = find_record :admin_user
+ login user
+ get :index, {:user_id => user.id, :open_status => "open"}
assert_difference('assigns[:all_tickets].count') do
put :update, :id => testticket.id, :ticket => {:comments_attributes => {"0" => {"body" =>"NEWER comment"}}}
- get :index, {:admin_status => "mine", :open_status => "open"}
+ get :index, {:user_id => user.id, :open_status => "open"}
end
assert assigns(:all_tickets).include?(assigns(:ticket))
diff --git a/users/test/factories.rb b/users/test/factories.rb
index 6b094bd..777704b 100644
--- a/users/test/factories.rb
+++ b/users/test/factories.rb
@@ -13,7 +13,9 @@ FactoryGirl.define do
end
factory :admin_user do
- is_admin? true
+ after(:build) do |admin|
+ admin.stubs(:is_admin?).returns(true)
+ end
end
end
end
diff --git a/users/test/support/stub_record_helper.rb b/users/test/support/stub_record_helper.rb
index 168a827..8aa1973 100644
--- a/users/test/support/stub_record_helper.rb
+++ b/users/test/support/stub_record_helper.rb
@@ -1,15 +1,18 @@
module StubRecordHelper
- # Will expect find_by_param or find_by_id to be called on klass and
+ #
+ # We will stub find_by_param or find_by_id to be called on klass and
# return the record given.
+ #
# If no record is given but a hash or nil will create a stub based on
# that instead and returns the stub.
+ #
def find_record(factory, attribs_hash = {})
- attribs_hash.reverse_merge!(:id => Random.rand(10000).to_s)
+ attribs_hash = attribs_hash.reverse_merge(:id => Random.rand(10000).to_s)
record = stub_record factory, attribs_hash
klass = record.class
finder = klass.respond_to?(:find_by_param) ? :find_by_param : :find
- klass.expects(finder).with(record.to_param.to_s).returns(record)
+ klass.stubs(finder).with(record.to_param.to_s).returns(record)
return record
end