aboutsummaryrefslogtreecommitdiffstats
path: root/actionpack/test
diff options
context:
space:
mode:
authorDavid Heinemeier Hansson <david@loudthinking.com>2005-03-26 22:00:23 +0000
committerDavid Heinemeier Hansson <david@loudthinking.com>2005-03-26 22:00:23 +0000
commit520dae295bbd2e406739048b5d43e5e4cd1342d5 (patch)
tree682211831b46727358bc1685837ab4aa0cc3059b /actionpack/test
parent9fb6a54a164e7a1b64cf36efcba657c4215858b8 (diff)
downloadrails-520dae295bbd2e406739048b5d43e5e4cd1342d5.tar.gz
rails-520dae295bbd2e406739048b5d43e5e4cd1342d5.tar.bz2
rails-520dae295bbd2e406739048b5d43e5e4cd1342d5.zip
Added include_seconds option as the third parameter to distance_of_time_in_words which will render "less than a minute" in higher resolution ("less than 10 seconds" etc) #944 [thomas@fesch.at]
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@1010 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
Diffstat (limited to 'actionpack/test')
-rwxr-xr-xactionpack/test/template/date_helper_test.rb16
-rw-r--r--actionpack/test/template/text_helper_test.rb18
2 files changed, 34 insertions, 0 deletions
diff --git a/actionpack/test/template/date_helper_test.rb b/actionpack/test/template/date_helper_test.rb
index e30853f42a..80f33bd9fe 100755
--- a/actionpack/test/template/date_helper_test.rb
+++ b/actionpack/test/template/date_helper_test.rb
@@ -13,6 +13,22 @@ class DateHelperTest < Test::Unit::TestCase
assert_equal "about 3 hours", distance_of_time_in_words(from, Time.mktime(2004, 3, 7, 0, 41))
assert_equal "about 4 hours", distance_of_time_in_words(from, Time.mktime(2004, 3, 7, 1, 20))
assert_equal "2 days", distance_of_time_in_words(from, Time.mktime(2004, 3, 9, 15, 40))
+
+ # include seconds
+ assert_equal "less than a minute", distance_of_time_in_words(from, Time.mktime(2004, 3, 6, 21, 41, 19), false)
+ assert_equal "less than 5 seconds", distance_of_time_in_words(from, Time.mktime(2004, 3, 6, 21, 41, 19), true)
+ assert_equal "less than 10 seconds", distance_of_time_in_words(from, Time.mktime(2004, 3, 6, 21, 41, 28), true)
+ assert_equal "less than 20 seconds", distance_of_time_in_words(from, Time.mktime(2004, 3, 6, 21, 41, 38), true)
+ assert_equal "half a minute", distance_of_time_in_words(from, Time.mktime(2004, 3, 6, 21, 41, 48), true)
+ assert_equal "less than a minute", distance_of_time_in_words(from, Time.mktime(2004, 3, 6, 21, 42, 17), true)
+
+ assert_equal "1 minute", distance_of_time_in_words(from, Time.mktime(2004, 3, 6, 21, 42, 18), true)
+ assert_equal "1 minute", distance_of_time_in_words(from, Time.mktime(2004, 3, 6, 21, 42, 28), true)
+ assert_equal "2 minutes", distance_of_time_in_words(from, Time.mktime(2004, 3, 6, 21, 42, 48), true)
+
+ # test to < from
+ assert_equal "about 4 hours", distance_of_time_in_words(Time.mktime(2004, 3, 7, 1, 20), from)
+ assert_equal "less than 20 seconds", distance_of_time_in_words(Time.mktime(2004, 3, 6, 21, 41, 38), from, true)
end
def test_select_day
diff --git a/actionpack/test/template/text_helper_test.rb b/actionpack/test/template/text_helper_test.rb
index efc66b3bd1..7a8c3cf0ae 100644
--- a/actionpack/test/template/text_helper_test.rb
+++ b/actionpack/test/template/text_helper_test.rb
@@ -1,5 +1,6 @@
require 'test/unit'
require File.dirname(__FILE__) + '/../../lib/action_view/helpers/text_helper'
+require File.dirname(__FILE__) + '/../../../activesupport/lib/active_support/core_ext/numeric' # for human_size
class TextHelperTest < Test::Unit::TestCase
include ActionView::Helpers::TextHelper
@@ -52,6 +53,22 @@ class TextHelperTest < Test::Unit::TestCase
highlight("This is a beautiful? morning", "beautiful? morning")
)
end
+
+ def test_human_size
+ assert_equal("0 Bytes", human_size(0))
+ assert_equal("3 Bytes", human_size(3.14159265))
+ assert_equal("123 Bytes", human_size(123.0))
+ assert_equal("123 Bytes", human_size(123))
+ assert_equal("1.2 KB", human_size(1234))
+ assert_equal("12.1 KB", human_size(12345))
+ assert_equal("1.2 MB", human_size(1234567))
+ assert_equal("1.1 GB", human_size(1234567890))
+ assert_equal("1.1 TB", human_size(1234567890123))
+ assert_equal("444.0 KB", human_size(444.kilobytes))
+ assert_equal("1023.0 MB", human_size(1023.megabytes))
+ assert_equal("3.0 TB", human_size(3.terabytes))
+ assert_nil human_size('x')
+ end
def test_excerpt
assert_equal("...is a beautiful morni...", excerpt("This is a beautiful morning", "beautiful", 5))
@@ -72,4 +89,5 @@ class TextHelperTest < Test::Unit::TestCase
assert_equal %(Go to http://www.rubyonrails.com), auto_link("Go to http://www.rubyonrails.com", :email_addresses)
assert_equal %(Go to <a href="http://www.rubyonrails.com">http://www.rubyonrails.com</a> and say hello to <a href="mailto:david@loudthinking.com">david@loudthinking.com</a>), auto_link("Go to http://www.rubyonrails.com and say hello to david@loudthinking.com")
end
+
end