]> git.openstreetmap.org Git - rails.git/blobdiff - test/models/diary_entry_test.rb
Reorganise tests to match modern rails test layout
[rails.git] / test / models / diary_entry_test.rb
diff --git a/test/models/diary_entry_test.rb b/test/models/diary_entry_test.rb
new file mode 100644 (file)
index 0000000..e8667bc
--- /dev/null
@@ -0,0 +1,51 @@
+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
+  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 4, 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 4, 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)
+    entry.assign_attributes(attrs)
+    assert_equal result, entry.valid?, "Expected #{attrs.inspect} to be #{result}"
+  end  
+end