Use model relations when creating objects from factories
Rather than passing around record ids explicitly, we can use the model relations and pass around the models. This makes reading the tests slightly simpler to read.
This commit is contained in:
parent
23c79ba2a3
commit
feb3b03227
5 changed files with 35 additions and 35 deletions
|
@ -213,7 +213,7 @@ class DiaryEntryControllerTest < ActionController::TestCase
|
||||||
end
|
end
|
||||||
|
|
||||||
def test_edit
|
def test_edit
|
||||||
entry = create(:diary_entry, :user_id => users(:normal_user).id)
|
entry = create(:diary_entry, :user => users(:normal_user))
|
||||||
|
|
||||||
# Make sure that you are redirected to the login page when you are
|
# Make sure that you are redirected to the login page when you are
|
||||||
# not logged in, without and with the id of the entry you want to edit
|
# not logged in, without and with the id of the entry you want to edit
|
||||||
|
@ -317,7 +317,7 @@ class DiaryEntryControllerTest < ActionController::TestCase
|
||||||
end
|
end
|
||||||
|
|
||||||
def test_comment
|
def test_comment
|
||||||
entry = create(:diary_entry, :user_id => users(:normal_user).id)
|
entry = create(:diary_entry, :user => users(:normal_user))
|
||||||
|
|
||||||
# Make sure that you are denied when you are not logged in
|
# Make sure that you are denied when you are not logged in
|
||||||
post :comment, :display_name => entry.user.display_name, :id => entry.id
|
post :comment, :display_name => entry.user.display_name, :id => entry.id
|
||||||
|
@ -377,7 +377,7 @@ class DiaryEntryControllerTest < ActionController::TestCase
|
||||||
|
|
||||||
def test_comment_spammy
|
def test_comment_spammy
|
||||||
# Find the entry to comment on
|
# Find the entry to comment on
|
||||||
entry = create(:diary_entry, :user_id => users(:normal_user).id)
|
entry = create(:diary_entry, :user => users(:normal_user))
|
||||||
post :subscribe, { :id => entry.id, :display_name => entry.user.display_name }, { :user => users(:normal_user).id }
|
post :subscribe, { :id => entry.id, :display_name => entry.user.display_name }, { :user => users(:normal_user).id }
|
||||||
|
|
||||||
# Generate some spammy content
|
# Generate some spammy content
|
||||||
|
@ -417,7 +417,7 @@ class DiaryEntryControllerTest < ActionController::TestCase
|
||||||
def test_list_all
|
def test_list_all
|
||||||
diary_entry = create(:diary_entry)
|
diary_entry = create(:diary_entry)
|
||||||
geo_entry = create(:diary_entry, :latitude => 51.50763, :longitude => -0.10781)
|
geo_entry = create(:diary_entry, :latitude => 51.50763, :longitude => -0.10781)
|
||||||
public_entry = create(:diary_entry, :user_id => users(:public_user).id)
|
public_entry = create(:diary_entry, :user => users(:public_user))
|
||||||
|
|
||||||
# Try a list of all diary entries
|
# Try a list of all diary entries
|
||||||
get :list
|
get :list
|
||||||
|
@ -425,9 +425,9 @@ class DiaryEntryControllerTest < ActionController::TestCase
|
||||||
end
|
end
|
||||||
|
|
||||||
def test_list_user
|
def test_list_user
|
||||||
diary_entry = create(:diary_entry, :user_id => users(:normal_user).id)
|
diary_entry = create(:diary_entry, :user => users(:normal_user))
|
||||||
geo_entry = create(:diary_entry, :user_id => users(:normal_user).id, :latitude => 51.50763, :longitude => -0.10781)
|
geo_entry = create(:diary_entry, :user => users(:normal_user), :latitude => 51.50763, :longitude => -0.10781)
|
||||||
_other_entry = create(:diary_entry, :user_id => users(:public_user).id)
|
_other_entry = create(:diary_entry, :user => users(:public_user))
|
||||||
|
|
||||||
# Try a list of diary entries for a valid user
|
# Try a list of diary entries for a valid user
|
||||||
get :list, :display_name => users(:normal_user).display_name
|
get :list, :display_name => users(:normal_user).display_name
|
||||||
|
@ -440,9 +440,9 @@ class DiaryEntryControllerTest < ActionController::TestCase
|
||||||
end
|
end
|
||||||
|
|
||||||
def test_list_friends
|
def test_list_friends
|
||||||
friend = create(:friend, :user_id => users(:normal_user).id)
|
friend = create(:friend, :befriender => users(:normal_user))
|
||||||
diary_entry = create(:diary_entry, :user_id => friend.friend_user_id)
|
diary_entry = create(:diary_entry, :user => friend.befriendee)
|
||||||
_other_entry = create(:diary_entry, :user_id => users(:second_public_user).id)
|
_other_entry = create(:diary_entry, :user => users(:second_public_user))
|
||||||
|
|
||||||
# Try a list of diary entries for your friends when not logged in
|
# Try a list of diary entries for your friends when not logged in
|
||||||
get :list, :friends => true
|
get :list, :friends => true
|
||||||
|
@ -457,7 +457,7 @@ class DiaryEntryControllerTest < ActionController::TestCase
|
||||||
end
|
end
|
||||||
|
|
||||||
def test_list_nearby
|
def test_list_nearby
|
||||||
diary_entry = create(:diary_entry, :user_id => users(:public_user).id)
|
diary_entry = create(:diary_entry, :user => users(:public_user))
|
||||||
|
|
||||||
# Try a list of diary entries for nearby users when not logged in
|
# Try a list of diary entries for nearby users when not logged in
|
||||||
get :list, :nearby => true
|
get :list, :nearby => true
|
||||||
|
@ -529,9 +529,9 @@ class DiaryEntryControllerTest < ActionController::TestCase
|
||||||
end
|
end
|
||||||
|
|
||||||
def test_rss_user
|
def test_rss_user
|
||||||
create(:diary_entry, :user_id => users(:normal_user).id)
|
create(:diary_entry, :user => users(:normal_user))
|
||||||
create(:diary_entry, :user_id => users(:normal_user).id)
|
create(:diary_entry, :user => users(:normal_user))
|
||||||
create(:diary_entry, :user_id => users(:public_user).id)
|
create(:diary_entry, :user => users(:public_user))
|
||||||
|
|
||||||
get :rss, :display_name => users(:normal_user).display_name, :format => :rss
|
get :rss, :display_name => users(:normal_user).display_name, :format => :rss
|
||||||
assert_response :success, "Should be able to get a specific users diary RSS"
|
assert_response :success, "Should be able to get a specific users diary RSS"
|
||||||
|
@ -554,23 +554,23 @@ class DiaryEntryControllerTest < ActionController::TestCase
|
||||||
|
|
||||||
def test_view
|
def test_view
|
||||||
# Try a normal entry that should work
|
# Try a normal entry that should work
|
||||||
diary_entry = create(:diary_entry, :user_id => users(:normal_user).id)
|
diary_entry = create(:diary_entry, :user => users(:normal_user))
|
||||||
get :view, :display_name => users(:normal_user).display_name, :id => diary_entry.id
|
get :view, :display_name => users(:normal_user).display_name, :id => diary_entry.id
|
||||||
assert_response :success
|
assert_response :success
|
||||||
assert_template :view
|
assert_template :view
|
||||||
|
|
||||||
# Try a deleted entry
|
# Try a deleted entry
|
||||||
diary_entry_deleted = create(:diary_entry, :user_id => users(:normal_user).id, :visible => false)
|
diary_entry_deleted = create(:diary_entry, :user => users(:normal_user), :visible => false)
|
||||||
get :view, :display_name => users(:normal_user).display_name, :id => diary_entry_deleted.id
|
get :view, :display_name => users(:normal_user).display_name, :id => diary_entry_deleted.id
|
||||||
assert_response :not_found
|
assert_response :not_found
|
||||||
|
|
||||||
# Try an entry by a suspended user
|
# Try an entry by a suspended user
|
||||||
diary_entry_suspended = create(:diary_entry, :user_id => users(:suspended_user).id)
|
diary_entry_suspended = create(:diary_entry, :user => users(:suspended_user))
|
||||||
get :view, :display_name => users(:suspended_user).display_name, :id => diary_entry_suspended.id
|
get :view, :display_name => users(:suspended_user).display_name, :id => diary_entry_suspended.id
|
||||||
assert_response :not_found
|
assert_response :not_found
|
||||||
|
|
||||||
# Try an entry by a deleted user
|
# Try an entry by a deleted user
|
||||||
diary_entry_deleted = create(:diary_entry, :user_id => users(:deleted_user).id)
|
diary_entry_deleted = create(:diary_entry, :user => users(:deleted_user))
|
||||||
get :view, :display_name => users(:deleted_user).display_name, :id => diary_entry_deleted.id
|
get :view, :display_name => users(:deleted_user).display_name, :id => diary_entry_deleted.id
|
||||||
assert_response :not_found
|
assert_response :not_found
|
||||||
end
|
end
|
||||||
|
@ -579,8 +579,8 @@ class DiaryEntryControllerTest < ActionController::TestCase
|
||||||
# Get a diary entry that has hidden comments
|
# Get a diary entry that has hidden comments
|
||||||
diary_entry = create(:diary_entry)
|
diary_entry = create(:diary_entry)
|
||||||
visible_comment = create(:diary_comment, :diary_entry => diary_entry)
|
visible_comment = create(:diary_comment, :diary_entry => diary_entry)
|
||||||
suspended_user_comment = create(:diary_comment, :diary_entry => diary_entry, :user_id => users(:suspended_user).id)
|
suspended_user_comment = create(:diary_comment, :diary_entry => diary_entry, :user => users(:suspended_user))
|
||||||
deleted_user_comment = create(:diary_comment, :diary_entry => diary_entry, :user_id => users(:deleted_user).id)
|
deleted_user_comment = create(:diary_comment, :diary_entry => diary_entry, :user => users(:deleted_user))
|
||||||
hidden_comment = create(:diary_comment, :diary_entry => diary_entry, :visible => false)
|
hidden_comment = create(:diary_comment, :diary_entry => diary_entry, :visible => false)
|
||||||
|
|
||||||
get :view, :display_name => users(:normal_user).display_name, :id => diary_entry.id
|
get :view, :display_name => users(:normal_user).display_name, :id => diary_entry.id
|
||||||
|
@ -615,7 +615,7 @@ class DiaryEntryControllerTest < ActionController::TestCase
|
||||||
end
|
end
|
||||||
|
|
||||||
def test_hidecomment
|
def test_hidecomment
|
||||||
diary_entry = create(:diary_entry, :user_id => users(:normal_user).id)
|
diary_entry = create(:diary_entry, :user => users(:normal_user))
|
||||||
diary_comment = create(:diary_comment, :diary_entry => diary_entry)
|
diary_comment = create(:diary_comment, :diary_entry => diary_entry)
|
||||||
# Try without logging in
|
# Try without logging in
|
||||||
post :hidecomment, :display_name => users(:normal_user).display_name, :id => diary_entry.id, :comment => diary_comment.id
|
post :hidecomment, :display_name => users(:normal_user).display_name, :id => diary_entry.id, :comment => diary_comment.id
|
||||||
|
@ -645,7 +645,7 @@ class DiaryEntryControllerTest < ActionController::TestCase
|
||||||
end
|
end
|
||||||
|
|
||||||
# Test a user with a comment
|
# Test a user with a comment
|
||||||
create(:diary_comment, :user_id => users(:public_user).id)
|
create(:diary_comment, :user => users(:public_user))
|
||||||
|
|
||||||
get :comments, :display_name => users(:public_user).display_name
|
get :comments, :display_name => users(:public_user).display_name
|
||||||
assert_response :success
|
assert_response :success
|
||||||
|
@ -664,7 +664,7 @@ class DiaryEntryControllerTest < ActionController::TestCase
|
||||||
end
|
end
|
||||||
|
|
||||||
def test_subscribe_success
|
def test_subscribe_success
|
||||||
diary_entry = create(:diary_entry, :user_id => users(:normal_user).id)
|
diary_entry = create(:diary_entry, :user => users(:normal_user))
|
||||||
|
|
||||||
assert_difference "diary_entry.subscribers.count", 1 do
|
assert_difference "diary_entry.subscribers.count", 1 do
|
||||||
post :subscribe, { :id => diary_entry.id, :display_name => diary_entry.user.display_name }, { :user => users(:public_user).id }
|
post :subscribe, { :id => diary_entry.id, :display_name => diary_entry.user.display_name }, { :user => users(:public_user).id }
|
||||||
|
@ -673,7 +673,7 @@ class DiaryEntryControllerTest < ActionController::TestCase
|
||||||
end
|
end
|
||||||
|
|
||||||
def test_subscribe_fail
|
def test_subscribe_fail
|
||||||
diary_entry = create(:diary_entry, :user_id => users(:normal_user).id)
|
diary_entry = create(:diary_entry, :user => users(:normal_user))
|
||||||
|
|
||||||
# not signed in
|
# not signed in
|
||||||
assert_no_difference "diary_entry.subscribers.count" do
|
assert_no_difference "diary_entry.subscribers.count" do
|
||||||
|
@ -693,7 +693,7 @@ class DiaryEntryControllerTest < ActionController::TestCase
|
||||||
end
|
end
|
||||||
|
|
||||||
def test_unsubscribe_success
|
def test_unsubscribe_success
|
||||||
diary_entry = create(:diary_entry, :user_id => users(:normal_user).id)
|
diary_entry = create(:diary_entry, :user => users(:normal_user))
|
||||||
|
|
||||||
post :subscribe, { :id => diary_entry.id, :display_name => diary_entry.user.display_name }, { :user => users(:public_user).id }
|
post :subscribe, { :id => diary_entry.id, :display_name => diary_entry.user.display_name }, { :user => users(:public_user).id }
|
||||||
assert_difference "diary_entry.subscribers.count", -1 do
|
assert_difference "diary_entry.subscribers.count", -1 do
|
||||||
|
@ -703,7 +703,7 @@ class DiaryEntryControllerTest < ActionController::TestCase
|
||||||
end
|
end
|
||||||
|
|
||||||
def test_unsubscribe_fail
|
def test_unsubscribe_fail
|
||||||
diary_entry = create(:diary_entry, :user_id => users(:normal_user).id)
|
diary_entry = create(:diary_entry, :user => users(:normal_user))
|
||||||
|
|
||||||
# not signed in
|
# not signed in
|
||||||
assert_no_difference "diary_entry.subscribers.count" do
|
assert_no_difference "diary_entry.subscribers.count" do
|
||||||
|
|
|
@ -245,8 +245,8 @@ class NotesControllerTest < ActionController::TestCase
|
||||||
|
|
||||||
# Ensure that emails are sent to users
|
# Ensure that emails are sent to users
|
||||||
note_with_comments_by_users = create(:note) do |note|
|
note_with_comments_by_users = create(:note) do |note|
|
||||||
create(:note_comment, :note => note, :author_id => users(:normal_user).id)
|
create(:note_comment, :note => note, :author => users(:normal_user))
|
||||||
create(:note_comment, :note => note, :author_id => users(:second_public_user).id)
|
create(:note_comment, :note => note, :author => users(:second_public_user))
|
||||||
end
|
end
|
||||||
assert_difference "NoteComment.count", 1 do
|
assert_difference "NoteComment.count", 1 do
|
||||||
assert_difference "ActionMailer::Base.deliveries.size", 2 do
|
assert_difference "ActionMailer::Base.deliveries.size", 2 do
|
||||||
|
@ -934,13 +934,13 @@ class NotesControllerTest < ActionController::TestCase
|
||||||
|
|
||||||
def test_mine_success
|
def test_mine_success
|
||||||
create(:note) do |note|
|
create(:note) do |note|
|
||||||
create(:note_comment, :note => note, :author_id => users(:normal_user).id)
|
create(:note_comment, :note => note, :author => users(:normal_user))
|
||||||
end
|
end
|
||||||
create(:note) do |note|
|
create(:note) do |note|
|
||||||
create(:note_comment, :note => note, :author_id => users(:second_public_user).id)
|
create(:note_comment, :note => note, :author => users(:second_public_user))
|
||||||
end
|
end
|
||||||
create(:note, :status => "hidden") do |note|
|
create(:note, :status => "hidden") do |note|
|
||||||
create(:note_comment, :note => note, :author_id => users(:second_public_user).id)
|
create(:note_comment, :note => note, :author => users(:second_public_user))
|
||||||
end
|
end
|
||||||
|
|
||||||
# Note that the table rows include a header row
|
# Note that the table rows include a header row
|
||||||
|
|
|
@ -1191,7 +1191,7 @@ class UserControllerTest < ActionController::TestCase
|
||||||
# Get users to work with
|
# Get users to work with
|
||||||
user = users(:normal_user)
|
user = users(:normal_user)
|
||||||
friend = users(:public_user)
|
friend = users(:public_user)
|
||||||
create(:friend, :user_id => user.id, :friend_user_id => friend.id)
|
create(:friend, :befriender => user, :befriendee => friend)
|
||||||
|
|
||||||
# Check that the users are friends
|
# Check that the users are friends
|
||||||
assert Friend.where(:user_id => user.id, :friend_user_id => friend.id).first
|
assert Friend.where(:user_id => user.id, :friend_user_id => friend.id).first
|
||||||
|
|
|
@ -54,7 +54,7 @@ class NoteTest < ActiveSupport::TestCase
|
||||||
comment = create(:note_comment)
|
comment = create(:note_comment)
|
||||||
assert_nil comment.note.author
|
assert_nil comment.note.author
|
||||||
|
|
||||||
comment = create(:note_comment, :author_id => users(:normal_user).id)
|
comment = create(:note_comment, :author => users(:normal_user))
|
||||||
assert_equal users(:normal_user), comment.note.author
|
assert_equal users(:normal_user), comment.note.author
|
||||||
end
|
end
|
||||||
|
|
||||||
|
|
|
@ -106,7 +106,7 @@ class UserTest < ActiveSupport::TestCase
|
||||||
end
|
end
|
||||||
|
|
||||||
def test_friend_with
|
def test_friend_with
|
||||||
create(:friend, :user_id => users(:normal_user).id, :friend_user_id => users(:public_user).id)
|
create(:friend, :befriender => users(:normal_user), :befriendee => users(:public_user))
|
||||||
assert users(:normal_user).is_friends_with?(users(:public_user))
|
assert users(:normal_user).is_friends_with?(users(:public_user))
|
||||||
assert !users(:normal_user).is_friends_with?(users(:inactive_user))
|
assert !users(:normal_user).is_friends_with?(users(:inactive_user))
|
||||||
assert !users(:public_user).is_friends_with?(users(:normal_user))
|
assert !users(:public_user).is_friends_with?(users(:normal_user))
|
||||||
|
@ -133,7 +133,7 @@ class UserTest < ActiveSupport::TestCase
|
||||||
# it should be a one way friend associatation
|
# it should be a one way friend associatation
|
||||||
norm = users(:normal_user)
|
norm = users(:normal_user)
|
||||||
sec = users(:public_user)
|
sec = users(:public_user)
|
||||||
create(:friend, :user_id => norm.id, :friend_user_id => sec.id)
|
create(:friend, :befriender => norm, :befriendee => sec)
|
||||||
assert_equal 1, Friend.count
|
assert_equal 1, Friend.count
|
||||||
assert_equal [sec], norm.friend_users
|
assert_equal [sec], norm.friend_users
|
||||||
assert_equal 1, norm.friend_users.size
|
assert_equal 1, norm.friend_users.size
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue