X-Git-Url: https://git.openstreetmap.org./rails.git/blobdiff_plain/b095b59d5e0ee805e49980af80b21bd1acff1345..ac31625f1b4c92f0b238eb93b4419ca56f201e3d:/test/models/diary_entry_test.rb diff --git a/test/models/diary_entry_test.rb b/test/models/diary_entry_test.rb index e8667bc74..eb794acec 100644 --- a/test/models/diary_entry_test.rb +++ b/test/models/diary_entry_test.rb @@ -1,51 +1,55 @@ -require 'test_helper' +require "test_helper" class DiaryEntryTest < ActiveSupport::TestCase - api_fixtures - fixtures :diary_entries, :diary_comments, :languages - - def test_diary_entry_count - assert_equal 5, DiaryEntry.count + def setup + # Create the default language for diary entries + create(:language, :code => "en") end - + def test_diary_entry_validations diary_entry_valid({}) - diary_entry_valid({:title => ''}, false) - diary_entry_valid({:title => 'a'*255}) - diary_entry_valid({:title => 'a'*256}, false) - diary_entry_valid({:body => ''}, false) - diary_entry_valid({:latitude => 90}) - diary_entry_valid({:latitude => 90.00001}, false) - diary_entry_valid({:latitude => -90}) - diary_entry_valid({:latitude => -90.00001}, false) - diary_entry_valid({:longitude => 180}) - diary_entry_valid({:longitude => 180.00001}, false) - diary_entry_valid({:longitude => -180}) - diary_entry_valid({:longitude => -180.00001}, false) + diary_entry_valid({ :title => "" }, :valid => false) + diary_entry_valid({ :title => "a" * 255 }) + diary_entry_valid({ :title => "a" * 256 }, :valid => false) + diary_entry_valid({ :body => "" }, :valid => false) + diary_entry_valid({ :latitude => 90 }) + diary_entry_valid({ :latitude => 90.00001 }, :valid => false) + diary_entry_valid({ :latitude => -90 }) + diary_entry_valid({ :latitude => -90.00001 }, :valid => false) + diary_entry_valid({ :longitude => 180 }) + diary_entry_valid({ :longitude => 180.00001 }, :valid => false) + diary_entry_valid({ :longitude => -180 }) + diary_entry_valid({ :longitude => -180.00001 }, :valid => false) end def test_diary_entry_visible - assert_equal 4, DiaryEntry.visible.count + visible = create(:diary_entry) + hidden = create(:diary_entry, :visible => false) + assert_includes DiaryEntry.visible, visible assert_raise ActiveRecord::RecordNotFound do - DiaryEntry.visible.find(diary_entries(:deleted_entry).id) + DiaryEntry.visible.find(hidden.id) end end - + def test_diary_entry_comments - assert_equal 0, diary_entries(:normal_user_entry_1).comments.count - assert_equal 4, diary_entries(:normal_user_geo_entry).comments.count + diary = create(:diary_entry) + assert_equal(0, diary.comments.count) + create(:diary_comment, :diary_entry => diary) + assert_equal(1, diary.comments.count) end - + def test_diary_entry_visible_comments - assert_equal 0, diary_entries(:normal_user_entry_1).visible_comments.count - assert_equal 1, diary_entries(:normal_user_geo_entry).visible_comments.count + diary = create(:diary_entry) + create(:diary_comment, :diary_entry => diary) + create(:diary_comment, :diary_entry => diary, :visible => false) + assert_equal 1, diary.visible_comments.count + assert_equal 2, diary.comments.count end -private + private - def diary_entry_valid(attrs, result = true) - entry = DiaryEntry.new(diary_entries(:normal_user_entry_1).attributes) - entry.assign_attributes(attrs) - assert_equal result, entry.valid?, "Expected #{attrs.inspect} to be #{result}" - end + def diary_entry_valid(attrs, valid: true) + entry = build(:diary_entry, attrs) + assert_equal valid, entry.valid?, "Expected #{attrs.inspect} to be #{valid}" + end end