mirror of
https://github.com/spalencsar/bearhub.git
synced 2026-07-07 01:14:15 +02:00
[view] improvement: displaying update sizes as localized numbers (update summary)
This commit is contained in:
@@ -14,6 +14,7 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/).
|
|||||||
- update summary:
|
- update summary:
|
||||||
- displaying a '+' for positive sizes (previously the sign was only displayed for negative numbers) (#250)[https://github.com/vinifmor/bauh/issues/250]
|
- displaying a '+' for positive sizes (previously the sign was only displayed for negative numbers) (#250)[https://github.com/vinifmor/bauh/issues/250]
|
||||||
- changing some words and symbols to improve readability and cohesion (#250)[https://github.com/vinifmor/bauh/issues/250]
|
- changing some words and symbols to improve readability and cohesion (#250)[https://github.com/vinifmor/bauh/issues/250]
|
||||||
|
- displaying update sizes as localized numbers [#250](https://github.com/vinifmor/bauh/issues/250)
|
||||||
|
|
||||||
### Fixes
|
### Fixes
|
||||||
- General
|
- General
|
||||||
|
|||||||
@@ -1,4 +1,5 @@
|
|||||||
import faulthandler
|
import faulthandler
|
||||||
|
import locale
|
||||||
import os
|
import os
|
||||||
import sys
|
import sys
|
||||||
import traceback
|
import traceback
|
||||||
@@ -25,6 +26,12 @@ def main(tray: bool = False):
|
|||||||
|
|
||||||
logger = logs.new_logger(__app_name__, bool(args.logs))
|
logger = logs.new_logger(__app_name__, bool(args.logs))
|
||||||
|
|
||||||
|
try:
|
||||||
|
locale.setlocale(locale.LC_NUMERIC, '')
|
||||||
|
except:
|
||||||
|
logger.error("Could not set locale 'LC_NUMBERIC' to '' to display localized numbers")
|
||||||
|
traceback.print_exc()
|
||||||
|
|
||||||
if args.offline:
|
if args.offline:
|
||||||
logger.warning("offline mode activated")
|
logger.warning("offline mode activated")
|
||||||
|
|
||||||
|
|||||||
@@ -1,3 +1,4 @@
|
|||||||
|
import locale
|
||||||
from typing import Tuple, Optional, Iterable
|
from typing import Tuple, Optional, Iterable
|
||||||
|
|
||||||
from bauh.api.abstract.view import SelectViewType, InputOption, SingleSelectComponent
|
from bauh.api.abstract.view import SelectViewType, InputOption, SingleSelectComponent
|
||||||
@@ -34,5 +35,6 @@ def get_human_size_str(size, positive_sign: bool = False) -> Optional[str]:
|
|||||||
|
|
||||||
if size_unit < 1024:
|
if size_unit < 1024:
|
||||||
size_unit = size_unit if size > 0 else size_unit * -1
|
size_unit = size_unit if size > 0 else size_unit * -1
|
||||||
size_str = f'{int(size_unit)} {unit}' if unit == 'B' else f'{size_unit:.2f} {unit}'
|
localized_size = locale.format_string('%.2f', size_unit)
|
||||||
|
size_str = f'{int(size_unit)} {unit}' if unit == 'B' else f"{localized_size} {unit}"
|
||||||
return f'+{size_str}' if positive_sign and size_unit > 0 else size_str
|
return f'+{size_str}' if positive_sign and size_unit > 0 else size_str
|
||||||
|
|||||||
@@ -1,3 +1,4 @@
|
|||||||
|
import locale
|
||||||
from unittest import TestCase
|
from unittest import TestCase
|
||||||
|
|
||||||
from bauh.commons.view_utils import get_human_size_str
|
from bauh.commons.view_utils import get_human_size_str
|
||||||
@@ -5,6 +6,12 @@ from bauh.commons.view_utils import get_human_size_str
|
|||||||
|
|
||||||
class GetHumanSizeStrTest(TestCase):
|
class GetHumanSizeStrTest(TestCase):
|
||||||
|
|
||||||
|
def setUp(self):
|
||||||
|
try:
|
||||||
|
locale.setlocale(locale.LC_NUMERIC, None)
|
||||||
|
except:
|
||||||
|
print("Error: could not set locale.LC_NUMERIC to None")
|
||||||
|
|
||||||
def test__must_properly_display_B(self):
|
def test__must_properly_display_B(self):
|
||||||
self.assertEqual('1023 B', get_human_size_str(1023))
|
self.assertEqual('1023 B', get_human_size_str(1023))
|
||||||
self.assertEqual('-1023 B', get_human_size_str(-1023))
|
self.assertEqual('-1023 B', get_human_size_str(-1023))
|
||||||
|
|||||||
Reference in New Issue
Block a user