]> git.openstreetmap.org Git - rails.git/blobdiff - test/helpers/note_helper_test.rb
Use bootstrap badges to implement count-number badges
[rails.git] / test / helpers / note_helper_test.rb
index 8495e21a9998f1b2cb52a3b7dfc53f08101a94bd..37518fb3d22b01765e5afade169ad93eaea476fa 100644 (file)
@@ -4,19 +4,30 @@ class NoteHelperTest < ActionView::TestCase
   include ERB::Util
   include ApplicationHelper
 
-  fixtures :users
-
   def test_note_event
-    date = Time.new(2014, 3, 5, 21, 37, 45, "+00:00")
+    date = Time.utc(2014, 3, 5, 21, 37, 45)
+    user = create(:user)
 
-    assert_match %r{^Created by anonymous <abbr title='Wed, 05 Mar 2014 21:37:45 \+0000'><span title=" 5 March 2014 at 21:37">.*</span> ago</abbr>$}, note_event("open", date, nil)
-    assert_match %r{^Resolved by <a href="/user/test2">test2</a> <abbr title='Wed, 05 Mar 2014 21:37:45 \+0000'><span title=" 5 March 2014 at 21:37">.*</span> ago</abbr>$}, note_event("closed", date, users(:public_user))
+    assert_match %r{^Created by anonymous <abbr title="Wed, 05 Mar 2014 21:37:45 \+0000"><span title=" 5 March 2014 at 21:37">.* ago</span></abbr>$}, note_event("opened", date, nil)
+    assert_match %r{^Resolved by <a href="/user/#{ERB::Util.u(user.display_name)}">#{user.display_name}</a> <abbr title="Wed, 05 Mar 2014 21:37:45 \+0000"><span title=" 5 March 2014 at 21:37">.* ago</span></abbr>$}, note_event("closed", date, user)
   end
 
   def test_note_author
+    deleted_user = create(:user, :deleted)
+    user = create(:user)
+
     assert_equal "", note_author(nil)
-    assert_equal "deleted", note_author(users(:deleted_user))
-    assert_equal "<a href=\"/user/test2\">test2</a>", note_author(users(:public_user))
-    assert_equal "<a href=\"http://test.host/user/test2\">test2</a>", note_author(users(:public_user), :only_path => false)
+    assert_equal "deleted", note_author(deleted_user)
+    assert_equal "<a href=\"/user/#{ERB::Util.u(user.display_name)}\">#{user.display_name}</a>", note_author(user)
+    assert_equal "<a href=\"http://test.host/user/#{ERB::Util.u(user.display_name)}\">#{user.display_name}</a>", note_author(user, :only_path => false)
+  end
+
+  def test_disappear_in
+    note_closed_date = Time.utc(2022, 1, 1, 12, 0, 0)
+    note = create(:note, :closed_at => note_closed_date)
+
+    travel_to note_closed_date + 1.day do
+      assert_match %r{^<span title=" 8 January 2022 at 12:00">6 days</span>$}, disappear_in(note)
+    end
   end
 end