]> git.openstreetmap.org Git - rails.git/blobdiff - test/unit/diary_entry_test.rb
Monkey patch composite_primary_keys to fix deletes via has_many
[rails.git] / test / unit / diary_entry_test.rb
index 54ac0175bcbb14b6c3ea46e551a3060110d78e04..0b64cbac38b3a524fd610493c8df502bcb2e6bca 100644 (file)
@@ -2,10 +2,10 @@ require File.dirname(__FILE__) + '/../test_helper'
 
 class DiaryEntryTest < ActiveSupport::TestCase
   api_fixtures
-  fixtures :diary_entries, :languages
+  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
@@ -23,11 +23,29 @@ class DiaryEntryTest < ActiveSupport::TestCase
     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 diary_entry_valid(attrs, result = true)
-    entry = diary_entries(:normal_user_entry_1).clone
-    entry.attributes = attrs
-    assert_equal result, entry.valid?, "Expected #{attrs.inspect} to be #{result}"
+  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)
+    entry.assign_attributes(attrs)
+    assert_equal result, entry.valid?, "Expected #{attrs.inspect} to be #{result}"
+  end  
 end