]> git.openstreetmap.org Git - rails.git/blobdiff - test/unit/diary_entry_test.rb
Add some tests for the RichText module
[rails.git] / test / unit / diary_entry_test.rb
index b28577b992263bd9395d5c245fae423f5a501d31..2d5c34f83ed36698bb71abb90811fcb028a979e2 100644 (file)
@@ -1,11 +1,11 @@
 require File.dirname(__FILE__) + '/../test_helper'
 
-class DiaryEntryTest < Test::Unit::TestCase
+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 < Test::Unit::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, :without_protection => true)
+    entry.assign_attributes(attrs, :without_protection => true)
+    assert_equal result, entry.valid?, "Expected #{attrs.inspect} to be #{result}"
+  end  
 end