From 2408a9473c49ee2f7d75c4a90ab8b2a3d89eb714 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Wojciech=20Wn=C4=99trzak?= Date: Thu, 13 Jan 2011 14:07:01 +0100 Subject: [PATCH] use correct size units for number_to_human_size helper --- actionpack/lib/action_view/locale/en.yml | 9 ++-- actionpack/test/template/number_helper_test.rb | 60 ++++++++++++------------ 2 files changed, 34 insertions(+), 35 deletions(-) diff --git a/actionpack/lib/action_view/locale/en.yml b/actionpack/lib/action_view/locale/en.yml index 9004e52..caa9021 100644 --- a/actionpack/lib/action_view/locale/en.yml +++ b/actionpack/lib/action_view/locale/en.yml @@ -66,10 +66,10 @@ byte: one: "Byte" other: "Bytes" - kb: "KB" - mb: "MB" - gb: "GB" - tb: "TB" + kb: "KiB" + mb: "MiB" + gb: "GiB" + tb: "TiB" # Used in number_to_human() decimal_units: format: "%n %u" @@ -151,4 +151,3 @@ create: 'Create %{model}' update: 'Update %{model}' submit: 'Save %{model}' - diff --git a/actionpack/test/template/number_helper_test.rb b/actionpack/test/template/number_helper_test.rb index 156b7cb..7f9e8db 100644 --- a/actionpack/test/template/number_helper_test.rb +++ b/actionpack/test/template/number_helper_test.rb @@ -152,45 +152,45 @@ class NumberHelperTest < ActionView::TestCase assert_equal '3 Bytes', number_to_human_size(3.14159265) assert_equal '123 Bytes', number_to_human_size(123.0) assert_equal '123 Bytes', number_to_human_size(123) - assert_equal '1.21 KB', number_to_human_size(1234) - assert_equal '12.1 KB', number_to_human_size(12345) - assert_equal '1.18 MB', number_to_human_size(1234567) - assert_equal '1.15 GB', number_to_human_size(1234567890) - assert_equal '1.12 TB', number_to_human_size(1234567890123) - assert_equal '1030 TB', number_to_human_size(terabytes(1026)) - assert_equal '444 KB', number_to_human_size(kilobytes(444)) - assert_equal '1020 MB', number_to_human_size(megabytes(1023)) - assert_equal '3 TB', number_to_human_size(terabytes(3)) - assert_equal '1.2 MB', number_to_human_size(1234567, :precision => 2) + assert_equal '1.21 KiB', number_to_human_size(1234) + assert_equal '12.1 KiB', number_to_human_size(12345) + assert_equal '1.18 MiB', number_to_human_size(1234567) + assert_equal '1.15 GiB', number_to_human_size(1234567890) + assert_equal '1.12 TiB', number_to_human_size(1234567890123) + assert_equal '1030 TiB', number_to_human_size(terabytes(1026)) + assert_equal '444 KiB', number_to_human_size(kilobytes(444)) + assert_equal '1020 MiB', number_to_human_size(megabytes(1023)) + assert_equal '3 TiB', number_to_human_size(terabytes(3)) + assert_equal '1.2 MiB', number_to_human_size(1234567, :precision => 2) assert_equal '3 Bytes', number_to_human_size(3.14159265, :precision => 4) assert_equal '123 Bytes', number_to_human_size('123') - assert_equal '1 KB', number_to_human_size(kilobytes(1.0123), :precision => 2) - assert_equal '1.01 KB', number_to_human_size(kilobytes(1.0100), :precision => 4) - assert_equal '10 KB', number_to_human_size(kilobytes(10.000), :precision => 4) - assert_equal '1 Byte', number_to_human_size(1.1) - assert_equal '10 Bytes', number_to_human_size(10) + assert_equal '1 KiB', number_to_human_size(kilobytes(1.0123), :precision => 2) + assert_equal '1.01 KiB', number_to_human_size(kilobytes(1.0100), :precision => 4) + assert_equal '10 KiB', number_to_human_size(kilobytes(10.000), :precision => 4) + assert_equal '1 Byte', number_to_human_size(1.1) + assert_equal '10 Bytes', number_to_human_size(10) end def test_number_to_human_size_with_options_hash - assert_equal '1.2 MB', number_to_human_size(1234567, :precision => 2) + assert_equal '1.2 MiB', number_to_human_size(1234567, :precision => 2) assert_equal '3 Bytes', number_to_human_size(3.14159265, :precision => 4) - assert_equal '1 KB', number_to_human_size(kilobytes(1.0123), :precision => 2) - assert_equal '1.01 KB', number_to_human_size(kilobytes(1.0100), :precision => 4) - assert_equal '10 KB', number_to_human_size(kilobytes(10.000), :precision => 4) - assert_equal '1 TB', number_to_human_size(1234567890123, :precision => 1) - assert_equal '500 MB', number_to_human_size(524288000, :precision=>3) - assert_equal '10 MB', number_to_human_size(9961472, :precision=>0) - assert_equal '40 KB', number_to_human_size(41010, :precision => 1) - assert_equal '40 KB', number_to_human_size(41100, :precision => 2) - assert_equal '1.0 KB', number_to_human_size(kilobytes(1.0123), :precision => 2, :strip_insignificant_zeros => false) - assert_equal '1.012 KB', number_to_human_size(kilobytes(1.0123), :precision => 3, :significant => false) - assert_equal '1 KB', number_to_human_size(kilobytes(1.0123), :precision => 0, :significant => true) #ignores significant it precision is 0 + assert_equal '1 KiB', number_to_human_size(kilobytes(1.0123), :precision => 2) + assert_equal '1.01 KiB', number_to_human_size(kilobytes(1.0100), :precision => 4) + assert_equal '10 KiB', number_to_human_size(kilobytes(10.000), :precision => 4) + assert_equal '1 TiB', number_to_human_size(1234567890123, :precision => 1) + assert_equal '500 MiB', number_to_human_size(524288000, :precision=>3) + assert_equal '10 MiB', number_to_human_size(9961472, :precision=>0) + assert_equal '40 KiB', number_to_human_size(41010, :precision => 1) + assert_equal '40 KiB', number_to_human_size(41100, :precision => 2) + assert_equal '1.0 KiB', number_to_human_size(kilobytes(1.0123), :precision => 2, :strip_insignificant_zeros => false) + assert_equal '1.012 KiB', number_to_human_size(kilobytes(1.0123), :precision => 3, :significant => false) + assert_equal '1 KiB', number_to_human_size(kilobytes(1.0123), :precision => 0, :significant => true) #ignores significant it precision is 0 end def test_number_to_human_size_with_custom_delimiter_and_separator - assert_equal '1,01 KB', number_to_human_size(kilobytes(1.0123), :precision => 3, :separator => ',') - assert_equal '1,01 KB', number_to_human_size(kilobytes(1.0100), :precision => 4, :separator => ',') - assert_equal '1.000,1 TB', number_to_human_size(terabytes(1000.1), :precision => 5, :delimiter => '.', :separator => ',') + assert_equal '1,01 KiB', number_to_human_size(kilobytes(1.0123), :precision => 3, :separator => ',') + assert_equal '1,01 KiB', number_to_human_size(kilobytes(1.0100), :precision => 4, :separator => ',') + assert_equal '1.000,1 TiB', number_to_human_size(terabytes(1000.1), :precision => 5, :delimiter => '.', :separator => ',') end def test_number_to_human -- 1.7.1.1