X-Git-Url: https://git.openstreetmap.org/rails.git/blobdiff_plain/721dd9c27d299455b9159457a095716f797389f1..97e0d5ad1f89b4717ddcc5d7280dc6c39341aa93:/test/unit/diary_entry_test.rb diff --git a/test/unit/diary_entry_test.rb b/test/unit/diary_entry_test.rb index 0e10f8a9a..2d5c34f83 100644 --- a/test/unit/diary_entry_test.rb +++ b/test/unit/diary_entry_test.rb @@ -1,11 +1,51 @@ require File.dirname(__FILE__) + '/../test_helper' -class DiaryEntryTest < Test::Unit::TestCase - fixtures :diary_entries - +class DiaryEntryTest < ActiveSupport::TestCase + api_fixtures + fixtures :diary_entries, :diary_comments, :languages def test_diary_entry_count - assert_equal 2, DiaryEntry.count + assert_equal 3, DiaryEntry.count + 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) + end + + def test_diary_entry_visible + assert_equal 2, DiaryEntry.visible.count + assert_raise ActiveRecord::RecordNotFound do + DiaryEntry.visible.find(diary_entries(:deleted_entry).id) + end end + def test_diary_entry_comments + assert_equal 0, diary_entries(:normal_user_entry_1).comments.count + assert_equal 3, diary_entries(:normal_user_geo_entry).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 + end + +private + + def diary_entry_valid(attrs, result = true) + entry = DiaryEntry.new(diary_entries(:normal_user_entry_1).attributes, :without_protection => true) + entry.assign_attributes(attrs, :without_protection => true) + assert_equal result, entry.valid?, "Expected #{attrs.inspect} to be #{result}" + end end