33
44import pytest
55
6- import human_readable . files as files
6+ from human_readable import files
77
88
99@pytest .mark .parametrize (
1010 "params, expected" ,
1111 [
12- (1 , "1.0 Byte" ), # unit number
13- (300 , "300.0 Bytes" ), # hundreds number
12+ (1 , "1 Byte" ), # unit number
13+ (300 , "300 Bytes" ), # hundreds number
1414 (2900000 , "2.9 MB" ), # millions number
1515 (2000000000 , "2.0 GB" ), # billions number
1616 (10 ** 26 * 30 , "3000.0 YB" ), # giant number
@@ -24,8 +24,8 @@ def test_file_size(params: int, expected: str) -> None:
2424@pytest .mark .parametrize (
2525 "params, expected" ,
2626 [
27- ((1 , True ), "1.0 Byte" ), # unit number
28- ((300 , True ), "300.0 Bytes" ), # hundreds number
27+ ((1 , True ), "1 Byte" ), # unit number
28+ ((300 , True ), "300 Bytes" ), # hundreds number
2929 ((2900000 , True ), "2.8 MiB" ), # millions number
3030 ((2000000000 , True ), "1.9 GiB" ), # billions number
3131 ((10 ** 26 * 30 , True ), "2481.5 YiB" ), # giant number
@@ -39,8 +39,8 @@ def test_file_size_binary(params: tuple[int, bool], expected: str) -> None:
3939@pytest .mark .parametrize (
4040 "params, expected" ,
4141 [
42- ((1 , False , True ), "1.0B " ), # unit number
43- ((300 , False , True ), "300.0B " ), # hundreds number
42+ ((1 , False , True ), "1B " ), # unit number
43+ ((300 , False , True ), "300B " ), # hundreds number
4444 ((2900000 , False , True ), "2.8M" ), # millions number
4545 ((2000000000 , False , True ), "1.9G" ), # billions number
4646 ((10 ** 26 * 30 , False , True ), "2481.5Y" ), # giant number
@@ -54,9 +54,14 @@ def test_file_size_gnu(params: tuple[int, bool, bool], expected: str) -> None:
5454@pytest .mark .parametrize (
5555 "params, expected" ,
5656 [
57- ((1 , False , True , ".0f" ), "1B" ), # unit number
58- ((300 , True , False , ".2f" ), "300.00 Bytes" ), # hundreds number
59- ((2900000 , False , True , ".3f" ), "2.766M" ), # millions number
57+ ((1 , False , True , ".3f" , ".1f" ), "1.0B" ), # unit number (small formatting)
58+ ((999 , False , False , ".3f" , ".1f" ), "999.0 Bytes" ), # hundreds number (small formatting)
59+ ((1000 , False , False , ".3f" , ".1f" ), "1.000 KB" ), # hundreds number (small formatting boundary)
60+ ((1023 , False , True , ".3f" , ".1f" ), "1023.0B" ), # hundreds number (small formatting boundary)
61+ ((1024 , False , True , ".3f" , ".1f" ), "1.000K" ), # hundreds number (small formatting boundary)
62+ ((1023 , True , False , ".3f" , ".1f" ), "1023.0 Bytes" ), # hundreds number (small formatting boundary)
63+ ((1024 , True , False , ".3f" , ".1f" ), "1.000 KiB" ), # hundreds number (small formatting boundary)
64+ ((2900000 , False , True , ".3f" ), "2.766M" ), # millions number (large formatting)
6065 (
6166 (2000000000 , True , False , ".3f" ),
6267 "1.863 GiB" ,
0 commit comments